• Расширение API от Vk для стикеров на Elixir

      image


      Введение


      Во Вк есть наборы стикеров, некоторые из которых даже бесплатные. Но во Вк нет ни какого публичного API для использования данного функционала на сторонних сайтах. Задачка состоит в том, чтобы используя функциональный язык Elixir написать расширение над местом хранения стикеров во Вк в виде API.


      По моему мнению имена методов, и параметры, которые они принимали были бы следующими. Общим пространством имён для коллекции API методов для работы со стикерами было бы ключевое слово stickers, а сами методы возможно выглядели бы так:


      stickers.get — со следующими параметрами: pack_ids, pack_id, fields;
      stickers.getById — со следующими параметрами: sticker_ids, sticker_id, fields.


      Так как нет возможности создавать или редактировать стикеры, которые есть во Вк, данное API будет иметь только read-only методы. Честно, сложно угадывать, и не хочется подражать разработчикам социальной сети, по этому ограничусь только придумыванием имён методов. И не буду реализовывать API в стиле Вк, хоть это бы и добавило общей идентичности расширению.


      Вот такие методы буду реализовывать для работы со стикерами:


      Методы для наборов:


      GET /packs
      GET /packs/{id}
      GET /packs/{id}/stickers

      Методы для стикеров:


      GET /stickers
      GET /stickers/{id}
      GET /stickers/{id}/pack
      Читать дальше →
    • PressPausePlay — фильм о том как цифровая революция изменила мир

        «THIS CHANGES EVERYTHING. THE
        INDUSTRY IS DEAD. THERE HAS NEVER
        BEEN A BETTER TIME TO BE AN ARTIST.»
        — SETH GODIN, AUTHOR



        Наткнулся на просторах интернета на интересный фильм в котором обсуждается тема влияния новых технологий на музыкальную и киноиндустрию.
        Решил поделится с хаброжителями. Смотрим (под катом), обсуждаем.
        Читать дальше →
      • Основы фотографии: выдержка, диафрагма, ГРИП, светочувствительность

          Введение


          Часто люди приобретают цифровые зеркальные камеры в погоне за качеством снимков, но при этом не имеют представления о технических моментах съемки. В основном это касается тех, кто до зеркалки держал в руках исключительно компактные фотоаппараты и пользовался автоматическими режимами (которые, к слову, весьма продвинутые в современных камерах).

          В результате у кого-то возникает разочарование в камере и фотографии в целом, а другие проявляют терпение и пытаются освоить премудрости фотографии, чтобы раскрыть весь потенциал камеры с полноценным (или почти полноценным) сенсором.

          Изначально я планировал написать одну статью, но по ходу дела понял, что объем получается слишком большой и решил разбить ее на несколько частей. В этой главе рассмотрю такие понятия как выдержка, диафрагма, ГРИП и светочувствительность, как эти параметры влияют на результат съемки. На очереди статья про типы и параметры объективов, работу со вспышками и советы по съемке в различных условиях.
          Читать дальше →
        • Шон Паркер — хакер, со-основатель Napster, Plaxo и Facebook, миллиардер и инвестор

          • Перевод
          После просмотра фильма "The Social Network" мне стало интересно, насколько реален персонаж Шона Паркера, изображенный в фильме. Статья в Vanity Fair во многом утолила мой интерес, а Паркер оказался даже любопытнее, чем я предполагала. Так что я не удержалась и перевела статью — все ее «много букв» того стоят.

          Те, кто не смотрел фильм, а только планирует, учтите, в тексте будет немного спойлера.

          В 19 Шон Паркер помог создать Napster. В 24 он стал президентом-соучредителем Facebook. В 30 лет он – любитель вечеринок, гений, знаток социальных сетей, стесняющийся прессы, перспективный миллиардер. А теперь еще и знаменитость после того как Джастин Тимберлейк сыграл его в фильме Дэвида Финчера «The Social Network».

          Шон Паркер сидел на уроке, посвященном мировым цивилизациям в своей школе в Вирджинии, когда вдруг кто-то передал ему записку. Его отец, — было сказано в ней, — ждал его, чтобы поехать на прием к врачу-ортодонту. По спине Паркера пробежал холодок. У него не было ортодонта. Когда он вышел, отец рассерженно запихнул его в семейный минивен. К тому моменту, когда они приехали в их скромный загородный дом, группа агентов ФБР выносила документы и настольный компьютер из комнаты Шона.
          Читать далее
        • Как устроен типичный ISP (Internet Service Provider)

            Многие задаются вопросом как устроена сеть провайдера или как им самим строить сеть, в данной статье я покажу как спроектирована и работает сеть у меня, на логическом уровне. Хотя не считаю свою структуру за идеальную, можно было сделать и лучше, но это мое имхо :) ибо истина “спроси у 2-х провайдеров как строить сеть – получишь 3 разных варианта “

            Теперь подробнее о том как это работает
            Читать дальше →
          • Законы сетей (памятка, грубо)

              Закон Сарнова: Полезность сети пропорциональна количеству её элементов. [Соедини элементы в сеть. Набери в сеть как можно больше элементов.]
              Закон Меткалфа: Полезность сети приблизительно равна половине квадрата численности пользователей. [Дай элементам возможность не простой, а двусторонней коммуникации.]
              Закон Рида: Полезность социальной сети находится в экспоненциальной зависимости от числа ее участников. [Позволь создавать группы и коммуницировать коллективно, группами.]
              Читать дальше →
            • Как снять TimeLapse-видео длиной в год на Android-телефон

                Всем нам хорошо знакома техника съемки медленных процессов, которая называется TimeLapse. Суть её заключается в том, чтобы делать фотографию через заданные промежутки времени, а затем собрать из множества фотографий видеоролик. Например, снимая фото раз в 6 секунд и склеив затем в видео с частотой кадров 25fps, мы ускорим время в 150 раз. Облака будут плыть по небу и кораблики по воде со скоростью реактивного самолёта, цветы — распускаться на глазах и т.д. Из статьи вы узнаете некоторые детали того, как можно снять TimeLapse вида из окна длиной в год на обычный телефон с Android.

                Пример видео

                Читать дальше →
              • Мой минимальный набор приложений для Android

                  Ехала я как-то с работы на прошлой неделе, сидела в инете со своего мобильного телефончика, и поняла, что хватит — пора бы коммуникатор приобрести. Особо ими никогда не интересовалась и не увлекалась. Вообщем, ничего особо и не знала. Зашла в первый попавшийся магазин и купила HTC Hero. Меня многие потом конечно ругали, что зачем Hero взяла, надо было Legend или Desire уже брать, ну и так далее, но так как это был мой первый коммуникатор, то мне и с Героем было с чем поразбираться и поиграться.
                  Вот хочу опубликовать мой набор программок, которые сейчас стоят у меня на HTC. Перепробовала много разных, и вот те которые мне понравились из представленных в разных категориях.
                  1. Так как я много сижу в интернете через gprs, то 3G Watchdog. Программа для контроля интернет-трафика, есть возможность установить лимит по трафику на определенный промежуток времени, при приближении к которому, программа выдаст предупреждение. Существуют виджеты.
                  Читать дальше →
                • Cookies внутри iframe — проблема при создании приложения ВКонтакте/Facebook

                    Управление сессиями при помощи посылки cookies на сайтах стало настолько распространено, что без этого не обходится, наверное, ни один проект, требующий авторизации пользователей. Казалось бы, механизм настолько изучен, что проблемы с ним просто немыслимы.

                    Так считали и мы при разработке iframe-приложения для ВКонтакте.
                    Но после того, как приложение было разработано (разработка велась в основном в Mozilla Firefox и Google Chrome), выяснилось, что оно неработоспособно в Internet Explorer, к которому позднее присоединились последние версии Opera и Safari.

                    Под катом подробное описание проблемы и вариантов её решения.
                    Читать дальше →
                  • Поднять уровень английского легко!

                      Чувак отлично рассказывает и подробно показывает.
                      Например, за 1 минуту можно выучить 50 тысяч английских слов, не верите?

                      В русском языке существует около 50 тысяч слов оканчивающихся на «ция» и «сия».
                      Так вот, почти все слова оканчивающиеся на «ция» имею окончание tion, а на «сия» — sion.
                      Т.е. из слова вы подставляется все до окончания «ция», «сия».
                      Модернизация — Modernization
                      Делегация — Delegation
                      Корпорация — Corporation
                      Абстракция — Abstraction
                      Профессия — Profession

                      1 урок


                      Остальные 3 видео доступны в плейлисте или на странице пользователя DjonikNSK
                      torrent: rutracker.org/forum/viewtopic.php?t=3904361
                    • Мобильная версия для Django-проекта



                        С каждым днем пользователи смартфонов занимают все большую долю интернета. По данным LiveInternet доля российских пользователей OS Android уже превысила долю Windows7. В выходные дни пользователи мобильных платформ пользуются интернетом значительно чаще. Та же тенденция наблюдается и в мире. Все это еще раз доказывает необходимость адаптации сайта для смартфонов и планшетов.

                        О том, как можно адаптировать ваш Django-проект для мобильных устройств, я расскажу в этой статье. Но сначала давайте разберем, какие есть варианты создания мобильной версии сайта.
                        Читать дальше →
                      • Отладка самолета? Это очень просто!

                          Некоторое время назад мне пришлось очень плотно поучаствовать в приемо-сдаточных испытаниях самолета. Эти испытания были основной частью процесса передачи свежеизготовленного, самого (по моему мнению) технически продвинутого на настоящий момент времени бизнес-джета от производителя заказчику. Казалось бы, причем здесь тестирование, разработка, да и вообще тематика Хабра? Желающие узнать это могут перевернуть страницу и прочитать довольно много текста, причем вообще без картинок.
                          Читать дальше →
                        • +1 к эволюции фрилансера

                            image


                            Собрал небольшой список пунктов эволюции фрилансера, каждый +1 сделает вас продуктивнее или дороже на рынке.
                            Список взят из моей жизни, я уже как год практикующий фрилансер, до этого никогда не покидал России, за последний год посетил 9 стран, в следующем году надеюсь посетить ещё 20.

                            1) Никогда ничего не забывайте. Для этого каждую мелкую задачу я всегда добавляю в miniplan.ru и я всегда получу в нужный момент письмо или смску, все совершенно бесплатно.
                            2) Самоосознание. Когда работаешь без прямого начальника, когда зарплата не два/раз в месяц, нужно максимально осознать свою жизнь, понимать как вы работаете, как вы получаете деньги, забиваете ли вы на работу, к чему стремитесь. Если в обычной жизни можно плыть по течению то фриланс вам приоткрывает двери осознанной жизни.
                            3) Отдыхайте. Работодателя нет и вы сами должны заботиться о своем отпуске, сделайте так чтобы его было больше, чем если бы вы работали по прямому найму. Не забывайте о перерывах в работе. Отдых сделает вас продуктивнее или абсолютно расслабит и тут вам поможет самоосознание.
                            Читать дальше →
                          • Сниппеты для Twitter Bootstrap

                              Фреймворк Twitter Bootstrap уже давно стал одним из самых любимых средств ленивых сторонников быстрого прототипирования и разработки интерфейсов, а где популярность там много разных сторонних интересных штук.
                              На этот раз я случайно попал на пополняющуюся коллекцию сниппетов.
                              Думаю многим пригодится, сейчас там набор небольшой (23 штуки), но уже достаточно полезный чтобы поделиться.
                              Кликабельные картинки:

                              Интерфейс аля gmail



                              Читать дальше →
                              • +109
                              • 96,5k
                              • 23
                            • Прочие варианты использования оператора else

                              • Перевод
                              Всем нам хорошо известен способ использования ключевого слова else совместно с if:

                              if x > 0: 
                                  print 'positive' 
                              elif x < 0: 
                                  print 'negative' 
                              else: 
                                  print 'zero' 
                              


                              Однако в Python’е существует и несколько других, неизвестных большинству программистов, применений else.

                              Читать дальше →
                            • Непутевые заметки о ASP.NET MVC. Часть 1 (и единственная)

                                В последнее время на Хабре часто начали появляться статьи о ASP.NET MVC. Однако в этой статье я бы хотел сделать несколько заметок по поводу построения приложений на вышеприведенном фреймворке: минимальный набор NuGet-packages (без которых грех начинать работу), логирование, подводные камни при использовании стандартных membership-, profile- провайдеров. И, напоследок, почему Web API из MVC 4 — то, что так долго мы все ждали.
                                Поехали
                              • JavaScript на сервере, 1ms на трансформацию

                                  Зачем?



                                  Вопрос “Зачем?” — самый главный при принятии любого решения. В нашем случае причин было несколько.

                                  Во-первых, люди. Текущий шаблонизатор обрабатывался Си. Все вопросы о его изменениях решались не быстро. А самое главное, что писали шаблонизатор одни люди, а использовали совсем другие.

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

                                  Но в Mail.Ru Group есть целая команда высококвалифицированных людей, знающих JS, способных самостоятельно написать инструмент, а самое главное — они же им и будут пользоваться.

                                  Во-вторых, задачи. Возьмем проект Почта@Mail.ru. Мы не можем отказаться от шаблонизации на сервере – нам нужна быстрая загрузка при первом входе. Мы не можем отказаться от шаблонизации на клиенте – люди должны видеть высокую скорость реакции на их действия, а значит, обязателен AJAX и шаблонизация на клиенте.

                                  Проблема очевидна: два набора совершенно разных шаблонов на сервере и на клиенте. А самое обидное, что решают они одну и ту же задачу. Дублирование логики нас просто измотало.

                                  v8 — это интерпретатор JavaScript, а значит, мы можем получить один шаблон, который работает как на сервере, так и на клиенте.

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

                                  • Tutorial


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



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





                                  Иллюстраций: 34, символов: 51 609.



                                  Читать дальше →
                                • Панель разработчика в SharePoint 2010

                                    В SharePoint 2010 (речь идет также о SharePoint Foundation 2010) есть встроенный инструмент по мониторингу производительности работы и скорости загрузки отдельных страниц.

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

                                    • Включение панели разработчика
                                      • С помощью PowerShell
                                      • С помощью STSADM
                                      • С помощью SharePoint API

                                    • Внешний вид панели разработчика

                                    Читать дальше →
                                  • Кодоребус или паттерн «стратегия» на .Net 4.0

                                      Недавно при работе над одним проектом у нас родился интересный код. Мы сразу же принялись тестировать наших коллег на смекалку, с просьбой объяснить что это, как работает и что делает. Даже опытных разработчиков этот код вгоняет в ступор (после пары минут истерического смеха). Итак, встречаем:

                                          Action<Action> action = (Action action) => { action(); };
                                      

                                      Прежде чем заглянуть под хабракат, попробуйте ответить на несколько вопросов (сделаем вид, что заголовок поста Вы не видели):
                                      • На каком языке написан этот кусок кода?
                                      • Верен ли он синтаксически? Скомпилируется ли он?
                                      • Имеет ли данный код смысл? Что он делает?
                                      • Зачем такой код мог быть написан?
                                      • Как можно улучшить этот код? (Как бы его написали Вы?)
                                      • Приведите реальные варианты использования этого кода.
                                      • Какие потенциальные проблемы могут возникнуть при его применении?

                                      Ответили? Тогда ныряем под кат за предысторией и разъяснениями.
                                      Читать дальше →