Search
Write a publication
Pull to refresh
56
0
frexin @sindrom

Пользователь

Send message

Ричард Фейнман: Алгебра

Reading time1 min
Views10K

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

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

(Оригинал ролика на английском языке)

Слушаем вызовы функций в Javascript

Reading time12 min
Views10K
Многие знают о механизме Event-Dispatcher-Listener'ов, реализованному во многих языках программирования. Я же создам подобный механизм не для Event'ов, а для любого метода объекта JavaScript — Object.
Я не претендую на оригинальность, нет. Основная цель статьи — рассмотреть интересные механизмы прототипирования в JavaScript, создание декораторов и, собственно, постараться хоть немного раскрыть мощь и гибкость это чудесного языка, который так часто обижают и недооценивают.

UPD1: краткое содержание:
1. Создание декоратора на JavaScript
2. Создание механизма Function call listener с помощью декораторов

UPD2: от 09.06.2009
В конце статьи я добавил раздел Update: Decorator Mark II. В нём — исправления и улучшения (я не перекраивал всю статью из-за этого)

Итак, первый (и, надеюсь, не последний) рецепт в моей поваренной книге JavaScript.
Перейти к рецепту

Электронная регистрация на поезд РЖД — экспорт билета в Гугл- и Яндекс.Календарь

Reading time2 min
Views15K
image

Покупая билет на поезд дальнего следования РЖД, можно воспользоваться услугой электронной регистрации. Это когда приходишь на поезд с паспортом и вообще без билета. Оно неоднократно опробовано и прекрасно работает.

У электронной регистрации мне известны три проблемы.
1) [Животрепещущая] Туалеты на вокзалах платные. Но за два часа до отправления и в течение двух часов после прибытия — бесплатно (Вы этого не знали? Упс, вокзальные туалеты теперь постигнет хабраэффект...)
При наличии электронного билета гадить бесплатно вы можете только в комментах, но не на вокзале.

2) [Бюрократическая] Если вы едете в командировку от организации, особенно государственной, то бухгалтерии нужен билет в качестве обоснования, что вы не лось.
Электронный билет — вы электронный лось.

3) [Основная] Подходя к поезду, вы должны знать свой номер вагона! Иначе вам придётся идти к начальнику поезда и искать свою фамилию в списке — а если вы пришли к поезду впритык, то можете этого и не успеть!

И вот к этой-то проблеме я и предлагаю гризманки-решение.
Читать дальше →

Версионирование структуры БД в MySQL: MySQL Migration with PHP

Reading time3 min
Views13K
Когда БД проекта вырастает за пределы трех-пяти таблиц, продолжая при этом постоянно изменяться, на свет рождаются неудобства обмена изменениями между разработчиками. Проблема стара как мир, но инструмента удовлетворяющего мои требования я в ноябре 2009го найти не сумел.

Мои требования к инструменту очень просты:
  • Как бы я не издевался над структурой данных в приложении, инструмент должен уметь изменить структуру в другой инсталляции приложения так, чтобы она была идентична моей.
  • System requirements: PHP и MySQL — не более того.
  • Бесплатность.
  • Открытость.


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

Набор бесплатных иконок для GUI и веб-дизайна

Reading time1 min
Views4.7K
Продолжение набора бесплатных иконок.
42 иконки в размерах 64х64, 48х48,32х32 и 16х16
Форматы: Win, Mac OS и Png.

Иконки бесплатны для некоммерческого использования.
При коммерческом использовании иконок, пожалуйста, ставьте ссылку на pixelmixer.ru

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

Паттерн проектирования «Заместитель» / «Proxy»

Reading time7 min
Views55K
Почитать описание других паттернов.

Проблема


Необходимо контролировать доступ к объекту, не изменяя при этом поведение клиента.

Описание


При проектировании сложных систем, достаточно часто возникает необходимость обеспечить контролируемый доступ к определенным объектам системы. Мотивацией для этого служит ряд приобретаемых преимуществ. Таких как, ленивая инициализация по требованию для «громоздких» объектов, подсчет количества ссылок на объект и т.д. и т.п. Однако, не всегда потребность в контролируемом доступе к объекту базируется только на преимуществах. Как правило, сложность процессов реального мира, ограничения вычислительных ресурсов просто не оставляют проектировщику выбора, нежели как воспользоваться паттерном «Заместитель» («Сурогат»).
Читать дальше →

ExtDesigner — щупаем ручками

Reading time2 min
Views3.2K
Тестируем свеженький ExtDesigner за более 200 не русских президентов на предмет вменяемости и вообще что это такое и для чего
Сразу скажу что ExtJS ом пользоваться не умею, но прочитанные доки оставили довольно приятное впечатление
тестировать буду на Gentoo Linux 64х битную сборку

если интерестно идём под кат

Как сделать хорошую фотографию глянцевого телефона

Reading time2 min
Views19K
Каждый день на сайте выходит несколько хороших обзоров новых и интересных гаджетов. И если все особенности устройства обычно описаны «на отлично», то вот фотографии гаджета зачастую не выдерживают никакой критики. Часто приходится видеть подобное:
вспышка в лоб
А ведь для получения качественного фото даже глянцевого телефона не потребуется никаких особых приспособлений, даже затраты времени на получение качественных фото будут минимальны. Все нужное есть практически в каждом доме, а фотографировать можно и на телефон, хотя даже самая простая цифромыльница даст более качественный результат.
Читать дальше →

Обзор хостингов изображений: читатели рекомендовали ещё 15 сервисов

Reading time10 min
Views16K
После публикации первых 2 статей о 30 хостингах изображений читатели порекомендовали ссылки на ещё более 10 хостингов (14-15), практически каждый из которых стоило рассмотреть. Публикую результаты тестирования 11 хостингов (остальные пришлось отсеять).
(31.03) Добавлены ещё 4 хостинга по результатам после публикации, итого в таблице — 15 хостингов.
Читать дальше →

Проходим сквозь стены NAT-ов

Reading time2 min
Views2.6K
image Повсеместное распространение NAT казалось препятствует свободному обмену трафиком между компьютерами, находящимися за одним из них, и практически делает это невозможным, если оба компьютера скрыты за разными NAT серверами, естественно если вы не администратор обоих NAT серверов. Однако Samy Kamkar легко и непринужденно не только преодолел это, но и сделал программу которая позволяет преодолевать подобные препятствия. В настоящее время данная программа доступна только пользователям *nix подобных систем.

Pwnat — этот инструмент позволяет любому количеству клиентов, находящихся за одним NAT-сервером, соединяться с сервером стоящим за другим NAT, при этом никакой проброски портов на серверах не требуется и никаких прочих инструментов не используется. Серверу не надо ничего знать о клиенте который с ним соединяется. Проще говоря это такой прокси сервер, который стоит за одним NAT и работает с клиентами, стоящими за другим NAT, между ними нет никакого дополнительного посредника, никаких DNS-фокусов и никакого пива админам. Скажу честно — я тоже в это сначала не поверил.

Клиент может подключаться через такой сервер к любым ресурсам, либо только тем что ограничены сервером pwnat. Данный инструмент основан на построении UDP-тоннеля. Принцип работы весьма оригинальный и прекрасно описан автором, рекомендую ознакомиться, ибо решение данного вопроса оказалось весьма интересным и неожиданным. Давно не встречал ничего подобного.

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

Обзор 30 хостингов изображений для быстрой публикации. Продолжение, выводы

Reading time16 min
Views80K
Продолжаем обзор хостингов изображений для быстрой публикации.
Начало статьи находится по ссылке habr.com/ru/blogs/hosting/89162, а потом переходим сюда.
Читать дальше →

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

Reading time16 min
Views279K
Представлен список хостингов изображений, отобранный по необычному, но в особых случаях важному признаку — возможности опубликовать фото без авторизации на сайте. Фотохостинги, которые утверждают, что они «free», но при этом забывают об этой важной степени свободы, безжалостно отсеяны, но где-то в конце обзора на самые популярные из них, всё же, даны ссылки. Не забыты остальные важные условия попадания в список — надёжность и длительность хранения, удобство пользования и отсутствие навязчивой рекламы. Впоследствии стоит выбрать из всего списка 5-7 наиболее достойных и удобных хостингов.



UPD 2022-04: из 30 хостингов с живыми ссылками на изображения в 2022 году осталось два: imgur.com и thumbsnap.com.

