• Освоение Composer: советы и приемы использования

    Предлагаю читателям «Хабрахабра» перевод статьи «Mastering Composer – Tips and Tricks» за авторством Bruno Skvorc.

    Composer logo

    Composer произвел революцию в управлении пакетами в PHP и помог разработчикам по всему миру создавать независимый от фреймворков и разделяемый код. Но все же мало кто выходит за рамки основ его функционала, так что данная статья постарается осветить некоторые полезные приемы его использования.
    Читать дальше →
    • +21
    • 146k
    • 4
  • Почему Paypal не принимает переводы для Российских счетов? — It is not a feature!

      Долго и упорно пытался добиться от службы поддержки Paypal причину — почему Российские пользователи обделены в правах и не могут получать переводы. Поддержка с разного рода извинениями уходила от прямого ответа. Ниже привожу последнее письмо: переводы в Россию — it's just not a feature.

      Dear Alexey Zhuchkov,

      Hello my name is Emma, I will be happy to assist you with your question.

      Mr. Zhuchkov, there is no single specific reason as to why Russian PayPal
      account holders cannot receive funds to their PayPal accounts. Receiving
      money is currently not a feature of PayPal accounts in Russia.


      Please contact us if you have any further questions.

      I understand your frustration regarding this matter and regret any
      inconvenience it might have caused you.

      Yours sincerely,
      Emma
      PayPal, an eBay Company

      Copyright © 1999-2009 PayPal. All rights reserved.

      PayPal (Europe) S.à r.l. et Cie, S.C.A.
      Société en Commandite par Actions
      Registered Office: 22-24 Boulevard Royal L-2449, Luxembourg
      RCS Luxembourg B 118 349


      Очень хочется услышать дельный совет: что еще можно предпринять в данной ситуации?

      PS.Перевод по просьбам трудящихся.

      Здравствуйте, меня зовут Эмма и я буду рада помочь вам с вашим вопросом.
      Господин Жучков, нет одной конкретной причины почему Российские владельцы счетов PayPal не могут получать средства на свои счета.
      Получение средств для Российских счетов в настоящее время невозможно(досл.: «не является функцией»).

      Пожалуйста напишите нам если у вас еще есть вопросы.

      Я понимаю ваше разочарование по этому вопросу и сожалею о любых
      неудобствах которые оно могло вызвать у вас.

      С уважением,
      Emma
      PayPal, an eBay Company
    • Задачи со склонов Фудзи

        На Хабре регулярно упоминают книгу Уильяма Паундстоуна «Как сдвинуть гору Фудзи». Я тут как-раз ее прочитал и решил для всеобщего удовольствия собрать в кучу все задачи, которые в ней упоминаются.

        Обратите внимание — тут приведены только те задачи, которые имеют точное решение. Вопросы на рассуждение, типа «сколько в мире настройщиков роялей», я пропустил.
        Читать дальше →
      • Buxter: новое приложение в Facebook

          Предистория:
          Пользователи социальной сети Facebook получили возможность обмениваться денежными платежами напрямую при помощи нового приложения Buxter. Новая разработка проводит транзакции в евро или американских долларах, в ближайший месяц будут запущены переводы в британских фунтах. Загружать в Buxter можно и другие валюты, при этом за конвертацию будет взиматься 5%-ная комиссия, сообщает TechCrunch. Чтобы использовать Buxter, необходим аккаунт на сайте ClickAndBuy.

          Читать дальше →
        • Получаем платежи в Paypal — обратная сторона медали




            На хабре я периодически вижу комментарии в которых многие жалуются, что российские пользователи paypal не могут принимать деньги. На данный момент я насчитал 66 стран пользователи которых имеют право получать деньги. Как вы знаете, Россия на данный момент находится в списке стран, которые могут только отправлять деньги.
            На днях я проводил опрос на тему, «зачем вам нужна возможность принимать платежи в Paypal». Всего проголосовало 456 человек, 73 воздержались. Если оставить в сторонке тех кто «пользуется paypalом только для оплаты» (90 человек) и «вообще не пользуется paypalом» (117 человек), то почти 56% из оставшихся 249 человек планируют получать платежи за услуги и оплату за продаж от виртуальных товаров.
            Поскольку я уже несколько лет работаю с системой paypal и имею достаточно большой наличный личный опыт в решений вопросов с этой корпорацией зла компанией, хочу поделиться со всеми проблемами c которыми могут столкнуться эти 56%, да и любой другой получатель денег, если paypal сделает возможным получение денег россиянами.
            Интересно? Читаем дальше.
          • Подключение Paypal

              Вобщем поставили передо мной на работе задачу организовать прием платежей в наш проект через Paypal. От меня требовалось дать все необходимые данные для настройки аккаунта (сам аккаунт настраивался другим человеком), ну и, собственно, написать скрипт, который и будет принимать данные от paypal-а и начислять деньги юзерам.

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

                Сравнение архитектурных стилейПредлагается справочная информация по основным архитектурным стилям веб-приложений с основными терминами по мотивам диссертации Роя Т. Филдинга (автора REST). В первой части предлагается список архитектурных стилей и таблица их сравнения. Во второй планируется описание самих стилей.
                подробнее...
              • Хранимые процедуры и временные таблицы. MySQL для начинающих

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

                  Суть задачи проста: есть некий рейтинг пользователей. Необходимо показать пользователю его текущее положение, а также положение его ближайших конкурентов. Проще говоря, показать N-5..N+5 позиций в рейтинге, где N положение пользователя в рейтинге.
                  Читать дальше →
                • В помощь стартаперам

                    Вот недавно вышел свежачок от нашего правительства в помощь нашим предпринимателям.
                    Документ новый по сему во многих справочно-правовых системах еще отсутствует. По сути топик есть комментарий к данному документу + немного личного опыта.

                    В документе подразумевается, что любой человек может получить о государства 58 800 рублей на начало своего бизнеса, и еще плюс 58 800 за каждого нанятого сотрудника. Наймете инвалида, государство компенсирует 30 т.р. на оборудование места. В общем звучит очень интересно и заманчиво…

                    Читать дальше →
                  • Спецпроект HTC Россия при поддержке Хабрахабр

                      Quietly BrilliantПохоже, в последнее время компания HTC серьезно взялась за российский рынок. Помимо агрессивной рекламной политики, HTC регулярно проводит разнообразные конкурсы и спецпроекты с известными порталами. HTC совместно с Хабрахабр (обратите внимание на шапку Хабра) проводят совместный конкурс на лучшую идею приложения для Android.

                      Для того, чтобы поучаствовать в конкурсе необходимо зарегистрироваться на мини-сайте htcpromo.ru и подать заявку вместе с идеей с помощью специальной формы. Конкурс продлится до 29 декабря, и в результате пользовательского голосования будут отобраны 10 работ. Далее экспертное жюри определит победителя. Главные критерии, по которым будет оцениваться идея: общее восприятие, оригинальность идеи и содержание работы, качество подачи.

                      Главный приз — HTC Tattoo.

                      Официальный твиттер HTC Россия twitter.com/HTC_Ru

                      PS Ребята, если вы недовольны конкурсом — свои замечания можно описать здесь или в твиттере реплаем к HTC_Ru, но топик лучше не минусовать: чем больше участников, тем больше качественных идей.
                    • Как я веду себя на фриласерском сайте

                        Занимаюсь «фрилансом» около 3 лет, кое-какой опыт общения уже есть, поэтому хотелось бы поделиться с товарищами по цеху.
                        Итак, мне приходится быть как в роли исполнителя, так иногда и публиковать свои проекты (например, когда не успеваю сам или когда не хочу тратить на некоторую работу время) на сайте одного известного веблансерского ресурса. Выработал для себя определенную систему определения c кем я хочу работать, а с кем нет. Данная система всего лишь плод моих наблюдений, никоим образом не может быть навязана всем, а тем более тем, чье мнение отлично от моего.

                        Чем я руководствуюсь при работе на фрилансерском ресурсе.

                        а) Если я выступаю как заказчик
                        1. Стараюсь максимально точно описать задание и что я хочу получить в итоге, описываю доп. условия (например, необходима личная встреча и исполнитель должен проживать в том же городе, что и я)
                        2. Не указываю стоимость проекта, предлагаю претенденту самому оценить свою работу, сообразуясь с ее сложностью, объемом и др. факторами на усмотрение исполнителя.
                        3. Если получаю предложение типа «Пиши, сделаю» или «Без проблем», в мусорку.
                        4. Если кандидат не смог элементарно осилить дочитать мое описание (например, исполнитель из Магадана, а нужен только из Киева, что указывается в описании), в мусорку.
                        5. Далее отсеиваю царей горы. «Я работаю только по 100% предоплате!». Работайте, но не со мной
                        6. Отсеиваю слишком жадных. Например, при средней стоимости верстки «средней» страницы порядка 20-30 долларов, человек за 150 наврядли сделает мне что-то конгениальное.
                        6. С другими претендентами пытаюсь пообщаться. Спрашиваю что делал, на чем пишет, как бы он сделал то-то и то-то. Прощаюсь с теми, кто пишет «ептыть сделаю как два пальца» или с теми, кто пытается себя выдать не за того, кем является на самом деле (по своей субъективной оценке).
                        7. В предыдущий пункт также попадают так называемые «менеджеры», т.е. посредники. В процессе работы с таким товарищами, прямого контакта с разработчиком не получается, а мне попадались не совсем адекватные манагеры. Их функция — испорченный телефон. Это только мешает.
                        8. Еще одна категория ламеры, очень страшная категория. Иногда в короткой беседе таких не выявишь, Любимый ответ таких людей на претензии, возникающие после выполнения всей работы, либо этапа — это контратака с истерией. «Б$#, я провозился с твоим проектом, а ты мне мозги @#$шь… Ух!
                        9. Могу отдать работу новичку, если вижу что человек реально пытается зарабатывать и:
                        — работа не сложна и ее легко исправить или переделать в случае неверного исполнения
                        — достаточный запас времени.
                        Сложные вещи не отдаю, извините, но это не тот случай. Либо учимся, либо зарабатываем деньги.
                        10. Вебстудии имени безымянного героя с большими амбициями, но маленькими возможностями и знаниями меня смешат (Пример: Однажды наталкиваюсь на проект, в котором человек не может побороть кодировку UTF-8 в MySql..Дел на 5 минут. Пишу ему очень короткое предложение. В ответ получаю сообщение, в котором он говорит что хотел бы сохранять текст в базе «в этой кодировке» и далее строка кракозябликов. Объясняю что это неверно. Чел. пропадает. Через пару дней публикую абсолютно другой проект. И что вы думаете? Этот же товарищ пишет что «Очень опытная команда сделает мне полный шоколад. жах! мама, роди меня обратно ).

                        б) Если я выступаю претендентом на выполнение проекта
                        1. Не делаю заявок на все подряд проекты, а только те, которые мне интересны или те, что лучше знаю (имею больше опыта) или просто понравилась идея (например, я люблю все, что связано с онлайн видео).
                        2. Не ставлю заявки на проекты, которые кажутся мне узнаванием цен (Например, сколько будет стоить сделать сайт showsiski.ru?).
                        3. Не жалею 10-15 минут на написание детального предложения доступным языком (без технических подробностей), но без детского лепета.
                        4. Если делал подобны проекты, сообщаю это, если нет, то говорю что из функционала у меня есть, а что буду делать с нуля.
                        5. Если по описанию проекта я могу предположить срок выполнения, говорю ориентировочный, но с указанием, что точнее скажу после обсуждения деталей.
                        6. Аналогично предыдущему пункту происходит ценообразование. Тут есть исключения. Если работа для души, могу сделать ее дешевле.
                        7. В начале разговора вы всегда обращаюсь на Вы, даже если заказчик младше меня. В процессе работы, можем перейти на более формальное общение, так легче.
                        8. НИКОГДА не соглашаюсь на процент от прибыли и будущие светлые перспективы! Моя часть — создание, пожалуйста, зарабатывайте миллионы на своем сайте, меня жаба не задавит
                        9. Не требую предоплаты (это отпугивает любого нормального человека), но настоятельно предпочитаю безопасную сделку, являющейся гарантией того, что заказчик „не забудет“ обо мне. Небольшие работы показываю на своем сервере. Негативный опыт есть. Если клиент обращается не в первый раз, то, конечно, правила меняются, возникает некое доверие.
                        10. Очень не люблю всезнаек, манипулирующих терминологией (кроме случаем, когда заказчик действительно в теме). Сделай мне „обертку модуля“. Б#$я! Зачастую употребление терминологии заказчиком приводит к неправильному понимаю задания. Если чувствую что терминология мешает, прошу не обижаться, но объяснить человеческим языком.
                        11. Часто до начала работы пытаюсь обсудить с заказчиком схему взаимных объяснений, прошу заказчика (впрочем, такое и с исполнителями бывает) избегать выражений „там“, „это“, „все“. Например: „Там картинка неправильно стоит!“ Прошу перефразировать „Логотип расположены слишком близко к левой границе браузера.
                        12. Стараюсь обсуждать с клиентом что он получает за свои деньги. Например: Стоимость 10 долларов включает два макета логотипа. “Немножко поииграться с цветом», как иногда любят выражаться заказчики (где они эту фразу откопали?) можно до бесконечности. Думаю, попасть в рабство за 10 долларов никто не хочет.
                        13. Терпение к противоположной стороне. Заказчик — человек, платящий деньги. Прежде чем написать гневный ответ «тупому идиоту, который сам не знает что он хочет», переключаюсь на что-то другое, даю себе остынуть, а уж потом пишу.
                        14. Заказчик и исполнитель — партнеры, сотрудничают на взаимовыгодных условия, а не делают одолжение, снизойдя до разговоров с другой стороной. Ведите себя достойно, но без подлизывания зада, хотя, высокомерие тоже не приветствуется.
                      • Клавиатура Kinesis Advantage Pro

                          image
                          Если в один прекрасный момент вам начало казаться, что ваша обычная клавиатура — не предел совершенства и она для вас не очень удобна, обратите свое внимание на Kinesis Advantage Pro keyboard, которая довольно сильно отличается от всех традиционных клавиатур. Что самое интересное, эта клавиатура существует еще с 1992-го года, и за это время она прошла ряд доработок и усовершенствований, а также доказала свою комфортность по результатам многих независимых тестирований. В числе преимуществ девайса – прежде всего, наличие раздельных блоков клавиш для левой и правой рук – чтобы минимизировать напряжение кистей. Кроме того, эти блоки – вогнутой формы: так пальцы меньше растягиваются, а значит, меньше напрягаются. Для ладоней в то же время предусмотрен, наоборот, небольшой выступ, где они могут спокойно лежать во время работы. Для больших пальцев рук существуют свои собственные маленькие «клавишные поля» с набором наиболее часто используемых кнопок типа Enter, Delete, Return, Space и т.д. – само собой, расположены они в самом удобном для пальцев месте. К тому же, вся клавиатура имеет «поперечный уклон», так, что мизинцы находятся примерно на 20 градусов ниже уровня больших пальцев – это тоже уменьшает ненужный стресс для рук.
                          Еще фото
                        • OAuth: описание протокола простым и понятным языком

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

                            Пример кросс-авторизации


                            Вернемся в 2005-й год и представим, что мы пишем социальную сеть. В ней имеется форма импорта контактов из адресной книги GMail. Что нужно для доступа к контактам GMail? Конечно, логин и пароль от ящика. Но если мы попросим ввести их на нашем сайте, пользователь заподозрит неладное. Где гарантия, что мы не сохраняем на сервере введенные пароли? Поэтому нам хочется, чтобы пароль вводился только на сайте GMail, и после этого доступ к контактам через API GMail предоставлялся нашей социальной сети (возможно, на время).
                            Под катом - повествование с примерами
                          • Обзор основных SMS-биллингов

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

                              Читать дальше →
                            • Делаем красиво в AdobeAIR с ExtJS

                                Понятия не имею, почему до сих пор я не смотрел в сторону ExtJS. Обалдеть можно от того, как просто с этим фреймворком можно построить красивое приложение.

                                Сегодня, мы создадим в AdobeAIR приложение с простым окном (Ext.Window):


                                читаем дальше о том, как это сделать...
                              • Как я нанимаю программистов

                                • Translation
                                Есть три вопроса, ответ на которые надо знать, когда нанимаешь на работу программиста:
                                      1) Он умный?
                                      2) Способен ли он выполнять работу?
                                      3) Смогу ли я с ним работать?

                                Кто-то умный но не способный выполнять работу может быть хорошим другом, но не сотрудником. Можно обсудить с ним какие-то проблемы, пока он прохлаждается на своей собственной работе.

                                Тот, кто способен выполнять работу но не умён – неэффективен. Неумные люди выполняют работу путём грубой силы. Работа с такими людьми движется медленно и обычно раздражает.

                                С тем, с кем я не смогу работать – я не смогу работать.

                                Под катом продолжение статьи Аарона Шварца. Я бы предпочёл чтобы меня собеседовали таким образом, чем быть изучаемым девочкой-сотрудницей ОК, которая не отличает http от mp3.

                                Читать дальше →
                              • И вновь о монетизации виджетов

                                  Все сходятся в том, что виджеты — это здорово, но как с них получить доход — пока не очень понятно.
                                  Я вообще считаю, что прямой доход тут не так уж важен. Куда важнее то, что виджеты позволяют распространить влияние и присутствие веб-проекта на другие площадки: на рабочий стол пользователя, в его стартовую страницу, в блоги, социальные сети, на чужие сайты.
                                  Но давайте подумаем вместе: как же в этой области можно получить «живые» деньги?

                                  Ниже — мои варианты.
                                  Читать дальше →
                                • Составление технического задания (ТЗ) на сайт с использованием ГОСТ

                                    Интересовался я одно время технической документацией и вот такие вот интересные стандарты нашёл на просторах родного Интернета. Стандарты непростые, а ГОСТовые. Они, конечно, не специально для изготовления документации к сайтам созданы, но их вполне хватает для создания достаточно серьёзного технического задания ( далее по тексту — ТЗ ) для сайта средней сложности. Думаю, что при умелом подходе можно их использовать при составлении любой документации, касающейся Интернет технологий.
                                    Читать дальше →
                                  • Как «честно» симулировать события

                                      Здравствуй уважаемое хабрасообщество.
                                      Не так давно я начал заморачиваться не только тестированием кода на ruby, но и js, которого становиться слишком много в проектах. Со
                                      временем добрался и до IU на js, а для его тестирования понадобилось симулировать всяко-разные события. Поискав, нашёл в одной из библиотек на jquery решение. В расширениях для тестирования была искомая библиотечка для симуляции событий. Но вот незадача, мы используем prototype (я закоренелый рубист и оно мне нравиться), а не jquery.

                                      Немного поразмыслив я решил подправить сие, для использования, как plugin к prototype. Что из этого получилось? Что ж, мне очень помогло в тестах. Если Вы тоже сторонник тестируемого кода — Вам тоже будет полезно.

                                      В использовании выглядит это примерно вот так:

                                      $('foo').simulate('keypress', Event.KEY_RETURN);

                                      $('foo').simulate("drag", {
                                      dx: 10,
                                      dy: 0,
                                      onComplete: function(element){
                                      alert('drag simulation $(' + element.id + ')');
                                      }
                                      });


                                      Я намеренно расширял Element, а не Event — мне так кажется логичнее, хотя это можно и обсудить. Сжатая версия весит 3K, с документацией 7K. Git

                                      Для почитателей jquery — выше ссылка.
                                    • phpclasses.org меняет стиль!

                                        image

                                        Даешь наш дизайн !



                                        Один из старейших сайтов агрегаторов авторских php скриптов и классов, решил поменять стиль! Жаль, что эта новость прошла мимо хабра.

                                        Я уверен, что на хабре есть талантливые дизайнеры, которые в силах предложить дизайн мирового уровня, тем более для такого значимого ресурса!

                                        Конкурс на редизайн был объявлен давно, но (по каким-то причинам), а точнее отсутствию хороших предложений, был продлен до 15 декабря.

                                        Подробнее по конкурсу можно прочесть тут

                                        Победитель прлучит premium подписку, три тысячи вечнозеленых мертвых президентов, и большого слона image

                                        Понимаю, что времени не много, но разве это проблема, для того у кого есть идеи ?! :)

                                        Удачи, и очень хочется, что бы, кто-то из хабровчан, или читателей ресурса, выиграл этот конкурс! тем более что конкуренция не большая! :)

                                        Ни пуха, ни пера!