Pull to refresh
34
0
Калантырь Сергей @Kalantyr

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

Send message

Электродневник

Reading time3 min
Views2.2K
Года два назад сделал на Silverlight для личного пользования вэб-приложение для ведения личного дневника. Для тех кому это нужно — хочу поделиться своим решением.

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

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

Попробовать в действии можно тут: www.kalantyr.ru/Diary без каких-либо регистраций.

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

Предваряя сомнения: возможно, кто-то скажет, что вот сейчас приложение ничего никуда не отправляет, а через пару месяцев тихо начнет… Если кому нужно — я могу выслать исходники, мне не жалко. Или просто готовый скомпилированный xap-модуль — выкладывайте на свой хостинг и пользуйтесь на здоровье.

Скриншоты и технические подробности...
Total votes 18: ↑12 and ↓6+6
Comments21

C# — «Множественное наследование» в свойстве класса (или параметре функции)

Reading time2 min
Views31K
Топик родился из вопроса Множественное наследование в C# для свойств (или параметров функций). Прочитав по совету shedal статью, придумал способ как в C# в качестве типа указать несколько интерфейсов.

В C# можно сделать так, чтобы класс реализовывал несколько интерфейсов. А если нужно чтобы несколько интерфейсов реализовывало свойство? Не создавать же каждый раз для этого новый тип?

Итак, дальше - простой пример решения
Total votes 16: ↑8 and ↓80
Comments12

Почему бы не выводить простое предупреждение?

Reading time1 min
Views521
Для регистрации на различных сайтах нас обычно просят ввести адрес почты и пароль. И многие пользователи вводят тот же пароль, который используется для входа в почту.

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

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

Думаю — это будет честно по отношению к «чайникам». Ведь пишут же предупреждения вида «пароль должен быть не менее 8 символов и содержать цифры...».

P. S. Понятно, что «опытные пользователи» этой проблемы не имеют — либо используют специально выделенные для этого почтовые ящики «которые не жалко», либо используют разные пароли, либо периодически меняют почтовый пароль (зависит от степени паранойи).
Total votes 24: ↑15 and ↓9+6
Comments43

Быстро поднятое упавшим не считается

Reading time2 min
Views756
Речь пойдет о важности тщательного тестирования ПО в двух разных случаях:
  1. когда дальнейшая поддержка продукта затруднительна
  2. когда разработка и поддержка продукта слиты в единый процесс

Для удобства первый вариант я дальше буду называть “Offline”, а второй — “Online”.

Основная мысль статьи — для варианта “Offline” наличие качественного тестирования жизненно необходимо, для варианта “Online” — хорошо отлаженный процесс разработки важнее тщательного тестирования.

Читать дальше →
Total votes 9: ↑7 and ↓2+5
Comments3

Закономерные случайности

Reading time3 min
Views4.3K
Увлекаясь компьютерной графикой, заметил, что комбинация правил и случайности может давать неожиданно красивые результаты.

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

Еще подметил, что многократное повторение даже неказистых форм создает гармоничные рисунки, если видеть их целиком.





Красиво, но траффик...
Total votes 152: ↑145 and ↓7+138
Comments84

Софт — борьба за выживание

Reading time3 min
Views671
Будучи программистом, немного увлекаюсь этологией, которая базируется на открытых Чарльзом Давином принципах естественного отбора. И вот я подумал — а что если провести параллели и взглянуть на мир ИТ через призму дарвинизма?

Основная мысль такая: в мире технологий действует тот же закон, что и в мире животных и растений — условием выживания является способность легко приспосабливаться к меняющейся окружающей среде.

Читать дальше →
Total votes 19: ↑12 and ↓7+5
Comments31

Модульное тестирование — личный опыт

Reading time2 min
Views8.4K
Лет пять назад я узнал про модульное тестирование. Как любой нормальный программист, загорелся идеей и ринулся ее реализовывать, попутно перечитал кучу восторженной теории и скептической критики. Так постепенно накапливался практический опыт применения технологии в реальной жизни, в крупных рабочих проектах.

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

Читать дальше →
Total votes 62: ↑42 and ↓20+22
Comments50

Русские идентификаторы в коде

Reading time4 min
Views12K
Речь пойдет об использовании в программном коде названий (классов, переменных, методов) на родном языке (в моем случае — на русском).

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

Читать дальше →
Total votes 46: ↑16 and ↓30-14
Comments133

Information

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