Особые случаи, для которых сделан этот обзор — публикация некоторого изображения (картинки, рисунки, фотографии, скриншоты, графики) на чужих (не собственных) ресурсах, особенно там, где решений для публикации фото нет совсем (Хабр в том числе) или они неудобны. Это — статьи на чужих ресурсах или в своих блогах на чужих хостингах (пример — blogger.com) с неудобным или ущербным управлением рисунками, на онлайновых аукционах, комментарии в блогах и форумах.

Хостинги для такой публикации предоставляют текстовые ссылки в виде HTML-, BB- кодов или прямые ссылки на изображение и страницу просмотра, превью (они же миниатюры, thumbnails) различного размера и ряд других удобств. Рассмотрим их все и расположим найденные хостинги в порядке убывания некоторого усреднённого удобства. В конце, в качестве бонуса — ссылки на некоторые другие ресурсы онлайновой подготовки изображений, тоже придерживающиеся правила необязательной авторизации.
Читать дальше →

Ubuntu One Music Store

Reading time3 min
Views3.9K
image
Не так давно компания Canonical разрабатывающая дистрибутив Ubuntu Linux объявила об официальном запуске музыкального магазина Ubuntu One Music Store, который будет интегрирован в музыкальный плеер Rhythmbox в предстоящем релизе Ubuntu 10.04. Магазин позволяет пользователям покупать доступные для загрузки песни и альбомы.

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

PHPUnit. Часть 03 Написание тестов для PHPUnit

Reading time9 min
Views50K
Предисловие переводчика
Эта статья продолжает серию переводов официальной документации по PHPUnit на русский язык.
Часть 1, Часть 2

Пример 4.1 демонстрирует как с помощью PHPUnit можно выполнить тестирование операций с массивами PHP. В этом примере показаны базовые соглашения и шаги, свойственные тестам PHPUnit:
Читать дальше →

Google выпускает skipfish — сканер безопасности сетевых приложений

Reading time1 min
Views436
imageПолностью автоматизированный инструмент проверки безопасности ваших веб приложений от Google. Основные возможности:

высочайшая скорость: написан на C, оптимизированные HTTP запросы, минимальные требования к CPU — скорость запросов легко достигает 2000 в секунду.

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

отличная логика безопасности: высокое качество работы, различные способы проверки безопасности.

Поддерживаются операционные системы — Linux, FreeBSD, MacOS X и Windows (требуется Cygwin).

Google skipfish

20 причин проводить обзоры кода

Reading time6 min
Views5.3K
(прим. перев. Перевод немного вольный, но я попытался максимально точно сохранить смысл текста, в то же время отыгравшись на некоторых некритичных моментах, просьба не судить строго :)
Должен также отметить, что я не по всем пунктам согласен с автором (в конце он уже начинает зарываться) и, разумеется, обзоры кода — это не серебряная пуля, но, тем не менее, очень и очень полезная практика.)

Я затвитил эту статью о 5 причинах проводить обзоры кода на CIO.com на прошлой неделе и понял, что на самом деле причин гораздо больше, чем те пять, о которых там написано. Так что к концу дня у меня их было уже больше 20. Это коллекция тех твитов с некоторыми подробностями, описанными здесь.

Причина №1. Достаточно быстрая ответная реакция, чтобы подстегнуть разработчика.
Так как обзор кода производится после кодирования и перед интеграционными и системными тестами, разработчикам не надо ждать столько же, сколько и ответа от отдела по качеству кода (QA). Обеспечив конкретный, своевременный ответ, разработчики могут подстраивать свои навыки кодирования для избежания общих ошибок.
Читать дальше →

JQuery FormNavigate — плагин для удобной работы с onbeforeunload

Reading time2 min
Views4.6K
Все, кто пользуется веб-интерфейсом gmail, наверняка замечали, как гугл заботится о нас и не даёт закрыть страницу, если мы начали составлять письмо и не сохранили его в черновики. И понадобилось мне для своего проекта сделать нечто похожее.

Сперва сделал это используя window.onbeforeunload, но злая опера не поддерживает это событие.
Призадумался, попутно нашёл плагин для jquery под названием FormNavigate.
Читать дальше →

Information

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