• Laravel: объясняем основные понятия. Часть вторая: «Практика»

      Всем привет! Продолжаем серию авторских публикаций в преддверии старта курса «Framework Laravel». В прошлой статье мы с вами посмотрели на теоретические основы Laravel. Однако теорию любого фреймворка можно изучать достаточно долго и ничего не понять, пока сам не напишешь ничего на практике.



      Поэтому давайте мы с вами напишем приложение, в котором каждому пользователю можно будет авторизовываться, создавать новые альбомы и загружать туда фотографии. Если вы не знаете пока, что такое MVC, почитайте это , скоро вам предстоит воспользоваться этим на практике.
      Читать дальше →
    • Очередной CI светофор. На этот раз attiny2313 и Node.js

      Воодушевленный такой прекрасной идеей, как светофор, отображающий состояние билда, я решил, что нашей команде нужен такой же. Я не хотел руководствоваться прочитанными мною статьями, поскольку они используют слишком дорогие для меня решения. Поэтому, вооружившись идеей, я набросал очень приблизительный план работы для команды, а у себя в голове держал простые принципы, которым хочу следовать.



      Под катом светофор из цветомузыки и пластиковых бутылок, USB модуль управления светофором на attiny2313 за доллар, а так же софт для опроса Jenkins и управления USB модулем на Node.js.
      Читать дальше →
      • +28
      • 18,5k
      • 8
    • Пространства имен в memcahced

        Уверен, что многие здесь уже сталкивались с проблемой кеширования данных в своих проектах. Также я уверен, что многие уже использовали для этого memcached. Недавно с этим всем пришлось столкнуться и мне =). Но также мне была инетресна возможность работать с пространствами имен в memcached.
        К сожалению у memcahced нет поддержки этой удобной возможности, но это не повод, чтобы отчаяться и впасть в депрессию =)

        Читать дальше →
      • Программирование в PHP 5.3

          Вы наверно слышали о новых особенностях, которые ожидают нас в PHP 5.3, но кто знает где можно их использовать в реальном программировании? Я потратил немного времени чтобы изучить их и решил привести несколько примеров.
          Читать дальше →
        • Как я программирую под ExtJS и Zend Framework

            Как известно последня версия Zend Framework включает в себя js библиотеки dojo. но, не смотря на это, для работы я выбрал связку Zend Framework + Ext JS.
            Почему Zend Framework — в нем отлично реализован принцип MVC, он хорошо документирован, имеет много полезных библиотек, поддерживается Zend — ом. Да, есть недостатки — не самый быстрый, некоторые модули нужно брать у сторонних разработчиков.
            Почему ExtJS — также хорошо документировано, имеет много компонентов, отлично реализована оконная модель, Grid — доведен до идеала.
            Пока что не буду останавливатся на таких деталях как авторизация, построение интерфейса, подгрузка скриптов.
            Ибо тут можно и книгу написать, о всех нюансах.
            Вкратце раскажу о трех компонентах, которые чаще необходимы для работы с данными — TreePanel, GridPanel, Form Panel.
            Читать дальше →
          • OpenSSH. Установка


                  Пакет OpenSSH — это свободная реализация сетевого протокола, позволяющего создавать защищенные соединения, удаленно управлять операционной системой, туннелировать TCP-соединения (например, для передачи файлов). OpenSSH содержит такие клиенты: ssh — для замены rlogin и telnet, scp — для замены rcp и sftp — для замены ftp.
              Читать дальше →
              • –5
              • 4,3k
              • 7
            • Поисковое API для PHP (Flash, Java и других)

                Задача: организовать поиск по всему сайту затратив как можно меньше усилий и оформить результаты в своем стиле.

                Рассуждение
                Есть различные серверные системы для организации полнотекстового поиска индексируя сайт, индексирую базу данных. Но их надо устанавливать на своем сервере, настраивать, а некоторые из них еще и платные.
                В какой-то момент решил воспользоваться Google Ajax Search API через JavaScript, но тут вид результатов менять достаточно сложно, да и еще надо делать запросы в другой домен при помощи javascript.

                Решение
                В итоге набрел на странице Google AJAX Search API в раздел Code Snippets и все стало просто: немного кода на php и полнотекстовый поиск по любому сайту готов.

                Пример кода с комментариями
              • Динамическое ограничение доступа посредством web авторизации

                  Зачастую возникает необходимость обеспечить доступом какой-то сегмент гостевой пользовательской сети ограниченный по времени.

                  Расскажу немного о задаче.
                  У нас есть wifi сеть или LAN в интернет кафе где нам необходимо обеспечивать повременной доступ к интернет. Желательно чтобы управление системой было — поставил и забыл, дать оператору генерилку паролей с принтером и вручить кассовый аппаратдля приёма денег.
                  Читать дальше →
                • Автоматизированный приём webmoney платежей на вашем сайте.

                    0. Вступление

                    Ни для кого не секрет, что в последнее время webmoney набрало достаточную популярность для того, чтобы стать одним из самых удобных и доступных средств для безналичного расчёта через интернет. Пополнить баланс своего мобильного, оплатить покупку товаров в веб-магазине — всё это можно сделать с помощью webmoney.

                    Я бы хотел рассказать вам несколько способов, как можно устроить приём оплаты за какие либо товары или услуги на вашем сайте электронной валютой webmoney. Это, кстати, не так сложно, как могло бы показаться на первый взгляд!
                    Читать дальше →
                  • Древовидная навигация с помощью Zend Framework

                      У больших проектов есть большая проблема — рано или поздно его содержимое превращается в хаос (в большей части это относится к бэкэнду, ибо на фронте обычно все в порядке). С ростом проекта усложняется его иерархическая структура, что затрудняет контроль или работу, поэтому стоит воспользоваться вполне очевидной вещью — вывод навигации в виде дерева. Довольно удобно, когда все содержимое вашего проекта отображается в иерархическом виде, вы так не думаете?
                      Читать дальше →
                    • Настройка уведомлений в Munin

                        В статье Munin — мониторинг сети это просто! говорилось о том, что мониторинг нужен и что автор использует Munin, а так же описывалось как написать свой плагин. В этой статье мы рассмотрим как настроить Munin для отсылки уведомлений о проблемах на почтовый ящик.
                        Читать дальше →
                      • Интернет-магазин. Начало работы

                          Привет, хабранарод!
                          Писал я давно когда-то про osCommerce небольшую статейку, меня даже просили выложить свою сборку. Если кому она до сих пор нужна — у меня осталась, могу куда-нить положить. Но, наевшись с ОСК, решили написать свою систему. При помощи CakePHP. Об этом хорошо поведал товарищ neudor, с которым на пару мы это дело разрабатывали. В данный момент он несколько отошел от работы с магазином, поэтому я выхватываю у него эстафетную палочку вести цикл статей, посвещенный разработке ПО для интернет-магазина, а также непосредственно организации самой работы, службы доставки, регистрации, налогах. В общем полный FAQ «от и до» — что ждет начинающего предпринимателя, если он решится открыть полностью легальный бизнес в России, с выкладкой затрат в денежном и временном эквиваленте. Итак, сегодня я расскажу о стороне вопроса, не касающейся технической реализации…
                          Читать дальше →
                        • SMS Уведомления + Логирование событий в Google Calendar на PHP

                            Навеяло: Чудеса автоматизации или как отправляют SMS настоящие гики.
                            Если люди делают такие изощрения — значит сильно надо.

                            За пару часов был разработан класс для добавления в Google Calendar событий. А уже календарь гугла станет нам слать СМСки.
                            Читать дальше →
                          • Заметки с тегами на базе XML, HTML и Javascript

                              UPD (04.01.2009): Проект на Google Code — jsTagNotes.
                              UPD (03.06.2009): Проект был доработан и переехал на GitHub (wiki).

                              Хочу описать тот собственноручно изобретённый «велосипед», который я использую для сохранения заметок, ссылок на сайты и прочей достаточно важной информации небольшого объёма. В какой-то мере это альтернатива веб-сервисам типа del.icio.us и традиционным десктопным note-taking приложениям.
                              Читать дальше →
                            • Бесшумный компьютер нужен всем!

                                Пару дней назад я публиковал статью про сборку бесшумного компьютера для дома. И немного поспешил — не выложил фотографии того, что в итоге получилось. Сегодня разобрал работающий системник и сделал пару любительских снимков.
                                Но для начала исторический кадр «как это было». Не удержался :-)


                                Тишина важна всем! :)
                                Читать дальше →
                              • Shadowbox.js

                                  Король среди всех Lightbox клонов.

                                  Коротко о Lightbox

                                  Это скрипт написанный на JavaScript который добавляет на сайт визуальный эффект увеличения изображения в виде окна.

                                  Коротко о Shadowbox.js

                                  Красивый, удобный, мульти-язычный, гибкий и быстрый Lightbox. Легко подключается, работает во всех современных браузерах. Имеет хорошую документацию и адаптируется под большинство JavaScript библиотек. Сам скрипт может быть самостоятелен и не требует подключения других библиотек.

                                  Прошу любить и жаловать: тык.

                                  P.S. Если вы захотите я смогу написать более подробно как работать с данной прелестью.
                                  P.S.2 Данный продукт в отличии от Lightview бесплатен, и не требует покупки лицензии.
                                • Shuttle D10 с сенсорным дисплеем

                                    Мини-компьютер Shuttle D10 — в целом обычный продукт, в чем-то похожий на все предыдущие «коробочки» Shuttle. Правда, с одним существенным отличием. На «борту» у D10 есть 7-дюймовый сенсорный дисплей с разрешением 800×480 пикселей, который может работать как в независимом режиме, так и синхронно с внешним монитором.

                                    В остальном же это «голый» (barebone) мини-ПК: корпус с блоком питания на 100 Вт, системной платой Intel G31/ICH7 со встроенным видео Intel GMA 3100, пятиканальным звуком, Ethernet, Wi-Fi и FireWire, поддержкой процессоров Intel серий Core 2 Duo E4000, Pentium Dual-Core E2000 и Celeron 400 и ОЗУ до 4 ГБ. Это значит, что для сборки полноценного компьютера пользователю понадобится прикупить чуть ли не всю начинку: и процессор, и память и жесткий диск.

                                    Устройство появится в продаже в течение недели. Поначалу будет доступно только в Японии. Кстати, комплект с процессором Celeron 1,6 ГГц, 1 ГБ ОЗУ и 80-гигабайтным HDD будет стоить около $650. Когда новинка появится в на прилавках магазинов по всем миру пока не известно.

                                    via Engadget
                                  • Какая боль! Толпы против Веб — 2:0. Эпизод два — клоны заходят в полдень

                                      Продолжаем warstory оптимизации PHP+mySQL сайта редчайших слов. Одним майским днем, копаясь в словах, мне пришла в голову мысль — расставить под этими словами textbox'ы — использовать [модный для Web 2.0] crowdsourcing. Заполняй чем хочешь, только про это конкретное слово. Но, должно было работать collaborative — как Google Docs — если ты и еще кто-то редактируют слова на одной и той же странице — изменения будут отображаться одновременно. Или, например, кто-то редактирует слово «google» на странице Гугла, а на странице TechMeme, к примеру, есть тоже слово «google» — и им в real-time покажутся эти изменения со страницы Гугла [это необязательно понимать]. Знал бы я какие последствия эта веселая задумка на mySQL окажет позже…

                                      Сделать это оказалось несложно: prototype.js — в руки, ajax — каждые 10 секунд, смотрим в базе что менялось за последние 10 секунд, делаем пересечение со словами на текущей странице, отправляем js highlight effect и новый текст — вуаля. Людей было, но мало кто что-то вводил, тогда я придумал повесить в уголок страницы блок «только что было сказано». Например: «На странице 'fibonacci.com' только что было сказано, что 'fibonacci' → 'crazy math scientist'». Это уже значительно заинтересовало людей и заполняемость выросла в разы. Все видели движения на сайте и сами вовлекались.

                                      Собственно, я сделал достаточно функционала для довольно забавной игрушки — «войны сайтов редкими словами», авто-категоризатор, синонимизатор и т.п. Я сидел мирно редактировал «живой» сайт, загружал новый файл, если видел ошибку — исправлял, не переживая, что это кто-то может видеть. Не подозревал я, что уже тысячи людей видят это. После очередной ошибки в названии функци что-то произошло… я не смог загрузить на FTP index.php… это был TechCrunch....
                                      Читать дальше →
                                    • Смотрим MKV на Apple TV из Plex

                                        Всем привет!

                                        Продолжая цикл Apple-related статей, сегодня хочу поделиться удивительным способом, как можно заставить приставку Apple TV полюбить распространённую ныне матрёшку (MKV) и предоставить ей возможность комфортабельного воспроизведения на большом экране.
                                        Читать дальше →