Pull to refresh
42
0
Винокуров Роман @Chaos_Code

User

Send message

Серьезное проектирование серьезных сайтов. Часть 1. Аналитика

Reading time13 min
Views122K

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

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

jRIApp — новый HTML5 фреймворк для создания интернет бизнес приложений

Reading time8 min
Views13K
jRIApp — ещё один HTML5 фреймворк, созданный для разработки Web приложений, которые по своей функциональности мало чем уступают desktop приложениям.

Основное отличие от уже существующих фреймворков типа angularJS или emberJS, это наличие интегрированного с фреймворком сервиса данных, а также использование MVVM дизайн-архитектуры вместо наиболее распространенного в фреймворках такого типа MVC дизайна.
В общих чертах его можно охарактеризовать как HTML5 Фреймворк реализующий привязку к данным, имеющий инфраструктуру для декларативного прикрепления логики к HTML элементам, имеющий классы для работы с данными (DbContext, DbSet) и имеющий реализованную серверную часть дата сервисов.

Клиентская часть фреймворка написана на javascript (сейчас в разработке typescript версия), а серверная часть на C#.

Этот фреймворк опубликован на GitHub под MIT лицензией. Он включает демо-приложение написанное с использованием ASP.NET MVC4 и содержит документацию по его использованию.
Читать дальше →

Моделирование истории в централизованных и распределенных системах управления версиями

Reading time6 min
Views6.8K

Вступление


В своей практике мне довелось участвовать в миграции проекта (codebase имел 5+ лет истории) с централизованной системы управления версиями (centralized VCS — SVN) на распределенную (distributed VCS — Mercurial). Подобные активности часто сопровождаются определенным количеством FUD (fear, uncertainty and doubt) среди команды, вовлеченной в этот процесс. Если технические моменты конвертации (структура новых репозиториев, инструментальная поддержка, работа с большими бинарными файлами, кодировки и т.п.) по большему счету будут решены в определенный момент, то вопросы, связанные с преодолением кривой обучения для команды для эффективного использования новой системы, на момент перехода могут только начинаться.

При таких переходах важно измение взгляда на новую систему контроля версий и ее использование (mindset shift). Тут очень помогает хорошее понимание принципов, на которых основаны VCS. Если разобраться в основах, использование системы заметно упрощается. Соответственно, данный материал будет посвящен различиям в моделировании истории между централизованным и децентрализованным системами управления версиями.
Читать дальше →

Онлайн редактор для Bootstrap— LayoutIt

Reading time1 min
Views102K
Twitter Bootstrap становится всё популярнее и популярнее, многие используют его в своих проектах, думаю еще больше людей используют для прототипирования интерфейсов. Я не исключение. И вот сегодня утром наткнулся на интересный сервис — LayoutIt. По сути LayoutIt — это онлайн редактор для создания интерфейсов с использованием Bootstrap. Редактор представляет собой Drag & Drop интерфейс.

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

Chrome Logger — серверсайд логи в консоли хрома

Reading time1 min
Views34K


Chrome Logger это Google Chrome расширение для отладки серверсайд приложений в консоли хрома.

Большинство языков включают в себя собственные возможность логирования, но иногда удобнее и проще видеть логи прямо в браузере.

Инструкции по применению инсайд.
Читать дальше →

Как попасть в «золотой миллиард» или отрезвляющая статистика

Reading time1 min
Views205K
Рассматривая всевозможные списки Forbes, цены на квартиры в Москве или просто ценник нового Galaxy S4, легко впасть в уныние – кто-то же это все покупает. Причем в легкую, не парясь, не то что я. Проблема в том, что это все навязанная картина мира (не пугайтесь, пафоса в моем топике будет немного).

Существует такое понятие как «золотой миллиард». Это одна седьмая часть населения планеты, потребляющая большую часть ресурсов и обеспеченная базовыми удобствами. То есть еще раз, 6 миллиардов людей на планете живут хуже. Значительно хуже. Для того, чтобы понять, каков порог вхождения в этот «миллиард» можно воспользоваться сайтом статистики Global Rich List. Выбираем валюту, вводим либо годовой доход, либо накопленное состояние, и позиционируем себя на мировом финансовом поле.

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

Манипулирование URL'ами в JavaScript

Reading time2 min
Views71K
Из года в год, сталкиваюсь с одной и той же проблемой. Как добавить, изменить или удалить параметр к некоторому адресу в строковом виде. Быстро и грязно это можно делать с помощью, например, регулярных выражений или найти каке-то готовое решение. Зачастую также может потребоваться, к примеру, подменить путь в адресе или изменить протокол с HTTP на HTTPS и т.д.

В целом, это хочется делать просто и понятно. При этом хочется разумного компромиса. Я встречал некоторые библиотеки, которые дают мощный функционал, но при этом по объему — десятки килобайт JavaScript кода. Несколько десятков килобайт, чтобы, например, подменить параметр в QueryString? Эх…
Читать дальше →

Обзор систем управления проектами

Reading time3 min
Views166K
Мне пришлось за последние пару дней просмотреть много систем управления проектами и хочется поделиться тем, что я нашел…

Мы искали варианты с хостингом у создателя софта, чтобы не возиться с инсталяцией у себя (поэтому, например, тут нет Redmine в чистом виде).
Мне была важна интеграция с Google calendar и github.

Также хотелось чего то большего чем Bug tracking — еще и управление фичерами, требованиями и т.д.

Прошу прощения за много терминов на английском.

Картинки по клику открываются в полный размер

UPD: я не претендую на то, что просмотрел все такие сайты. их очень много!!!

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

Принцип YAGNI в управлении проектами

Reading time8 min
Views22K
Наша компания занимается разработкой web-приложений на заказ. Не сайтов-визиток, а именно приложений. Чаще всего — для внутрикорпоративного использования.

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

jQuery 2.0

Reading time1 min
Views40K
Релизнулась версия 2.0 самой популярной JavaScript-библиотеки.

В релизе выкинули поддержку Internet Explorer 6, 7 и 8. За счёт этого выиграли в размере на 12% и прибавили в скорости. Можно выиграть в размере ещё больше, если сделать свой билд, убив ненужные из 12-и встроенных по умолчанию модулей.

Тем, кому нужны старые IE остаются на ветке 1.x, которая их поддерживает и которую не забросили (скоро выйдет 1.10) и планируют поддерживать ещё несколько лет. API 2.0 хоть и совместим с не-deprecated 1.9, но изменений всё-таки много.

Подробный список изменений есть в официальном анонсе.

Foundation 4

Reading time1 min
Views47K


Месяц назад вышла четвертая версия фреймворка Foundation от компании Zurb, достойной альтернативы Twitter Bootsrap.
В данной версии делался упор на мобильные устройства. В компании считают, что дизайнеры должны ориентироваться в своей работе в первую очередь на мобильные устройства, а после уже на декстопы.
Читать дальше →

JavaScript обёртка скроллбара в виде jQuery плагина

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

Существует два основных подхода для стилизации скроллбара средствами HTML/CSS, каждый из которых имеет свои плюсы и минусы:

  • Эмуляция скролла средствами JavaScript
  • JavaScript обёртка над родным скроллом

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

Делаем жизнь проще, GruntJS (для новичков)

Reading time5 min
Views84K

Что такое GruntJS


Большинство JS разработчиков уже используют какие-то инструменты компоновки для своих разработок, даже если не знают или не используют этот термин. Они объединяют файлы при разработке, уменьшают код JavaScript-а, чтобы ускорить загрузку страниц и конвертировать Sass, или уменьшают количество файлов в CSS для браузера, и много чего другого. Чаще всего это разные инструменты, что есть не очень удобно.

Grunt помогает управлять всеми этими шагами в одном месте и организовать сторонние компоненты.
Читать дальше →

Как я Quake в браузере делал

Reading time5 min
Views102K

2 месяца назад я выложил на GitHub первую бета-сборку WebQuake — порта первого Quake, работающего в браузере через WebGL.

В этом посте я бы хотел вам рассказать о подробностях разработки и реализации движка: как сделана графика, как работает звук, и так далее.
Читать дальше →

Тестирование приложений на Canvas: рецепты на примере тестирования API Яндекс.Карт

Reading time6 min
Views21K
Несмотря на то, что HTML5 всё ещё находится в процессе разработки, он уже появляется в веб-интерфейсах. Одним из основных нововведений этой версии HTML стал элемент Canvas, который используется для отрисовки двухмерной графики. Например, всё, что вы видите и с чем взаимодействуете в игре MMORPG от компании Mozilla или старом-добром Command and Conquer, отрисовывается и обрабатывается с помощью Canvas. Самые изощрённые умы даже реализуют полноценные формы на Canvas. Или интерактивную модель солнечной системы.

Фреймворки для работы с этим элементом растут как грибы после дождя; про то, как начать программировать, используя Canvas, написано огромное количество статей. Но есть один пункт, о котором, по-видимому, из-за узкой специфики говорят редко и мало. Речь идёт о тестировании приложений на Canvas. В каком-то смысле оно становится проблемой для инженера по тестированию, который привык обращаться к элементам на странице по их css или xpath селекторам, а затем выполнять с объектом какие-то действия. С Canvas такой подход не работает, ведь DOM элемент один, а объектов в нём — много.



Под катом на примере автоматизации тестирования API Яндекс.Карт я расскажу вам о том, как мы решили эту проблему в Яндексе.
Читать дальше →

Как сократить количество написаного кода при ajax запросах? И ассинхронная отправка файлов

Reading time4 min
Views16K
Итак ajax запросы, всё просто, все привыкли их уже писать, но всё же как можно сократить количество написанного кода.
jquery.async.js

Сразу пример:
<form action="/" jasync>
	<input type="submit" />
</form>
форма отправляется ассинхронно

<input type="file" href="/" multiple jasync />
<div type="file" href="/" multiple jasync>Выберите файл</div>
<div href="/" jasync dropfile>Перетащите файлы и они отправятся на сервер</div>
файлы загружаюся асинхронно

<a href="/" jasync data="year=2013&month=5" class="send">отправить данные</a>
данные отправляется ассинхронно

И тут у многих наверное возник вопрос, как обрабатывать полученные данные, если форма не валидна зачем её отправлять, а если я хочу ещё отправить дополнительные параметры?
Читать дальше →

Заслуженное богатство Сатоси Накамото

Reading time1 min
Views120K

Чёрным и красным цветами показана генерация и трата монет в промежутке между блоками 1 и 36288

Специалист по безопасности Сергио Лернер (Sergio Demian Lerner) давно входит в Bitcoin-сообщество. В прежние годы он нашёл несколько незначительных уязвимостей в технологии Bitcoin, но его новая работа имеет гораздо бóльшее значение. Сергио Лернер провёл тщательный анализ начальных транзакций и убедительно доказал, что c 3 января 2009 года по 25 января 2010 года майнингом занимался практически только один человек, и абсолютное большинство добытых в то время монет хранятся у него до сих пор.
Читать дальше →

Разбираемся с построением мультирегиональных сайтов

Reading time6 min
Views53K
Проблема создания сайтов с разными версиями языков и стран отнюдь не нова, практически все крупные сайты уже давно с ней столкнулись. Каждая компания выбирает свое решение, мы кратко остановимся на основных вариантах и посмотрим, как решить эту задачу лучшим образом.


Варианты построения URL-ов

Конечно, в жизни существует больше групп, например, часть сайтов хранят региональные настройки в cookie-файлах, другие передают параметром ?lang=ru, однако это непопулярные решения и основными являются:

1. Версия сайта на другом домене:

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

2. Версия сайта на поддомене:

ru.example.com, ua.example.com
Очень похож на предыдущий вариант, но легче в администрировании. Эти два варианта легко реализуются на физически разных хостах, поэтому могут быть размещены в разных странах.

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

Фестиваль профессионального развития в IT-сфере — BitByte

Reading time1 min
Views4K
20 апреля в Питере, при активной поддержке портала Айти-Событие.рф, уже во второй раз состоится BitByte — фестиваль профессионального развития в IT-сфере, который собирает на одной площадке более тысячи специалистов, крупнейшие IT-компании и успешные стартапы.



В этом году среди участников: Google, Oracle, Яндекс.Деньги, EMC, T-Systems, Mail.Ru Group, Юлмарт, Exigen Services и многие другие.
Подробнее

Information

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