Pull to refresh
674
0
Владимир Юнев @XaocCPS

Chief Architect

Send message

Последовательные процессы в Workflow Foundation

Reading time10 min
Views6.8K
Всем привет! Сегодня мы наконец-то перейдем к практической части нашей мини-программы по изучению Workflow Foundation. В этой статье я немного подробнее остановлюсь на последовательных процессах (Sequential Workflow) и опишу пример создания приложения для резервного копирования файлов. Напомню, что это скорее пример работы с редактором, чем описание реального применения. Все описанное в практическом примере можно и нужно делать без использования WF. =)
Читать дальше →

Представления (VIEW) в MySQL

Reading time10 min
Views482K
В комментариях Хабра упоминались вопросы по использованию представлений. Данный топик является обзором представлений, появившихся в MySQL версии 5.0. В нем рассмотрены вопросы создания, преимущества и ограничения представлений.

Что такое представление?


Представление (VIEW) — объект базы данных, являющийся результатом выполнения запроса к базе данных, определенного с помощью оператора SELECT, в момент обращения к представлению.

Представления иногда называют «виртуальными таблицами». Такое название связано с тем, что представление доступно для пользователя как таблица, но само оно не содержит данных, а извлекает их из таблиц в момент обращения к нему. Если данные изменены в базовой таблице, то пользователь получит актуальные данные при обращении к представлению, использующему данную таблицу; кэширования результатов выборки из таблицы при работе представлений не производится. При этом, механизм кэширования запросов (query cache) работает на уровне запросов пользователя безотносительно к тому, обращается ли пользователь к таблицам или представлениям.
Читать дальше →

ADO.NET Entity Framework близкое юзание

Reading time6 min
Views21K
Тем, кто пишет запросы в коде страницы посвящается...

Приветствую всех!

На хабре есть немного информации о том, что в следующей версии VisualStudio 2008 будет ADO.NET EntityFramework. (Открою секрет, эта версия уже появилась.) Эта разработка представляет собой универсальный фреймворк, который позволяет создавать даталогику вашего проекта в пару кликов мыши.
До сих пор, работая с даталогикой, я сталкивался с 2 видами проектов. Первые были созданы на небезызвестном фреймворке NHibernate, другие реализовывали даталогику программистами. Я уже 3 года занимаюсь написанием и разработкой различных систем и всё это время разрабатывал логику работы с данными исключительно ручками.
И вот, на днях, после того, как я поставил новую винду, я скачал VisualStudio WebDeveloper Express, и с радостью обнаружил в комплекте поставки ADO.NET EntityFramework. Через некоторое время зарегистрировал домен, создал простенький сайт, и начал тренировать свои силы в написании программ под этот фреймворк.

Вперёд, к коду!

Плавающая контентная область сайта.

Reading time5 min
Views2.3K
Приветствую Хабр.
По мотивам cайта, сделанного сами знаете кем :)
В свое время увидел, такой эффект – слева сайта находятся ссылки, при клике на которые контентная область сайта плавно перемещается к указанному идентификатору. Эффект запомнился — решил повторить.
Для реализации плавного перемещения взял JQuery.

Читать дальше →

Интервью с Дмитрием Робсманом, создателем ASP.NET

Reading time7 min
Views2.8K
Дмитрий РобсманДмитрий Робсман работает в главном офисе Microsoft в Редмонде уже 12 лет. Он был первым разработчиком в команде ASP.NET. Был менеджером в команде динамических языков (DLR, IronPython, IronRuby) и в команде Visual Studio, где работал еще и над C#, VB.NET и F#. Среди его известных личных проектов — веб-сервер Cassini, полностью написанный на управляемом коде, и ASP.NET RSS Toolkit.

На «Платформе» его появление началось долгими аплодисментами. Инженер в джинсах и бейсболке, человек, увлеченный своим делом по-настоящему и понимающий его до мельчайших деталей. Я попросил его ответить на вопросы, которые хотели задать ему вы.
Читать дальше →

Оптические волокна. Классификация

Reading time4 min
Views174K
Оптические волокно стандарт де-факто при построении магистральных сетей связи. Протяженность волоконно-оптических линий связи в России у крупных операторов связи достигает > 50 тыс.км.
Благодаря волокну мы имеем все те преимущества в связи, которых не было раньше.
Вот и попробуем рассмотреть виновника торжества — оптическое волокно.

В статье попробую написать просто о оптических волокнах, без математических выкладок и с простыми человеческими объяснениями.

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

Читать дальше →

Версия 0.2.4: больше, лучше, быстрее

