При разработке web приложений, часто возникает потребность в хранении определённых настроек или временных данных. Обычно, для этого используются или файлы, или базы данных. Если это база данных, то хранить в базе таблицу с одной строкой, как чаще всего это бывает, не очень удачный вариант. Для этого чаще используются config файлы определенных форматов (*.php, *.ini, *.xml, *.json).
Ивор Барханский @Lopar
Senior Anykey
Получаем Object из формы
3 min
13KЗадача
При помощи javascript'а получить объект, содержащий данные формы. Набор полей и свойств должен задаваться разметкой формы. Зачем — чтоб из этого объекта получить json, xml, да и мало ли еще применений можно найти.
+39
Принцип цикады и почему он важен для веб-дизайнеров
6 min
233KTranslation
Пару лет назад я прочитал интересные факты о жизненном цикле периодических цикад. Обычно мы не видим вокруг себя много этих насекомых, потому что бóльшую часть своей жизни они проводят под землёй и тихо сосут корни растений.
Однако, в зависимости от вида, каждые 7, 11, 13 или 17 лет периодические цикады одновременно массово вылезают на свет и превращаются в шумных летающих тварей, спариваются и вскоре умирают.
Хотя наши странные цикады весело уходят в иной мир, возникает очевидный вопрос: это просто случайность, или числа 7, 11, 13 и 17 какие-то особенные?
Однако, в зависимости от вида, каждые 7, 11, 13 или 17 лет периодические цикады одновременно массово вылезают на свет и превращаются в шумных летающих тварей, спариваются и вскоре умирают.
Хотя наши странные цикады весело уходят в иной мир, возникает очевидный вопрос: это просто случайность, или числа 7, 11, 13 и 17 какие-то особенные?
+668
Децентрализованный движок сообщений для форумов, блогов, соцсетей
7 min
987Попробуем подойти к отображению и хранению сообщений между пользователями Сети как к единому общему серьёзному процессу обмена информацией и накопления знаний. Чтобы в результате мы могли извлекать (т.е. читать) и использовать (применять) движущиеся в этом процессе знания.
У нас есть всё более мощные компьютеры и видеокарты, всё более широкие мониторы и быстрые браузеры. И при этом имеем постоянно застывшие формы сообщений-ответов-цитирований. Только поисковики и функции поиска немного нарушают сложившийся порядок сообщений, выдавая результаты по ранжированию условий просмотра.
Дело даже не в поисковиках. У нас нет функций удобного представления и перестраивания представлений выбранных сообщений или их частей.
Есть список. Есть дерево, не очень удобное из-за двумерности ветвей. И есть много-много почти одинаковых типовых преобразователей представлений в читаемый вид — форумы, блоги и соцсети.
У нас есть всё более мощные компьютеры и видеокарты, всё более широкие мониторы и быстрые браузеры. И при этом имеем постоянно застывшие формы сообщений-ответов-цитирований. Только поисковики и функции поиска немного нарушают сложившийся порядок сообщений, выдавая результаты по ранжированию условий просмотра.
Дело даже не в поисковиках. У нас нет функций удобного представления и перестраивания представлений выбранных сообщений или их частей.
Есть список. Есть дерево, не очень удобное из-за двумерности ветвей. И есть много-много почти одинаковых типовых преобразователей представлений в читаемый вид — форумы, блоги и соцсети.
+28
Новый пуленепробиваемый синтаксис @font-face
3 min
71KTutorial
Translation
С самого начала «вебошрифтовой революции» мы полагались на неизящные хаки деклараций @font-face, чтобы шрифты из Паутины загружались во всех браузерах. Может ли существовать лучший путь? Вполне изящный и совместимый с будущими браузерами?
Вкратце об истории вопроса
В сентябре 2009 года Пол Айриш (Paul Irish) огласил пуленепробиваемый синтаксис для записи деклараций
Синтаксис Fontspring @Font-Face
А вот таким этому коду следовало бы быть с самого начала. Чистым, ясным и простым:
@font-face {
font-family: 'MyFontFamily';
src: url('myfont-webfont.eot?') format('eot'),
url('myfont-webfont.woff') format('woff'),
url('myfont-webfont.ttf') format('truetype'),
url('myfont-webfont.svg#svgFontName') format('svg');
}
Что? Я не понял.
Как это срабатывает
+123
Плёночная камера из Lego
4 min
7.2KА почему бы и нет?
Мне очень нравится конструктор Lego, фотоаппараты и программирование. Я решил совместить три этих своих увлечения и собрать автоматическую плёночную фотокамеру из Lego. Мне хотелось, чтобы камера всё делала сама: от пользователя требовалось лишь вставить плёнку, навести на цель и нажать кнопку.
В этом посте я бы хотел рассказать о том, как я делал автоматическую камеру из Lego, как её программировал и что из этого получилось.
+163
Грабли при верстке HTML писем
3 min
104KДовольно часто наши клиенты устраивают регулярные рассылки с новостями. Почти всегда их не устраивают текстовые рассылки или простое оформление HTML рассылок. Наши дизайнеры вовсю креативят, а мы потом набиваем шишки при верстке их макетов с корректным отображением во множестве почтовых клиентов.
Ниже список встретившихся нам особенностей и способы их разрешения (как то упорядочить их мне не удалось, поэтому всё идет единым списком)
Ниже список встретившихся нам особенностей и способы их разрешения (как то упорядочить их мне не удалось, поэтому всё идет единым списком)
+264
Ставим вторую видеокарту в разъём PCI-Express x1
8 min
438KЕсли в компьютере имеются 2 видеовыхода и захотелось подключить 3 монитора, то с некоторой вероятностью сделать это просто добавлением второй видеокарты не удастся — не все материнские платы имеют 2 разъёма PCI Express X16, а в многочисленные разъёмы PCI Express X1 видеокарты обычного размера не встанут из-за несовместимости по разъёму. Не все знают, что на самом деле установка длинного разъёма X16 в короткий слот возможна, поэтому не обязательно для 3-го монитора покупать другую и более дорогую материнскую плату. Способам расширения потенциальных возможностей компьютера посвящена эта статья, а также она развеивает сомнения и опасения о том, что что-то при доработке платы напильником не получится. Час работы — и 3-й монитор к Вашей системе будет подключен.
+104
Information
- Rating
- 5,267-th
- Location
- Киев, Киевская обл., Украина
- Registered
- Activity