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

Пользователь

Отправить сообщение

Пудра для мозга или как сделать порошок для посудомойки в 9,7 раз дешевле

Время на прочтение11 мин
Количество просмотров288K


Update
Новый вариант порошка и более подробный разбор во второй части: DIY порошок для посудомойки: разбираем промышленные средства и улучшаем рецепт

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

Есть очень много областей нашей жизни, где наше представление формирует исключительно маркетинговый буллшит. Увы, большинство людей даже не пытаются задумываться о том, что лежит в основе всего этого. Очень часто рыночная ситуация приводит к тому, что себестоимость продукта составляет 0.5% от его цены. Остальное маркетинг, наценки, логистика, упаковка и тому подобное. Почти все в курсе про концепцию продажи чернил для принтера по цене слез гималайских девственниц и настойчивые рекомендации производителей использовать только оригинальные расходные материалы. Например, совсем недавно меня озарило, что 1.5 грамма сухого вещества во флаконе удобрений для растений не могут стоить 200-250 рублей. А ведь именно такое количество может уместиться в относительно стабильном состоянии в виде раствора. Я сразу представил себе гектары полей и грузовики, которые везут тонны порошка. В результате перешел на расфасовки по 1 кг Буйских комплексных сухих удобрений. Можно ванну раствора приготовить.

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

TLDR:

70% прокаленной соды и 30% стирального порошка вместо моющего средства.
Если очень лень возиться с содой, то просто порошок Биолан или его аналоги. Сода удешевляет.
Пищевая соль «Экстра» вместо соли.
Да начнутся адские эксперименты!
Всего голосов 159: ↑158 и ↓1+157
Комментарии447

Формат JDF. Автоматизация процессов в полиграфическом производстве

Время на прочтение5 мин
Количество просмотров7.3K

Предыстория


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

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

И тут появляется .jdf и CIP4


И вот в 1999 на помощь печатной индустрии пришёл консорциум CIP4, чьё название расшифровывается как “Cooperation for the Integration of PrePress, Press, PostPress and Process”.
Читать дальше →
Всего голосов 12: ↑11 и ↓1+10
Комментарии5

10 причин почему именно сейчас стоит попробовать Microsoft SQL Server

Время на прочтение6 мин
Количество просмотров45K

Причина №1 — Microsoft SQL Server теперь работает и под Linux


16 ноября 2016 года Microsoft опубликовал первую публичную кросплатформенную версию SQL Server VNext, которая теперь работает и под Linux: Public preview of the next release of SQL Server — Bring the performance and security of SQL Server to Linux and Windows


Читать дальше →
Всего голосов 27: ↑15 и ↓12+3
Комментарии105

Утки, Таиланд и T-SQL… или что может подстерегать программистов при работе с SQL Server?

Время на прочтение33 мин
Количество просмотров49K

Все начиналось довольно обыденно… Зачитывался Рихтером и усиленно штудировал Шилдта. Думал, что буду заниматься разработкой под .NET, но судьба на первом месяце работы распорядилась иначе. Один из сотрудников неожиданно покинул проект и во вновь образовавшуюся дыру докинули свежего людского материала. Именно тогда и началось мое знакомство с SQL Server.

С тех пор прошло чуть меньше 6 лет и вспомнить можно многое…

Про бывшего клиента Джозефа из Англии, который переосмыслил жизнь, за время отпуска в Таиланде, и в моем скайпе стал подписываться Жозефиной. Про веселых соседей по офису, с которыми приходилось сидеть в одной комнате: один страдал от аллергии на свежий воздух, а другой маялся от неразделенной любви к С++ дополняя это аллергией на солнечный свет. Один раз по команде свыше пришлось на время стать Александром отцом двух детей, чтобы изображать из себя обросшего скилами сениора по JS.
Подробнее
Всего голосов 76: ↑73 и ↓3+70
Комментарии48

Реализация индикатора производительности запросов, хранимых процедур и триггеров в MS SQL Server. Автотрассировка

Время на прочтение25 мин
Количество просмотров14K

Предисловие


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

Так как же определять состояния запросов? И как запускать трассировку при обнаружении проблем с запросами без участия человека?

В данной статье приведу реализацию индикатора производительности запросов, хранимых процедур и триггеров, а также их использование для запуска трассировки.
Читать дальше →
Всего голосов 22: ↑22 и ↓0+22
Комментарии12

Вычисляемые поля для любого LINQ-провайдера

Время на прочтение3 мин
Количество просмотров14K
Привет, Хабр!

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

Зачем это может понадобиться — под катом.
Читать дальше →
Всего голосов 38: ↑37 и ↓1+36
Комментарии16

Использование единого IoC Container'a в рамках HTTP-запроса между Web API и OWIN Middleware

Время на прочтение6 мин
Количество просмотров9K
Целью данной статьи является поиск рабочего решение, которое позволяет иметь единый контейнер зависимостей (IoC контейнер) на протяжении всего жизненного цикла запроса, контролировать его создание и уничтожение.

image

