Одно из различий Python и JavaScript
Чем дальше, тем между большим количеством языков программирования мне приходится переключаться. Одно из различий объектной модели Пайтона и ДжаваСкрипта мне портит кровь (у них парадигмы ООП вообще сильно различаются), если я вовремя не соображу, что надо переключиться с одного языка на другой.
Суть в том, что в Пайтоне метод ходит в гости со своим контекстом:
class A:
test = 'A'
def show(self): print self.test
class B: test = 'B'
a, b = A(), B()
show = a.show
b.show = a.show
show() # A
b.show() # AТогда как в JavaScript такой код будет работать совершенно иначе, там методы в чужой монастырь со своим уставом не ходят (если их не попросить):
var test = 'global';
A = function () {
this.test = 'A',
this.show = function () { alert(this.test) }
};
B = function () { this.test = 'B'; }
a = new A(); b = new B();
b.show = a.show
show = a.show
show() // global
b.show() // B
b.show.apply(a) // AПоявление «global» наверное надо разъяснить тем, кто JS знает плохо. На самом деле первая строчка (в данном случае) может читаться как «window.test = ’global’», а «show = a.show» как «window.show = a.show», тогда, должно быть, всё
Турция

Со второго по девятое апреля едем в Турцию, в Анталию, отель «Sherwood Breezes Resort» 5★. Не знаю почему, но оба чувствуем нечеловеческую усталость, хочется отдохнуть.
Планируем поваляться немного на пляже и съездить в Стамбул на экскурсию, я много слышал хорошего об этом городе от своего доброго знакомого Саида Кадырова (он там жил и работал). В море, увы, будет холодно — обещают температуру воды
Кто был в Турции, расскажите что нужно знать? Куда ещё можно съездить, куда ходить, куда не ходить?
Лайки (не про собак)
Хочу провести эксперимент — поставил под каждым постом «лайки» с трёх социальных сетей («Вконтакте», «Фейсбук», «Твиттер»), посмотрим что получится, если я их правильно настроил, конечно.
Пока меня смущает, что они очень медленно загружаются.
Добавлено позднее:
Почтовый клиент в виде IM
Я тут осознал, что 90% несрочных сообщений мне всё равно проще написать в джаббер, чем в почту. Я не знаю почему, пока не понял. Может это проще? Легковеснее? Когда приходится писать в почту сообщение
У вас такого не бывает? Конечно, когда надо ответить на длинное письмо с кучей цитат, да ещё, если это часть сложного треда, то лучше это делать в почтовике, но у меня таких только 10% всей переписки.
И я вот тут подумал — а нет ли почтового (SMTP/IMAP4) клиента в виде IM (как это сейчас
Изменения в speeddial новой альфы «Оперы»
Ребята из «Оперы» экспериментируют с возможностями SpeedDial в своём браузере. Помните, я писал о специальных версиях некоторых сервисов «Яндекса» для SpeedDial?
К сожалению, «Опера» их разломала в свежей альфе, зато добавила новую возможность, которой очень нехватало: специальным заголовком
Preview-refresh: 10или
<meta http-equiv="preview-refresh" content="10" />Время указывается в секундах. Кстати, теперь можно надёжно узнать через media queries, что «Опера» показывает страницу в SpeedDial: достаточно проверить, что
Советские деньги

Я не знаю среднего возраста своих читателей, но знаю наверняка, что по меньшей мере несколько человек уж точно жили в советские годы. На снимке — моя коллекция советских юбилейных монет (собирал в советские годы), плюс пачка советских бумажных денег, историю происхождения которой я помню весьма смутно.
Есть ещё небольшая коробка монет, которые остались у родителей с тех времён. А у вас сохранились советские деньги? Что вы с ними планируете делать? Хранить? Выкинуть? Продать?
Монк и обувь
Заметил, что в сериале «Детектив Монк» главный
Видимо при всех странностях Монка, снимать обувь в квартире, по американским меркам, уж чрезмерно странно.
Опоздали на самолёт

В первый раз в жизни опоздали с женой на самолёт. Я расcчитывал время — когда надо выйти с работы, чтобы успеть домой, доехать на метро до вокзала, а оттуда уехать в аэропорт по расписанию. В одном месте опечатался на час, в итоге опоздали на регистрацию на десять минут. Увы, как мы ни просили, на борт нас не взяли.
Ехали в Казань поездом. Проводник предложил доплатить с плацкарты, чтобы перейти в купе (сторговались на тысячу), ехали ночь в купе для проводников. Это интересный опыт. Ехали вдвоём — там всего два места, есть собственная розетка, собственное освещение и за чаем выходить — два шага. Единственный недостаток — два раза ночью стучались, будили, думали, что мы проводники, спрашивали нельзя ли пиво купить. После этого мы научились не реагировать.
Террористов бояться — метро не ходить
На перегоне «Чистые пруды» — «Красные ворота» ко мне подходит молодой мужчина: светлоглазый,
белесо-рыжеватый, в чем-то ярко-желтом. Подбивает клинья, спрашивает, что читаю. (…)Приглашает посидеть в кафе. Вежливо говорю «Спасибо, нет» и продолжаю читать, не смотря на него и не реагируя на дальнейшие реплики. Тот заявляет: на следующей мы с тобой выйдем. Замолкает. Через 15 секунд — станция. Тот требует выйти, угрожая, что иначе закричит, ЧТО Я ШИХАДКА, позовет милицию и меня посадят. (…)
Мужчина кричит на весь вагон: «Люди, в вагоне шахидка, спасайтесь! Люди, она — смертница! СМЕРТНИЦА!», дергает меня сильней, я слетаю с места. (…)
Смотрю на оставшихся мужчин и не понимаю, почему они мне не помогают, видно же по ним, что не трусы?! Соображаю, что приняли за истеричную семейную пару и не решаются вмешаться: грубую
силу-то мужик не применяет. Кричу: «Мы НЕ ЗНАКОМЫ!» Тут же с места срываются «вахаббиты» и пара парней славянской внешности, оттесняют мужика на станцию, потом трое остаются со мной в остановленномиз-за паники вагоне и успокаивают.
Из ЖЖ несостоявшейся «смертницы».
Из этой истории целых два интересных вывода.
Инцидент на станции столичного метро «Красные ворота». Один из пассажиров попытался задержать неизвестную, которую принял
за террористку-смертницу. Об этом сообщил наш корреспондент, который стал очевидцем инцидента.
Если интересно, можно ещё и послушать, там подробнее.
Группа → служба
Стал руководителем службы разработчиков внутренних сервисов «Яндекса».
Сколько есть способов восстановить chmod?
Иногда на собеседованиях спрашивают такую задачу, на соображалку: предположим вы случайно сняли права исполнения с команды chmod. Как их восстановить?
Я решил подумать сколько способов исправить эту ситуацию я знаю.
Первый способ — скопировать chmod с соседней машины при помощи scp, sshfs и т. п. Если такая машина имеется, конечно.
Способ второй:
cp /bin/sh ~/chmod2
cat /bin/chmod > ~/chmod2
sudo ~/chmod2 +x /bin/chmod
rm ~/chmod2Третий способ (при условии, что у вас
sudo apt-get --reinstall install `dpkg -S /bin/chmod | cut -f1 -d:`Способ четвёртый:
gcc -x c - <<CHMOD
#include <sys/stat.h>
main(){chmod("/bin/chmod", S_IXUSR | S_IXGRP | S_IXOTH);}
CHMOD
sudo ./a.out
rm a.outКто ещё знает способы?
Пайтон: замкнувшее замыкание
Есть немало вещей, которые мне не нравятся в Пайтоне. Не так давно мы на работе наткнулись ещё на одну.
У нас есть код, который выглядит примерно так (можно написать и одну функцию, но так нагляднее):
def outer(useless = None):
def inner():
if useless is None:
print "Pichal'ka"
return inner
outer()()Ничего необычного, одна функция определяется внутри другой, использует переменную используя переменную из внешней функции. Всё логично, всё работает.
Теперь меняем код:
def outer(useless = None):
def inner():
if useless is None:
print "Pichal'ka"
# тут много кода, начало мы уже потеряли
if False: useless = None
return inner
outer()()Запускаем код и видим (Пайтон 2.6.5):
Traceback (most recent call last):
File "sample.py", line 10, in <module>
outer()()
File "sample.py", line 3, in inner
if useless is None:
UnboundLocalError: local variable 'useless' referenced before assignmentКакими бы благородными мотивами не руководствовались создатели Пайтона, мне такое поведение не нравится. Вдруг я забыл как переменная попадает в функцию, присвоил ей
Избавиться от эффекта можно, изменив прототип внутренней функции на «inner(useless=useless)».
То же, кстати, происходит при импорте модуля:
import random
def outer():
print random.choice
#import random
outer()Раскомментируйте строчку со вторым импортом и получите ошибку.
Все эти ошибки возникают
Я не придумал хороших причин так делать с точки зрения языка (может их
Пинг-понг
Журналисты «Look at me» взяли небольшое интервью для статьи «
Кредитка vs. наличные
Только что, в первом эпизоде восьмого сезона сериала «Монк» я услышал как героиня спрашивает: «вы наличные принимаете?». Возможно я слышал это в американских фильмах и раньше, но не обращал внимание, а сейчас задумался.
Я в магазинах в России спрашиваю принимают ли они банковские карты, а там ситуация обратная — вопрос в том принимаются ли наличные.
Про вакцины
Президент Калифорнийской некоммерческой корпорации «Natural Woman, Natural Man, Inc.» Джок Даблдей предложил $20000 первому из врачей или руководителей фармацевтических компаний, кто публично выпьет смесь стандартных добавок, имеющихся в большинстве вакцин, в том же количестве, которое, в соответствии с рекомендациями Центра Профилактики и Контроля заболеваемости США 2000г, получал шестилетний ребенок.
Эта смесь не будет содержать действующего начала вакцины — живых или убитых вирусов или бактерий. В её состав войдут только стандартные добавки к вакцине в их обычных формах и пропорциях (…)
— с сайта «Вакцинация — панацея или смерть».
Хотя тут речь идёт немного о другом, но и с самими вакцинами мне совершенно ничего не понятно. Где правда, не говоря уже об истине? Заказал на «Озоне» книгу «»Беспощадная иммунизация — правда о прививках», Александра Котока (в формате fb2 не смог найти), жду.
Андроид 2.3.3
Обновил свой Nexus One, поставил Андроид 2.3.3, устал ждать когда прилетит «по воздуху», сделал всё вручную (на сайте «Droider» есть инструкция).
Стало всё заметно аккуратнее. Такое чувство. Вернулся на родную для ОС клавиатуру, по внешнему виду нравится больше, чем Swype, хотя Swype и удобнее.
Советское
































Я считаю себя человеком, не подверженным ностальгии. Со мной это приключается исключительно редко, пожалуй, за всю жизнь было не более пары раз.
Тем не менее, мыслями я люблю бывать в прошлом, особенно я благодарен памяти за неожиданные флешбеки, когда вспоминается
Спасибо Александру Сенникову за то, что он помог мне найти в своей памяти много добрых, забытых воспоминаний детства. Бумажный дед Мороз, те самые фотоальбомы, письмо авиапочтой, перьевые ручки, «лимонные дольки», машинка
Какой же это труд, наверное, найти все эти предметы, сделать из них натюрморт, правильно сфотографировать. Завидую такой увлечённости.
Сходите по ссылке на журнал, фотографий там значительно больше.
Багги



Ездили сегодня в посёлок Путилково, кататься на багги. Холодно, но интересно — сильно заносит на трассе (местами там лёд). Багги машина лёгкая, но очень устойчивая, я видел как сотрудники лихо кружились на ней на одном месте, газуя по полной.
Поводил на хорошей скорости в заносе, руль приходилось выкручивать
Находится по адресу Путилково, Путилковское шоссе, владение 112А (автодром «
Добавлено: мне в лично разговоре задали несколько вопросов. Отвечаю всем сразу: багги заднеприводные, права не нужны. Есть детские машинки.
Москва ✈ Челябинск ✈ Москва
Thanks for ruining my childhood
Ролик про копипаст в студии Диснея: