Pull to refresh
85
0
Кирилл Орлов @DiverOfDark

Разработчик / DevOps

Send message

BudgetTracker — ещё один open-source инструмент для личного учета финансов

Reading time5 min
Views12K

Почему?


Несколько лет назад я заинтересовался получением пассивного дохода и решил попробовать инвестировать с помощью p2b-площадок. Через некоторое время стало заметно, что денежные средства оказались очень сильно фрагментированы по площадкам, банкам, долгам, и это затрудняло понимание ситуации. Я не мог ответить на два самых главных вопроса:
Сколько у меня денег?


Какой тренд? Я богатею, или беднею?


КДПВ

image

Читать дальше →
Total votes 24: ↑23 and ↓1+22
Comments15

ObjectRepository — .NET in-memory repository pattern для ваших домашних проектов

Reading time6 min
Views7.2K

Зачем хранить все данные в памяти?


Для хранения данных сайта или бекэнда первым желанием большинства здравомыслящих людей будет SQL база данных. 


Но иногда в голову приходит мысль что модель данных не подходит для SQL: например, при построении поиска или социального графа нужен поиск по сложным связям между объектами. 


Хуже всего ситуация, когда работаете в команде, и коллега не умеет строить быстрые запросы. Сколько времени вы потратили на решение проблем N+1 и на построение дополнительных индексов, чтобы SELECT на главной странице отрабатывал за разумное время?


Другим популярным подходом является NoSQL. Несколько лет назад был большой хайп вокруг этой темы — для любого удобного случая разворачивали MongoDB и радовались ответам в виде json-документов (кстати, сколько костылей пришлось вставить из-за циклических ссылок в документах?).


Почему бы не попробовать хранить все данные в памяти приложения, периодически сохраняя в произвольное хранилище (файл, удаленная база данных)? 

Читать дальше →
Total votes 21: ↑20 and ↓1+19
Comments16

Интегрируем TeamCity с JIRA – без плагинов и администраторов

Reading time6 min
Views7.1K
Мы разрабатываем большое модульное UI-приложение, состоящее из большого количества плагинов с разными циклами релиза. Весь код располагается в одном репозитории, так что к разработчикам постоянно приходит QA-специалист и спрашивает: «А какой компонент поменялся? Какую версию выкладывать, чтобы проверить задачу?». Вопрос оказался актуален не только на UI (C#), но и на backend (Java). После наших опрометчивых обещаний все писать ручками я предложил автоматически формировать нужный список на базе изменившихся файлов в момент merge pull-request-а. В этой статье мы расскажем, как организовали это через расширение функциональности сборок на TeamCity (TC) без администраторских прав на сервере и установки внешних плагинов.

Читать дальше →
Total votes 20: ↑17 and ↓3+14
Comments0

Каталог квестов в реальности в Москве

Reading time1 min
Views6.6K
Год назад в Москве появились первые два квеста в реальности — «Советская Квартира» и «Психиатрическая больница» от Клаустрофобии. Все очень просто — вас запирают на час в помещении и вам надо найти выход. Никакой грубой силы, только адреналин, поиск вещей, и попытки придумать что со всем этим делать.

Спустя год у меня за спиной 37 пройденных квестов, куча ответов на вопросы вида “посоветуй куда сходить”, “а что это за квест”, и т.д.
Где-то после 15-го квеста мне стало лень запоминать где я был, а где нет, да и о пройденных квестах начал забывать, поэтому начал делать свой небольшой портал где можно было отмечать где я был и соревноваться с друзьями.

Так начал появляться мой хобби-проект — EscapeTeams. Это такой каталог квестов, в котором можно отмечать квест где ты уже был, оставить о нем отзыв, и посмотреть список что еще не пройдено.
Читать дальше →
Total votes 14: ↑12 and ↓2+10
Comments8

Вход в систему по подключению определенной флешки

Reading time9 min
Views39K
Одним ужасным пятничным вечером мне стало интересно как реализован вход в систему(Windows 7) по отпечатку пальца, так часто использующийся на ноутбуках. Что меня большего всего интересовало – как сделана такая прозрачная интеграция с WinLogon(механизм входа в систему).

С помощью знакомого я узнал что сие называется Credential Provider(по крайней мере начиная с Vista, до неё – был другой механизм). И тут-то я вспомнил что давно хотел сделать чтобы система разблокировалась при подключении одной определенной флешки. Поэтому я захотел быстренько наваять такой проект.
читать дальше
Total votes 147: ↑135 and ↓12+123
Comments63

WPF4 и Taskbar в Windows 7: Кнопки предпросмотра(Thumbnail buttons)

Reading time15 min
Views2.4K
У панели задач Windows 7 есть много способов для приложений предоставлять уникальную информацию чтобы сделать UX ещё круче. Одна из них рассматривается в этой статье — кнопки панели предсмотра на таскбаре.

Существует вероятность что вы уже используете несколько приложений использующих эту функциональность. Вот скриншот приложения Zune с 4мя кнопками предпросмотра.


Читать дальше
Total votes 80: ↑56 and ↓24+32
Comments28

Ограничение маршрутов в ASP.NET MVC

Reading time3 min
Views5.1K
Одна из реально удобных вещей в расширяемости ASP.NET MVC — это возможность накладывать ограничения и писать собственные ограничения для ваших маршрутов. Я склонен считать что добавление ограничей маршрутов(когда это возможно) — это отличная практика. Почему бы когда невалидные значения маршрута передаются в ваше приложение не позволить фреймворку ASP.NET MVC и модулю маршрутов самим заняться валидацией?

узнать подробнее
Total votes 28: ↑17 and ↓11+6
Comments3

Как сплагиатить удобную утилиту для показа зарядки ноутбука?

Reading time4 min
Views2.1K
Всё началось с того что я увидел утилиту от IBM/Lenovo для показа заряда батареи ноутбука в непривычном месте — в таскбаре/супербаре, но не в виде значка, а как панель(аналогичные используются для управления проигрывателями iTunes, WMP, Zune):



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

Именно так я решил написать своё решение. Писать будем на C++. Я писал в Visual Studio 2010, можно использовать предыдущие версии. Главное — наличие установленного Windows SDK(ставится отдельно от студии, доступен бесплатно, скачать можно например тут)

Вот что у меня получилось:

Моя панелька
Читать дальше →
Total votes 40: ↑36 and ↓4+32
Comments40

C# 4.0, и несуществующие методы

Reading time6 min
Views3.3K
Предупреждение: Нижеследующее многие сочтут извращением с C#. Возможно конечно это и не так, но я Вас предупредил:).

В Ruby есть интересная особенность для перехвата вызовов несуществующих методов. В таких случаях Ruby вызывает метод вашего класса с названием «method_missing». Автор этого текста показывал пример этого на IronRuby в другой статье.

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

Не было до текущего момента!(Барабанная дробь)
Читать дальше →
Total votes 42: ↑31 and ↓11+20
Comments26

C# + WPF + сторонние сборки -> один .exe-шник

Reading time3 min
Views25K
Бывает приходится разработать маленькое приложение на C# и WPF, однако в следствие использования сторонних сборок(например SharpZipLib, Unity) — получается так что на выходе у нас кроме нашего маленького .exe-шника получается ещё и куча .dll-ок, а нам нужно чтобы был именно один .exe-шник.
Читать дальше →
Total votes 18: ↑14 and ↓4+10
Comments12

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity