В очередной раз обновил свой MacBook Pro 15”, и как обычно понадобилось установить PHP не стандартной конфигурации. Обычно я использовал MacPorts для установки необходимых мне пакетов, но он ужасен.
Минуточку. А вообще зачем мне все это? Ведь, скажите вы, в Snow Leopard уже есть установленный и готовый к работе PHP 5.3. Поэтому привожу примерный список почему я собираю PHP ручками:
Иногда бывает нужно установить Node.js на Windows. Официальных сборок для Windows пока не существует, поэтому приходится последовательно собирать самому.
With the latest versions of Google Chrome and Safari 5, we can now move away from the -webkit-text-stroke hack I had previously endorsed, and move to a much better solution.
As pointed out by Tim Van Damme, the Webkit nightly builds had added -webkit-font-smoothing which actually let us set the type of font smoothing we want instead of hacking the browser into the right setting. And now with Safari 5, this CSS attribute is available in a released version.
I’ve updated the resource on thinning text in Webkit to use this new technique, and have already updated this site’s CSS.
I recently came up against an issue in Safari where the background colour of an element seemed to ‘bleed’ through the edge of the corners when applying both borders and a border-radius (see the image above). After seeing David Coletweet about the same issue I resolved to find a solution,…
Совсем недавно Twitter сделали кнопку, которая при размещении на странице показывает количество упоминай этой страницы в твитере и дает возможность опубликовать ссылку на эту страницу у себя в твитер-ленте.
Я написал расширение для Safari 5, которое добавляет такую же кнопку вам в браузер. Теперь ваш браузер будет выдавать информацию о количестве упоминаний страницы и давать возможность опубликовать ссылку на страницу (с комментарием) в твитер-ленте.
Расширение называется The Tweet Button, по анологии с названием самой кнопки.
Ребята из GitHub последнее время радуют нас новинками. Сначала это были GitHub:Jobs, портал с вакансиями которые сами подбирают и находят разработчиков, а теперь это gollum. Gollum это на самом деле не персонаж “Властелина Колец”, это простой wiki сервер построенный на Git и смотрящий в мир хорошим API.
Из всего этого, самое клевое это то, что он имеет под собой обычный Git репозиторий, со всеми плюшками в виде: pull/push, merge, remote и так далее. У меня уже есть пару идей как его можно было бы применить.
Ну и разумеется gollum распространяется свободно и вы вполне можете установить его себе локально. Я планирую это сделать, чтобы попробовать его в деле.
Думаю в каждом известном сейчас JavaScript фреймворке есть отдельный модуль занимающийся CSS-анимацией. Только эти фреймворки с каждым днем становятся все пузатее и пузатее, с огромным, “богатым” набором возможностей ;). На простых проектах зачастую нехватает только CSS-анимации, и в этом нам очень сильно может помочь мини-фреймворк Émile. Он содержит всего 47 строк кода, занимает в сжатом виде 1,6Kb и добавляет всего лишь 1 функцию такого вида:
emile(element, style, options, after);
Поясню назначение параметров:
element: id элемента или сам элемент над которым будет проходить анимация
style: стили которые будут являтся конечной точкой анимации
options: необязательный параметр, несколько опций
duration: время анимации в миллисекундах
after: функция которая будет вызвана после того как анимация закончится
easing: функция которая управляет ходом анимации
after: необязательный параметр, функция которая будет вызвана после того как все закончится, в дополнение к options.after
Émile корректно работает на всех необходимых, по-моему мнению, браузерах:
Microsoft Internet Explorer для Windows, версия 6.0 и выше
Mozilla Firefox 1.5 и выше
Apple Safari 2.0.4 и выше
Opera 9.25 и выше
Chrome 1.0 и выше
Это очень мощный фреймворк для работы с анимацией, с помощью его параметров можно организовать любую сложную анимацию на ваших сайтах. Несколько примеров можно увидеть в статье Getting Started With Emile.
В течении последних нескольких недель в следующую версию PHP были включены весьма интересные возможности, это: “Array dereferencing support” и “Scalar type hints”. Итак, по порядку.
Array dereferencing support.
Эту возможность сообщество разработчиков просило очень давно, но каждый раз она откладывалась. Только недавно она была включена в исходники. Вот что она добавляет.
В дополнение к массивам, классам и интерфейсам в PHP была добавлена возможность указывать значения простых типов, таких как int, float, boolean в методах и функциях. Это позволит PHP быть более типизированным языком нежели сейчас.
<?php
function print_float(float $f) {
echo $f . "\n";
}
for ($i=1; $i<5; $i++) {
print_float($i / 3);
}
?>
Такая возможность это очень здорово, теперь интерфейсы могут быть полноценнее.
PHP идет правильным путем, но уж очень медленно. Мне очень сильно нехватает поддержки Traits, если по простому это возможность наследовать класс от нескольких классов одновременно. Да и с релизами у них сейчас бардак, до сих пор не понятно будет 5.4 или 6.0, а если будет последняя то видимо без Unicode. :(
Исключения (Exception) появились в PHP с версии 5.0, они добавили хорошие возможности по обработке ошибок. Вместе с исключениями в PHP появилась стандартная библиотека классов (SPL), сейчас она содержит 13 готовых классов для обработки исключений.