Search
Write a publication
Pull to refresh
5
0
Дмитрий @driessen

User

Send message

Математический подход к созданию сайтов

Reading time8 min
Views66K
«Математика прекрасна». Это может показаться абсурдным, для людей которые при одном только упоминании математики вздрагивают. Однако некоторые из самых красивых вещей в природе и нашей Вселенной — это проецирование математических свойств, от самых маленьких до крупнейших галактик. Один из древних философов, Аристотель сказал: «математическим наукам свойственно выстраивать все по порядку, в симметрии и ограничениях, они являются главными формами прекрасного».

Из-за своей природной красоты, математика является частью искусства и архитектуры. Но она практически не применяется  для дизайна сайтов и приложений. Это наблюдается из-за того, что многие не сопоставляют математику с дизайном. Хотя, наоборот, математика может быть инструментом для производства, поистине волшебных конструкций. Тем не менее, вы не должны полагаться на математику для каждого своего творения. Дело в том, что вы должны рассматривать математику как вашего помощника. Для наглядности мы создали пару сайтов, которые представляют математические принципы, обсуждаемые в этой статье. Мы также создали рекомендации, которые можно использовать в дизайне.

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

Sciter — встраиваемый HTML/CSS/scripting engine

Reading time6 min
Views34K
Попросили вот здесь про Sciter слово замолвить… Собственно вот рассказываю.

Sciter есть встраиваемый HTML/CSS/scripting engine для создания UI десктопных и мобильных приложений, классических так и [occasionally-]connected.

В принципе поддерживаются разные парадигмы приложений ограниченные лишь фантазией разработчиков. Например одной фирмой была сделана телефонная система со smart desktop phones на которых работал Sciter-based client — фактически специализированный browser загружающий UI (HTML,CSS, scripts и images) с системного контроллера станции по специализированному протоколу.

Другой пример: фирма Symantec использует sciter как UI для их consumer продуктов — Norton Antivirus со товарищи (since 2007).

image
На картинке: sciter.exe demo проект из SDK + открытое окно DOM inspector'а, живет в inspector32.dll (исходники в SDK). inspector.dll можно использовать в своем проекте для отладки UI. Естественно что inspector UI есть опять же HTML/CSS/script + толика native code.

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

Попытка номер раз создать почти идеальный htaccess

Reading time14 min
Views250K
    - Google выше ранжирует сайты, которые загружаются быстрее.
    - Если на eBay или Amazone увеличить время загрузки страниц на 9% они теряют 1% прибыли.
    - Сделать свой сайт быстрее, чтобы сэкономить на клиентском трафике и на числе обращений к серверу.


.htaccess — наш герой


Профессионалы знают, что такое htaccess.
Тем кто собираются уйти с народ.ру на php-хостинг только предстоит узнать, что это такое.
Те кто только что установил свои первые jooml'у или wordpress срочно должны узнать о нашем герое — htaccess

Зачем нам .htaccess ?


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

Или другой пример. Скажем ваш ресурс начинает набирать популярность, но переезжать на выделенный сервер ещё рано, а мощностей VPS уже не хватает. Вас очень может выручить htaccess.

А ещё htaccess может решить некоторые вопросы с безопасностью вашего сайта.

А ещё…

Полезные советы по htaccess с разжевыванием для новичков

Почему пинг к 192.168.072 возвращает ответ от 192.168.0.58

Reading time2 min
Views47K
Если совершить опечатку в IP-адресе, то результат будет странным, на первый взгляд. Например, пинг к 192.168.72 распознаётся как 192.168.0.72, а 192.168.072 уже распознаётся как 192.168.0.58.

Народ слишком усложняет здесь из-за разных RFC, IP-классов и тому подобных вещей. Просто запустите пару тестов и посмотрите, как команда ping парсит входящие значения.

ping
C:\>ping 1
Pinging 0.0.0.1 with 32 bytes of data:

C:\>ping 1.2
Pinging 1.0.0.2 with 32 bytes of data:

C:\>ping 1.2.3
Pinging 1.2.0.3 with 32 bytes of data:

C:\>ping 1.2.3.4
Pinging 1.2.3.4 with 32 bytes of data:

C:\>ping 1.2.3.4.5
Ping request could not find host 1.2.3.4.5. Please check the name and try again.

C:\>ping 255
Pinging 0.0.0.255 with 32 bytes of data:

C:\>ping 256
Pinging 0.0.1.0 with 32 bytes of data:
Читать дальше →

LispyScript — JavaScript в стиле Lisp

Reading time2 min
Views8.8K
* это перевод статьи с DailyJS

Введение


LispyScript — древовидный язык программирования, который компилируется в JavaScript. Собственно говоря, это что-то между JavaScript и Lisp.
Скрипт на Lispy состоит из подобных выражений:
(<function> arg1 arg2 arg3 ...)

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