Reading time2 min
Views479
Много нового и просто хорошего:

  • Поддержка части CSS2/3.
  • Ускорение в 2 раза: быстрее последних Sizzle и Peppy.
  • Размер кода (min.gz): 1066 байтов.
  • Google Code SVN: code.google.com/p/yeasss .
  • Дизайн для yass.webo.in .

Читать дальше →

Data:URI CSS Sprites — современный подход к генерации CSS спрайтов

Reading time4 min
Views3.9K
Мучения со стандартным подходом применения CSS спрайтов, а именно трудности модернизации и в некоторых случаях сложности оптимальной компоновки заставили искать альтернативный вариант оптимизации загрузки изображений. Очередной раз почитывая хабра-статьи, наткнулся на интересный подход реализации спрайтов с применением data:URI. В ходе дискуссий и умозаключений были определены слабые и сильные стороны данного подхода. Одним из значительных недостатков нового подхода является сложность сборки конечного CSS. Однако, при использовании data:URI имеет место возможность автоматизации процесса.
Читать дальше →

Иерархические структуры данных и Doctrine

Reading time15 min
Views83K

Введение



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

В первую очередь, это связано с тем, что реляционные базы не приспособлены к хранению иерархических структур (как, например, XML-файлы), структура реляционных таблиц представляет из себя простые списки. Иерархические же данные имеют связь «родитель-наследники», которая не реализована в реляционной структуре.

Тем не менее, задача «хранить деревья в базе данных» рано или поздно возникает перед любым разработчиком.

Ниже мы подробно рассмотрим, какие существуют подходы в организации хранения деревьев в реляционных БД, а также рассмотрим инструментарий, который нам предоставляет ORM Doctrine для работы с такими структурами.
Читать дальше →

Издержки больших проектов или взгляд на программирование в команде изнутри

Reading time1 min
Views3.9K
Ни для кого не секрет, что разработка больших программных продуктов требует не только эффективного руководства, но и эффективных процессов, которым следуют все разработчики. На примере своей компании я постараюсь описать жизненный цикл проекта и цену его разработки и поддержки. Те, кто работает в небольших командах из нескольких человек, смогут сравнить и представить, что их ждет при увеличении штата или же чего они избежали, если расширяться не планируют. А в комментариях можно покритиковать, указать на ошибки и предложить альтернативы.

Итак, собственно, к делу.

Мы занимаемся системами электронной биржевой торговли, аналитикой рынка и поставкой маркет-данных в реальном времени. К таким системам предъявляются повышенные требования по надежности — каждая ошибка может привести к потере больших денег.
Читать дальше →

Silverlight 2. Интеграция с HTML и JavaScript

Reading time14 min
Views4.5K
Silverlighter
В начале хотелось бы поделиться интересной новостью. Мы при поддержке креативных дизайнеров из самарского Турбомилка запустили альфа-версию Сообщества пользователей Silverlight — сайт Сильверлайтер.

Кстати, Сильверлайтер — это не только участник сообщества, но и это замечательное существо с газовым свечением на картинке :)

Ну, а теперь, собственно, перейдём к самогй статье.
Здравствуйте дорогие читатели. Меня зовут Сергей Пугачёв. Я уже достаточно долгое время являюсь Silverlight разработчиком и активно пропагандирую данную технологию, поэтому меня часто спрашивают о том, как реализовать ту или иную возможность или функциональность. Данная статья является своего рода ответом на эти часто задаваемые вопросы. Это первая часть, она посвящена вопросам интеграции с HTML и JavaScript.

Читать дальше →

Идея для капчи. Генерация шрифта.

Reading time1 min
Views3K
Все методы создания капчи, что я видел, были основаны на использовании готовых шрифтов и их искажении. В итоге, админам спамботов нужно было только вовремя пополнять базы шрифтов и вертеть каждую букву примеряя её к букве на капче.
Но я придумал задачку значительно сложнее. Хотя это могло существовать и ранее, благо идея не такая уж сложно-приходящая.

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

image

Как оцениваете такой подход? Есть перспективы?

Введение в Microsoft Workflow Foundation

Reading time4 min
Views23K
Хочу предложить вашему вниманию серию статей, посвященных Microsoft Workflow Foundation. Данная технология представляет новый, более высокий, уровень абстракции в программировании под .net. Мы начнем с вводной статьи, описывающей предпосылки возникновения технологии, два основных вида рабочих процессов и средства разработки. В дальнейшем мы более подробно ознакомимся с различными аспектами Microsoft Workflow Foundation.

Заинтересовались — читайте дальше.
Читать дальше →

Opera 9.62 против Opera 10.0 alpha 1

