Используйте глобально уникальные идентификаторы. Клиент всегда должен знать полное состояние системы. Избегайте двойных отрицаний…
PHP, Golang
Затерянные в тумане, или Увлекательные приключения в мире АПР *
* АПР - аэропоника с пневматическим распылением
Уже почти год назад мой друг, в качестве хобби выращивавший дома клубнику, увлёк меня этой идеей. Я решил изучить практику высокотехнологичного сельского хозяйства, а затем методом проб и ошибок начал строить установку для безсубстратного выращивания клубники в закрытых помещениях - естественно, с желанием довести до состояния, при котором её можно масштабировать, а само выращивание будет максимально автоматизированным.
Вышло ли из этого что-то и что конкретно - под катом. Сразу предупрежу: статья огромная, потому что материала много. И очень много фото.
Шестиугольный город
Скриншот из игры «Cities: Skylines». Кликабельно
Данная статья является небольшим исследованием, затеянным после прочтения статьи о частном городе в России, а конкретно будет рассмотрена целесообразность постройки города из шестиугольников.
Так как я не то что не владею, но даже не знаю ни одной программы или другого профессионального инструмента для симуляции городов и передвижения транспорта в городах, я решил провести исследование в игре «Cities: Skylines», благо она вполне для этого подходит.
Если заинтересовались, добро пожаловать под кат.
Освещение растений белыми светодиодами
Рис. 1 Леанна Гарфилд, Tech Insider — Aerofarms
Какое нужно освещение, чтобы при умеренном энергопотреблении получить полноценно развитое, большое, ароматное и вкусное растение?
Солнце в коробке
«Это мой лучший друг: всегда в хорошем настроении и не задаёт лишних вопросов» — Леон о растении.
Не секрет, что зеленые друзья расползлись по подоконникам многих из нас, вот и мне захотелось вырастить у себя что-нибудь. Да не просто «что-нибудь», а что-нибудь плодоносящее. К сожалению, в квартирных условиях обеспечить необходимые для этого условия весьма непросто. Однако попытаться стоит. Так, и взбрела мне в голову мысль разработки устройства для решения этой задачи — умного гроубокса. Конечно, идея не нова, но найти что-нибудь интересное, да еще и настольного формата среди готовой продукции мне не удалось и захотелось соорудить кое-что своё. Дело дошло до версии 2.0 и вот, я готов поделиться полученными результатами.
Пока в вузах преподают люди, которые боятся кода и ненавидят разработку — никакого фундамента и базы мы не получим
Когда новички интересуются, с чего начать изучать программирование, им часто советуют именно вузы — там настоящий computer science, фундаментальные знания и вообще дорога в нормальную жизнь. Не то что надергать в интернете знаний и бежать программировать с умным видом, чтобы потом набивать шишки и позориться перед людьми с «настоящими знаниями».
Я может и не собирался писать код для передовых проектов NASA, но мне хотелось чтобы вуз помог мне научиться вникать в проблемы, которые изо дня в день решают профессиональные программисты. Нужно ли говорить, какую связь с реальностью я увидел в своем вузе? Думаю, все-таки нужно.
Поиск работы за границей и иммиграция в Канаду
Всем привет!
Я хотел бы поделиться своим опытом и ошибками, которые могут быть полезны всем, кто хотел быть жить и работать в другой стране.
TL;DR: Сейчас я живу в городе Виктория, на острове Ванкувер. Это Канада, Британская Колумбия. Свою мечту жить у океана я реализовал, но это заняло 5 лет, и сначала были совершенно другие планы. Более подробно ниже. Ниже картинка моих рабочих мест за последние 10 лет.
Меня всегда тянуло уехать куда-нибудь. Поначалу было все равно, я хотел лишь находиться в новом для себя месте, желательно не России. Это совершенно не связано с политическим климатом или еще чем-то. Я родился и учился в Москве, и Москва это офигенный город. С карьерой более-менее все хорошо было.
В студенческие годы мой отец, подсунул мне ссылку на world4u — это волонтерская организация по обмену. В 2007, 2008, 2009 я посетил Германию, Францию и Италию. В среднем программа была по 1-2 месяца и нужно было оплатить только за перелет. Именно эти европейские проекты оказали на меня влияние, я увидел мир, и понял, что это скучно прожить жизнь в одном месте, даже с комфортом. Картинка ниже очень хорошо передает мой основной мотив:
Это из детского рассказа про Улитку и Кита:
Начинаем рассказ (занимайте места!)
Про малютку улитку и великана кита.
Вот скала,
Где над морем улитка жила,
И вздыхала она то и дело:
-Как мне все надоело!
Мир огромен, а я тут сижу на скале,
А могла бы уплыть на большом корабле…
php-cs-fixer: Пишем свой фиксер
Качество кода не только в том, как он работает, но и в том как выглядит. То, что единый в рамках кампании code style — это очень важная вещь — в наши дни убеждать уже никого не нужно. Код должен быть не только написан, но и оформлен. В плане оформления PHP кода, утилита php-cs-fixer давно уже стала стандартом. Использовать ее довольно просто, есть куча правил и можно удобно забиндить ее запуск на какую-нибудь комбинацию клавиш в шторме или на pre-commit hook в гите. Все это легко гуглится и подробно разбирается в сотнях статей. А мы сегодня поговорим о другом. Хотя в php-cs-fixer есть большое количество разных фиксеров, но что, если нам понадобится такой, которого там нет? Как написать собственный фиксер?
DKIM — это просто
Хочу поделиться своим небольшим опытом прикручивания DKIM (DomainKeys Identified Mail) к своему домену и почтовому серверу.
Мы имеем:
- Платформа: Windows WebServer 2008;
- Сервер DNS: Bind 9.7;
- Почтовый сервер: hMailServer 5.3.3.
Задача:
- Разобраться в системе подписи сообщений DKIM, что бы gmail признал её валидной и выдал заветные: dkim=pass.
Email-рассылка со своего сервера: подводные камни
Конечно, если вы давно в теме, подобные советы могут показаться банальными и очевидными, но некий свод хитростей и подсказок будет полезен начинающим рассыльщикам.
Тимлид — Таков путь
Чтобы направить вас на веселую и праздничную ноту, хочу поделиться с вами примерами тернистого пути тимлида с отсылкой ĸ сериалу Мандалорец.
Если посмотреть его пока не было возможности, то январские праздники отличная возможность, чтобы это исправить.
Итак, немного о рабочих буднях тимлида:
- Берешь на работу джуна, учишь его, лелеешь. Вкладываешь в него силы и время, а через год он расправляет крылья и уходит искать лучшее место с зарплатой в три раза выше.
Таков путь. - Полгода отĸрыта ваĸансия на разработчиĸа без результата. На собеседования приходят мидлы, просят зарплату больше твоей и говорят, что уже есть офферы на эту сумму в других ĸомпаниях.
Таков путь.
Полное руководство по настройке HTTP-заголовков для безопасности
Компании, продающие "системы показателей безопасности", сейчас на подъеме, их влияние в сфере корпоративных продаж растет. К тому же есть те, кого низкий рейтинг безопасности у продавцов смущает, и те, кто хотя бы однажды, глядя на рейтинг, отказался от покупки, — я с такими людьми общался.
Я посмотрел, как эти компании вычисляют показатели безопасности других компаний. Оказалось, они смотрят на сочетание использования НТТР-заголовка для безопасности и репутации IP-адресов.
Репутация IP-адреса основывается на данных черных списков и списков спамеров в сочетании с данными о владельце общедоступного IP-адреса. Она, в принципе, должна быть чистой, если ваша компания не рассылает спам и в состоянии быстро определить и остановить вредоносное внедрение. Использование заголовка безопасности НТТР вычисляется аналогично тому, как работает Observatory от Mozilla.
Таким образом, рейтинг большинства компаний, в основном, определяется заголовками, включенными на общедоступных веб-сайтах для безопасности.
Небезопасные функции PHP
Холдинг Modesco — это более 300 инфосайтов и 5 крупных Интернет-сервисов. Проекты регулярно покупаются и продаются. Как вы понимаете, поддерживать качество кода на высоком уровне в данной ситуации физически невозможно. Да и основное внимание программистов, как правило, сосредоточено на самих сервисах. Взломы, shell, заражения сайтов прочими вредоносными штуками… Все это наносит ощутимый вред пользователям и компании. Чтобы избежать этого, частенько приходится искать довольно нестандартные способы для уменьшения рисков.
Миллион WebSocket и Go
Привет всем! Меня зовут Сергей Камардин, я программист команды Почты Mail.Ru.
Это статья о том, как мы разработали высоконагруженный WebSocket-сервер на Go.
Если тема WebSocket вам близка, но Go — не совсем, надеюсь, статья все равно покажется вам интересной с точки зрения идей и приемов оптимизации.
Семейный бюджет в Telegram
Прежде чем начать обзор, я бы хотел написать несколько строк о том, как мы с супругой пришли к ведению бюджета в Telegram.
Надо сказать, что необходимость ведения бюджета мы начали осознавать с первых дней после свадьбы. Сначала мы записывали наши доходы и расходы в простую ods-таблицу.
Но ведение такой таблицы уже через несколько месяцев показалось нам утомительным. Очень хотелось иметь более мобильный инструмент, позволяющий сохранять данные и выводить отчеты.
Тем не менее 5 лет мы усердно заполняли таблицу, в той или иной степени регулируя свои расходы. Потом был год перерыва, в течение которого мы еще раз убедились, что вести бюджет нужно.
В начале 2019 года мы снова решили вести бюджет, но возвращаться к заполнению ods-таблицы мы не хотели. Мы попробовали некоторые мобильные сервисы и пришли к выводу, что нам они не подходят.
Тогда я подумал, что для ведения бюджета было бы удобно использовать Telegram-бота, который принимал бы сообщения с числами или с математическими выражениями и распределял бы суммы по заранее настроенным категориям. Кроме того, хотелось иметь возможность направлять такому боту фотографии QR-кодов на чеках, чтобы бот сам распределял позиции в чеках по категориям. А для ведения семейного бюджета хорошо было бы создать отдельную группу в Telegram и добавить в неё бота.
Несколько месяцев мне потребовалось на реализацию и тестирование такого бота. Но, как говорится, «дорогу осилит идущий» — в августе 2019 года бот был реализован.
Telegram-бот @budgetmoneybot предоставляет пользователям возможность вести как личный, так и семейный бюджет.
Категории вместо директорий, или Семантическая файловая система для Linux
Классификация данных сама по себе интересная тема для исследований. Я люблю коллекционировать информацию, кажущуюся нужной, и всегда пытался делать логичные иерархии директорий для своих файлов, и однажды во сне я увидел красивую и удобную программу для назначения тэгов файлам, и решил, что дальше так жить нельзя.
Чему я научился на своём горьком опыте (за 30 лет в разработке ПО)
Это циничная, клиническая коллекция того, чему я научился за 30 лет работы в разработке программного обеспечения. Повторюсь, некоторые вещи весьма циничны, а остальное — результат долгих наблюдений на разных местах работы.
Symfony CLI — новый инструмент для локальной разработки
В декабре 2018-го, на конфиренции Lisbon SymfonyCon Фабиэн Потансье — создетель фреймворка Symfony представил некий symfony.phar — инструмент для быстрого создания Symfony-приложений на основе официальных шаблонов проекта: skeleton, website-skeleton или demo. Также он позволяет запускать локальный веб-сервер для разработки.
Затем инструмент был переписан на языке Golang, что позволило реализовать много дополнительных возможностей таких, как поддержка https протокола для локального веб-сервера, тесная интеграция с SymfonyCloud и прочее! Приглашаю тебя, уважаемый читатель, познакомиться с этим инструментом подробнее, поскольку он работает не только в контексте фреймворка Symfony.
HBO, cпасибо что напомнил… «Чернобыльская аптечка» беларуского фармацевта
Что бы ни дарили — не станем верить
Егор Летов «Как листовка»
Думаю не стоит лишний раз говорить о нашумевшем сериале Чернобыль и эффективности такого «сериального» воздействия на массы. Особенно на массы, проживающие на территориях, показанных в фильме. Выход каждой новой серии сопровождается всплеском публикаций в FB. В каждой из которых горечь, страх, боль. Что в такой ситуации я могу сделать ("
Ну и пишу, пишу, потому что стали забывать… Пугающе быстро стали забывать. Сначала в аптеках исчез йодид калия (я уж не говорю про описываемые в статье антидоты), потом так же неотвратимо исчезли льготы у ликвидаторов, знания у людей и т.д. и т.п.
В общем, спасибо, сценаристы HBO, за то, что всколыхнули Память. Мой посильный вклад — под катом. Рейтинг доступных (и не очень) антидотов, способных сработать при радиационном выбросе. В закладки — класть строго ВСЕМ! И прочитал сам — перекинь другу.
Apache Kafka и потоковая обработка данных с помощью Spark Streaming
Представим, что некая кредитная организация ставит перед нами задачу обработки входящих транзакций «на лету» по всем своим филиалам. Это может быть сделано с целью оперативного расчета открытой валютой позиции для казначейства, лимитов или финансового результата по сделкам и т.д.
Как реализовать этот кейс без применения магии и волшебных заклинаний — читаем под катом! Поехали!
(Источник картинки)
Information
- Rating
- Does not participate
- Location
- Киев, Киевская обл., Украина
- Date of birth
- Registered
- Activity