Хочу поделиться полезными приемами работы с PostgreSQL (другие СУБД имеют схожий функционал, но могут иметь иной синтаксис).
Постараюсь охватить множество тем и приемов, которые помогут при работе с данными, стараясь не углубляться в подробное описание того или иного функционала. Я любил подобные статьи, когда обучался самостоятельно. Пришло время отдать должное бесплатному интернет самообразованию и написать собственную статью.
Данный материал будет полезен тем, кто полностью освоил базовые навыки SQL и желает учиться дальше. Советую выполнять и экспериментировать с примерами в pgAdmin'e, я сделал все SQL-запросы выполнимыми без разворачивания каких-либо дампов.
В мануале есть всё. Но чтобы его целиком прочитать и осознать, можно потратить годы. Поэтому один из самых эффективных методов обучения новым возможностям Postgres — это посмотреть, как делают коллеги. На конкретных примерах. Эта статья может быть интересна тем, кто хочет глубже использовать возможности postgres или рассматривает переход на эту СУБД.
Друзья, на прошедшей в прошлом году конференции PG Day'15 Russia один из наших докладчиков, Joseph Conway, представил интересный материал об использовании созданного и поддерживаемого им уже больше десяти лет расширения PL/R, которое позволяет использовать язык для статистического анализа R внутри всеми любимой базы данных. Хочу предложить вашему вниманию follow-up статью, созданную на основе материалов, представленных в докладе Joe. Задача данной публикации — обзорно познакомить вас с возможностями языка PL/R. Надеюсь, что вы найдете представленную здесь информацию полезной для себя.
Последние тенденции в области Big Data поощряют сближение аналитики и данных, в то время как PL/R ненавязчиво предоставляет такой сервис вот уже 12 лет! Если вдруг вы не в курсе, PL/R – это расширение для PostgreSQL, позволяющее использовать R, язык для математических расчетов, прямо из PostgreSQL для того, чтобы легко и просто получать развернутую аналитику. Расширение доступно и активно совершенствуется с 2003 года. Оно работает со всеми поддерживаемыми версиями PostgreSQL и со всеми свежими версиями R. Тысячи людей во всем мире уже оценили его удобство и эффективность. Давайте же разберемся, что такое PL/R, обсудим достоинства и недостатки такого подхода к анализу данных и рассмотрим несколько примеров для наглядности.
Доброго времени суток, уважаемые хабравчане! В Elasticweb мы негласно ратуем за Nginx и, наверное, мы одни из немногих хостингов, которые не поддерживают Apache и .htaccess соответственно. В связи с этим, большое количество обращений в тех. поддержку связано с оказанием помощи в написании конфигурационного файла для Nginx. Поэтому мы решили собрать коллекцию полезных сниппетов и коллекцию готовых Nging конфигов для наиболее популярных CMS/CMF/Фреймворков на PHP.
Сегодня мы представляем вашему вниманию адаптированную подборку инструментов (в том числе облачных) для разработчиков, которые позволяют создавать по-настоящему качественные проекты. Здесь представлены исключительно SaaS, PaaS и IaaS сервисы, предоставляющие бесплатные пакеты для разработчиков инфраструктурного ПО.
До сих пор Raspberry Pi остается одним из самых популярных технологических гаджетов.На эту плату Вы можете установить практически любую операционную систему. Но сегодня мы поговорим о том, как писать программы для этой платы без операционной системе, пользуясь лишь аппаратными средствами.
В чем подвох?
На первый взгляд задача кажется тривиальной: скачиваем keil, создаем проект… Но все не так просто. Все среды программирования(keil, IAR, Atolic) поддерживают максимум ARM9.У нас же ARM11. Это связано с негласным правилом, что на голом железе пишут до ARM9, а после на Линуксе. Но все-таки есть одна лазейка: arm-none-eabi-gcc поддерживает любой ARM.
Вторая проблема заключается в том, что под данный процессор(BCM2835) нет никаких конфигурационных файлов, header'ов и т.д. Здесь нам на помощь придет загрузчик Raspberry Pi. И ничего, что он пропритетарный. Он выполняет две функции: инициализирует процессор и его периферию, а также передает управление ядру kernel.img. Мы просто замаскируем свою программу под ядро и загрузчик её запустит.
1 Введение в AngularJS
2 Engineering concepts in JavaScript frameworks
3 Modules
4 Understanding $scope
5 Controllers
6 Services and Factories
7 Templating with the Angular core
8 Directives (Core)
9 Directives (Custom)
10 Filters (Core)
11 Filters (Custom)
12 Dynamic routing with $routeProvider
13 Form Validation
14 Server communication with $http and $resource
1 Введение в AngularJS
Angular – MVW-фреймворк для разработки качественных клиентских веб-приложений на JavaScript. Он создан и поддерживается в Google и предлагает взглянуть на будущее веба, на то, какие новые возможности и стандарты он готовит для нас.
MVW означает Model-View-Whatever (модель – вид – что угодно), то есть гибкость в выборе шаблонов проектирования при разработке приложений. Мы можем выбрать модели MVC (Model-View-Controller) или MVVM (Model-View-ViewModel).
Этот обучающий материал задумывался как отправная точка для изучения AngularJS, его концепций и API, чтобы помочь вам создавать великолепные веб-приложения современным способом.
Раньше для поиска по сайту мы использовали обычный fulltext поиск. Но в определенный момент он перестал нас устраивать и мы решили опробовать альтернативную технологию поиска: Sphinx. К сожалению, у сфинкса совсем нет русской документации, поэтому эта статья — аналог статьи Build a custom search engine with PHP, только на русском языке и для моего локального окружения (windows 7, mysql/php)
Статья состоит из 4 частей:
Краткий рассказ про подготовку базы для поиска.
Рассказ про первоначальную установку и настройку сфинкса
Индексирование базы и тестовый поиск из командной строки
ХострТрекер предлагает проверить, не попал ли Ваш домен в DNS блеклист. Это может случится по целому ряду причин: например, подозрение в рассылке спама, размещении запрещенного контента (или даже просто ссылок на сайты, где таковой имеется) и т.п. Как это выявить и как с этим бороться? Читайте под катом.
В очередной раз читал про многопоточность в php точнее полное её отсутствие и всевозможные костыли в виде не блокируемых сокетов. Вот как раз там наткнулся на интересную статью в которой описывался очень простой и эффективный способ распараллеливания потоков. На основе этого материала написал небольшой класс что бы облегчить себе работу в будущем.
Суть многопоточности (для приложения) состоит в том, что процесс может состоять из нескольких (однотипных) потоков, выполняющихся «параллельно», то есть без упорядочивания по времени — выполнился один, пошел следующий. Использование многопоточности позволяет ускорить выполнение задачи и/или снизить нагрузку, таким образом, улучшая быстродействие самого приложения.
PHP относится к языкам, в которых поддержка многопоточности отсутствует. Но, есть немало задач, в которых она была бы очень полезна. Как правило, это задачи, в которых одно действие нужно выполнить много раз, но с различными параметрами, причем само действие настолько ресурсоемко, а количество итераций настолько велико, что обычный цикл использовать невозможно.
Я рассмотрю простой пример, как можно достичь эмуляции многопоточности в PHP.
Недавно я разработал одно простое устройство. Пришлось решать вопрос, как изготовить пробную партию в 50 плат. Думаю, этот опыт будет полезен всем DIY энтузиастам, кто уже думает о том, что делать дальше после того, как девайс готов.
Замечу, что настоящая заметка — это не маркетинговое исследование или что-то подобное, претендующее на объективное освещение вопроса. Это исключительно один частный личный опыт.
«Яндекс» представил навигационный сервис для смартфонов. Об этом компания рассказала 13 марта на специальной пресс-конференции.
Бесплатное приложение «Яндекс.Навигатор» доступно для смартфонов и планшетов на платформах iOS и Android. Оно позволяет строить автомобильные маршруты с учетом пробок. При этом приложение будет «вести» водителя с помощью голосовых подсказок.
Хочется поделиться с вами историей одного занятного диспута в PayPal'е. Для тех, кто не в курсе, «диспут» это ситуация, когда возникло недоразумение между продавцом и покупателем и PayPal становится посредником, пытаясь выяснить, на чьей стороне правда (а если попроще, то «кому пойдут деньги»).
У меня есть несколько электронных магазинов, торгующих иконками. Надо отметить, что иконки — один из видов скачиваемых «цифровых товаров», на которые по определению не может распространяться «возможность возврата». (Вспоминается старый анекдот «могу ли я закачать ненужный мне файл обратно в Интернет?») Я предусмотрел, что это может вызвать недопонимание у отдельных покупателей, и внёс специальный пункт в «пользовательское соглашение», которое обязан принять каждый покупающий. Во избежание определённого типа комментариев я не стану давать ссылки на магазины; верьте на слово, иконки высокого качества и с «желанием вернуть» я ещё ни разу не сталкивался.
В последнее время модно стало использовать гуглякарту.
Гугля карту суда, гугля карту туда.
И главное не забыть отобразить свои объектики на карте.
Но, почему-то, подавлявшее число сервисов используют неправильную реализацию процесса передачи маркеров с сервера на клиент.
Точнее они не правильно формируют запросы.
А если выразиться еще более точнее — они это делают
Само наличие психологической деформации у какой-либо профессии, как правило, достаточно спорный момент ввиду того, что у разных людей она проявляется по-разному. Однако общую тенденцию можно выделить и, пожалуй, настало то время когда можно достаточно смело говорить, что программисты всё же имеют свой особенный психологический портрет который обусловлен их профессиональной деятельностью.
Я достаточно часто сталкивался с подобным мнением и не придавал ему особого значения, но когда женский коллектив нашей организации поздравил программистов с 23-м февраля по доброму назвав их «космическими войсками», решил всё же расставить определенные акценты в данном вопросе, т.к. одна из моих профессий связана напрямую с психоанализом. Да и баш уже не молчит.
Года 4 назад довелось побывать на конференции по рекрутингу. Я там делал небольшой доклад про найм инженеров, но несравнимо большее удовольствие получил, слушая доклады опытных хедхантеров.
Это реально детектив! Агата Кристи, Ян Флеминг и Джон Гришем! Люди разрабатывают схемы с внедрением своих людей в чужие компании, продумывают стратегии на три хода вперед… И это работает.
Похожие впечатления захватили меня сегодня, когда наш коллега Дмитрий Коткин прислал кейс из своей практики, как одна его знакомая получала причитающуюся ей зарплату от бывших работодателей.
Статей на данную тему не много, но они есть. Правда на мой взгляд, поскольку практически все они базируются на реальных типографских приемах, для мелкосерийного и уж тем более единичного производства описанные технологии не всегда удобны, особенно когда под рукой кроме желания больше ничего и нет.
Поэтому делюсь своими ноу-хау именно для разовых работ.
В данном случае рассмотрим изготовление ну совсем настоящей книжицы, прямо в домашних условиях, прямо из бумаги и с минимумом оснастки.
Рад сообщить, что вышел перевод отличнейшего учебника Дасгупты, Пападимитриу, Вазирани «Алгоритмы», над которым я работал последние несколько лет. В книге многие алгоритмы объяснены гораздо короче и проще, чем в других учебниках: с одной стороны, без излишнего формализа, с другой — без потери математической строгости. Откройте книгу на каком-нибудь известном вам алгоритме и убедитесь в этом. =)
Как это ни странно, на просторах бескрайнего интернета я не нашёл ни одного полноценного мануала (во всяком случае русского) по разработке приложений на AMFPHP. Примерно год назад подобного рода статья была мне очень нужна, но за неимением таковой пришлось собирать все по крупинкам из разных источников. Надеюсь, она будет кому-то полезна.
AMF
Итак, что же такое AMF? Не будем изобретать словесный велосипед и обратимся за помощью к вике:
AMF (англ. Action Message Format, формат сообщений о действиях) — бинарный формат обмена данными, использующийся в приложениях, написанных на Action Script. Построен на основе протокола Simple Object Access Protocol и используется, преимущественно, для обмена информацией между Adobe Flash и базами данных. Action Message Format более экономичен по трафику по сравнению с XML и позволяет передавать типизированные объекты. Анонсирован 13 декабря 2007 года
На данный момент AMF является самым актуальным форматом передачи данных между флеш-приложением и серверной частью. Библиотеки для работы с AMF существуют почти для всех серверных языков, но сегодня я хотел бы остановиться именно на PHP.