Ещё семь фич HTML5, о которых вы могли не знать

Reading time3 min
Views89K
Доброго времени суток!

Все мы достаточно наслышаны об HTML5 и его возможностях. Например, элементы audio и video, которые у всех на слуху. Но несмотря на это, существует парочка тегов, о которых знают далеко не все, и о которых не знал я до недавнего времени. Итак, вот чем я хочу с вами поделиться.
Читать дальше →

Новое для веб-дизайнера за сентябрь 2012

Reading time1 min
Views68K
Сделал небольшую подборку новых полезных материалов для веб-дизайнеров за сентябрь 2012. Надеюсь, будет полезна хабровчанам.

Полезные сервисы


Easel.io — отличный сервис для прототипирования прямо в браузере.

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

Потрясающая, но невидимая глубина

Reading time5 min
Views173K


Вы только что зашли на страницу Google.

Просто, не так ли?

Что же на самом деле произошло?

Ну, если вы немного понимаете, как работают браузеры, то все не так просто. Вы только что задействовали HTTP, HTML, CSS, ECMAscript и прочее. В действительности, это такие невероятно сложные технологии, что от них у любого инженера голова пойдет кругом, стоит лишь попробовать поглубже вникнуть в них. И нет ни одной компании, которая могла бы справиться с ними в одиночку.

Давайте упростим.

Вы только что установили соединение с www.google.com.

Просто, не так ли?

Что же на самом деле произошло?
Читать дальше →

Практическая виртуализация для верстальщиков на win*

Reading time1 min
Views18K
Я долго время искал инструмент благодаря которому можно было бы запускать различные версии браузеров без их фактической установки. Но т. к. я плохо искал единственный рабочий способ для меня посей день были виртуальные машины. Незнаю как вам, но по мне — не очень удобный способ тестировать верстку.

Буквально сегодня мне нужно было быстро проверить верстку сайта в Safari. Под рукой ничего подходящего не оказалось и пришлось как это говорится «гуглить». В результате «гугления» я попал на spoon.net и честно признаюсь, что сначала даже не придал особого значения этому сервису. Зарегистрировался и установил плагин.
Читать дальше →

Сниппеты для Twitter Bootstrap

Reading time1 min
Views97K
Фреймворк Twitter Bootstrap уже давно стал одним из самых любимых средств ленивых сторонников быстрого прототипирования и разработки интерфейсов, а где популярность там много разных сторонних интересных штук.
На этот раз я случайно попал на пополняющуюся коллекцию сниппетов.
Думаю многим пригодится, сейчас там набор небольшой (23 штуки), но уже достаточно полезный чтобы поделиться.
Кликабельные картинки:

Интерфейс аля gmail



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

Terminal Keynote – показываем презентации в терминале

Reading time2 min
Views11K


Terminal Keynote – это, скрипт, созданный Хавьером Нориа (Xavier Noria) для показа своих презентаций на BaRuCo 2012 и RailsClub 2012. Вся его суть в возможности показывать слайды с текстом прямо в терминале.

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

Какая команда в консоли отнимает у вас больше всего времени?

Reading time4 min
Views24K
У меня — 'cd'.

Хожу по папкам часто и начал замечать, что даже автодополнение не спасает. Тогда я начал искать возможные способы упрощенной навигации в консоли.

Но должны же быть решения!



В моей любимой оболочке zsh есть такая возможность — «разворачивание» путей по нажатию : например, "/u/in/sy" -> "/usr/include/sys/"

В остальных оболочках можно приноровиться и использовать $CDPATH или pushd/popd, но лично мне это до сих пор кажется неудобным.

А еще есть пара утилиток для ускоренной навигации. Самая известная из них, пожалуй, autojump. Она следит в каких папках пользователь проводит больше всего времени и позволяет указывать только фрагмент пути к папке. Например "incl" приведет вас в "/usr/include", если вы там часто бываете.

Autojump вдохновила другого разработчика на создание утилиты "z". "Z" использует в качестве критерия для перехода т.н. "frecency" - комбинацию частоты посещений папки (frequency) и времени последнего перехода туда (recency).

Обе утилиты хороши по-своему, и я так бы и пользовался autojump или z, однако что-то мне не давало покоя. А недавно я услышал одну фразу:

If the product is used as a tool, its interface should be as unintelligent as
possible. Stupid is predictable; predictable is learnable; learnable is usable.


И тут я понял что самое время придумать свой велосипед. Не-intelligent. Тупой и удобный.
Читать дальше →

7 уроков, полученных при создании Reddit

Reading time7 min
Views23K
UPD. Оригинальная статья достаточно старая — 2010 года. Сейчас ситуация выглядит по-другому.

