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

Все потоки

Сначала показывать
Порог рейтинга

Введение в $mol

Разработка веб-сайтов *TypeScript *JavaScript *Системы сборки *
Tutorial

Эта статья открывает серию публикаций по изучению $mol. Сегодня речь пойдет об организации кода, отделении его от инфраструктуры, сборке, версионировании, нейминге, минимизации размера бандла, автоматическом выкачивании зависимостей, фрактальных моно-поли-репозиториях, разделении кода на платформы, альтернативе импортам/экспортам, автоматическом разруливании циклических зависимостей.

Читать далее
Рейтинг 0
Просмотры 47
Комментарии 0

Новости

Как мы думаем? Вступление к курсу о когнитивных искажениях

Читальный зал Научно-популярное

Эта статья является вступительным уроком к курсу о когнитивных искажениях, над которым я работал последние несколько месяцев. Изначально курс планировался в виде веб-приложения с интерактивными заданиями. К сожалению, сейчас у меня нет финансовой возможности закончить этот проект в виде веб-приложения, поэтому я решил опубликовать написанный материал в виде статей. Приношу извинения тем, кто не найдёт в этой статье новой для себя информации, но во вступлении я, как автор, должен ориентироваться на разную аудиторию и потому мне пришлось начать с азов. Следующие статьи из цикла определённо будут более интересными.

Как происходит процесс мышления, и почему в нём появляются ошибки?

Представь, что кто-то описывает тебе своего знакомого: «Сергею 35 лет. Он высокий, в хорошей физической форме, сильный и ловкий. Хорошо водит машину и любит быструю езду, занимается экстремальными видами спорта. Из особых примет — шрам на руке».

На твой взгляд, более вероятно, что Сергей каскадёр или что Сергей бухгалтер?

Пожалуйста, ответь на этот вопрос, прежде чем читать далее.

Узнать правильный ответ (и не только)
Всего голосов 3: ↑1 и ↓2 -1
Просмотры 97
Комментарии 0

Фиалку поливать не нужно

DIY или Сделай сам Программирование микроконтроллеров *3D-принтеры Гаджеты Производство и разработка электроники *

Серега уезжал покорять Москву, и я зашел к нему попрощаться, пожелать удачи. Взять нужно было все самое необходимое, все для новой работы и все для новой жизни. Кота хотелось бы оставить, но пришлось брать. А вот с другими обитателями квартиры – огромным числом фиалок, нужно было распрощаться.

- Возьмешь фиалку? Марина выращивает, не везти же их все с собой. Мы их всем друзьям раздаем.

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

- Эту фиалку поливать не нужно.

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

Читать далее
Всего голосов 6: ↑6 и ↓0 +6
Просмотры 894
Комментарии 0

«Синхронизируй это»: компактный обзор примечательных решений и протоколов для передачи звука по Ethernet

Блог компании Аудиомания IT-стандарты *Звук

На неделе один из участников Hacker News запустил тематический тред с целью узнать, как «связать» компьютер, колонки и другую акустику в единую звуковую систему.

Мы решили рассмотреть несколько стандартов, которые используют музыканты в студиях, а также open source решения, доступные для развертки любому аудиоману.

Читать далее
Всего голосов 4: ↑4 и ↓0 +4
Просмотры 405
Комментарии 0

ЧудESA защиты корпоративной почты или внедрение свободных почтовых шлюзов на базе Proxmox Mail Gateway

Спам и антиспам Open source *Системное администрирование *

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

Читать далее
Всего голосов 2: ↑2 и ↓0 +2
Просмотры 573
Комментарии 1

Дайджест интересных материалов для мобильного разработчика #440 (18 — 24 апреля)

Блог компании Productivity Inside Разработка под iOS *Разработка мобильных приложений *Разработка под Android *
В нашем дайджесте снова стейт-машины и исходники Telegram, собственный 3D движок и KMM, чтение кода, пространственная логика, ностальгия Waze и многое другое!

Читать дальше →
Рейтинг 0
Просмотры 280
Комментарии 0

PHP фреймворк отечественной разработки

PHP *
Из песочницы

Друзья, всем пример. Меня зовут Макс и я хочу познакомить вас с IsEngine framework.

Это новый фреймворк отечественной разработки для простого и быстрого создания web-приложений.

Я занимаюсь его разработкой в течение последних 5 лет. Сейчас готовлю его к релизу, и поэтому начинаю продвигать.

