Уважающий себя творческий человек обязательно должен носить в кармане, портфеле или сумке стильную штучку для заметок под названием Молескин. По крайней мере, в этом почему-то уверено гламурное общество, состоящее из эстетов, поэтов и прочих представителей творческой интеллигенции. Молескин, говорите? А как насчет по-настоящему креативных и необычных блокнотов?
Глава Apple Стив Джобс готов приступить к работе в компании после шестимесячного перерыва, связанного с проблемой со здоровьем, хотя какую-то часть недели он будет работать на дому.
Думаю, все, кто хотя-бы делает вид, что программирует под iPhone, знают, что Objective-C — это надстройка на C. Тем не менее, объекты, начинающиеся с NS* порой производят на программистов неизгладимое впечатление, и они начинают использовать классы библиотек не по их прямому назначению, получая при этом излишки съеденной памяти да и просто геморрой при программировании.
Как же нам получить идеальный софт, или по крайней мере найти направление, в котором двигаться? Влиять на проприетарное ПО весьма непросто, да и стимула никакого — даже если укажешь на ошибки, вряд ли заплатят. Но выход есть — программное обеспечение с открытым исходным кодом.
Фишка набора «Шахматы для Теслы» – то что играть надо настоящими вакуумными лампами. Дизайнер – Paul Fryer, год разработки – 2008, размеры доски – 17x48x50cm. Всего сделано семь комплектов, поэтому купить набор, к сожалению, почти невозможно.
Ноутбуки и зимой сильно нагреваются, а уж что говорить о лете. Летом наши любимые переносные компьютеры очень страдают от переизбытка тепла. А, вместе с ними, страдаем и мы, но от неполадок в их работе. Но решение проблемы есть. Подставка для охлаждения ноутбука на выдвижных ножках поможет лэптопам справиться с перегревом, а их хозяевам – с эмоциями.
В программировании один из заветов — не дублировать функциональность. Иначе мы получаем код, в котором одни участки нетривиально зависят от других. При реализации части задач этому принципу легко следовать, но в других возникают проблемы: рассмотрим софт, который использует не очень хитрые математические алгоритмы, требующие работы с функциями и их производными. f(a : double) : double { a*a + 3 * a }
df(a : double) : double { 2*a + 3 }
Очевидно, что, как минимум, код f и df функционально зависим, а, возможно, мы наблюдаем дублирование функциональности. Ситуацию можно исправить, если вспомнить определение производной и, соответственно, исправить код df: