-
Анимированные GIF’ы до сих пор часто используются в интернете. Хотя это древний формат, но даже в нём остаётся просто для инноваций. На сайте Tumblr пополняется коллекция 3D GIF, в которых трёхмерный эффект создан путём простого добавления двух вертикальных белых линий.…
-
Денормализация деревьев
Очень часто за основу архитектуры приложения берётся дерево. Простой пример: есть страны, в странах — области, в областях — города, в городах — организации, в организациях — работники, товары или что-либо ещё. Использование дерева вполне логично и оправдано. Иерархичность такой…
-
Разработка документации при помощи DocBook
Так уж сложилось, что в наших проектах ведение технической документации полностью лежит на плечах разработчиков, по принципу: внес зменения в код проекта — актуализировал документацию. Сама документация представляла собой набор Word’овских документов, которая хранилась вместе с исходным кодом под VCS.…
-
Хелпер объединяющий скрипты и стили в один файл для старичка ZF1
Если вы хотите для множества добавленных скриптов: $this->view->headScript()->appendFile(‘/static/js/script1.js’); $this->view->headScript()->appendFile(‘/static/js/script2.js’); $this->view->headScript()->appendFile(‘/static/js/script3.js’); вместо этого: <script type="text/javascript" src="/static/js/script1.js"></script> <script type="text/javascript" src="/static/js/script2.js"></script> <script type="text/javascript" src="/static/js/script3.js"></script> получить вот это: <script type="text/javascript" src="/static/cache/bff149a0b87f5b0e00d9dd364e9ddaa0.js"></script> тогда эта статья для вас.
-
Маскируем класс под граф Boost. Часть 3: Находим путь
Пролог: Концепции Boost Часть 1: Подключение ассоциированных типов без вмешательства в интерфейс исходного класса Часть 2: Завершаем реализацию поддержки концепций В прошлых статьях цикла описывался процесс адаптации класса клеточного игрового поля под концепции графов boost. Сейчас рассмотрим собственно то, ради…
-
От сортировки пузырьком к генетическим алгоритмам
Данная статья является кратким обзором того, что представляют собой генетические алгоритмы. Будучи новичком в биоинформатике, начну с вещей, близких и понятных людям технических специальностей: алгоритмов сортировки, затем перейду к описанию одной из задач генетического программирования и того, что под алгоритмами…
-
Необычный «взлом» авиакомпании
Забавный пример «нарушения» информационной безопасности привёл Брюс Шнайер в последнем выпуске своей почтовой рассылки Crypto-Gram. Некий житель Китая купил билет VIP-класса на самолёт — и почти каждый день приходил в аэропорт за бесплатным питанием. После еды он шёл к кассе…
-
Ubiquiti AirGrid HP 20dBi — Разворачивание сетевого моста. Личный опыт
Перед тем как описать все прелести и недостатки данного передающего устройства, я хочу опишу поставленную мной цель, и какое оборудование использовалось ранее. Цель. Индивидуальные предприниматели — очень экономные и находчивые люди, и для того чтобы сэкономить копеечку идут на любые…
-
Поиск работы Java Middle Developer (наблюдения и впечатления)
И вот настал момент, когда я твердо решила распрощаться с родной и уютной компанией-интегратором и найти работу поинтереснее. За три недели активного поиска получила массу впечатлений, коими и хотела бы поделиться. Входные данные Место действия – Москва. Мидл в заголовке…
-
x3650 M4 – а нужно ли HD?
Сервер x3650 М4 долгое время был и до сих пор остается хитом продаж IBM. Казалось, что в сегменте малых 2-х процессорных серверов никаких радикальных изменений не предвидится, never change the winning team. Но вот на рынок вышел «старший брат» х3650M4,…