Pull to refresh
99
0
Дима Семьюшкин @Devgru

Веб-разработчик

Send message

Перекрашиваем Одноклассников

Reading time1 min
Views636
В силу стадного инстинкта я обитаю на «В Контакте».
Но родителей затащили на «Одноклассников» и с этим мало что поделаешь — там своя аудитория. Всё, вроде, хорошо, но жуткий дизайн не то чтобы раздражает — он мешает продуктивно работать. А всё дело в том, что, по какой-то нелепой причине, салатовый на белом почти не читаем. Что же мы можем сделать? А можем мы написать такой user-css, который перекрашивал бы ссылки.
Вот:

*[href*="/dk?st.cmd="], *[href*=«znakomstva.odnoklassniki.ru»], *[href*=«rabota.odnoklassniki.ru»]{
color:#000000 !important;
}

div#topadv {visibility:hidden;}
div.sideadv {display:none;}
div.bottomadv {display:none;}

А скачать можно по ссылке.
Версия для Stylish (плагин для FF) — ссылка.

P.S.
Вдобавок убирает рекламу. Работает в Firefox и Opera. В IE (пробовал на 7-ой версии) только рекламу режет.

Чтобы додобавить user css в:
а) Opera -> View -> Style -> Manage modes -> Display -> My stylesheet -> Choose
б) Firefox -> Ставим Stylish -> Manage styles -> Добавляем стиль
в) IE -> Tools ->Internet Options -> Accessibility -> User style sheet -> Ставим галку и выбираем файл стиля

P.P.S.
Если чего-то не хватает — просьба сообщить.

PREG: условные маски

Reading time1 min
Views681
Задача: есть на входе строка «single param=true param2=»string fgfg"", необходимо разобрать на параметры.