Читать дальше →
Всего голосов 19: ↑19 и ↓0+19
Комментарии65

Начальные грабли в работе с Service Bus for Windows Server

Время на прочтение11 мин
Количество просмотров6.2K
Есть у Майкрософта такая не очень известная вещь, как Service Bus for Windows Server. И так случилось, что в нескольких проектах подряд довелось с ней поработать. В итоге получилось собрать небольшой набор подводных камней, встречавшихся в проектах чаще других. Чем и делюсь.
Читать дальше →
Всего голосов 16: ↑16 и ↓0+16
Комментарии1

Разумное АОП для поклонников IOC-контейнеров

Время на прочтение8 мин
Количество просмотров19K
Я очень не люблю boilerplate. Такой код скучно писать, уныло сопровождать и модифицировать. Совсем мне не нравится, когда тот самый bolierplate перемешан с бизнес-логикой приложения. Очень хорошо проблему описал krestjaninoff еще 5 лет назад. Если вы не знакомы с парадигмой AOP, прочитайте материал по ссылке, он раскрывает тему.

Как на момент прочтения этой статьи, так и сейчас меня не устраивают ни PostSharp ни Spring. Зато за прошедшее время в .NET появились другие инструменты, позволяющие вытащить «левый» код из бизнес-логики, оформить его отдельными переиспользуемыми модулями и описать декларативно, не скатываясь при этом в переписывание результирующего IL и прочую содомию.

Речь пойдет о проекте Castle.DynamicProxy и его применении в разработке корпоративных приложений.
Следуй за белым кроликом
Всего голосов 11: ↑11 и ↓0+11
Комментарии29

Введение в ReactiveUI: изучаем команды

Время на прочтение19 мин
Количество просмотров32K
Часть 1: Введение в ReactiveUI: прокачиваем свойства во ViewModel
Часть 2: Введение в ReactiveUI: коллекции

Мы уже обсудили возможности ReactiveUI, связанные с работой со свойствами, выстраиванием зависимостей между ними, а также с работой с коллекциями. Это одни из основных примитивов, на базе которых строится разработка с применением ReactiveUI. Еще одним таким примитивом являются команды, которые мы и рассмотрим в этой части. Команды инкапсулируют действия, которые производятся в ответ на некоторое событие: обычно это запрос пользователя или какие-то отслеживаемые изменения. Мы узнаем, что можно сделать с помощью команд в ReactiveUI, обсудим особенности их работы и выясним, чем команды в ReactiveUI отличаются от команд, с которыми мы знакомы по WPF и его родственникам.
Но прежде чем перейти к командам, рассмотрим более широкие темы, касающиеся реактивного программирования в целом: связь между Task<T> и IObservable<T>, и что такое горячие и холодные последовательности.
Читать дальше →
Всего голосов 12: ↑12 и ↓0+12
Комментарии5

Введение в ReactiveUI: коллекции

Время на прочтение11 мин
Количество просмотров20K
Привет, Хабр!

Часть 1: Введение в ReactiveUI: прокачиваем свойства во ViewModel

В предыдущей статье мы поговорили про свойства во ViewModel, и что мы можем с ними сделать, используя ReactiveUI. У нас получилось привести в порядок зависимости между свойствами и собрать в одном месте вьюмодели информацию о том, какие в ней есть зависимости между свойствами.
В этот раз еще немного поговорим о свойствах, а затем перейдем к коллекциям. Попробуем понять, какие проблемы есть с обычными коллекциями, и зачем было создавать новые, с уведомлениями об изменениях. И, конечно, попробуем их использовать.
Приступим
Всего голосов 10: ↑10 и ↓0+10
Комментарии2

Введение в ReactiveUI: прокачиваем свойства во ViewModel

Время на прочтение8 мин
Количество просмотров51K
В своих C# проектах при реализации GUI я часто использую фреймворк ReactiveUI.

ReactiveUI — полноценный MVVM-фреймворк: bindings, routing, message bus, commands и прочие слова, которые есть в описании почти любого MVVM-фреймворка, есть и тут. Применяться он может практически везде, где есть .NET: WPF, Windows Forms, UWP, Windows Phone 8, Windows Store, Xamarin.

Конечно, если у вас уже есть опыт работы с ним, то что-то новое для себя вы здесь вряд ли найдете. В этой статье мы познакомимся с его базовыми возможностями, касающимися работы со свойствами во ViewModel, а в будущем, надеюсь, доберемся и до других, более интересных и сложных фич.
Поехали?
Всего голосов 12: ↑12 и ↓0+12
Комментарии15

Парсер математических выражений C# — опыт дилетанта

Время на прочтение31 мин
Количество просмотров38K
Компьютер и человек — как сложно нам понять друг друга. По сути, процесс программирования — это объяснение машине то, что ты от неё хочешь на понятном ей языке.

В качестве введения


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

Читать дальше →
Всего голосов 22: ↑19 и ↓3+16
Комментарии24

Чистый код под флагом АОП и ненавистный #ПредупреждаюНедвижимостьИзменился