В декабре 2010 у Reddit-а было 829М просмотров и 119 серверов.
В конце 2011 года — 2,07B просмотров и 240 серверов.

Спасибо potomushto за актуализацию.

UPD 2. Поправил схему для людей с проблемами цветовосприятия. Спасибо second_pilot и spiritedflow



Стив Хаффман, один из создателей Reddit, рассказал на презентации, чему они научились, пока строили и развивали Reddit до 7,5 млн пользователей в месяц, 270 миллионов просмотров страниц в месяц и более 20 серверов баз данных.


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


Каждый из 7 уроков будет рассмотрен в соответствующей секции.
  • Падайте часто
  • Разделение сервисов
  • Открытая схема данных
  • Избегайте хранения состояний
  • Memcache
  • Сохраняйте избыточные данные
  • Выполняйте максимум работы в фоновом режиме

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

Восстановление неравномерно освещенных изображений

Reading time2 min
Views25K
Для улучшения визуального качества изображений, снятых в условиях слабой освещенности, и изображений с низким уровнем контраста, существует множество алгоритмов. Выбор наиболее подходящего алгоритма и его параметров является задачей нетривиальной и зависит от обрабатываемого изображения.

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

Space Engine — Вселенная на ладони

Reading time8 min
Views100K
My God, it's full of stars!
Arthur C. Clarke

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

В начале тысячелетия я познакомился с MojoWorld и был шокирован его возможностями. Наконец-то, можно было бродить по другим планетам и фотографировать местные достопримечательности. Он стал первой ласточкой, дававшей надежду на то, что полномасштабные космические миры технически возможны. Но, к сожалению, производительности железа десятилетней давности было не достаточно для передачи всех красот в реальном времени. Да и планеты оставались всего лишь мёртвыми пейзажами.

Но вот, чуть больше года назад, я совершенно случайно наткнулся на вселенную Space Engine, и она просто взорвала мне мозг и размазала его по полу своим масштабом и невероятной детализацией.
Читать дальше →

Документация к cms Fine Cut Engine

Reading time7 min
Views4K
Всем доброй пятницы!


Может быть кому-нибудь пригодится: Fine Cut Engine?

Это админка для сайта-визитки.

В настоящий момент документация Fine Cut Engine есть только на английском, топик предназначен для исправления этого недочета. Upd: для удобства ссылка на downloads.

Заявленные Фичи:
— Keep it Simple: настолько, насколько было возможно
Без базы данных o_0
— Free from Fat: практически отсутствует back-end
— Free to Use: MIT или GPL
— Хорошо интегрируется: можно включить всё что угодно в шаблон
— Без попкорна: это не кино
— Там нет ложки: мы помним The Matrix :)

UPD 1: элементарная файловая «CMS» с одно-страничным web 2.0 UI, ни малейшего намёка на излишества, и силу этой же специфики — весьма шустро отдающая запросы (как, впрочем, и множество подобных), спасибо heathen за комментарий. В работе с подобными движками лично меня постоянно не устраивала необходимость переходов по ссылкам при создании содержимого, а так же не хватало дерева в котором будет виден URL редактируемой страницы и структура сайта в целом.

UPD 2: в самой глубине документации есть ссылка на Google Grops.

UPD 3: сайт проекта это его же дефолтный шаблон (Twitter Bootstrap) с дефолтным же содержимым.
В админке используется jQuery с разными компонентами, а так же elFinder и ACE Editor (тот самый что и в Cloud9 IDE), knokout.js, замечательный плагин для JSON (перечень «всего» тут ).

Приступим ?

Как правильно скопировать файлы и папки исключая некоторые из них

Reading time2 min
Views51K
Топик написан в ответ на похожий.

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

Но главная проблема этого подхода в другом — он не соответствует идеологии unix: сложные задачи решаются комбинацией простых утилит.

Под катом подробности о методах решения этого класса задач — не рассматривайте это как готовый рецепт.
Читать дальше →

UICloud: Самая большая база пользовательских интерфейсов

Reading time1 min
Views35K


UICloud — это база бесплатных пользовательских интерфейсов с поисковой системой, рейтингом и каталогизатором в которой собрано все от исходников в формате PSD, до готовых решений на HTML, CSS или jQuery: формы, слайдеры, кнопки, календари, элементы и полноценные интерфейсы для мобильных и веб приложений. В проекте уже сейчас можно найти практически все что нужно для облегчения процесса разработки дизайнерам и разработчикам.

На данный момент в базе 23586 элементов и почти тысяча UI-сэтов включающие в себя готовые решения в едином стиле. Проект создан Британской студией Double-J Design целью проекта является создание самой обширной UI базы.

Information

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