Pull to refresh
6
@ByTheWayread⁠-⁠only

User

Send message

Мифы нашего времени: генетически модифицированные организмы. Так ли страшен черт?

Reading time21 min
Views573K
Человеку давно свойственно интересоваться окружающим миром и находить объяснения тому окружающим вещам и событиям. Собственно, без этого человек не стал бы человеком. На базе верований, мифов развивалась сначала религия, а потом — и современная наука, которая уже весьма успешно объясняет окружающий мир от очень малых до впечатляющих масштабов. Но всегда оставались люди, которые противились прогрессу и распространяли устоявшиеся мифы, уверяя, что они отвечают на все вопросы и незачем двигаться дальше. Гром гремит — это Перун-громовержец злится; кто-то заболел — это Бог его наказывает, вот тебе объяснения, отстань, не задавай вопросов, а лучше помолись.
Современные мифы более глубоки и обычно связаны с наукой. Причины понятна — наука развилась (особенно в последнее время) до такой степени, что часто нужен колоссальный объем знаний, чтобы просто понять, о чем вообще идет речь. У многих людей этого объема нет или безвозвратно потерян, что и снижает их сопротивляемость к разного рода мифам нашего времени. Миф про вредность пищевых добавок Exxx; миф про полезность натурального и вредность «химии»; миф про врачей-убийц, травящих людей прививками; миф про настолько страшное ГМО, что наклейки с надписью «без ГМО» надо клеить даже на салфетки и на пачки с солью.
Картинка для привлечения внимания
Что такое ГМО? Зачем они нужны? Как велика опасность и польза от их использования? Есть ли доказательства безопасности этих организмов?
Рассуждения дилетанта на тему - под катом
Total votes 319: ↑291 and ↓28+263
Comments832

Вот такая госуслуга

Reading time2 min
Views1.9K
Привет, Хабр!

Хочу описать свою историю загран паспорта через сайт, так сильно пропиаренный в интернете gosuslugi.ru
Начну с того, что регистрировался я там для нескольких целей:

1) Получения загран паспорта
2) Интереса
3) И обязательно для описания своего опыта на Хабре.

Скажу сразу, что времени мне этот сайт не сэкономил, а скорее прибавил.

Читать дальше →
Total votes 143: ↑112 and ↓31+81
Comments111

Как я получал загранпаспорт через gosuslugi.ru

Reading time3 min
Views6.7K
После открытия портала, решил я проверить как оно работает и заказать себе загранпаспорт через интернет. Получился вполне себе приличный квест.

Читать дальше →
Total votes 196: ↑194 and ↓2+192
Comments272

Используем Google Voice Search в своем приложении .NET

Reading time3 min
Views130K


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

Так как исходный Chromium открыт, возникает закономерное желание подсмотреть, можно ли использовать технологию в своих корыстных целях наступления мира на земле.

Как это часто бывает, все уже сделано за нас в этой статье. Все оказывается очень просто, необходимо сделать POST запрос на адрес www.google.com/speech-api/v1/recognize со звуковыми данными в формате FLAC или Speex. Реализуем демонстрацию распознавания WAVE-файлов с помощью C#.

Читать далее
Total votes 80: ↑72 and ↓8+64
Comments25

Графы для самых маленьких: Ford & Bellman или как понять, что ты попал в бесконечно далекое прошлое

Reading time3 min
Views59K
В предыдущих частях цикла мы рассмотрели алгоритмы DFS и BFS, позволяющие найти путь в графе и обладающие рядом других интересных свойств. Но в жизни очень часто оказывается, что гораздо проще выглядит модель задачи в виде графа с неодинаковыми длинами ребер. Поиском кратчайшего пути во взвешенном графе мы и займемся под катом.
Читать дальше →
Total votes 30: ↑27 and ↓3+24
Comments5

Пишем сложное приложение на knockoutjs