Время на прочтение5 мин
Количество просмотров7.9K
Поддавшись общей истерии на хабре,

(а именно «Предупреждаю Недвижимость Изменился» переводит Гуглекс всеми любимый «I Notify Property Changed») по поводу уведомлений об изменении. Я решил посмотреть на сколько далеко продвинулось человечество в изобретении велосипедов.
Читать дальше →
Всего голосов 18: ↑11 и ↓7+4
Комментарии7

«Банда четырёх» была неправа, а вы не знаете, что такое делегирование

Время на прочтение6 мин
Количество просмотров71K
«Банда четырёх» была неправа, стандартная библиотека Ruby тоже ошибочна, и Rails – также. Но является ли нечто неправильным, если все так делают?

Да.

Книга «Банды четырёх» "Шаблоны проектирования" даёт нам общий словарь для понимания базовых шаблонов ООП. Она помогает нам использовать одинаковую терминологию при обсуждении софта. К сожалению, она же является причиной путаницы.

Они говорят: «композиция прежде наследования». Отлично, в этом есть смысл. Они говорят: «используйте делегирование». Отлично. Хотя в книге нет ни единого примера делегирования.

Делегирование – это приём, которому приписывают возможность внесения гибкости в программы. Обычно говорят, что делегирование – это способ достичь композиции. Но делегирование – это не то, что вы думаете, и «Банда четырёх» ввела вас в заблуждение. Хуже того, почти все упоминания о делегировании содержат лишь совместную работу объектов с пересылкой (forwarding) сообщений. Это примеры вызовов методов, а не делегирования.

Наверняка ваш учитель программирования сказал бы вам, что вам необходимо хорошо понимать основные концепции в программировании. И понимать их правильно.
Читать дальше →
Всего голосов 19: ↑11 и ↓8+3
Комментарии26

Трудный выбор грида для проектов на WPF

Время на прочтение21 мин
Количество просмотров62K
Перед нашей командой встала задача выбора для будущих проектов библиотеки WPF компонентов для быстрой разработки пользовательского интерфейса бизнес-приложений. Посылом к рассмотрению стало то, что стандартный грид (а это обычно большая часть функционала пользовательского интерфейса бизнес-приложения) не устраивает по многим параметрам. Много чего приходится допиливать напильником, изобретая очередной велосипед. Надоело! Мы решили сравнить гриды из каждой библиотеки и сделать обоснованный выбор.

Участники конкурса


Думаю, что список участников сравнения никого не удивит:

Кому интересно как это происходило, прошу под кат.
Много текста
Всего голосов 49: ↑41 и ↓8+33
Комментарии33

Entity Framework Code First в командной работе

Время на прочтение10 мин
Количество просмотров34K
От переводчика: Прекрасная статья на понимание механизма миграций в Entity Framework 6 и путей решения конфликтов миграций при работе в команде. Оригинал статьи: Code First Migrations in Team Environments.

Эта статья предполагает, что вы знакомы с Entity Framework и с основами работы с ним. Иначе сначала вам нужно прочитать Code First Migrations, прежде чем продолжить.

Налейте чашечку кофе, вам нужно прочитать всю статью


В командной работе проблемы в основном связаны со слиянием миграций, созданных двумя разработчиками в их локальных базах данных. В то время как шаги, для решения этих проблем довольно просты, они требуют, четкого представления о том, как работают миграции. Пожалуйста, не торопясь, прочитайте внимательно всю статью.
Читать дальше →
Всего голосов 13: ↑11 и ↓2+9
Комментарии3

Миграция Windows между BIOS <-> UEFI

Время на прочтение2 мин
Количество просмотров85K
Появляется такая задача не часто, но все-же, нужно преобразовать уже установленную систему, загружаемую в BIOS (или UEFI режиме) в UEFI режим (в BIOS соответственно).
Кому интересно, читаем далее:
Читать дальше →
Всего голосов 23: ↑20 и ↓3+17
Комментарии40

Lamptest.ru: протестировано 557 ламп

Время на прочтение3 мин
Количество просмотров27K
Летом я запустил проект по тестированию светодиодных ламп lamptest.ru. Я планировал тестировать по 10-15 ламп в месяц, но получилось совсем по-другому. Протестировано уже 557 ламп (из них 17 люминесцентных, 59 ламп накаливания, все остальные светодиодные). Такое большое количество ламп удалось протестировать благодаря успешному народному сбору средств (краудфандингу), который продолжается и сейчас.



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

Читать дальше →
Всего голосов 42: ↑41 и ↓1+40
Комментарии127

EDI стандарт. Технический обзор

Время на прочтение9 мин
Количество просмотров34K
EDI стандарт (Electronic Data Interchange) — часть старых, устоявшихся систем. Но мы постоянно видим, как EDI представляют, как современный стандарт. Так ли это? Надо ли нам рассматривать EDI в качестве базовой технологии для новых проектов?
Давайте посмотрим на EDI с технической точки зрения, отбросив все остальное.
Читать дальше →
Всего голосов 6: ↑5 и ↓1+4
Комментарии34

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность