Полезные ссылки (Data Processing)

Полезные ссылки. Загрузка/обработка данных, bigdata, machine learning, etc:

===
Перепечатка материалов блога разрешается с обязательной ссылкой на blog.coolsoftware.ru

Install/Update Skype for CentOS 7

Install/Update Skype for CentOS 7

  1. wget https://go.skype.com/skypeforlinux-64.rpm
  2. sudo yum localinstall ./skypeforlinux-64.rpm

Если после обновления Skype не стартует, то выполняем в терминале:

  • /usr/share/skypeforlinux/skypeforlinux

Если видим результат типа такого:

  • [4154:1230/082038.483647:FATAL:setuid_sandbox_host.cc(157)] The SUID sandbox helper binary was found, but is not configured correctly. Rather than run without sandboxing I’m aborting now. You need to make sure that /usr/share/skypeforlinux/chrome-sandbox is owned by root and has mode 4755.

то выполняем:

  • sudo chmod 4755 /usr/share/skypeforlinux/chrome-sandbox

 

В результате права будут изменены с -rwxr-xr-x на -rwsr-xr-x (“s” means “suid” - takes the rights of user or group when executed).

===
Перепечатка материалов блога разрешается с обязательной ссылкой на blog.coolsoftware.ru

Полезные ссылки (Администрирование Linux)

Полезные ссылки. Установка, администрирование Linux/CentOS, Apache, PHP, Git:

===
Перепечатка материалов блога разрешается с обязательной ссылкой на blog.coolsoftware.ru

OddEven Game (Smart Contract)

Для изучения смарт-контрактов и возможностей написания приложений с их использованием, написал простенькую игру: "Чет-Нечет" (Odd-Even).

Тут: http://oddeven.coolsoftware.ru/web3/

Update. Игра больше недоступна. Исходники, если будет время, опубликую на github.

Правила

В игре участвуют двое: “банкир” и игрок. За банкира играет сервис на PHP.
Банкир загадывает число, и записывает в смарт-контракт хэш от него. Затем игрок вводит свое число, которое отправляется в смарт-контракт. Потом “банкир” сообщает смарт-контракту загаданное им число (которое должно совпасть с хэшем). В конце определяется победитель: если игрок и банкир оба загадали четное число, или оба загадали нечетное число (иными словами: игрок угадал, загадал ли банкир четное число или нечетное), то выиграл игрок. Иначе выиграл банкир.

Смарт-контракт опубликован в тестовой сети rinkeby: https://rinkeby.etherscan.io/address/0x7a21ff65b1c509c2236aeaad47e1c938e6dd921c

Для игры игроку нужно установить MetaMask (https://metamask.io/) и завести аккаунт в сети rinkeby. Получить (бесплатно) ETH в этой тестовой сети можно тут: https://www.rinkeby.io/#faucet

===
Перепечатка материалов блога разрешается с обязательной ссылкой на blog.coolsoftware.ru

Ethereum и PHP

Полезные ссылки:

API client lib for communication with geth (go-ethereum) node
https://github.com/petrhejna/geth-jsonrpc-php-client

PHP interface to Ethereum JSON-RPC API
https://github.com/digitaldonkey/ethereum-php

A php interface for interacting with the Ethereum blockchain and ecosystem
https://github.com/sc0Vu/web3.php

Устанавливаются библиотеки с пом. композера, брать его тут: https://getcomposer.org/

Подключается установленная с пом. композера либа так:

<?php require_once __DIR__ . ‘/vendor/autoload.php’; ?>

===
Перепечатка материалов блога разрешается с обязательной ссылкой на blog.coolsoftware.ru

Связь GUI (web) и смарт-контракта.

Видео-туториал тут: https://www.youtube.com/watch?v=hcTPjpPvas8

Парочка замечаний:

1. Устанавливать надо версию web3 0.20.6 (в версии 0.20.7 можем получить ошибку: Access to XMLHttpRequest at ‘http://localhost:8545/' from origin ‘null’ has been blocked by CORS policy: Response to preflight request doesn’t pass access control check: The value of the ‘Access-Control-Allow-Origin’ header in the response must not be the wildcard ‘*‘ when the request’s credentials mode is ‘include’. The credentials mode of requests initiated by the XMLHttpRequest is controlled by the withCredentials attribute.)

2. Чтобы установился dist\web3.min.js нужно при установке добавлять ключ –verbose.

Резюмируя: npm install web3@0.20.6 –save –verbose

===
Перепечатка материалов блога разрешается с обязательной ссылкой на blog.coolsoftware.ru