Search
Write a publication
Pull to refresh
14
0
graycrow @graycrow

User

Send message

WebSockets — полноценный асинхронный веб

Reading time7 min
Views347K
Пару недель назад разработчики Google Chromium опубликовали новость о поддержке технологии WebSocket. В айтишном буржунете новость произвела эффект разорвавшейся бомбы. В тот же день различные очень известные айтишники опробовали новинку и оставили восторженные отзывы в своих блогах. Моментально разработчики самых разных серверов/библиотек/фреймворков (в их числе Apache, EventMachine, Twisted, MochiWeb и т.д.) объявили о том, что поддержка ВебСокетов будет реализована в их продуктах в ближайшее время.
Что же такого интересного сулит нам технология? На мой взгляд, WebSocket — это самое кардинальное расширение протокола HTTP с его появления. Это не финтифлюшки, это сдвиг  парадигмы HTTP. Изначально синхронный протокол, построенный по модели «запрос — ответ», становится полностью асинхронным и симметричным. Теперь уже нет клиента и сервера с фиксированными ролями, а есть два равноправных участника обмена данными. Каждый работает сам по себе, и когда надо отправляет данные другому. Отправил — и пошел дальше, ничего ждать не надо. Вторая сторона ответит, когда захочет — может не сразу, а может и вообще не ответит. Протокол дает полную свободу в обмене данными, вам решать как это использовать.

Я считаю, что веб сокеты придутся ко двору, если вы разрабатываете:
— веб-приложения с интенсивным обменом данными, требовательные к скорости обмена и каналу;
— приложения, следующие стандартам;
— «долгоиграющие» веб-приложения;
— комплексные приложения со множеством различных асинхронных блоков на странице;
— кросс-доменные приложения.

Заинтриговал? Давайте посмотрим подробнее

7+ превосходных инструментов для оптимизации изображений

Reading time5 min
Views105K
Перевод статьи 8 Excellent Tools for Optimizing Your Images
К сожалению на момент перевода один из сервисов перестал работать. Но хабровчане предложили еще много хороших решений!

Одним из самых простых способов уменьшить время отклика страниц на вашем сайте является оптимизация изображений.

Есть несколько бесплатных инструментов помогающих уменьшить и оптимизировать изображения. В этой статье вы найдете удобные инструменты для создания картинок для веба настолько маленьких по весу, насколько это возможно.
Обзор инструментов — под катом.
Читать дальше →

IE is Being Mean to Me

Reading time1 min
Views944
Наткнулся на замечательную песню, в очередной раз освящающая тему противостояния верстальщиков и интернет разработчиков против Internet Explorer.

Знание английского приветствуется.


P.S. Видео не самой первой свежести но на хабре вроде бы не проскакивало :)

Создаём страницы-«заглушки» для своих сайтов

Reading time7 min
Views109K
Страницы-«заглушки»Если вы купили домен, а сайт ещё не запустили, то решить, что делать с ним — это довольно непростая задачка. Оставить начальную страницу вашего регистратора или стандартную страницу хостинга? Оба варианта выглядят, по меньшей мере, непрофессионально. Особенно, если вы собираетесь попиарить свой новый проект, рассказать о нём. В то же время, вы не хотите тратить слишком много времени для создания временной страницы, т.к. вам нужно работать над самим проектом.

Лучший выход из ситуации — создать простую страницу-«заглушку», которая будет рассказывать посетителям, что здесь, в конечном счёте, появится. Хорошая страница-«заглушка» может быть двух вариантов: информационная страничка, которая просто расскажет, что здесь будет после запуска; или страница, которая предлагает посетителям подписаться на уведомления или оставить запрос на бета (или альфа) тестирование. Ниже вы увидите несколько отличных примеров обоих типов, следуя которым, вы сможете создать свою такую страницу-«заглушку». Разумеется, среди них вы не увидите обычных страниц «В разработке» (с надоевшим дизайном), которых целая куча в сети.
А теперь подробнее и с примерами...

DataBinder и скорость

Reading time4 min
Views1.5K
Во многих проектах есть необходимость доступа к свойствам объектов используя механизм System.Web.UI.DataBinder.Eval и встал вопрос: насколько это быстро работает и можно ли выполнять такую операцию еще быстрее?
Читать дальше →

Микроредакторы

Reading time14 min
Views1.1K
На свете существует много разных полезных редакторов, которые помогают авторам статей готовить контент к публикации на веб-ресурсах. Но к сожалению, очень часто бывает что лучшее – враг хорошего, и приходится пользоваться не очень удобными программами которые вместо того чтобы взять и заточить «свой» редактор под нужные цели. Мой подход к этому вопросу как раз заключается в написании своего редактора. В этом посте, я хочу рассказать про то, как и какие фичи я реализовал.

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

Боремся с неплавной анимацией скрытых элементов

Reading time3 min
Views26K
Работая с jQuery многие рано или поздно сталкиваются с одной особенностью: когда мы хотим показать с анимацией скрытый блок, его появление может быть дерганым. Происходит это не всегда, но довольно часто. К сожалению не все разработчики знают как с этим бороться, а те кто знают, зачастую ленятся. Явный пример дерганного появления блока, можно посмотреть прямо на главной странице jQuery, нажав на кнопку Run Code:

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

jQuery плагин для обработки событий online/offline

Reading time2 min
Views2.1K
Итак, мне понадобилась поддержка событий online/offline в браузерах(напомню, что согласно черновику
html5 они возникают при появлении/исчезновении соединения соответственно). На данный момент Mozilla и
IE8 эти события поддерживают. А это уже немало.
что получилось

Исследование дизайна сайтов портфолио — закономерности и современная практика

Reading time13 min
Views38K
Для этой статьи мы отобрали 55 дизайн студий и студий веб-разработки, проанализировали их сайты портфолио и определили популярные закономерности дизайнов для таких сайтов. Основной целью этого изучения было предоставление фрилансерам и дизайн студиям полезных ориентиров для создания своего собственного портфолио.

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

DynamicObject, JSON и ближайшее будущее

Reading time3 min
Views3.1K
В данной статье хочу ознакомить вас с небольшим приложением для работы с JSON данными, демонстрирующим возможности, доступные нам в .NET 4.0. Поверхностно будут рассмотрены вопросы JSON-формата, а так же работы с динамическими типами данных.
Читать дальше →

Азбука WEB-разработчика

Reading time4 min
Views13K
Небольшой список, самых, на мой взгляд, полезных сайтов для любого WEB-разработчика, интересующегося сферой веб дизайна, верстки и программирования. Думаю каждый среди этого списка найдет для себя сайты, которые надолго войдут в его ленту RSS.

AA List Apart




A List Apart содержит лучшие советы и мнения от лидирующих умов индустрии.
Читать дальше →

Древнейший стресс-менеджмент

Reading time2 min
Views5.6K
Хочу поделиться с вами одной интересной медитацией (медитация как известно — древнейший способ стресс-менеджмента), которой поделился со мной мой учитель в ту светлую пору, когда я увлекался разными духовными практиками.
image
С моим учителем ей поделился в своё время один лаосский монах. И дошла она до нас в неизменном виде (не считая перевода) через много столетий.

Цель этой медитации — добиться стабильного уравновешенного состояния и стрессоустойчивости, проще говоря перестать нервничать, психовать и переживать по различным поводам, а уметь в любой ситуации принимать обдуманные хладнокровные решения (поругался с заказчиком, обманули подрядчики, любимая девушка мозг вынесла, начальник идиот, сайт лёг, да мало ли поводов попариться).
Читать дальше →

Трюки языка C#

Reading time4 min
Views20K

ИМХО, вместо того, чтобы вкручивать собеседникам мозги насчет заумной семантики event’ов и делегатов или же спрашивать когда написание new IEntity() легально, можно задать вопрос попроще – например “приведите пример необычного поведения или использования языка C#”. Вот несколько примеров, которые пришли в голову в качестве возможных ответов.



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

Интегрируемся с Twitter

Reading time6 min
Views2.5K
Давайте сначала обозначим, что такое Twitter.

