So in order to setup SmartNode we need to follow a simple tutorial. Just few simple steps, that I will quickly run through to show how easy it actually is.

Official tutorial:

You can also check ROI calculator for mining SMARTs:

The Requirements

SmartNodes are required to have 10,000 SMART collateral.


First of all, get your VPS up to date with:

This will update preinstalled software to newest stable versions.

After that we need to install SmartCash software. You can do this by downloading it:

and then just executing it:

Allocate some swap, if you are running lower memory VPS:

Now you’re almost finished. You have installed node software and can interact with it. There are few commands I wanted to share:

You can check and change if needed node config at path:

Cryptocurrency Analytics Platform

First Crypto trading analytics platform worth using for cryptocurrency traders.

I myself was struggling to do the match all the time. I just wanted data to be aggregated and prepared.

This platform allows for data to be pulled from different exchanges and the aggregated into human-readable insights.

Hope to event implement trading signals to make it easier to trade with confidence.

Enable to add new repositories

Install PHP 7.1

Install Apache 2.4

After successfully installation, lets begin installing Apache 2.4. Use the following set of commands to install Apache2 on your Ubuntu system available in default apt repositories.

Install MySQL 5.7

Use the following commands to install or upgrade MySQL 5.7 on your Ubuntu systems. At the last update of this tutorial MySQL 5.7.4 is latest available MySQL version in series of MySQL 5.7.X.


UnicodeDecodeError: ‘ascii’ codec can’t decode byte 0xc5

This happens due to encoding issue in repo author name. Fix below:


  • Create an SSH key
  • Login and adjust sshd_config file
    • Set PermitRootLogin no
    • Set PasswordAuthentication no
    • Restart SSH systemctl restart sshd.service
    • View status of SSH systemctl status ssh.service
  • Create a user: adduser user
  • Add user to sudo group: usermod -aG sudo user
  • Setup user’s .ssh directory and authorized_keys file
    • mkdir ~/.ssh
    • chmod 700 ~/.ssh
    • sudo cp /root/.ssh/authorized_keys ~/.ssh/
    • chown user:user ~/.ssh/authorized_keys
    • chmod 600 ~/.ssh/authorized_keys
  • Test ability to login via SSH using newly created user
  • Setup firewall using ufw
    • Allow SSH: sudo ufw allow 22
    • Allow Web Server: sudo ufw allow proto tcp from any to any port 80,443
    • Enable: sudo ufw enable
    • Check status: sudo ufw status
  • Download, install, and setup Apache 2.4
    • Install: sudo apt-get install apache2
    • Start after reboot: systemctl enable apache2
    • Check status: systemctl status apache2
    • Set KeepAlive Off in /etc/apache2/apache2.conf
    • Disable mpm_event module: sudo a2dismod mpm_event
    • Enable mpm_prefork module: sudo a2enmod mpm_prefork
    • Enable mod_rewrite module: sudo a2enmod rewrite
    • Add ServerName directive to /etc/apache2/apache2.conf using public IP or FQDN
    • Check config syntax: apache2ctl -t
    • Disable default VirtualHost: sudo a2dissite 000-default.conf
    • Remove default web page: sudo rm /var/www/html/index.html
    • Restart Apache: sudo systemctl restart apache2.service
  • Download, install, and setup MariaDB in place of MySQL
    • Install: sudo apt-get install mariadb-server
    • Check status: systemctl status mysql
    • Start after reboot: sudo systemctl enable mysql
    • Secure the service: sudo mysql_secure_installation
  • Download, install, and setup PHP 7
    • Install: sudo apt-get install php libapache2-mod-php php-mcrypt php-mysql php-gd php-json php-cli php-curl php-mbstring php-xml php-xmlrpc
    • Set DirectoryIndex index.php index.html in /etc/apache2/mods-enabled/dir.conf

How to setup

Method 1 The best tutorial to install Supervior as a service. Please follow this link and do step by step until “Setup supervisor topic”

Method 2 install Supervisor as a normal solution (Please add sudo to every command)
1. execute “yum install python-setuptools” (If not installed)
2. execute “easy_install supervisor” to install via easy_install
3. execute “echo_supervisord_conf > supervisord.conf” to create simple configuration file
4. copy to /etc
5. execute “mkdir /etc/supervisord.d/” to create “supervisord.d” directory in /etc
6. Please add text “files = /etc/supervisord.d/*.conf” to configuration file under [include] section
7. Remove comment from [inet_http_server] and port=
8. Change port to *:9001
. Finish

Automatic deployment is super nice way to deliver software. In the past I’ve successfully used Capifony (Symfony-o-centric Capistrano 2.x gem) for deployments. Now as Symfony3 is out with an updated structure, Capifony does not handle it anymore (or a bit of coding sweat is required) – because it’s not maintained anymore. So I’ve decided to stick with it’s ancestor – Capistrano. So lets’ start.

P.S. This is based on Capistrano v3 now.

Continue reading

Tips to Ensure Your Values Unify Your Team, Not Divide It

It was quite a blow-up. Laura and Will each accused the other of violating one of the team’s core values – integrity. They each felt they had honored the value and the other person had disregarded it.  People sure get mad when they feel someone has trampled on their values!

Will had promised the client he would send the proposal by the end of the day.  It was 4:45 pm and he was waiting for Laura to finish the final edits on the graphics. Laura was conscientiously checking every detail for accuracy making sure that each segment of the pie chart was the exact same size.

At 4:55 pm, Will walked over to Laura’s desk and asked her when she’d be ready. She said she needed 15 more minutes.  Will told her to forget it – that he was going to use the earlier version. He walked back to his desk and sent the proposal at 5:00 pm sharp.

And that’s when the blow-up occurred.

Continue reading

The error


CoreUtils needed:


Google home device

Looks like Google just promised what we all want – personal assistant that can control it all: your home, your calendar, events, and so much more.

Allo and Duo

Even more, conversations just got much more human alike, including personification

It will be open for developers soon.

Seems like a simple problem, there must be a simple solution? Here are the existing options:

  • syslog-ng or rsyslogd logging to a central location.
    • Pros: centralized logs, easy to analyse, near to real time
    • Cons: Requires extra dedicated server (costs). Have to extend storage or upload to S3 periodically. PITA setup from a security POV unless you know the IP addresses in advance (you can set up your own CA and generate a number of SSL keys and distribute these to the servers on startup and use TLS encrypted communications, but I really CBA with all that hassle – not to mention that last time I checked Amazon Linux didn’t support these serversOOTB so I’d have to install them from a CentOS RPM or similar)
  • Message queuing
    • (I don’t think this is a perfect match)
  • Hadoop cluster
    • Pros: awesome data crunching ability
    • Cons: we don’t have 10million users yet, I think this is a bit heavy handed (not to mention expensive)

Continue reading