Reading time8 min
Views47K
Есть такая библиотека knockout.js. Она отличается от прочих хорошим туториалом для начинающих и кучей понятных рабочих примеров. Еще там стройная MVVM модель, декларативные связи и так далее.

Короче, если вы, как и я, поиграли с этой библиотекой, понаписали красивых формочек, и вам это понравилось, то все это дело захотелось применить на реальном проекте. И тут проблема — в реальном проекте формочек больше чем одна. А раз такие инструменты, то хочется single web page application и никак иначе. А делать один контроллер и все темплейты заверстывать на одну страницу тоже тупо и тормозно.

Под катом приведу основу своего сложного приложения. Само оно совсем не сложное, но модульное и допускает расширения, а темплейты и модели подгружаются динамически. Идея была подсмотрена в этой презентации — http://www.knockmeout.net/2012/08/thatconference-2012-session.html, код презентации выложен на github — https://github.com/rniemeyer/SamplePresentation — на базе этого кода будем писать свой.
Читать дальше →
Total votes 43: ↑38 and ↓5+33
Comments21

Легкая прогулка от функтора через монаду к стрелке

Reading time8 min
Views28K

Давайте совершим прогулку по цепочке Pointed, Functor, Applicative Functor, Monad, Category, Arrow, в процессе которой я попытаюсь показать что все это придумано не для того что бы взорвать мозг, а для решения вполне реальных проблем, притом существующих не только в haskell. Большая часть кода написана на C#, но думаю и без его знания можно будет понять что к чему.
Читать дальше →
Total votes 55: ↑43 and ↓12+31
Comments152

Материалы онлайн конференции .NET разработчиков

Reading time6 min
Views2.8K
4-я .NETconf прошла 28 апреля 2012 и первый раз была в онлайн формате. Это позволило принять участие разработчикам, которые не могли прилететь на 3 предыдущие встречи. За время трансляции 7-ми выступлений в конференции приняли активное участие 508 человек.

Ниже выложены 6 докладов и один мастер-класс с видео, слайдами и ссылками на исходный код.

Читать дальше →
Total votes 32: ↑31 and ↓1+30
Comments10

Равномерное выравнивание блоков по ширине

Reading time4 min
Views19K
Продолжая свои «css-раскопки» возникла новая идея, разобрать по косточкам ещё одну актуальную тему, которая касается равномерного выравнивания блоков по ширине. В принципе мои доскональные исследования я уже запостил у себя в блоге, но так как прошлая моя работа очень понравились Хабра-сообществу, то я решил сделать здесь небольшой краткий обзорчик этой статьи, чтобы ни одна хабра-душа не пропустили её наверняка. Так что, как говорил Гагарин: «Поехали».

В общем в задачах вёрстки периодически возникают моменты, когда появляется необходимость выровнять какой-нибудь список по ширине экрана. При этом пункты этого списка должны выравниваться равномерно, прижимаясь своими крайними элементами к границам контейнера, а расстояние между ними должно быть одинаковым.
image
Читать дальше →
Total votes 172: ↑163 and ↓9+154
Comments87

Backbone.js для «чайников»

Reading time13 min
Views288K
Backbone.js для чайников
Как то поздним вечерком мне пришла мысль изучить Backbone.js и привязать его к уже написанному на jQuery сервису. Сервис уже серьёзно расширился и меня достало это нагромождение обработчиков кликов, запросов и логики. Поэтому, я как усердный школьник полез в официальную документацию. Но либо я тупой, либо мой английский меня подкачал, либо то и другое вместе, но я не черта не понял. Я прочитал уже второй раз, внимательно, и для особо одарённых мест использовал google translate. Прочитал также и пример ToDo List. Всё показалось понятно, ровно до той поры пока я не стал писать. После чего я взял всё что нашел по этой библиотеке, как на английском так и переводы. Прочтя кипу документации я решил, что сейчас вроде всё понял. Я напрягся, но… Не вышел каменный цветок у мастера Данилы, т.е. вышло, но это явно был не цветок, и камень как то неправильно пах. Тогда, как прилежный ученик, я решил написать «Hello, KittyWorld» с нуля. Попутно комментируя и сохраняя шаги в hg, у меня получилось введение в backbone.js framework для таких как я, особо одарённых.
Данные 7 шагов с комментариями.
Total votes 113: ↑110 and ↓3+107
Comments51

