• Логика сознания. Вступление

      image В свое время на Хабре был опубликован цикл статей «Логика мышления». С тех пор прошло два года. За это время удалось сильно продвинуться вперед в понимании того, как работает мозг и получить интересные результаты моделирования. В новом цикле «Логика сознания» я опишу текущее состоянии наших исследований, ну а попутно попытаюсь рассказать о теориях и моделях интересных для тех, кто хочет разобраться в биологии естественного мозга и понять принципы построения искусственного интеллекта.

      Перед началом хотелось бы сделать несколько замечаний, которые будет полезно помнить во время чтения всех последующих статей.

      Ситуация, связанная с изучением мозга, особенная для науки. Во всех остальных областях естествознания есть базовые теории. Они составляют фундамент на котором строятся все последующие рассуждения. И только в нейронауке до сих пор нет ни одной теории, которая хоть как-то объясняла, как в нейронных структурах мозга протекают информационные процессы. При этом накоплен огромный объем знаний о физиологии мозга. Получены очень обнадеживающие результаты с помощью искусственных нейронных сетей. Но перекинуть мостик от одного к другому, пока, не удается. То, что известно о биологических нейронных сетях очень плохо соотносится с созданными на сегодня архитектурами искусственных нейронных сетей.

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

        «Яндекс» опубликовал очередное исследование «Блогосфера российского интернета» (PDF) по последней статистике своих сервисов. В этом исследовании отмечен печальный факт: впервые за всё время измерений с осени 2006 года доля активных блоггеров уменьшилась.

        Если в ноябре 2007 года в свои дневники хотя бы раз в три месяца писали около трети авторов, то сейчас — только одна пятая. На таких хостингах как Damochka.ru и «Рамблер Планета» (более 150 тыс. дневников на каждом) доля активных блогов составила всего 3% и 8% соответственно. Фактически, теперь это два больших кладбища. Ситуация в Livejournal и на других хостингах немногим лучше.

        Негатив проявляется даже в Новосибирске, где по статистике живут самые активные блоггеры России.


        Читать дальше →
      • OAuth на практике. Аутентификация и авторизация пользователей сайта через популярные социалки

          Думаю, не мне одному чрезвычайно надоели ресурсы, требующие регистрации по каждому поводу и без. С обязательной капчей, которая правильно введется только с пятого раза, с подтверждением по е-мейлу, которое обязательно свалится в спам и то — только через сутки. Придумывать каждый раз новую пару логин-пароль — забудется, вводить одно и то же на всех сайтах — небезопасно. Местами прокатывают пары вида «qwerty:qwerty» или «login:password», но, увы, далеко не везде. Надоело. Не счесть, сколько раз я, увидев надпись «только зарегистрированный пользователь может ****», просто кривился и закрывал вкладку, чтобы больше ни разу на этот сайт не заходить. Неужели администраторы ресурсов сами этого не понимают?
          Читать дальше →
        • Автоматическая кросс-доменная установка высоты Iframe

          • Tutorial
          Думаю, многие, кто сталкивался в своей работе с iframe, сталкивались и с задачей установки высоты этого самого айфрейма.

          Это может быть необходимо, например, когда ты хочешь дать возможность пользователям ставить виджеты с вашего сайта на их сайт, и хочется, чтобы размер контейнера (iframe) виджета соответствовал размерам содержимого этого виджета.

          В яндексе можно найти множество решений этой проблемы, но большинство из них обладают одной проблемой: они не поддерживают возможность менять размеры окна когда содержимое iframe и родительский элемент находятся на разных доменах.

          Есть одно неплохое кросс-доменное решение, но оно было написано в 2007 году, а с тех пор многое изменилось. Поэтому пришлось разрабатывать решение этой проблемы самостоятельно, основываясь на приведенном решении.

          Читать дальше →
        • Интервью создателя Badoo Андрея Андреева российской прессе



            На совести серийного предпринимателя Андрея Андреева сразу несколько значимых в масштабах рунета проектов. В 1999 году он сделал Spylog, в 2002-м – сервис контекстной рекламы «Бегун», а потом – сайт знакомств Mamba.ru. В 2006 году Андреев решил не ограничиваться Россией и сделал новый глобальный проект – сеть для поиска новых друзей Badoo. Год назад Wired назвал Badoo «миллиардным бизнесом».

            Андрей Андреев рассказал Slon о том, как он собирается умножить текущие показатели на 10, а также чем живет компания изнутри.
          • Сделано у нас — проекту год

              Сделано у нас
              Когда я начинал этот проект, многие говорили — ну о чем же ты там будешь писать, ведь все знают, что в «рашке» все только рушится, ничего не производится, а если что и открылось новое иногда, так это исключение подтверждающее правило, это все «вопреки» да и то исключительно для распила.

              Но я наивный, как говорят мне некоторые, поэтому я был уверен, что писать на сайте будет о чем. И что такая идея — первый сайт пишущий о реально сделанном в России — он найдет свою аудиторию. Так и случилось.

              За год на сайте появилось крепкое сообщество. Первые месяцы мне приходилось самому искать новости, добавлять на сайт, писать обзоры. Теперь это делают пользователи сайта. Посещаемость выросла уже до 6000 человек в день, и продолжает расти примерно по 30% в месяц. В будний день на сайте появляется до 30-40 новых записей, большая часть из них о том что уже сделано.

              Но главным нашим достижением, наверное, стал ответ на вопрос, а сколько же производств открывается в России.
              Читать дальше →
            • OMF — микроформат для email. Опыт использования в сервисе чатов

                imageСовсем недавно компания Mail.ru разработала открытый стандарт OMF.

                Open Mail Format (OMF) — это открытый стандарт разметки почтовых уведомлений. OMF позволяет вам улучшить представление ваших писем в интерфейсе почты Mail.Ru, повышая их эффективность и конверсию.
                Ознакомиться с опытом использования...
              • placeholder.js

                  В HTML5 есть замечательный атрибут placeholder.

                  <input placeholder="inbox@disney.com">

                  placeholder

                  Сейчас он работает только в webkit-браузерах (Safari, Google Chrome).

                  С помощью JS, не изобретая велосипедов, placeholder.js делает этот атрибут кроссбраузерным.

                  <input placeholder="inbox@disney.com" id="some_input">
                  <script type="text/javascript">
                    inputPlaceholder( document.getElementById('some_input') )
                  </script>


                  placeholder.js (1.3 килобайта)
                • Интернет магазин на Google App Engine (UPD: 20.01.2010)

                    Магазин работает уже почти пол года — добро пожаловать :)
                    http://www.digital-mode.ru

                    Как это все работает.

                    Фронт-офис — генерирует страницы с группами и товарами, а также позволяет добавить товар в корзину и оформить заказ.
                    Хранилище картинок — отдает фотографии товаров в нужном размере. Все остальные картинки статические, загружаются с сервера GAE.
                    Бэк-офис — административная часть, позволяет редактировать товары и группы, просматривать заказы, загружать фотографии для товаров, а также загружать обновления цен, наличия и новые позиции.

                    Для генерации почти всех страниц используется Django templates.

                    В целом ничего сложного :)

                    Проблемы с которыми пришлось столкнутся при разработке.

                    На текущий момент есть проблемы с загрузкой/выгрузкой большого количества данных. На данный момент использую CSV для загрузки обновлений (цены, товары, наличие). При большом объеме данных превышается тайм-аут 30 сек на выполнение. Кроме этого в GAE ограничение на 30 запросов на запись (put). Соответственно обновлять больше 30 товаров за один проход не получается. Этот момент можно оптимизировать и обновлять данные не поштучно, а сразу пачками т.к. в GAE запись в хранилище может производится целыми массивами.

                    Выгрузка данных для Яндекс.Маркета занимает почти 10 секунд (200 товаров), 90% времени это генерация HTML.

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

                    Преимущества GAE

                    Отсутствие необходимости покупки/настройки/поддержки собственного сервера.
                    Автоматическое масштабирование.
                    Одинаковое время доступа к приложению при разных нагрузках.
                    Удобство разработки.

                    Итого

                    Скорость работы магазина не зависит от количества посетителей.
                    На данный момент при 500-600 хитов в сутки используется 0,3-0,4 часа процессорного времени из 6,5 бесплатного.

                    После публикации в комментариях к топику: "Стоит ли вам использовать Google AppEngine?" ссылки на магазин было использовано ресурсов:
                    — 0,44 часов CPU из 6,5
                    — 28000 запросов из 1,3 млн
                    — 210 Мб из 1 Гб исходящего траффика
                    — 5,59 Гб из 116 Гб получено из API
                    — 0,22 часа из 62,11 использовано хранилищем
                    Всего за 12 часов — 700 хитов (180 хостов).

                    Это микрохаброэффект:
                    image
                    Читать дальше →