Reading time2 min
Views908
4 декабря 2008 года увидела свет первая альфа версия Opera 10.0 на двиижке Presto 2.2. Подробнее об этом радостном событии и новшествах движка можно прочитать в статье написаной fidelich. А что дает пользователю новый движок в числовом выражении, я попытаюсь выяснить под катом.
Продолжить чтение

Безопасность (шифрование) трафика

Reading time5 min
Views102K
SSLПараллельно с развитием технологий защиты интернет-трафика от несанкционированного доступа развиваются и технологии перехвата защищенного трафика. Перехватить и изучить незашифрованный трафик пользователя уже давно не составляет труда даже для рядового юзера. Практически каждому известно слово «сниффер». Теоретически, защищенные SSL/TSL-соединения перехватить обычными средствами невозможно. Но так ли это?
Читать дальше →

Быстрая перекраска вещей на сайте

Reading time2 min
Views2K
image
Существуют моменты когда необходимо предоставить пользователям выбор цвета какой либо вещи. Есть несколько способов выхода из этой ситуации.

Здесь я покажу очень простой и незамысловатый способ быстрой перекраски, на примере iPod Shuffle.
Читать дальше →

Мирный XSS

Reading time3 min
Views9K
Эта статья о мирном атомеXSS. Заставим зло работать на добро!

А зачем?


Простейший пример всё объяснит:
Вы разрабатываете веб-сервис, который поставляет данные другим сайтам (погода, данные по торгам в реальном времени, чат и т.п). Вам нужно организовать кроссайтовую передачу данных(данные погоды, торгов, текст чата) на стороне клиента.

Методы организации XSS

  1. Через тэг iframe
  2. Через тэг script
  3. Через flash<->javascript
  4. Через window.name + iframe + form
  5. Через CSS хак
  6. Через canvas + img
  7. Через прокси
Реализация каждого метода

Сила и красота декораторов

Reading time5 min
Views83K
Одним из самых сложных для понимания и осознания элементов языка является декоратор, хотя по сути это очень простая вещь, доступная для понимания даже начинающему программисту. Новых Эверестов я не открываю, а лишь предлагаю краткий обзор возможностей и несколько типичных примеров использования. Этакий короткий экскурс в метапрограммирование на питоне.

Upd 1: изменил несколько категоричное утверждение о несходстве паттерна Декоратор и одноимённой языковой конструкции на более мягкое.

Читать дальше →

CDN своими руками или раздача видеоконтента

Reading time5 min
Views11K
[ Часть I. Доставка видеоконтента ] [ Часть II. CDN своими руками ]

В продолжение темы про доставку видеоконтента: мы обеспечили хранение и обработку контента, как теперь отдать контент таким образом, чтобы он оказался как можно “ближе” к потребителю? Большая часть статьи будет посвящена обобщенному подходу географически распределенной раздачи контента, а в конце в качестве примера описанный подход будет применен к доставке видеофайлов и вещаний конечным пользователям.

Кроме самого факта, что контент был доставлен пользователю, мы должны обеспечить качество доставки контента. Для FLV-файла видео это означает, что скорость, с которой он доставляется пользователю, должна быть выше либо равна битрейта потока, иначе видео у пользователя при просмотре будет «затыкаться».

Кроме того, имеет смысл «приблизить» контент к пользователю географически. Это связано с пропускной способностью каналов (отсутствием иногда хороших магистральных каналов), а также с разницей в стоимости локального и внешнего трафика для конечного пользователя (например, в регионах РФ).

Такой шаг необходимо сделать при желании выйти на международный рынок, а также при региональном развитии внутри РФ. Сегодня в регионах очень часто самыми популярными сайтами являются региональные порталы, которые предоставляют различные сервисы, в том числе и сервис видеохостинга, а их популярность обусловлена как стоимостью трафика, так и скоростью доступа/временем отклика. Можно представить, что пользователь готов подождать открытия страницы, загрузки плеера, но тяжело предположить, что пользователь согласится смотреть видео, которые прерывается из-за постоянной буферизации, или смотреть вещание, которое доходит до пользователя в виде слайдшоу (после пропуска пакетов остались только опорные кадры видео).

Таким образом, осознав необходимость географической распределенности для контента, мы покупаем/арендуем сервера в непосредственной близости от потребителя: в Европе, США, Украине, Екатеринбурге и т.д.

Что же делать дальше?

Делаем полноценный JS-прелоадер для AJAX-приложения

Reading time5 min
Views39K
Многие программисты оптимизируют JavaScript и CSS-код, чтобы страница грузилась быстрее.
Но не все они делают прелоадеры, которые дают пользователю эффект субъективно более быстрой загрузки.
хочу продолжения

Information

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