upd: добавлен захват синглов; добавлены именованные захваты.
для решения пользуемся регуляркой
/(\w+)([=])?(?(2)([\"\'])?(?(3)(.*?)(?!\x5c)\3|([^\s]+)))/ms
регулярка с именованными захватами:
/(?P<lvalue>\w+)(?P<ref>[=])?(?(ref)(?P<quote>[\"\'])?(?(quote)(?P<multi>.*?)(?!\x5c)\3|(?P<signle>[^\s]+)))/ms

Важный момент: "([\"\'])?" мы ищем строку в кавычках или слово без них. Загвоздка в том, что в приведённом выражении нам надо либо получать backref #2 либо не получать, чтобы выражение "(?(2)" сработало. Если знак вопроса (?) поставить к списку символов "([\"\']?)", то обратная ссылка №2 будет всегда захватываться и условие "([^\s]+)" никогда не выполнится.

upd: В добавок хочу сказать, что в PHP мане не указано про именованные захваты "(?P<name>)", но они таки работают (по крайней мере в 5.2.4).

<base> вреден.

Reading time7 min
Views1.7K
Тэг <base>, с помощью которого браузеру задают базовый путь для разрешения относительных ссылок, вреден и не должен использоваться в хорошей верстке. Вместо него есть достаточно строгий и гибкий метод задания путей к ресурсам.
Вследствие распространившейся моды на ЧПУ веб-технологи стали чаще встречаться со следующей проблемой — файлы (например, CSS или изображения), на сервере расположенные буквально в соседней папке с шаблонами верстки, теперь не получается адресовать относительными путями. При автоматическом создании страниц на очень разветвленных сайтах нет практически никакой возможности автоматически изменять относительные пути к ресурсам в зависимости от адреса просматриваемой старницы, и обычные относительные пути перестают работать.
Читать дальше →

XML, RDF и Я.

Reading time5 min
Views1.9K
В своем скромном блоге я примерно обрисовал свое отношение к XML-based языкам и DOM. Если вкратце, то после почти года работы с ними в вебе, я пришел к некоторым выводам. В частности что DOM для отображения сложного содержимого веб-страницы подходит как нельзя лучше, но XML, из которого строится эта модель, сам по себе слишком сложен и избыточен. Исходя из подобных заметок, так считаю не только я, но и другие разработчики, а также сам великий и ужасный W3C.


О RDF, я возможно напишу позже. Сейчас я хочу больше заострить внимание на идее неэффективности XML-подобных языков в вопросе представления данных. Эта тема плотно пересекается с преимуществами RDF. Поэтому, как я думаю, эту заметку можно считать иллюстрацией к применению оного.

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

Все гениальное — просто

Reading time2 min
Views1.2K
Это рассказ о простоте и о том, как делать хорошие презентации. Секрет хорошей презентации кроется не только в простоте, но и в умении преподнести информацию, четко и аргументированно изложить свои мысли, донести их до собеседника, сделать так, чтобы вас поняли.



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

Для фанатов Супер Марио

Reading time1 min
Views1.1K
Увидел сегодня это видео на Дигге. Замечательная пародия на Супер Марио. Те кто играл, поймут. Я во время просмотра очень нервничал. Подковырки преследуют в самых неожиданных местах.
смотреть видео

AR-100 «Добрыня» — первый российский серийный робот-гуманоид

Reading time1 min
Views5K
AR-100 &quot;Добрыня&quot; in action
Оказывается с июля это года в России компанией с громким именем Android Robotics Corp. серийно выпускаются роботы-андроиды под названием AR-100 «Добрыня».
Продают его на сайте производителя по скромной цене 28700 руб.
Читаем дальше...

Gregorian Date или Б%#; ФЯМ%:! с этой датой!

Reading time2 min
Views574
Блин, как же всё сложно с этой датой, почему у нас в каждом году не 365 дней ровно? Почему в каждом году у нас не 8760 часов ровно? Почему в каждом году у нас не 31536000 секунд ровно??

Как же я запарился с этими числами.
Может кто-то знает решение?
Читать дальше →

Что знает шестиклассник о компьютерах? Результаты.

Reading time2 min
Views758
По просьбам тех, кто помогал составить опрос, привожу результаты.

Первым делом меня удивило количество детей в классе — всего 12 (отвечали только 10). Нас в классе, помню, было 25… Ну это даже лучше, что немного :-)

Итак. Самостоятельно с компьютером умеют работать все. Писать и рисовать умеют, по их заявлениям, так же все, но ниже расскажу подробнее.
Читать дальше →

Переписка с Леонидом Кагановым

Reading time2 min
Views838
Не так давно электронная библиотека в Эквадоре проводила акцию по сбору денег для тех писателей, чьи книги там бесплатно лежат. На каждого накопилось совсем немного, но деньги надо было как-то передать. Некоторые писатели, с которыми связался владелец библиотеки отказались, так как суммы на самом деле смешные, а книги там лежат без их разрешения. Отказался и Леонид Каганов (который, кроме того, что собирает деньги для уличных музыкантов, ещё и книжки пишет). Но он отказался по совсем другой причине, которая не может не вызывать уважения.

Чтобы не заниматься копипастом, приведу начало интересного диалога между владельцем либрусека Ильёй Лариным и Леонидом Кагановым:
Читать дальше →

Цитирование источников «comme il faut»

Reading time1 min
Views718
Часто возникает необходимость использовать в своем блоге элементы какого-то сайта, будь-то текст, остроумное изречение или картинка.

Компания HeartRails Inc выпустила инструмент Kwout (от quote, по-английски, — «цитировать»). Сервис позволяет делать скриншот с любого сайта: выделяем необходимый элемент сайта, нажимаем Cut, сервис генерирует код. Далее вставляем код в свой блог или Хабр, как например, сделала я (скриншотик блога, объявившего о запуске Kwout):
http://blog.go2web20.net/2007/12/kwout-what-fine-tool-for-bloggers.html/>/>/>/> via kwout
Читать дальше →

Секрет воспитания умных детей (часть 1)

Reading time6 min
Views7K
Совет: Не говорите вашим детям, что они умны. Исследования на протяжении трех десятилетий говорят нам, что акцент на усилии, а не на возможностях или интеллекте, является ключом к успеху в школе и жизни.

Перевод статьи в Scientific American

Будучи блестящим учеником, Джонатан без проблем учился в начальной школе. Он легко справлялся с заданиями и получал пятерку за пятеркой. Джонатан удивлялся, почему некоторым его одноклассникам приходилось стараться куда больше, и родители сказали ему, что у него есть особый дар. В седьмом классе, однако, Джонатан внезапно потерял интерес к школе, отказываясь делать домашние задания и готовиться к тестам. Из-за этого его оценки стремительно ухудшались. Его родители пытались сохранить его веру в себя, убеждая его, что он очень умен. Но их попытки не смогли мотивировать Джонатана (на самом деле он собирательный образ, рисованный с нескольких детей). Он продолжал утверждать, что школьные задания скучны и бессмысленны.
Читать дальше →

Прелести онлайн-переводчиков, или сервис по-французски.

Reading time2 min
Views1.1K
Исследуя поиск по грамматическим формам для своего лингвистического проекта, наткнулся на интересное объявление:
«Россия, купляо и продажа пив бутылок от случая или 9.»
Первой  мыслью решил, что опять наши китайские друзья бесплатными онлайн-переводчиками балуются. Но, перейдя по ссылке,  потешился изрядно...
Как оказалось, это французы решили порадовать мир новым сервисом в стиле Web 2.0  - огромной  международной  доской обьявлений с широким спектром категорий товаров, возможностью подписаться на сообщения о свежих поступлениях и прочими вкусностями и полезностями.  Сервис уже функционирует в Франции и некоторых франкоговорящих странах, но затеян он действительно с размахом...
Читать дальше →

Почему никто не узнает, как офицеру запаса отвадить военкома?

Reading time2 min
Views571
Мой приятель, правозащитник и без двух минут кандидат юридических наук написал
фундаментальный и очень практичный труд — как
офицеру запаса отвадить военкома на законных основаниях
.
Однако, на мой взгляд, мало у кого есть шансы найти эту замечательную справочную
публикацию через поисковые системы. Почему?
Прежде всего, из-за пренебрежения несколькими внутренними (зависящими от веб-мастера)
факторами. Ниже — их список.

1. Бесполезные малозначимые теги заголовка и описания страницы


Откройте код веб-страницы (возможно, это меню Вид — В виде html… ). Вот
эти тэги:
<title>4CS.Ru: Статьи и публикации</title>
<META NAME="description" CONTENT="">

Как они должны выглядеть в идеале
<title>Основания для признания призыва офицера запаса на военную
службу незаконным</title>

<META
NAME="description" CONTENT="Юридическая справочная статья
Максима Бурмицкого о том, как офицеру запаса защитить свои права и не ходить
в армию">


При написания как названия статьи, так и ее описания используйте сервис Яндекс.Директ для
анализа популярности ключевых слов. Ваша задача — выбрать наиболее популярные
запросы, соответствующие вашей статье и создать заголовок и описание этой статьи,
используя эти слова.

2. Отсутствие в тексте подзаголовков


В тексте прослеживается некоторая структура, обозначенная выделением текста:
«какова суть этого документа», «временные рамки действия приказа МО...»?
Однако в структуре веб-страницы эти подзаголовки никак не выделены. Решение
— обозначить эти заголовки тэгами <h2>, например:
<h2>какова суть этого документа?</h2>

Плюс к выделению структуры важно еще продумать формулировку этих заголовков.
Т.е. если заголовок будет звучать как: «Какова суть этого документа?»,
то его вряд ли найдут представители целевой аудитории. Но если сформулировать
его с умом (используя тот же Яндекс.Директ),
то получиться примерно следующее:
<h2>«Обзор закона о воинской обязанности — анализ
ключевых понятий и изменений»</h2>


 
В заметки затронуты лишь наиболее заметные ошибки, касающиеся внутренних факторов
поисковой оптимизации.

Человеческие жертвоприношения в Геймдеве

Reading time1 min
Views513
Или «Вся» правда о разработке игр.

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

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



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



Впрочем попробуйте сами.

Сайт игры.

Сказка ложь, да в ней намек, всем продюсерам упрек.

Оригинал на www.puzzled.ru

О программистах и либертарианстве

Reading time2 min
Views1.4K
Есть такая политическая теория — либертарианство. Очень красивая, стройная и логичная. Почти как коммунизм.

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

...увы, на практике всё далеко не так хорошо...

В помощь вебмастеру: Linux bash скрипт для перевода сайта на новую кодировку

Reading time3 min
Views2K
«Лучше день потерять, потом за час долететь» © Крылья, ноги, хвост

Не так давно мне «посчастливилось» перевести веб сайт средних размеров из одной кодировки в другую. Если быть точнее из windows-1251 на UTF-8. Потом еще один — побольше, на третьем я сломался, и следуя верному принципу вышесказанного мне пришлось потерять кучку времени на написание скрипта по автоматизации этого процесса, но зато потом, за час я все-таки долетел.
Читать дальше →

Information

Rating
8,786-th
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Date of birth
Registered
Activity