SendStudio
Одни мои хорошие знакомые из штата Огайо купили программку для рассылки информациооных маркетиноговых писем для своих клиентов (читай спама, хотя на самам дела это действительно маркетинговые письма, т.к. рассылают они именно тематические письма и именно если человек сам на них подписался - некое подобие нашего subscribe.ru). Когда покупали им как бонус дали бесплатный хостинг на JumpLine.com
Ну разумеется решили программку поставить на этот хостинг.
Несколько месяцев все работало хорошо, но вот вчера работать перестало, при обращении в службу поддержки выяснилось, что аккаунт удален из-за рассылки спама!
Вот я сижу и размышляю, если хостинг в нагрузку дали, за программу для рассылки спама, то зачем его закрывать из-за этой самой рассылки? Ужасно непоследовательно.
SonyEricsson P1i
Купил себе пресловутый сабжект на день рожденья, но работать хорошо он не захотел, сначала работает хорошо, но после нескольких часов работы эта зараза перестает реагировать на входящие звонки, и позвонить с него также становится невозможно. Хотя девайсина неплохая, если бы она еще в процессе работы не пререгружалась цены бы ей не было, а так перегружается, а после перезагрузки говорит, что де прегрузилась она для повышения производительности, о какой производительности правда идет речь непонятно, так как лично моей производительности это не способствует. Еще это устройство любит прегружаться когда долго лежит без дела - наверно скучно ему становится, все бы ничего, но вот особенность этого аппарата такая что после перезагрузки он не сразу становится телефоном, а спрашивает, не нахожусь ли я в самолете, и не нужно ли включить Flight mode, видимо что бы самолет не ушел в крутое пике от излучений этого агрегата. Так как в самолете я последний раз находился четыре года назад, то этот режим для меня мало востребован, а вот дозвониться до меня в это время невозможно, так как чтобы войти в режим телефона нужно нажать несколько кнопок.
Телефон отправился в сервис центр, где мне сообщили что починят не раньше чем через месяц, так как отправят его в Питер. Так что перешел обратно на свой древний Motorola 720i, который до сих пор работает как часы, хотя купил я его четыре года назад в том же аэропорту в Хитроу откуда и летел тем самолетом. Вот так.
Странно что SE допускает подобное, раньше за ней такого не замечалось.
Оптимизация Javascript
Встала такая задача: уменьшить размер JavaScript кода для ускорения загрузки страницы. Ну первое что приходит в голову, это удалять whitespace, для этого можно использовать JSMin, но об этом я напишу в другом посте. Основной способ уменьшения размера кода, это как можно меньше его писать и использовать как можно более короткие имена переменных. Еще одним способом уменьшения размера кода, это использовать более компактную форму записи. Обычно я при использовании объектно-ориентированного кода использую конструкции вида:
Честно сказать давно искал более компактный метод и наконец нашел. Решение крылось в библиотеке prototype. Вообще то когда я первый раз познакомился с этой библиотекой мне она не понравилась. Не понравилась она мне тем что наследование классов делается не используя особенности JavaScript а тупым копированием свойств:
Это не наследование, к тому-же когда я протестировал быстродействие подобного решения оно оказалось жутко не на высоте, что и следовало ожидать. Однако проблема оптимизации заставила меня взглянуть по новому на эту функцию - если ее применить не к объекту а к прототипу конструктора то получится как раз именно то что нужно, к тому же жутко компактно:
Получается гораздо красивее и компактнее.