Миграции БД для .NET — новый ECM7.Migrator

Reading time1 min
Views4.1K
О проблеме внесения изменений в БД в ходе разработки приложения писали на Хабре много раз.
Версионная миграция БД — удобный подход к решению проблемы.

Уже долгое время я участвую в разработке ECM7.Migrator — инструмента для автоматизации изменений БД. О том, как его использовать и почему это удобно, мы писали здесь.

8 месяцев назад мы выпустили версию 2.0, а на этой неделе вышла версия 2.6. По сравнению с версией 2.0 многое изменилось.
  • Полностью переписаны классы всех провайдеров: API стал проще и удобнее, все методы работают адекватно (а для проверки адекватности было написано большое количество модульных тестов);
  • Поддержка SQL Azure и Firebird;
  • Методы Up и Down переименованы в Apply и Revert, реализовывать Revert не обязательно;
  • Обработка разделителей запросов (например, «GO» для MSSQL);
  • Возможность работы со схемами БД (отличающимися от схемы по умолчанию);
  • … и много других мелких доработок.

Попробуйте наш новый мигратор и, возможно, он понравится вам так же, как нравится нам!
Взять новую версию можно в google code и в галерее пакетов nuget.
Total votes 24: ↑22 and ↓2+20
Comments6

Отображение веб-форм в разных ОС

Reading time4 min
Views4.2K
Это статья — небольшое исследование того, как рендерят браузеры стандартные веб-формы в разных операционных системах. Мы будем говорить именно о стандартных, дефолтных формах и не коснемся распространенных сейчас форм с png-подложками и сильно измененным CSS и JS.

Читать дальше →
Total votes 50: ↑42 and ↓8+34
Comments56

Реализация одностраничного приложения средствами History API в ASP.NET MVC

Reading time11 min
Views9.9K
Добрый день уважаемые хабаровчане. На сайте уже не раз поднимался вопрос о проблеме создания одностраничных ajax приложений. С такой задачей некоторое время назад столкнулся и я. Однако я недоумевал, почему обладая возможностями html5 и мощью MVC я должен столько всего прописывать вручную, да еще и с помощью js.

Возможно именно [holywar=on]неприязнь к языку js[holywar=off] побудили меня создать простое решение, опирающиеся на возможности ASP.NET MVC. Далее, я подробно опишу проблемы, которые возникают при попытке создать одностраничное ajax приложение, и поэтапно рассмотрю создание полноценного решения.

Если стало интересно — добро пожаловать под кат (код и картинки прилагаются).
Читать дальше →
Total votes 33: ↑27 and ↓6+21
Comments19

IoC, DI, IoC-контейнер — Просто о простом

Reading time4 min
Views458K
Думаю сейчас слова IoC, DI, IoC-контейнер, как минимум у многих на слуху. Одни этим активно пользуются, другие пытаются понять, что же это за модные веяния.

На данный момент, на эту тему уже довольно сказано, написано, в том числе и на хабре, но как раз из-за обилия информации сложно найти действительно полезный контент. Кроме того, данные понятия часто смешивают и/или путают. Проанализировав множества материалов я решил изложить вам свое видение предмета.
Читать дальше →
Total votes 41: ↑31 and ↓10+21
Comments28

Учебный курс. Создание сложной модели данных для приложения ASP.NET MVC, часть 1

