Archive Tags About Subscribe

PreciousChicken: Blog

freelance software

  • Jul 13
    Forget-me-block: Message Time Store

    Research Aim As part of ongoing research into using the Ethereum blockchain for the purpose of data preservation strategies, the aim is to create the following deliverables: A smart contract that provides notification of previously recorded information, at a predetermined future date, or prompted by a retrieval request. A DApp (Decentralised Application) based around the smart contract above where the user is notified via an interface such as a web browser.

  • Jul 9
    Short, sharp Solidity: pure vs view vs call

    Introduction A quick worked example demonstrating the differences between the read-only Solidity elements pure, view and .call() in the Truffle console. At time of writing I’m using: Truffle v5.1.30 (core: 5.1.30), Solidity v0.5.16 (solc-js), Node v14.4.0, Web3.js v1.2.1, and Ubuntu 20.04 LTS (Regolith flavour). The smart contract If you want to follow along then after running truffle init in a working folder, copy the following code into contracts/CallDemo.sol: // SPDX-License-Identifier: Unlicencse pragma solidity ^0.

  • Jul 1
    PreciousChickenToken: A guided example of OpenZeppelin's ERC20 using Ethers, Truffle and React

    Introduction This guide is a step-by-step demonstration of ERC20 Tokens in React using a local Truffle Ethereum blockchain. It is not, nor is intended to be, a best practice study on how to write ERC20s. It is intended to produce familiarisation and working code, which can be the basis for further education. ERWhat? ERC20 is a standard for tokens that applies on the Ethereum network (ERC standing for Ethereum Request for Comments) which ensures interoperability of these assets across the network.

  • Jun 18
    Decomposing a BigNumber in Truffle Console

    The BigNumber problem The Truffle Console when queried tends to return BigNumbers, which look a bit like this: BN { negative: 0, words: [ 10000, <1 empty item> ], length: 1, red: null } Converting this into individual values, i.e. integers, on the console is not obvious; so an aide memoire follows. I’m using Truffle v5.1.30, node v14.4.0 and npm package @openzeppelin/contracts@3.0.2; my OS of choice is Ubuntu 20.04 LTS.

  • May 23
    Neovim, LaTeX and Zathura in perfect harmony

    Introduction Zathura is my pdf viewer of choice: it is minimalist and has vim key bindings by default. I use it a lot when I’m writing TeX files in Neovim, partly as you can open it without leaving Neovim. And when you recompile the TeX file (I tend to use a makefile for this which I run from within vim) then it updates on the fly. As I’m using the i3 window tiling manager as part of Regolith OS this results in my screen reconfiguring itself just how I want it:

  • Apr 18
    System Rules on the Command Line

    Introduction This is a more of a follow up to my previous post Barebones Guide to JUnit on the Command Line rather than an entirely new topic. System Rules is a “a collection of JUnit rules for testing code that uses java.lang.System” - in other words a way to use JUnit to test for cases where you want to use a System.out.print or similar. The majority of the documentation is how to integrate it with an IDE, this is a quick reference on how to use it at the Linux command line.

  • Mar 3
    A taste of MQTT in React

    Update Apr 20: This tutorial previously used the MQTT online broker HiveMQ, which worked fine when you were using a local development server. However once uploaded to a web site provider using HTTPS (pretty much everyone now), then it generated a mixed content error message. This message was generated due to an insecure WebSocket (WS) protocol running underneath the secure HTTPS protocol, hence causing the browser to flag this. The solution to this is to use the WebSocket Secure (WSS) protocol, which for some reason I could not get to work with HiveMQ.

  • Feb 15
    Barebones Guide to JUnit on the Command Line

    Introduction JUnit is a testing framework for Java. It is primarily aimed for IDEs, but with some perseverance it can be used on the command line. ConsoleLauncher You will need ConsoleLauncher, a java executable, to run JUnit from the command line. At time of writing the latest version is junit-platform-console-standalone-1.6.0.jar and can be downloaded from the Maven Repository. Download this file to your working directory. Create a sample java file Using your text editor of choice create a file called SampleUnit.

  • Dec 31
    Where Do I Put AppImages?

    TL;DR I put my AppImages in /opt. The Official Recommendation The AppImage FAQ recommends the following for storing AppImages: If you don’t want to leave them in $HOME/Downloads, then $HOME/Applications is a good choice. Why not leave them in $HOME/Downloads? What’s wrong with this? Can’t I just leave them in $HOME/Downloads? No. If you are anything like me Downloads is full of random accumulated dross, kind of like digital lint.

← Newer Posts Older Posts →

© Copyright 2021 PreciousChicken

Powered by Hugo Theme By nodejh