• Как рассчитывается комиссия для транзакций смарт контракта ethereum?

    И есть ли смысл в смарт контрактах, для обычного рядового пользователя?

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

    Ведь если стоимость транзакций скажем для hello world верна, то это достаточно дорого, исходя из этого, смарт контракты доступны только для банков и организаций

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

    Как вычисляется цена транзакции в gas? Тут все просто: код смарт-контрактов выполняется в децентрализованной виртуальной машине Ethereum. Каждая команда стоит фиксированное кол-во этих самых gas. Компилируем контракт -> получаем точные инструкции, каждая из которых имеет свою цену.
    Ответ написан
  • Как реализовать прием Ethereum?

    В Ethereum не один адрес, точно так же как и в Bitcoin при приеме средств на какой-то кошелек в блокчейн записывается транзакция с уникальным адресом(читай идентификатор платежа).
    Создаем кошелек на который собираемся принимать эфиры, сообщаем адрес - готово.
    + вам ни что не мешает создавать новые кошельки хоть под каждую транзакцию, в этом плане отличий от биткоина минимум.
    Ответ написан
  • Реально ли эмигрировать PHP программисту в возрасте?

    Возможно. Но вопрос не стоит о том, чо Вы PHP-программист, или в возрасте. Кто-то и будучи молодым GO-программистом не может переехать, а есть пожилые бармены\уборщики, которые делают это с легкостью. Тут от Вас зависит всё.
    Добавлю, что когда первый раз решил уехать с Родины, спустя пол гола на чужбине начал волком выть от внезапно проснувшейся ностальгии и патриотических чувств. Да так, что еще через пару месяцев я вернулся домой. Но спустя какое-то время всё это прошло и я ухеал вновь. С каждым разом покидать родную страну всё легче и легче и в какой-то момент я заметил, что больше вообще не привзяан ни к чему в России и возвращаться смысла уже нет никакого, кроме как повидать родственников. Но на это мне вполне хватает и недели. По этому, прислушайтесь к одному из советов данных здесь - попробуйте пожить за бугром не сжигая тут мостов. Это банально не всем подходит и многие потом мечтают уехать назад, но по какой-то причине уже не имеют такой возможности и в итоге в погоне за счастьем становятся невероятно несчастными людьми.

    По поводу трудоустройства - СНАЧАЛА находите работу, а потом переезжаете. Это более чем реально. Может быть, раз Вы в возрасте это стоит пояснений, но так получилось, что теперь можно искать УДАЛЕННУЮ работу через интернет. Зарплата зависит только от Ваших навыков и наглости, знаю людей, которые зарабатывают и по 70$\час, работая удаленно PHP-разработчиками. В общем, вспоминайте то время, когда казалось, что Вам море по колено и дерзайте, ведь так оно на самом деле и есть и все зависит от Вас.
    Ответ написан
  • Как совместить Kohana и Angular?

    Дружат вместе. В основном, благодаря тому, что Angular'у в общем-то без разницы, что у вас там на бекенде. Делаете на Kohana API(возомжно REST) и пишите себе спокойно Angular-приложение. Иными словами они никак друг от друга не зависят, а что вы подразумеваете под словом "подружить" мне не совсем ясно. Советую для начала ознакомится с документацией по Angular. Забудьте Kohana в качестве инструмента для отображения каких-то там страниц, получите на выходе 2 приложения - бекенд и фронтенд. Подключайте к бекенду что хотите, хоть мобильное приложение, хоть Angular, хоть React, хоть самого Аллаха.
    Ответ написан
  • Где вытаскивать настройки?

    Лучше хранить конфигурацию в отдельнов файле конфигурации, например, loginner.config.php
    Ответ написан
  • Как перенести данные из одной БД в другую с другой структурой?

    А как Вы себе это представляете вообще? Что должен делать такой инструмент? Анализировать старую структуру, потом новую, потом залезть к Вам в голову и узнать, что именно вы отразили в этих изменениях и что к чему относится и подготовить Вам SQL-файлик на основе анализа Вашего мозга?)
    Самый простой способ - написать скрипт самому)
    Ответ написан
  • Как направить форму напрямую в Apigility?

    Я не очень понял, в чем конкретно заключается Ваш вопрос. Вот довольно подробный пример с официального сайта:
    https://apigility.org/documentation/modules/zf-oauth2

    Так же рекомендую посмотреть:
    https://bshaffer.github.io/oauth2-server-php-docs/...
    И все странички из этой секции дальше, чтобы Вы сами понимали, что и зачем делаете
    Ответ написан
  • Почему после перемещения сайта он перестал работать?

    Для начала, стоит включить debug mode + посмотреть логи Вашего веб-сервера. Пока что, ваш вопрос выглядит как: "Ничего не работает, как мне это исправить?!". Короче, нужно больше инфы.

    Судя по логам, которые ты приложил в комментарий к ответу, а именно:
    [2015-11-23 12:38:07] production.ERROR: exception 'RuntimeException' with message 'No supported encrypter found. The cipher and / or key length are invalid.' in /home/ivan/server/dark-side.ru/back-end/vendor/laravel/framework/src/Illuminate/Encryption/EncryptionServiceProvider.php:29


    Проблема в том, что в файлике config/app.php ты забыл поменять код приложения. Для того, чтобы всё заработало, тебе нужно в консоли, из корня твоего приложения запустить:
    php artisan key:generate
    Ответ написан
  • Почему в автозагрузчик 2 раза бросается вызов класса?

    Я думаю, что по этому:
    use patterns\Singleton;

    namespace base\patterns;

    Попробуйте вместо use patterns\Singleton;
    Написать use base\patterns\singleton;
    Ответ написан
  • Виновен ли я в самописном движке?

    Автор, ты молодец. Комментариев непосредственно по теме тебе дали уже достаточно, дам тебе немного советов, основываясь на том, что я в тебе увидел по постам здесь и по сути вопроса.
    1. Ты не застрахован от неадекватных заказчиков до тех пор, пока не требуешь подробного ТЗ. Как правило, по ТЗ можно довольно чётко определить, что за "фрукт" этот заказчик.
    2. Если так получилось, что ты таки нарвался на неадекватов - не принимай всё близко к сердцу. Добавление в черный список и нежелание разобраться в ситуации никак нельзя назвать адекватным поведением, ведь так? Подумай, сильно ли тебя беспокоит репутация у таких заказчиков, или, быть может стоит обрести ее у нормальных(или вообще у сообщества)?
    3. То, что ты сделал в учебных целях хорошо характеризует тебя, как разработчика, молодец, продолжай в том же духе, но лучше на личных проектах.
    4. Познакомься с шаблонами проектирования и фреймворками
    5. Я думаю, что работа в веб-студии или фрилансером на "сайтах под ключ" - не твой путь, если ты решил написать свою CMS в учебных целях, смотри в сторону компаний, которые разрабатывают крутые, большие проекты. Как правило нормальный индикатор - использование фреймворков и довольно жесткие требования к знаниям(при том не конкретных технологий, а общих принципов). Устройся в такую компанию Junior-разработчиком, или вообще стажером. Хрен с ним, что 15000(хотя на самом деле, Junior вроде как от 30 стоит в моем миллионнике), ты получишь опыт, который за деньги не купишь. Но я очень рекомендую - не занимайся этими сайтами под ключ и поработай фулл-тайм в фирме, которая делает что-то классное, не пожалеешь!)
    Ответ написан
  • Как автоматически вызвать функцию в PHP?

    Коротко - нет.

    Давайте с Вами разберемся сначала, как Вы себе это представляете =)
    Допустим, мы нашли способ вызывать нечто автоматически, чтобы избавится от вашего start() (кстати, start() наверное не очень подходящее название, имхо, но в данном случае get() как-то логичней). Тогда резонно встает вопрос, в какой момент вызывать эту функцию? Перед сборкой мусора\уничтожением объекта? Тогда у Вам придется ждать до тех пор, пока приложение не решит собрать мусор, или, опять таки, явно уничтожать объект. А PHP выполняет операции синхронно(если не задаваться целью делать это асинхронно), соответственно, конечный пользователь будет ждать. И прождать он может долго.
    Или может попробуем в конце вызова каждой функции из цепочки? Тогда проблема в том, что вы сделаете множество запросов к базе.

    А вообще - посмотрите, как реализованы компоненты QueryBuilder в попоулярных фреймворках и вы увидите, что в них всех в итоге надо использовать какой-то метод, наподобии вашего start()
    Ответ написан
  • Почему PHPStorm не распознаёт скалярные типы в тайп-хинтинге?

    На официальном сайте PHPStorm говорится о том, что на данный момент, поддержка PHP7 лишь частичная, что как бы намекает на то, что новые фичи 7й версии могут не работать, тайп-хинтинг для скалярных типов штука новая.
    Ответ написан
  • Почему Laravel5 ругается на функцию preg_replace_callback() и не загружает страницы?

    Проблема не в теге, как сказали выше, а в php environment, а именно в том, что версия PCRE не соответствует версии PHP. Вопрос не к Lravel а к тем, кто компилировал Ваш PHP.
    Есть быстрый костыль но у меня при его использовании отказывается работать {!! !!} шаблон.

    Замените свой Compiler на этот
    https://raw.githubusercontent.com/laravel/framewor...
    Ответ написан
  • Как продумать регенерацию жизней на php?

    Я бы занес в базу такой параметр, как скорость регенерации, при каждом обращении клиента к серверу - проверял бы, не пора бы регенерировать жизнь. Для того, что бы это было безопасно, вам надо проверить не только время нанесения последнего урона, но и время последней регенерации.
    Иными словами, в базе будем хранить:
    урон(кол-во, время наненсеня)
    регенерация(сколько едениц регенерировать, как часто, время последней регенерации)
    При обращении клиента к серверу(рекомендую сделать некий запрос poll, который будет запрашивать необработанные игровые события, такие как регенерация) спрашиваем, сколько у игрока жизней. Если меньше 100, то проверяем, дату нанесения последнего урона и можем ли мы пользователю отрегенить жизнь, если да, то делаем это и возвращаем клиенту событие регенерации, которое он отрисует уже как хочет.
    Регенирировать мы можем в следующих случаях:
    1. Пользователь получил урон, но еще небыло регенераций, а время регенерации уже >= текщему времени - время нанесения урона
    2. Пользователь получил урон, регенерации были, и время регенерации уже >= текущему времени - время последней регенерации


    По такой схеме Вы сможете не только в "реальном времени"(конечно, это не websockets, но все же) регенирировать игрока, но и, например, если он был в оффлайн и не поллил игровые события вычислить сколько жизней он отрегенил, пока был оффлайн.

    Полл-запрос можете делать, например, каждую секунду. Ну и вообще, присмотритесь к идеям, которые я Вам изложил, особенно про игровые события и полл. Я имею некий опыт в геймдеве, в том числе на PHP и эта практика для небольших игр довольно неплохо себя зарекомендовала.
    Ответ написан
  • Цены на oDesk...?

    Цены разные и уж точно не хуже, чем на Российских биржах. То, какую назначите себе Вы зависит от Вас, Ваших амбиций, опыта и аппетитов.
    Я работаю на oDesk за 22$\час на длительных проектах, те, что больше года, до этого не фрилансил, за бесплатно, или за дешево, как многие советуют, я не работал.
    А вообще, специально для Вас oDesk придумал фильтры поиска, там можно, среди прочего выбрать сумму оплаты.
    Ответ написан
  • Что выбрать для мультиязычного поиска solr, sphinx, elastic или что еще?

    Вот Вы говорите, что работали со Sphinx, давайте будем отталкиваться от этого. По Вашему сообщению я сделал вывод, что единственное, что Вас останавливает в Sphinx - мнимая необходимость остановки сервиса и перестроение индексов. Спешу Вас обрадовать - этого делать не надо. Советую внимательно изучить официальную документацию(желательно от корки до корки, она не такая большая, как может показаться) и познакомиться с удивительным миром delta-index и rt-index. Они позволят Вам забыть остановку сервиса для перестроения индексов как страшный сон. Другое дело, что с ними не все в порядке, о чем так же подробно написано в документации.
    Ответ написан
  • Стоит ли использовать Sphinx, ElasticSearch или схожую технологию для организации поиска в маленьком проекте?

    В глубине души я надеюсь, что это избавит меня от корявой функции поиска по ФИО, которая довольно криво работает с морфологией.


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

    Насколько оправдана попытка внедрить и использовать такой тип инструмента при такой маленькой базе и при такой простой задаче?


    Лично я бы внедрил. И вопрос не в том, насколько это сложно или просто, а скорее в том, что у Вас уже существует план развития, который предусматривает наличие технологии полнотекстового поиска. Для Вас этого должно быть достаточно, чтобы, по крайней мере изучить документацию по инструментам, которые вы хотите использовать, а затем и попробовать внедрить.
    С ZF1 мне довелось работать не очень много, но никаких препятствий к простому внедрению Sphinx я не видел. В ZF2 мы его успешно внедряли и вся работа, с учетом написания кучи разных индексов заняла 3 человеко-дня, с учетом того, что в то время это был довольно новый опыт для команды.
    А о том, стоит ли овчинка выделки в вашем конкретном случае судить только Вам, ведь нам не известно, какие у Вас отношения с заказчиком\начальством, о том, какие задачи для Вас приоритетные, а какие нет и так далее. Здесь слишком много переменных, чтобы ответить однозначно. Но одно можно точно сказать - попробовать в свободное время стоит, тем более, если Вы пишите, что подобного опыта до этого у Вас не было. Инвестируйте свое время в себя, как специалиста, поднимите свой уровень, ну как, стоит?
    Ответ написан
  • Какие сложности возникают при фрилансе на odesk, elance, freelancer.com?

    У меня опыт на oDesk немногим больше, чем у naneri , но мнение во многом расхожее.
    Во-первых, стоит сразу сказать, что работа непосредственно через oDesk или elance "подстегивает" работать больше и качественнее благодаря их программам трекинга времени.
    Во-вторых, я, например, не делал совершенно никаких "маленьких" работ ради отзывов. О том, как начать работать успешно на oDesk, на том же oDesk подробно написано. Пишите индивидуальные Cover Letter, старайтесь понять, что нужно потенциальному заказчику, знайте себе реальную цену.
    Первая почасовая была на 50 часов за 12$\h, потом нашелся заказчик на 18$\h, на которого я отработал уже порядка 200 часов.

    с чего начать работу если никогда не фрилансил вообще
    Я в профиле и в резюме честно пишу, что на фриланс-биржу я пришел после определенного опыта работы в офисах крупных организаций, описываю свой реальный опыт и достижения. Если сделать это качественно, то заказчик поймет, что вы за специалист и без отзывов.
    как решить проблемы с языком при общениию
    Только учить язык, это очень полезно не только для общения, но и для работы, и для мозга в целом.
    как конкурировать с индусами и китайцами
    А вы уверены что Вам это надо? Я себя относил и продолжаю относить к другому сегменту рынка. Поймите, есть несколько типов заказов. В одних надо "что бы работало", в других "что бы работало, было сделано качественно, красиво, расширяемо", третьи хотят микс из того и другого в разных пропорциях. Конечно, хочется относить себя к "сливкам", но объективно я пока выше среднего индуса на oDesk, заказчик готов платить мне 18$ в час, многие индусы просят 5, как думаете, почему заказчик не пошел к очередному?
    как найти заказы для команды разработчиков
    Специально не скажу, считаю это не очень красивым бизнесом
    Ответ написан
  • Где и в каких случаях в php (ООП) используется __constructor?

    Воспринимайте конструктор как то, что срабатывает при вызове:
    new Object()
    Способов применения масса. Я думаю, вы часто видели, если что-то писали на ООП-PHP конструкции типа
    new Object($var, $anotherVar);

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