IOTA is a decentralized cryptocurrency which uses Tangle, a DAG (Directed Acyclic Graph) structure rather than blockchain. To prototype possibilities of transfering MQTT message over Tangle, I set an IOTA full node (use it) or (see status) and I'm trying to write a MQTT broker using MQTT.js and iota.lib.js
In a chaotic system, attractors are collections of values with which the system tends to evolve, i.e., reach a dynamic stable state. There are many kinds of attaractors (some art works).With the help from iefeer, this work was created using (three.js) and (OCTAHEDRONE)
Implemented an online service where users could prevent potential social engineering attack by checking if their account information was leaked due to known hacking activities. Database was restructured from MySQL to MongoDB to support over 1 billion entries.
It is quite easy to monitor environmental parameters such as temperature, humidity, wind speed or PM2.5 using Arduino and corresponding sensors. However, because people's subjective feeling is hard to conduct quantitative analysis, I implemented a Python script as an AWS Lambda function to calculate PMV (predicted mean vote) and PPD(predicted percentage of dissatisfied) given the parameter from sensors. Paper can be found (here)
My Medium Post What is the fastest way to say "I miss you" to loved one? Except saying that face to face, one click should be enough. When the Amazon IoT button is clicked, it will send an event to AWS Lambda, then the Lambda function will trigger other events (call WeChat API or emit event to an IFTTT topic) accordingly. I programmed it so that a single click can send "I miss you" to my WeChat App, and double click can add a warm reminder to my iOS Calendar :)
Fully asynchronous and event-driven farm monitor. It can automatically discover all the mining devices under the local network, and scan them for real-time details. Collected data is published to AWS IoT, where a Lambda function will be triggered to determine whether any device is in unexcepted state (e.g. overheating, power outage, low hashrate etc.). Then, a notification will be sent to administrators via email, SMS, or Telegram message. It also powers a dashboard showing all farm related information. Currently, a single click on an IoT-enabled button can initiate a full cycle of device inspection
Measure everything that moves!I believe IoT is a "wild card" that could match any promising technologies. IoT is not only about controlling smart light bulbs, with the incresing number of connected devices, we can collect enormous number of data to feed Big Data, to train AI, even to decentralize computing power to edges.
Maybe you have noticed (or not, or in superposition of yes and not) on the front page I put a Ψ (Psi) icon, it becomes blurred if you observe it. Ψ represents the wave function in quantum physics, by which you can calculate the probability of find a particle at a postion, at that time. I love the weird behaviour of particles and the counterintuitive effects it leads to.
From 2014, I started collecting leaked databases. For research purpose I set up a MongoDB powered database to run queries and predict user habits in terms of password. However, with the increasing size of database (now it contains more than 1 billion entries), I have to stop it and seeking migrate it to Google Cloud Bigtable.
With serverless stack, individual developer (like me) could not only complete project or proof of concept independently, but also finish it in a timely manner. When I was working at Envilink, a IoT start-up in China, I managed to complete the entire scalable backend on AWS, from database to real-time stream data processing.
I have been watching cryptocurrencies for many years. Today, the technology behind it is reforming industries. My interest of being involved in this unstoppable trend has never been so strong, so I have spend some time doing proof of concept development on blockchain. Besides, I'm runnning a mining farm in Sichuan, China, powered by excess hydroelectricity.
Well, you can tell something by my size...
while (life) {code++;}