Twitter – это бесплатный интернет-сервис, представляющий собой систему микроблогов, позволяющий пользователям отправлять короткие текстовые заметки (до 140 символов), используя веб-интерфейс, SMS, службы мгновенных сообщений или сторонние программы-клиенты (http://ru.wikipedia.org).

Второй вопрос, а зачем он нужен вообще? Просто общаться с друзьями? Это как вариант, но все таки существуют более удобные сервисы для обмена сообщениями. Скорее всего для публикацией и слежением за новостями (как личные, так и публичные).

Итак, если у вас есть некий интернет магазин, или сайт компании, на котором вы публикуете новости, то можно создать и twitter аккаунт, для того, чтобы дублировать туда информацию о выходе новых публикаций на сайте (как новости, так и поступление новой продукции), или вы можете прикрутить к своему блогу возможность публиковать в твиттере информацию о поступлении новых топиков (есть готовые сервисы, как http://twittsync.com/, работает на Microsoft Azure). Так же можно использовать твиттер “не по назначению” – вы можете создать некий пустой аккаунт, который будет публиковать, к примеру, состояние вашего компьютера, через Direct Message на ваш аккаунт или просто к себе на главную – один из примеров: ваш провайдер требует деньги за белый IP адрес, в противном случае он назначает вам адрес динамически, и каждые 24 часа вас отрубает (это для тех, кто использует роутеры) и вы хотите в любое время (например, с работы) узнавать какой у вас IP адрес для того чтобы зайти на свой домашний компьютер удаленно.

Следующий вопрос, сложно ли это сделать?

Легко! Можно пойти немного по более сложному пути и изучать TwitterAPI самому, тогда вам ни от чего не нужно будет зависеть, для начала тогда нужно воспользоваться статьей – Michael C. Kennedy – Building a Twitter Application in .NET, путь попроще – использовать готовое решение LINQ to Twitter (я им и воспользуюсь).

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

8 полезных регэкспов с наглядным разбором

Reading time2 min
Views274K
О мощи и гибкости регулярных выражений написано много, и их использование давно уже является стандартом для различного рода операций над текстом. Пожалуй, чаще всего регэкспы работают при валидации вводимых данных — здесь им практически нет альтернативы, если не считать громоздкий циклический разбор с кучей неочевидных проверок. Начнём с самого простого:

1. Часть ЧПУ (человекопонятный URL)


По сути, слово с дефисами.

Паттерн: /^[a-z0-9-]+$/
short_url

Примеры посерьёзнее

Скругленные углы на чиcтом CSS без JS без картинок с анти-аллиасингом

Reading time2 min
Views7.7K
Раз уже пошла такая пьянка бурное обсуждение, то предложу и свой метод скругления углов, с характеристиками, которые можно увидеть в названии топика.

Хочу заметить, что это не улучшение какого-то из существующих методов, а совершенно новый (по крайней мере, я нигде не смог найти — наверное, плохо искал ;) метод. В статье 38 статей о создании закругленных углов на сайтах данный метод также не был упомянут.

Итак, что же мы имеем: чистый CSS, без единой картинки, без JavaScript (хотя и с ним, для демонстрации, тоже сделаем), с анти-аллиасингом (то есть плавные переходы), прозрачные углы (то есть в фоне может быть что угодно), тянущийся по высоте и ширине и, конечно же, кроссбраузерный метод.

Не томи

Рисуем pie график

Reading time3 min
Views7.5K
Как-то понадобилось добавить в проект симпатичный 3-d pie график.
Пока толпа решала на какой компонент потратить денежку, нарисовал вот такой вот график:

image

Кому надо, делюсь кодом прототипа, он минимален:

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

Коварный вопрос по Event \ Delegate

Reading time2 min
Views65K
На собеседованиях собеседователи любят задавать всякие каверзные вопросы. Одним из любимых вопросов на понимание .net платформы является вопрос про события и делегаты. В лучшем случае спрашивают отличия, в худшем могут задать такой вопрос на засыпку.

Вопрос на засыпку

Ставим точки в MVC Framework. Механизм работы, часть первая

Reading time5 min
Views7.2K
В этой и следующей статьях точки ставятся в ответе на вопрос “Как работает MVC Framework?”

imageЭто продолжение цикла заметок про ASP.NET MVC Framework. Начало было положено в предыдущей статье, в которой поднимался вопрос необходимости перехода на MVC Framework. После появления комментариев стало очевидно, что статья была написана не зря, так как определенная часть читателей не представляет значение и различие двух подходов: классического ASP.NET и MVC Framework. Надеюсь, что поднятые вопросы первой главы заставили кого-то задуматься.

В этот раз речь пойдет о том как устроен изнутри механизм MVC Framework. На Habrahabr уже была публикация по этому поводу, но я постараюсь дать более подробное описание и затронуть механизмы которые в той статье не были упомянуты.
Читать дальше →

Information

Rating
Does not participate
Location
Чехия
Date of birth
Registered
Activity