Reading time6 min
Views12K
Это продложение цикла статей, посвященого разработке с помощью Entity Framework и ASP.NET MVC 3. Первые главы вы можете найти по следующим ссылкам:
В предыдущих уроках вы научились работать с простой моделью данных, состоящей из трёх сущностей. В этом уроке вы добавите несколько сущностей и связей между ними и научитесь работать с аннотациями для управления классами моделей.

Результат будет выглядеть так:

image

Читать дальше →
Total votes 32: ↑27 and ↓5+22
Comments6

Руководство по созданию Excel add-in для начинающих

Reading time5 min
Views48K
Здравствуй, %username%!

Недавно мне пришлось по долгу службы писать небольшой Excel add-in. К слову, до этого мой опыт работы с MS Office из-под .NET сводился к простеньким утилитам, генерировавшим отчеты в Excel при помощи Office Primary Interop Assemblies. А уж когда контора купила лицензии на Aspose.NET, взаимодействие с офисом через COM было забыто аки страшный сон. Так вот, начав разбираться в теме, я был неприятно удивлен отсутствием вменяемых русскоязычных туториалов для начинающих. Теперь хочу заполнить этот пробел. В качестве примера мы создадим add-in, который по нажатию кнопки генерирует на текущем листе список дней текущего месяца и выделяет выходные дни. Заинтересовавшихся прошу под кат!
Читать дальше →
Total votes 31: ↑29 and ↓2+27
Comments11

Создание Push Notification сервиса на основе WCF REST

Reading time5 min
Views13K
В качестве вступления

Модель push-нотификаций является распространённой моделью для обмена сообщениями. Она подразумевает не получение информации по запросу, а немедленную её передачу отправителю при появлении этой информации на сервере.

Стандартный подход с ипользованием wsDualHttpBinding

Возможность создания push-механизма предоставляет и WCF. Этот фреймворк позволяет создать push-сервис с использованием wsDualHttpBinding контракта. Такой контракт позволяет для каждого запроса определить метод обратного вызова, который будет вызван при наступлении какого-либо события.
Если применить этот механизм к системе обмена сообщениями, то получим следующий алгоритм:
Читать дальше →
Total votes 32: ↑29 and ↓3+26
Comments16

Собственная страница ошибки 404 на ASP.NET MVC

Reading time6 min
Views27K
При разработке проекта на ASP.NET MVC возникла необходимость сделать собственную страницу ошибки 404. Я рассчитывал, что справлюсь с этой задачей за несколько минут. Через 6 часов работы я определил два варианта ее решения разной степени сложности. Описание — далее.
Читать дальше →
Total votes 36: ↑29 and ↓7+22
Comments28

Неявно типизированные поля в C#

Reading time4 min
Views11K
Сегодня на кывте был задан очередной весьма интересный вопрос о том, почему в языке C# существуют неявно типизированные локальные переменные (implicitely-typed local variables) a.k.a. var, но нет неявно типизированных полей?

На самом деле, такое положение дел вовсе не случайно; так что давайте рассмотрим несколько причин, почему компилятор ведет себя именно так, а не иначе.
Читать дальше →
Total votes 38: ↑29 and ↓9+20
Comments55

Получение через IMoniker объекта Range, скопированного из Excel в буфер обмена

Reading time5 min
Views2.1K
Год назад в нашей компании возникла задача написать на C# приложение для импорта данных из Excel, в том числе с помощью буфера обмена и drag'n'drop. Excel при копировании в буфер кладет туда данные в нескольких форматах. Часть из них стандартные типа CF_TEXT, CF_CSV и т.п. Однако, если нужно иметь дело с объединенными ячейками и прочими радостями, то может понадобиться получить доступ непосредственно к объекту Range, который был перетащен или скопипастен. Для этого нужно воспользоваться форматом CF_LINKSOURCE и лежащим в нем интерфейсом IMoniker. О том, как это сделать, читайте под хабракатом.
Читать дальше →
Total votes 30: ↑22 and ↓8+14
Comments0

Information

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