WebDev

Битые ссылки

Опубликовано tulvit - пн, 18/11/2013 - 20:56

Раньше на scomedy.com у меня был раздел с ютуб видео. Сайт на Drupal'е, поэтому особых проблем не возникло, просто создал дополнительный тип материала "YouTube videos" с полями title, description, youtube link, автоматическим генерированием превью, привязкой к нужным тегам, внутрисайтовым рейтингом и прочим. Т. е. по факту я получил тип материала, где основным контентом служил лишь один ютуб ролик. Тогда мне это казалось вполне себе хорошим ходом - а что, на сайте появилось с тысячу дополнительных страниц, на профилях комиков могу выводить топовые релейтид видео, которые доступны для просмотра прямо на сайте без перехода на ютуб, да и вообще наличие подборок видео явно не мешало, а наоборот хорошо вписывалось. Это я раньше так думал, потом раздел со всеми видео удалил, что, признаться, далось не легко, ибо на сабмит роликов убил далеко не один день. Но это все не суть важно.

WebDev Заметки на полях

Опубликовано tulvit - пт, 24/05/2013 - 23:38

Постоянно появляются какие-то мысли, ну или просто натыкаюсь на интересные решения, которыми хочется поделиться. В отдельности все это на пост явно не тянет, но вот публиковать подборочками почему бы и нет.

PHP rand() vs mt_rand()

Раньше был сторонником использования
mt_rand()
заместо
rand()
. Ну а что, работает аж в 4 раза быстрее, да и на выходе выдает не просто псевдослучайные числа, а более случайные псевдослучайные! Во всяком случае так говорит официальная документация.

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

Алгоритмы используются разные, это да. Для mt_rand это Mersenne twister, для rand либо LCG (для Windows), либо LFSR (для Линукс). Но данные различия уже скорее для эстетов, лично я остаюсь при rand(), раз уж разницы особой нет.

Консольный текстовый редактор Nano

Опубликовано tulvit - пт, 10/05/2013 - 04:09

Стыдно! Который уже год сижу на Linux, а о Nano узнал буквально на днях.

Как я раньше правил конфиги? Alt+F2, gksu nautilus, а дальше искать нужный файл, открывать и править его в том же Geany. И так каждый раз... Даже ввести в консольке sudo gedit /etc/hosts руки не доходили. Стыдно-стыдно-стыдно.

О формировании структуры URL адресов

Опубликовано tulvit - пн, 27/06/2011 - 07:32

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

Кстати, насчет терминов. В рунете принято название "ЧПУ", человекопонятный урл. Весьма забавно получилось - термин, который должен описывать процедуру грамотного составления URL, сам по себе является тем еще режущим глаз жаргонизмом. В остальном же интернете общепринятое название это SEF, search engine friendly. Т. е. о людях (или о все тех же человеках) ни слова. Главное, чтобы фрэндли для поисковых систем.

Ну и раз разговор уже зашел о поисковых системах, то...

C www или без?

Опубликовано tulvit - чт, 16/06/2011 - 03:47

philosoraptor with www or without

Чисто технически - www.site.com и site.com являются совершенно разными доменами/сайтами. Как и forum.site.com и site.com. Сам префикс "wwww" пошел еще с тех времен, когда интернет хосты было принято именовать по функциям, ими выполняемыми, как то www.site.com, ftp.site.com, nntp.site.com и т. д.

Сейчас же домены www.site.com и site.com общепринято делать зеркалами. Вопрос в том, какой домен сделать главным зеркалом, а на какой поставить 301-ый редирект? Или же сделать оба домена одинаково доступными?

Прежде всего я решил проверить, как обстоят с этим дела у популярных ресурсов, где выбор главного зеркала явно был обоснованным, а не случайным. Собрал список из 50-ти первых пришедших в голову сайтов, и проверил у каждого из них ответ сервера с префиксом www и без.

Результаты оказались весьма и весьма неоднозначными.

Различия echo и print. Что использовать?

Опубликовано tulvit - вт, 07/12/2010 - 14:26

Конструкции echo и print выполняют одинаковую функцию - вывод строковой информации. В исходниках и книгах можно встретить как повсеместное использование print-а, так и echo. В чем же их отличие и чему лучше отдать предпочтение?

MySQL vs файлы. Скорость поиска строки по подстроке.

Опубликовано tulvit - пн, 20/09/2010 - 18:02

На днях задался вопросом целесообразности хранение строковых данных в БД вместо файлов с точки зрения скорости поиска.

Хотя, конечно, вопрос правильней поставить так — чем быстрее осуществлять поиск в массиве строк, средствами языка программирования (в данном случае php) или средствами РСУБД (MySQL)? А сравнение «MySQL vs файлы» только для наглядности, ведь данные в базах тоже хранятся в файлах (а в чем же еще?) и используется все та же файловая система.

Решил провести небольшой тест. Сгенерировал 100к строк вида

MP0bWDXN1AxhI9yCZiGpKUZObSBOSrFv6vxTYkxPLUXjUmLJui
Z53PK4xcJgteCqAZ9p9w5LhTU15wBqFrlz6VtuX3Bg83xzSwOS
Tjt0seSoBkE6BPvyBPSoJjvHcS6VfLDYlXPD1ySsImp91Lxsrg

Каждая строка при генерации писалась одновременно в файл (*.txt) и в четыре таблицы — таблицу типа MyISAM, тип данных «text», таблицу MyISAM, тип данных «varchar(100)», таблицу InnoDB, тип данных «text» и таблицу InnoDB, тип данных «varchar(100)».

LAMP. Ubuntu Linux + Apache + MySQL + PHP.

Опубликовано tulvit - ср, 07/07/2010 - 19:25

В статье рассматривается установка веб-сервера, его конфигурирование, установка необходимых расширений и библиотек, дополнительных веб-приложений и тестирование всего этого на примере установки CMS Drupal.

Статья рассчитана на начинающих пользователей Linux, поэтому содержит теоретические вставки и предполагает использование GUI там, где это возможно и оправдано.

В качестве дистрибутива Linux используется Ubuntu 10.04, хотя инструкция, надо полагать, справедлива как для других версий Ubuntu, так и для некоторых других дистрибутивов.

Кроссплатформенная верстка. Шрифты и формы.

Опубликовано tulvit - вс, 25/04/2010 - 23:53

Небольшой экскурс в матчасть. Шрифты делятся на несколько основных семейств – serif (шрифты с засечками), sans-serif (шрифты без засечек), cursive («рукописные» шрифты) и другие. Одинаковые по своему характеру шрифты объединяются в гарнитуры. Например, всем известный шрифт Times New Roman принадлежит семейству serif и гарнитуре Times.

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