Чтобы понять любой продукт, вообще любую систему, нужно понимать, какие задачи она решает. И здесь самый первый и самый главный вопрос - это для кого она создана. Для программистов? Разработчиков? Или для обычных людей (я имею ввиду не специалистов в web'е).

Читать далее
Всего голосов 24: ↑13 и ↓11 +2
Просмотры 3.9K
Комментарии 24

Простой способ создания и переиспользования модальных диалогов во Vue 3

JavaScript *VueJS *Программирование *Разработка веб-сайтов *
Tutorial


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


Хорошим решением было бы создать функцию, которая принимала бы компонент диалога и управляла бы его рендерингом в шаблоне, а этот диалог можно "промисифицировать" и работать с ним как с асинхронной функцией. Как например в этой библиотеке vue-modal-dialogs. К сожалению она давно не обновлялась и не опддерживает Vue 3.


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


Все это есть в плагине vuejs-confirm-dialog, о котором я хочу вам рассказать.

Читать дальше →
Рейтинг 0
Просмотры 577
Комментарии 2

Большая статья о переезде на остров Пенанг, Малайзия. Часть 2

IT-эмиграция Карьера в IT-индустрии

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

Читать далее
Всего голосов 8: ↑6 и ↓2 +4
Просмотры 1.3K
Комментарии 3

Изоляция зубов в стоматологии

Здоровье

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

Коффердам - это немецкое слово, которое можно дословно перевести как: "резиновая преграда", что очень ярко отражает весь смысл.

Читать далее
Всего голосов 8: ↑5 и ↓3 +2
Просмотры 2.2K
Комментарии 10

Эпичная реклама кредитки

Работа с 3D-графикой *Графический дизайн *Медийная реклама DIY или Сделай сам

Всем привет, это Денис Вебер.

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

Читать далее
Всего голосов 4: ↑4 и ↓0 +4
Просмотры 2.1K
Комментарии 3

Тестовая ферма: как упростить тестирование мобильных игр с минимумом затрат

Тестирование игр *
Из песочницы

Тестирование — неотъемлемая часть разработки игр, и мобильные тайтлы не исключение. Рынок полон устройств самых разных форм-факторов, мощности и совместимости. При этом чем больше игроков, тем игра успешнее и тем доход больше. Чтобы игроков было как можно больше, нужна поддержка максимального количества смартфонов и планшетов. Чтобы этого добиться, нужно “отполировать билд” для работы даже на самых бюджетных девайсах.

Ускорить, оптимизировать и автоматизировать процесс можно и нужно. Как это сделать? Установить тестовую ферму.

Читать далее
Рейтинг 0
Просмотры 277
Комментарии 0

Telegram bot на aiogram + Google Analytics 4

Python *Статистика в IT Криптовалюты
Из песочницы

Статья о том как удалось прикрутить гугл аналитику к Telegram боту на aiogram.

Дело в том, что гугл объявил о закрытии Universal Analytics и полном переходе на Google Analytics 4. Погуглив стало ясно что инфы про новую аналитику крайне мало, а о её работе с питоном инфы в принципе нет.

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

В качестве примера будет использоваться python + aiogram, но здесь описывается взаимодействие с api аналитики посредством обычных http запросов. Так что статья актуальна для любого языка.

Читать далее
Всего голосов 3: ↑3 и ↓0 +3
Просмотры 1.2K
Комментарии 0

Обзор всего доступного в С++ type erasure

Программирование *C++ *C *

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

Если спросить современного С++ разработчика какие примеры type erasure он видел / использовал, то вероятно он ответит что то про std::function и возможно про std::any, но это лишь малая часть всех применений этого замечательного инструмента!

В статье я постараюсь описать все возможные виды type erasure в современном С++, но начать стоит с определения.

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

Начнём с того, что было уже в С и о чём часто забывают говоря об erasure

void* - мы стёрли всю информацию о типе под указателем, не можем ничего прочитать, но с другой стороны доступ к данным у нас абсолютно без оверхеда! Достаточно угадать тип. Часто внутри именно на этом и построены другие более сложные стирания. Ну и конечно примерно в эту труху из байтов компилятор перетирает всю нашу систему типов в процессе работы.

Кстати, насчёт байтов:

std::byte (since C++17) / unsigned char / char так исторически сложилось, что в С все использовали чары для работы с сырыми байтами, поэтому для них в языке С++ исключение и указатель на них можно приводить к указателю на любой другой тип. Это не обходится без последствий и иногда из-за этого строки теряют некоторые оптимизации, поэтому сначала добавили std::byte, а потом начали потихоньку заменять чары (char8_t since C++20), но это уже совсем другая история. В контексте стирания типов нам важно, что мы получили способность читать данные из стёртого типа, а составив массив мы получим ещё и верхнюю границу размера типа, что конечно немного, но с void и так нельзя.

[erased]
Всего голосов 18: ↑16 и ↓2 +14
Просмотры 1.6K
Комментарии 9

«Скрытый код» принятых решений

Искусственный интеллект

Есть способные к обучению объекты, как живые, так и некоторые математические конструкции. Обучение можно формулировать по-разному, но будучи обученным - что происходит при принятии решения? Некоторое соображение по этому поводу приведено в этой (нет, не научной) статье, не претендующей на какие-то откровения, а скорее на размышления.

Читать далее
Рейтинг 0
Просмотры 685
Комментарии 0

Lightrun — лучший способ отладки проблем производственных систем

Я пиарюсь
Перевод
Tutorial

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

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

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

Читать далее
Рейтинг 0
Просмотры 566
Комментарии 1

У нас кибератака. Что делать?

Информационная безопасность *IT-инфраструктура *Восстановление данных *Хранение данных *IT-компании
Из песочницы

Краткое руководство о том, как обнаружить атаку на внутреннюю инфраструктуру компании раньше всех и правильно отреагировать на нее

Число кибератак стремительно растет: если раньше их количество исчислялось десятками в месяц, сейчас насчитывают тысячи инцидентов только за одну неделю: «Касперский» заявляет о 8-кратном увеличении числа DDoS-атак на российские организации. В то же время недавнее исследование SearchInform сообщает, что из 900 опрошенных ими компаний 95% ограничиваются только антивирусом в вопросах защиты от кибератак. В таких условиях вероятность столкнуться с инцидентом ИБ значительно выше, чем может показаться. Поэтому все же стоит отбросить сомнения, вроде «да кому наша информация нужна», и заранее разобраться, что делать, если инцидент уже случился.

Читать далее
Всего голосов 4: ↑4 и ↓0 +4
Просмотры 2.5K
Комментарии 2

Первая шариковая мышь

Блог компании RUVDS.com История IT Старое железо Периферия DIY или Сделай сам
Перевод

Первая шариковая мышь была выпущена в 1968 году компанией Telefunken, которая нарекла своё детище RKS 100-86 “Rollkugel-Steuerung”. Это была, пожалуй, первая мышь, которая попала на коммерческий рынок, несколькими годами опередив компьютер Xerox Alto. В этой статье я покажу вам фотографии моей Rollkuleg, а также расскажу о её энкодерах, разводке контактов и собранном мной интерфейсе для подключения этого раритета к современному компьютеру.
Читать дальше →
Всего голосов 25: ↑24 и ↓1 +23
Просмотры 3.2K
Комментарии 9

Болезни и смерть станции «Мир»

Блог компании Timeweb Cloud Читальный зал Космонавтика
23 марта 2001 года 124 т металла и оборудования быстро сгорали в атмосфере. Орбитальный комплекс 27КС «Мир», последний осколок советской пилотируемой программы в космосе, прекратил своё существование. Люди в ЦУПе не скрывали слёз, провожая в последний путь своё детище. До сих пор ведутся споры на тему, а вот не топили бы Мир, не нуждались бы в МКС, не дарили бы иностранцам бесценный опыт эксплуатации модульных станций. Не так давно и Сергей Крикалёв, один из опытнейших космонавтов в мире, назвал ошибкой затопление «Мира». Главной причиной прекращения эксплуатации считается недостаток финансирования. Не без этого, Россия тогда очень мало денег выделяла на космос, а тут уже МКС в эксплуатацию входила. Но… есть один нюанс, про который не все помнят. Аварии.

image
Читать дальше →
Всего голосов 63: ↑60 и ↓3 +57
Просмотры 9.6K
Комментарии 18

Отношения с IT. Часть восьмая. Амбициозный план продаж

Управление продажами *Управление персоналом *IT-компании

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

- Вы составляли на следующий год план продаж? – уточняю у СЕО.

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

- А как вы тогда планируете выручку?

- Да они не могут нормальный пай плайн сделать и настроить CRM. Там работы – на 2 часа, но они мне рассказывают, что это задача из категории полета в космос. Я уже рассказывал, как директор по сделкам делает план продаж? Сашуля, ты обхохочешься…

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

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

Читать далее
Всего голосов 6: ↑3 и ↓3 0
Просмотры 632
Комментарии 1