Captain’s Log 015 – The Alteran Patrol

In the 24th century…

Secondary Warp Field: Culture

 

In this blog post I submit an an entry for XRP Short Story Contest.  When I first learned about the opportunity, I decided I wanted to participate to expand my writing skills.  I do hope you enjoy!

 

In the 24th century…

The view screen read Warp 5.975. Cruising speed for the light ship. The captain entered the bridge and sat down in the chair of her small, Sabre-Class, starship.  Another day in paradise, she thought. Ratana and her crew were patrolling the border of the Romulan neutral zone. This had been the second year of her tenure and one of seval uneventful days in space near the Alteran Expanse.  Most other captains were out exploring the edges of the galaxy, but this ship was one of many keeping up with patrols. The job had to be done by somebody. After all, the Romulans were still the Romulans after years of conflict, even in a time of peace.  

 

Ratana’s crew was a quiet bunch. Nobody really gets excited about checking sensor logs on the hour every hour for the same place everyone had been. Three months ago.  For the hundredth time. As a captain, she kept her distance from subordinates and the only person she confided in was her first officer, Jindu. That day, a communique was blinking on the comm station and Jindu alerted the captain. She nodded but gave the impression that the message was low priority.  At the moment, she needed to be certain the ship navigated through this particular segment of space. From the captain’s chair without much reason, “Helm. Increase speed to warp seven.” In the background there was an “Aye Captain,” and obediently the helmsman diverted more power to the warp engines. Slowly the ship edged up on warp seven. Then she turned to her first officer; “In my ready room.”

 

Her ready room was a collection of models. If you looked at the bridge, the space felt cold but in here there was a number of her works that she had made.  A Sabre-Class starship was not going to be the last stop of her captaincy. There were several more advanced federation starship models that she aspired to. She turned to her first officer; “Jindu, Starfleet wants us to travel to Lukarris to begin repairs on the station here sooner rather than later.” Surprised, Jindu assumed she already knew what the message was about.  That woman knows everything he thought, so he responded “What needs to be done?” With a grin, she appreciated that he didn’t question her about the little things, “There’s an old payments node in orbit of Lukarris. One of a string of nodes validating payments along the entire border”. Confused, Jindu said “Captain, payments? Everybody knows that money doesn’t exist in the 24th century.”  She said nothing. Just raised an eyebrow.

 

Of course money did not exist this day and time, but people in the Alpha quadrant still needed to transfer an object of value from one another.  Jindu had a family house for ten generations that could no longer be cared for so it was still sold in a manner. There was a time when people needed to sell their homes for money because financial systems and governments gave a medium of value to paper and precious metals. Now anything that was yours was an asset that could be quantized on a ledger.  In Jindu’s experience trading his family home was as quick as pushing a button to grant it to the home’s new caretakers and they set him up with their ship. He never gave much thought about how that worked. He just knew it was fast and that there had been other attempts to make a value transfer system in the 21st century but they had all failed due to technology flaws.  Just like Starfleet he thought, only the best gets put to use. Jindu swapped his family house out for a generational family ship and for his first foray into the stars. A ship that his brother was watching out for now while he was in Starfleet. A question still posed to him, why would there be a payment system out here around the neutral zone? Who the heck are we dealing with out here? The intercom buzzed, “Helm this is the Captain. set course for Lukarris and maintain speed”, Ratana said. “Captain. I’ll have an engineering team ready when we arrive,” noted Jindu.

 

Upon reaching Luckarris the ship’s crew quickly found the node satellite.  Jindu and the ship’s chief engineer, Dalby, formed an away team to go out in Extravehicular Activity (EVA) suits to take a look at the thing.  From the transporter room he tapped his communicator badge, “Jindu to bridge. Away team ready for transport.” The away team of two beamed away.  In space, cold they materialized in front of the satellite. Dalby took apart the side panel and placed it on tether so it would float away. Inside was an access panel. He touched it and the Library Computer Access and Retrieval System (LCARS) came to life.  In the bottom right hand corner a button with an X-shaped symbol was present.

 

Jindu asked, “Dalby what is all of this? I thought these payment systems only existed on Earth”.  Dalby, being unafraid to speak short with his superiors fired off “Haven’t you ever wondered how we bribe the Romulans to stay on their side of the fence? I am kidding. The old validator nodes that process all the transfers were upgraded to operate here and send transactions out over subspace frequencies. Now all the planets in the federation get to enjoy faster than light transfer of their stuff.  The Ferengi love it. They use it to handle all of their Gold Pressed Latinum.” That still didn’t explain why there are nodes near the Neutral Zone. Dalby pressed the X-symbol and the screen changed to a command line with a print out; RIPPLED/CODIUS SUBSPACE NODE Version 16.1.20.

 

“Wow” he exclaimed! “What a wonder to see old tech still going. Did you know these things run everything from handling the Ferengi’s latinum to running holodeck programs?”  Jindu plainly said “No. Really, Holodeck programs?” Dalby spent a minute explaining how the holodeck software runs as contracts on the platforms and is spread out across the quadrant. “Not only does the holodeck program proliferate but it’s preserved in case one of these thing goes down, like the one we’re at now,” he said.

 

The fix ended up being rather easy, the system had went down but it just needed to be reinitialized.  All validator nodes forced on-site only access because it would prevent one person from taking them all down simultaneously from an asteroid base in the middle of the depths of space.  After handling the fix, Jindu called back to the ship and had both of them beamed back aboard. “Captain, we’re all buttoned up now and the satellite is back online.” Satisfied, Ratana ordered the ship back to warp to resume their patrol.  

 

An hour later a report had come in. The Captain read it and was confused. The satellite was just repaired. How could it be broken already? Dalby was a capable engineer and anything he touches benefits from his skill.  Okay, looks like we’re going back. She explained what had happened to Jindu and order the helm back to their previous location. “Captain, we’re approaching Lukarris.” She was irritated because they were due back on patrol soon. Nevertheless, she got up and headed to the bridge; “Ratana to Jindu, meet me on the bridge.”  When the turbolift door opened, she headed for her chair. From across the room the tactical officer chimed in, “Captain, I have readings indicating there is another vessel in the area.”

 

The captain ordered the unidentified ship on the view screen, but before it appeared the ship had gone to warp.  “Jindu get back out there and see what they did to that thing. We already fixed this things once and I want this ship back on patrol.”  He gave an “Aye Captain” and he was on his way. Upon reaching the satellite, again everything looked normal, except there was a new file added to the operating system.  Blink and you would have missed but the file was there. The satellites were secured so the notion that anyone could have accessed it was cause for concern. Better report this.  “Captain, our guest appears to have made some changes to this node and it appears to be running like normal. Are you sure it’s down?”

 

Readings indicated the node was operational from the bridge.  That’s not good. Jindu’s turbo lift opened and he entered the bridge.  “Captain, if we’re back then our repair job is bust? You know, these nodes are pretty darn important after all. I was reading up about them.  These things handle thousands of the quadrants’ asset swaps every second and we never even think about it.” Jindu was fairly enthusiastic about his explanation.  He just found out his favorite holodeck program, a stand up comedy theatre named the Gaslight was a distributed codius application running over subspace. Whenever you tipped an artist the application handled it and noted it on the galactic ledger.  Who knew?

 

After an hour of tinkering with the node and no progress, a message appeared. “Kator Uve controls the quadrant’s liquidity and so do all the nodes.”  Jindu was slightly confused. Who was this person? “Kator” sounded awfully Romulan. Then he saw the flash. The unmistakable flash that belonged to a ship dropping out of warp speed.  “Uh, Captain…” Jindu started. “We know, a Warbird just entered the area. We’re beaming you back,” she said. On the bridge, a Romulan man hailed. “On screen,” said Captain Ratana. A witty Romulan appeared. He looked like a relic but oddly young.

 

Since Ratana was the sort of person to just speak the obvious she said, “You know, you’re the wrong side of that little invisible fence and you’re tampering with our equipment.” Starfleet captains are supposed to be diplomatic by training but Ratana captained a Sabre-class starship. The ship itself was small, and poor diplomacy could mean Ratana’s ship was met with one too many disruptor blasts short of a bad day as far as your shields were concerned.  These ships were easy to make and numerous which is why they were patrol vessels. The Romulan replied, “I am Kator Uve of the Romulan Star Empire. I know where I am. I have installed a contract that has now spread to every node in your network across subspace. In a few minutes I will have the ability to shut them all down. Everyone in your federation will no longer have the ability to transact. They’ll even lose their precious holodeck programs. Not unless you let the Romulan Empire join the network.”

 

A Romulan node on the network? That would be an interesting day. She decided to play coy, “Kator, these satellites have been operating under your nose for hundreds of years. Are you telling me that you’re only now learning of their existence? This one only serves the region of space we are in for travelers.” Kator was not going to have it, “I know what these are.  You have connected the entire quadrant and granted them the ability to send their most precious assets between themselves but no longer will Romulans be excluded. If we cannot be a part of the system then nobody will.” He must be bluffing, Ratana thought. Why destroy something that he claims that he wants to be a part of? Then again, Romulans do often fake their intent. At least that was her memory about a time in the past when her ship ran into the Romulans. Their encounter had been somewhat of a farce. The Romulan captain had projected a false image of a warbird on the Federation side of the neutral zone. They had been toying with her.  Romulans do not reveal their intentions up front. “What is he up to?” she thought.

 

The notion of allowing Romulan join the quadrant’s validator network seemed like a bad idea.  Long ago the validator network had been married with Coidus to incentivize mass adpoption for deploying a validator and a contract platform, by two old earth companies named Ripple and Coil.  Even if Starfleet was on diplomatic terms and she was allowed to grant access, the Romulans could deploy a contract that could take down the entire system, like a virus. This Romulan had already threatened to do so! However, all starship captains, especially those in the federation embody the notion that all beings, Romulan or not, were worthy of respect and friendship if the demonstrate honesty.  There had just been hundreds of years of distrust telling her that on the best terms, the Romulan government would use the network for no good.

 

Without regard for present company, “Jindu, notify Starfleet command and ask for their input.” Ratana said right in front of Kator on the view screen.  Now he knows we’re taking him seriously. “Kator, even if we were to let you in on this system, how would the Romulans plan to use it?” He had the opening he wanted, “To enjoy the benefit of instantaneous trade with all federation planets and civilizations, of course”, Kator replied.  Called that one. Exactly what he knows I want to hear. His ship even outclasses this one, so if he really meant to do harm that warbird could do some serious damage. But, she quickly ruled that outcome out because Kator was engaging in diplomacy by even making his threat. She decided to get more information, “Kator, how would you propose you add Romulus to the network?”

 

This was going where Kator wanted, she was playing along. “Captain, our spies obtained the network topology software for your precious value transfer system long ago. We have been using it amongst ourselves, but we have not been able to connect it beyond the neutral zone.  Until now. The contract that I have deployed will spread to all nodes, on both sides of the neutral zone and it will either connect or destroy all of them.” She saw a way out of this situation. He hadn’t said how long it would be until the contract spread but given everything she had learned about Rumlans in the academy she assumed it wouldn’t be long. Actually, it might have already.  If there was any hope of preventing the entire system from coming down she’d have to destroy this node. That would be suicide. As soon as her ship powered weapons that warbird would bear down with every disrupter bank it had, and her light cruiser would only last the barrage for a short time.

 

The situation did not look to good. Starfleet had not responded yet and Ratana was facing a decision that the only the President of the Federation was qualified for, and only herself, the crew and her ship were all that could stand up to this warbird.  Given the impossible odds, she took a gamble. Turning to her communications officer, she said “Kator we’ll consider your proposal”. She made the gesture with her hands indicating to cease transmission. “Yellow Alert”, let’s see what he does. By posturing herself in a defensive stance she was sending the message that they were ready for a fight despite their size.  The warbird matched suit and began moving towards a position between the satellite node and Ratana’s ship. I guess they’ll be using themselves as a shield, Ratana thought.

 

Aboard the warbird Kator knew that even this small ship could destroy any chance at setting Romulus free of isolation.  Of course he could eliminate the small ship now but then Starfleet would never cooperate. Open war may break out between the Federation and the Romulan Star Empire.  “How much longer until the contract software is deployed?” Kator started. A bridge officer replied quickly that only a few minutes need pass before he no longer needed to consider this small ship a threat anymore. All he had to do was wait. Except he was not given that luxury. “Captain, there are vessels approaching”, said his tactical officer.  Kator smiled. They didn’t know the number of romulan vessels cloaked in the area”.

 

The bridge air was rife with tension.  Provoked, the warbird wasn’t baking down.  Ratana was going to make a move to destroy the node.  This meant that in all likelihood everyone would die, but there was no other option.  “We have to destroy the node without powering weapons. That would give away our intention. Options?” she asked. Jindu suggested, “We could beam a quantum torpedo beside the node but we’d have to lower our shields. The node would be destroyed but so would we. With no shields we’re sitting ducks.”  The path was clear, so she said “Crew to your escape pods. Get on it.” From across the bridge, “Captain we might not have to. There are several ships approaching. Starfleet signatures.”

 

I guess Starfleet decided to send the cavalry instead of sending a message back. That might have been intercepted. After all, the Romulans had access to the validator node network, but just this one node they had infiltrated so far.  She had an idea. The Romulans only had access to this one node but no others, and they couldn’t send messages through them on subspace yet, but Starfleet did not know that! She would send a text message of her intentions through the validator and broadcast it to the next nearest satellite on subspace. “Comms, send exactly what I say to starfleet: No choice. Must destroy satellite nearby or Romulan Control over all. Hold them off. Making move to destroy”, she said.  The officer nodded and confirmed the message had been sent and received.

 

After a moment, the other starships had arrived. From behind Ratana’s cruiser six more ships descended upon the area in succession, one after another, out of warpspeed ammassing directly beside her ship in a battle line.  One Galaxy-class battleship, two Akira class and the rest were more Sabre-class ships. Starfleet must have asked the other patrol ships to get there too! Now, fully provoked, the entire Romulan fleet decloaked. Even with reinforcements, Ranta and the rest of Starfleet was outnumbered two to one.   “Captain we’re being hailed by our flagship”, the communications officer reported. A bald man appeared on the view screen and order Ratana to stand down. “Yes sir.” she acknowledged. “May I ask what’s next?”

 

He tightened down his shirt as he stood up and said, “Captain Ratana.  We received your message. You have stumbled across a valuable diplomatic opportunity for the federation. I speak for Starfleet headquarters to deliver this message to you. I want you to negotiate the integration of the Romulan Validator Network into ours. This is your show, and we’re only here to ensure your negotiations go smoothly.  There are a number of cloaked Klingon vessels in the area as well that would be willing to have a good time with us, but I’m sure you are more than capable of producing a peaceful resolution,” he said sternly. He knew what she was made of.

 

Even with Starfleet’s approval to allow the integration she still had to ask, “Captain, how do we know they will honor their end of the bargain. Can they not bring down the network anyway?”  Another man walked into the view screen, “Ratana, Admiral Schwartz here assures me that the network can rebuild itself in such an event. Make it so!” Goodness! They brought an Admiral? She thought as she raised her eyebrow.  “Aye Captain,” she said. Turning back to the communications officer she nodded and a minute later she was staring back at a shrewd Romulan, “Kator, the federation will allow the Empire to join the network willingly. I hope this event will foster further cooperation between our two governments.”  

 

She looked sincere, although Kator was not so sure as he stared back at Ratana. He still had the upper hand and could protect the satellite if he wanted to.  After all if he took out that Galaxy class starship then the line would break rather quickly. “An unexpected outcome, Captain. I knew that you were going to destroy the satellite. Tell me would you have if the other ships had not arrived?” he asked.  Looking back at him with a smirk, “I guess you’ll never know, but one day you might have to ask yourself the same thing while I’m standing on the bridge of another larger starship.” Kator appreciated her candor and strength. The time had now passed, “Captain Kator, the contract pod is uploaded and is now spreading across the quadrant,” the warbird science officer said.  “Do you hear that captain, we are now in this together. Goodbye”. The view screen went back to the endless depth of stars that was space.

 

Now that the Romulans were admitted into the payment network things would change.  The system would grow and evolve further because new minds would be uploading additional contracts. Many of which would never have been added if it wasn’t for this new understanding. There would always be puzzling questions.  Would the liquid layer of the system still remain XRP? “Maybe it would finally get a name,” Ratana thought. That would be a strange notion since it had been without one for many hundreds of years. The digital asset was never going to go anywhere because it rooted itself in federaction culture many years ago. Starships began turning and warping out of the area leaving only her ship.  

 

In the distance a blinking blue light shown. It was the satellite. The node was running hard connecting the quadrant and now across borders previously uncrossed.  A Romulan diplomat on Earth could now send any asset he wanted to his family. A seemingly uncrossable border. Until now. Ratana turned to her first officer out of earshot of her crew, “Jindu, I would have done it, you know”.  Chuckling, he looked back and her and replied “I know, but I’m certain Kator didn’t think you would. I would have gone with you to the end, you know”. “I never doubted it, but we ought to get back on patrol.” Both of them took their seats.  In the captain’s chair Ratana looked through the view screen, “Helm. Come about heading one two one mark six” The Alteran Expanse came into the view screen. The expanse was beautiful. Interlaced in it was many stars, some brighter than others.  “Which planet should we start with, Captain?”, Jindu requested. Ratana smiled and simply said, “ Helm, second star to the right. Warp six!”

 

Captain’s Log 014 – Let’s Git Real!

download.pngI cannot tell you how many times that I have build rippled from scratch making the howto in my last post; Rippled Developer Setup Guide. Also while testing the XRPine I kept thinking about how nice it would be to have the software install automated without using yum. In true CoinTrek tradition, I set out to learn how to make an installer script, and I am using it as a reason to make my first GitHub repository to share with others. Fair warning, it’s a work in progress, but I’m committed to progress! 😉

I decided that I make the tools that I want to use and share those back to the community, and I will be doing it here:

https://github.com/cointrek

cointrek-github.PNG

I want to take some time to emphasize something I feel very strongly about; Learning! We live in a time where everything is at our finger tips. Google, while convenient and vast, has turned our minds into query generators and many have forgone critical thinking. I admit that I am among those that use the Google Machine on a daily basis, but when it comes to solving problems I limit my use of searching for an answer.  True, what you’re trying to do may have been done by others already. Also true that you may not even have to go through the same process. I love automation! There are so many ways to skin a cat, especially with software.  My point is. If you’re a CoinTrekkie, the journey is what matters.  The Learning Journey! That’s part of why I named my blog what it is. I wanted to learn crypto in and out and it’s a trip to be sure!

Here what I’ve learned how to do this week…

Codius

I am aligning my interests with XRP, so I used my skills to create a Research how to and deploy Codius server! I do want to express thanks for tips I received. I put 20 XRP from previous tips given to me toward a new wallet I could use for the server.  I felt a separate wallet would give me peace.

https://codius.cointrek.voyage/version

In my last post I used a Virtual Private Server on purpose.  I could have used it to stand up a validator, but I decided I’d rather set up a Codius Server.  I wanted to be on the bleeding edge of what XRP is capable.  Also, my validator interests are in making my little XRPine the best it can be.

I followed Stefan Thomas’s How To Guide to the letter. And I failed. My codius server didn’t work at all! The guide was pretty exact but there are a couple pitfalls you might find yourself in, so I want to point them out here.

Domain Verification

The guide makes use of a certbot that communicates with an external verification authority.  Domain verification is a process by which a domain owner proves that the host they are using is in their control.

certbot.PNG

These instructions work just fine but with one exception, which is Patience! The internet takes time to filter changes throughout itself. So, when you add a TXT record to your DNS settings for your domain. Wait a minute before you hit ENTER! I’m serious. If you do this too many times you’ll get locked out and have to wait an hour. Actually five failed attempts equate to being locked out. More and you could get shutdown for a week.

I thought of this afterward, one might change their subdomain from xyz.host.com to abc.host.com and get around the lock out, but I didn’t bother.

Host Info

After verification I followed the remaining steps and was able to view the sucess indicator. Here’s what it should appear to be:

success.PNG

Immediately I took my browser to https://codiushosts.com/hosts and searched for my hostname. It wasn’t there. More over I couldn’t figure out why.  Using their Gitter Chat Room, I was able to work out with another community member how to tell what was the issue.

Little did I know that the host info can be seen with the browser.

https://codius.cointrek.voyage/info

In the print out I had:

  • “uri”:”https://local.codius.com:3000″ instead of
  • “uri”:”https://codius.cointrek.voyage”

This ladies and gentleman is why you should be wary of copy and paste! A simple fix, but I made it and my server appeared on the hosts website.

 Along the way I found many resources that are useful on XRPChat.

  • Spreadsheet to compute earnings/profits for running a coidus server; here.
  • A YouTube video I am going to be using to make a smart contract of my own in the future; here!

Moving Forward I am calling every member of the community to contribute in some way.  Lightning struck me and I realized I should be doing it with hardware and software because that’s what I’m good at. I would like to find out if there is support with in the community to incentive this.  I’d like to create a website to serve as a common location for members to point out their work.  A sort of XRP GitHub but broader because not all of us are software junkies.  I’m not a seasoned webdev, so if anybody wants to help or if there’s interest, please write me!

Captain’s Log 013 – Rippled Developer Setup Guide

In creating the XRPine I was, and still am, forced to tinker with the rippled configuration file. Coupled with the Pine board’s sporty albeit slow performance when compared to a full server, I needed something that was more responsive to play around with. In doing so I could more easily learn how use the configuration file to its fullest extent possible.

My first instinct was to search for a Linux how to guide online. Apart from Ripple’s own guide on their development website, there hasn’t been one made if you want to do it manually. Wieste made a wonderful guide to use with DigitalOcean, an online Virtual Private Server (VPS) hosting server, that walks one through setting up a validator by using Docker. Other members of the community have posted information about what makes a good validator, summarizing developer information. All of this is great, but I don’t like Docker. I have no reason to give you other than it’s not my cup of tea.

For lack of a manual guide and my inclination to do everything myself, a force of habit for someone with a learning hobby, I decided to create this guide for the community. A lot of what’s here went into setting up the XRPine, but I’ll leave the gross nuts and bolts details of that out and keep it specific to using a VPS. This just gave me the development environment.

The purpose of this blog post is to hit all the in between details for other fellow DIYers. I am not pushing my guide over anyone else’s. If you like using Docker and you just want to run a validator out of the box, then by all means. Use the guide that does just that. There are some benefits to my guide. My guide will show you how to do everything from scratch, so if you’re a developer then this is the perfect guide for setting up shop. The information is readily available on the developer site. I’m paraphrasing a good portion here in the context of setting up on a VPS, and I’ll also point out a couple hurdles you might encounter.

Step 1 – DigitalOcean – SetUp your VPS

An online subscription to a VPS with 8GB of RAM and 4vCPUs is what I need so I have acquired one of those. I’m taking advantage of the free $100 slash 60 day credit that DigitalOcean is offering to get my feet wet.

To start, go to DigitalOcean (or a VPS hosting service of your choosing) and create an account. My guide will be with respect to that hosting service .When logged in, there’s a green button that says “create” in the top right. Go there and select “Droplet”

If you’re wondering what options to pick, here’s a PDF link that’ll show you.

Here’s my configuration:

  1. OS: Ubuntu
  2. Size, Standard: 8 GB RAM, 4 vCPUs
  3. Backup: None
  4. Block Storage: None
  5. Region: Pick a region that you want. This is case by case.
  6. Additional Options: I didn’t pick any.
  7. SSH Keys: Leave Alone. Can do this later.
  8. Hostname: my-awesome-vps
  9. Tags: None

Step 2 – DigitalOcean – Get your IP Address

Each droplet is going to come with a public facing IP address that you’ll need to take note of. I personally prefer to log in via secure shell from my own machine. That way I don’t have to go online, log in to a website, and click 10 buttons before I can get to my VPS.

From the dashboard, click on your droplet to expand its information. Here’s an example of mine (redacted). In place of 127.0.0.1 (There’s not place like home!) you’ll have your IP address. Note it.

dashboard-dropplet.png

If you want to use the online shell to access the VPS, those three dots in the top right will give you a button to click; “Access Console”. A window will appear with a command prompt to play with. Probably a pop up blocker hazard!

Step 3 – First Log In

One may choose from any secure shell (SSH) client, such as Putty, however I found one I like called SmartTTY. Just has a few extra buttons and whistles I’ve found useful over time. You can download and install that from their website. Since there are a plethora of SSH clients to choose from, I leave it to the reader to pick on of their choosing and configure it.

To log in, check your email first. You’ll need to get your credentials. The root password is emailed to you. The password is long so happy typing!

Default User: root

Password: See email

Step 4 – Add a new user

This is just good practice. Make a new user and add it as a sudo user. On Ubuntu follow these steps:

  • adduser username
  • usermod -aG sudo username

After setting that new user with a new password, switch to it

  • su username

 Step 5 – Update Linux & Install

Now, moving toward getting ready to install rippled, one must prepared linux for it. This step might be rather lengthy since Linux can take a long time to update.

Update Linux with the following commands:

  • sudo apt-get update
  • sudo apt-get -y upgrade

(After your cup of coffee xD)

Install the prerequisite packages with the following commands:

  • sudo apt-get -y install package

Replace package with the following packages:

git cmake pkg-config protobuf-compiler libprotobuf-dev libssl-dev wget doxygen

You may install each separately or all at once on the same line. Just separate each package with a space on the command line.

Step 6 – Download, Build, and Configure Boost

Image result for boost c++

Boost is a community C++ library that is both an amazing treasure trove of useful software and also a huge pain in the neck because it is so big.

Here’s how:

  • First, navigate to your home directory; cd ~
  • Download it with wget:
    • wget https://dl.bintray.com/boostorg/release/1.64.0/source/boost_1_64_0.tar.gz
  • Use tar to unpack it:
    • tar xvzf boost_1_64_0.tar.gz
  • Move into the boost directory: cd boost_1_64_0/
  • Now, prepare the boost build with; ./bootstrap.sh
  • After the command completes, build boost!
    • ./b2 -j

I used 3 of the 4 cores to build boost on the VPS.

After Boost builds, you have to tell the OS where to find it, so you do that by setting an environment variable. Environment variables are like global labels that the OS or any program can see. You add Boost to an environment variable so the rippled software can see it when it builds later.

Here’s how I do it. On Ubuntu there is the “bashrc” file. That file executes each time the user logs in or opens a new terminal. Open that file with the editor of your choice. I use emacs because VI is not my cup of tea. If you do use emacs, you’ll have to install that too. Just follow the previous step for installing a package.

  • Open the bashrc file
    • emacs ~/.bashrc
  • Add this line to the emacs file:
    • export BOOST_ROOT=/home/USERNAME/boost_1_64_0
  • For the first time, source the file. Every time you log in in the future this doesn’t need to be done.
    • source ~/.bashrc
  • Save and exit the file:
    • Save: ctrl-x and then ctrl-s
    • Exit: ctrl-x and then ctrl-c

Step 6 – Download and Build rippled

This step will clone the rippled repository and build it.

  • Navigate to the home directory; cd ~
  • Clone the rippled repository:
  • Navigate into the rippled directory: cd rippled
  • Check out the master branch:
    • git checkout master
  • Use CMAKE to build the software:
    • Make a build directory: mkdir my_build
    • cd my_build
    • Run cmake to generate makefiles. cmake will tell you if anything is wrong at this point
      • cmake -Dtarget=gcc.debug.unity ..
    • Run the build command
      • cmake –build . — -j
        • Note two dashes 

Here’s where I ran into some issues. Ubuntu straight out of the release that DigitalOcean is using is version 3.5. Unfortunately, the build system will force you to use version 3.9 or higher for a clean configure.

Here’s how to handle that. We’ll need to obtain cmake, build it from source and install it.

  • Navigate to the home directory: cd ~
  • Use wget to obtain the latest release candidate (or stable release)
    • wget https://cmake.org/files/v3.12/cmake-3.12.0-rc2.tar.gz
  • Unpack cmake
    • tar xvf cmake-3.12.0-rc2.tar.gz
  • Go into the cmake directory: cd cmake-3.12.0-rc2
  • Run the bootstrap; ./bootstrap
  • make
  • sudo make install

After this point, go back and rerun the cmake commands for rippled. Be sure to make a new build folder!

  • cmake -Dtarget=gcc.debug.unity ..
  • cmake –build . — -j

NOTE: If you’re ultimate goal is to run rippled as a validator. You will want to change your build target to the release version. If you’ve made changes and want to test them out in release. This is how that works. The debug version will be slower!

  • cmake -Dtarget=gcc.release.unity ..

This time, the build should work. Here’s what a valid configuration will output

And a successful build. I love how cmake counts up to 100%!

Step 7 – Modifying Code and Version Control

Now you know the command to build. If you want to rebuild, just issue the same command and watch cmake count up again!

Using git can git a little tough at times, but fortunately you can get started with minimal effort. Go back up one folder from the “my_build” directory.

If you were here: /home/validator/rippled/my_build

Go up one directory with this command; cd ..

First things first. Set up your Github username and email;

  • git config –global user.name “John Doe”
  • git config –global user.email “[email protected]

If you have a preferred editor:

  • git config –global core.editor emacs

Now a nifty git command to get your current information:

  • git status

You’ll just have one red folder which is the build folder. That should always stay untracked. Actually I’m surprised it’s not in the “.gitignore” which is a file with file name patterns that tells git which files to ignore completely.

Best to be on the develop branch, so we’ll checkout that one:

  • git checkout develop

You can probably get away with just working on develop. You won’t be able to push to ripple’s rep but you can make commits locally and pull changes that are made remotely. To get your changes pushed then you’ll have to make a pull request.

  • git add *
  • git commit -m “Fancy commit message”

That wraps it up! I thought about going as far as making the guide detail how to set up with a Integrated Development Environment, such as Eclipse. I really don’t know what the community devs prefer to use. Some might prefer building on Windows in which case Visual Studio would be better. If I got some idea of what IDE developers were choosing, I’d make a guide for that.

This is half the battle. I hope Ripple updates their developer guide to account for the version issues with cmake. Getting around it isn’t hard, but it could potentially make somebody stumble. If you’re a developer, go ahead and checkout ripple’s issue list. Pick one and have at it. Who knows? Maybe some of your code might end up in the next rippled release! I hope so there are far fewer low level C/C++ devs out there than there are web developers.

Moving forward, I’ll post about the configuration steps involved with setting up rippled to run. That include the configuration file, setting up the linux service so it runs automatically and generating validator keys.

As always. Second star to the right; and Warp 6 this time!

Reference

  • https://developers.ripple.com/build-run-rippled-ubuntu.html
  • https://medium.com/@WietseWind/how-to-run-a-ripple-validator-digitalocean-7e5fca1c3d77
  • https://xrpcommunity.blog/rippled/
  • https://www.digitalocean.com/pricing/
  • http://smartty.sysprogs.com/
  • https://www.digitalocean.com/community/tutorials/how-to-create-a-sudo-user-on-ubuntu-quickstart
  • https://developers.ripple.com/build-run-rippled-ubuntu.html
  • https://github.com/ripple/rippled

 

Captain’s Log 012 – XRPine Performance

The stats on the XRPine are in!

Captain’s Log 012 – Supplemental

Starting off. Wow! I had no idea my home project would receive so much support and attention. Thank you to everyone for the kind words, sharing thoughts, and questions. I am truly humbled and I will do my best to answer them. This community is awesome!

 I have been asked by the community to share some resources usage statistics of the XRPine whilst running a validator. The machine has been running solid over two days without a reboot. I have been impressed to say the least that this little XRPine has some fight in it!

Here is how the validator has done since I started it up. If you go and look at other validators you’ll see each with 20+ thousand validations. I’d say around 9-10,000validations in one day isn’t half bad for the XRPine! The validations are however, mostly disagreements. These are validations that did not pass consensus. Also, you’ll notice Monday the 25th had notably less total validations than the day before. The reason there’s only 20 validations on the first day is because I got it working right before the new day rolled over.

To review, the Pine/Rock64 has:

  • An RK3328 Quad-core ARM Cortex A53 64-Bit processor; Datasheet.
  • 4GB of LPDDR3 1600MHz memory. (The LP just means low power)

What sort of statistics would be worth gathering for load analysis? The obvious are CPU usage and Memory usage so I’ll share that information.I shall note that I am operating the validator with [node_size] tiny in the configuration file. I left the XRPine running for a day solid in this configuration before pulling stats. There was one day, I thought I’d try and run the XRPine with [node_size] small in the configuration file, but it was too much for it so I went back to tiny. I had a feeling that would happen, but I wanted to try it out anyway.

The following are methods of collecting usage information and screenshots of what i have:

 Method 1

iostat – You can view the manual page for it here. Will give me average cpu utilization and other statistics. I did mine every 5 seconds randomly.

Command: iostat -m -p sdb 5

Output:

Averages:

  • User: 61.064 %
  • System: 10.648%
  • IOWait: 16.908%
  • Idle: 11.312%

Conclusions: The user percentage indicates that the rippled service, which is all I have running at the user leve, takes up the very bulk of the entire machine’s computing power. Also worth noting, the IOWait time is not so good, but I think it’s not so bad for what the machine is.

To explain, the machine is taking a lot of time to both call up information and write information to SD card that serves as the hard disk. I am going to have to play around with it and try to improve this number. I’d love to try and make this work with a solid state drive attached!

Method 2

htop – Nicer version of “top”. Shows me memory usage and overall CPU usage.

Command: htop

Overall memory usage is reported at 87.0%. I am intrigued because some people have reported that their Virtual Machines with 8GB have memory usage all the way at maximum. Overall CPU utilization at this snapshot was ~190% across 4 cores. However, I’ve seen it up to ~340%. The CPU utilization fluctuates back and forth. I’m closely monitoring the memory usage to determine if it increases to the maximum amount over time.

Conclusions. It works! And there is room for improvement. I am personally surprised the machine isn’t overtaxed and barely running, but these are the numbers I’m getting as of this moment. I recognize I have a lot of work left to do with this project. Some have asked that I share it. For now, since it’s in its infancy I want to continue working on it to improve its performance as best I can before turning it lose. I am happy to take suggestions for things to check from people to help improve it.  For the future, as I make adjustments and improve the performance I intend to write about my progress.

I will be submitting a poll to the community to see what the interest is in using the XRPine and determining how best to release it for others to use. Some of us are technical people and want to tinker like myself, while others may just want something to plug into a router and walk away from.

Second star to the right; Warp 8!

Captain’s Log 011 – Introducing the XRPine

Warp field of focus: Primary & Secondary – Achievement

So I did a thing…

As a part of playing to my strengths I decided to act on my curiosity. Validators. With XRP, all the coins are pre-mined and distributed at the time the public ledger goes live. The technology is still the same; blockchain. Instead of miners there are validators. A number of computers run the “rippled” software server. This software is publically available on GitHub. Anybody can download it and run the software. It’s like mining without getting paid, but you do it because it’s for a good cause.

There are very few people running a ripple validator in the world as opposed to those mining for a sliver of Bitcoin these days. Anybody can verify this looking at the validator list on Ripple’s website; here. Naturally, I wanted to be involved. I found @WiesteWind’s article for setting up a validator on a Virtual Private Server (VPS). He did a great job telling one how to set up a validator using a docker image but I didn’t want to pay for a VPS. That left me with my rig at home and, honestly, I mine with it so I didn’t want the thing to be overtaxed with tasks.

I was short on machines to operate one of these things. Combined with my aversion to spending loads of money or subscribing to services I thought about other options. Necessity is the mother of all innovation. I did, however, have a little nugget of hardware lying around known as a Raspberry Pi 3. The lights in my head were going off. Why don’t I make this little guy run a validator.

To the google machine! I went and looked on the interwebs to see if anybody had set this up for a Raspberry Pi already. I found a thread on XRP chat that indicated otherwise. There had been attempts by some community members to give this a whirl but there was no success. You can read this thread here. I looked around. Trying to find if others had found success but I came up empty. I was encouraged, however, because David Schwartz, @JoelKatz, himself wrote in on the chat forum that running a validator on a Raspberry Pi 3 should be possible.

So, I set out to make it happen. Immediately I hit some walls. There are instructions for building the rippled software online and I was following it. The Raspberry Pi 3 only has 1GB of RAM and there are only 32-Bit Operating Systems for it. Finding a 64-bit OS for a Pi is possible but at the moment, very difficult to deploy. I figured I’d try it out anyway wit ha 32-bit OS. After waiting half a day for boost to build on the platform I got excited, copied the rippled software to the machine and proceeded to build that. No sooner than executing the command. Halted! The rippled software only builds on a 64-bit machine. There went my plan.

Many days of research later, I came across a suitable single board computer that had larger amounts of RAM, was physically similar in size to a Raspberry Pi 3, and most importantly had a 64-bit operating system too! And the best part is the machine didn’t cost an arm and a leg, since it was close to the price of a Pi. I found the Pine 64 website that sold the Rock64 computer. The highlights are the machine had 4GB of RAM and has a 64-bit processor to run with a 64-bit OS that was easily available. Nice! So, I bought one and patiently waited.

Here are the specs:

If you want to check out the board, you can find it here.

Repeating my previous progress I built boost, download the rippled software, and this time I was able to build it. Turns out that was half the battle. From there, I had to turn the executable program into a linux service and create myself some keys. I might write another post in the future with all the nitty gritty details, but the point is I was able to complete them and configure the software to operate sucessfully.

All rippled servers acting as validators have a public key to identify it. You configure your validator by generating one with the key generator tool that ripple also makes available. However, that is still not the entire solution. If you set your validator loose at the point then it is considered unverified. The validator is still validating transactions on the public ledger but other verified validators might not use it for consensus. I went through a process to have it validated. Ripple requires that you prove the machine running the validator is in your control by requiring your public domain be signed against your public facing validator key. Mine is as of yet, unverified but is currently under consideration. I generated the appropriate key signatures and submitted an online form to Ripple.

Until then, my validator remains unverified but is still chugging away at transactions. Here’s my validator online:

I remember watching the film Armageddon. Yes, the one where an asteroid is about to impact earth and a team of deep water oil drillers led by Bruce Willis goes into space to blow it up. I love that movie just because it’s fun to watch. When the big asteroid is found, the discoverer gives it a name. So, I want to give my creation a name as well. I call this the XRPine! And, for the record, my wife is not a life sucking bitch named dotty. She is an amazing woman equal to any man that can write a line a code!

In lieu of the XRPine I am also revealing my new domain name. I had to get one to get my validator verified:

cointrek.voyage

The domain simply points to my blog. I thought voyage was a good ending to the dot because it fit so well. CoinTrek is inspired by Star Trek and we’re all on a voyage anyway so I took it!

That’s not all. I asked a good friend of mine help me make up a case for the XRPine with a 3d printer. I thought the new XRP logo was fitting and of course blue made the most sense. I am grateful to him for his help.

IMG-0154.jpeg

Check this case out my YouTube channel

This creation is still in its earliest stage, but my intent is to make these available to the community so those who want to run a validator with a minimal footprint may do so. Parts of this are specific to the person deploying the validator; the keys to the validator are secret and so is a domain name. Therefore I cannot make one fully configured since I would know the keys! That part of configuration must be done alone.

One can still run an unverified validator so a domain name is not totally necessary. I’m glad to be able to give something back to this wonderful group of people. If anybody has comments or suggestions please let me know. If there is interest within the community for others to run one of these little guys I’d be interested in setting them up for folks; time permitting of course.

I look forward to seeing how this thing works out. As I continue to tinker with it I’m sure I’ll be learning more and make further improvements. I encourage others to learn and find ways to advance the community at large. This technology would not live without a fervent following.

As always, second star to the right; Warp 8!

Reference:

  • https://medium.com/@WietseWind/how-to-run-a-ripple-validator-digitalocean-7e5fca1c3d77
  • https://www.pine64.org/

Captain’s Log 010 – xRapid Remittance

Warp Field of Focus: Primary

When I was a kid I paid my parents back with napkins with a IOU written on it. Usually for a dollar or some other large amount, at least a lot of money for an eight year old. Once I figured out that the paper in my birthday cards should be saved for spending on toys, I would keep a bit of that to bribe my sister with. Probably to keep quiet about something I did that I knew was wrong, like eating a snack before dinner.

I remember in my high school years writing checks. My parents insisted I do the books the old fashioned way. Once I had to send a money order for an e-bay purchase. My ebay deal turned out to be $5 more expensive because I had to pay somebody to take my money to the seller. What a crock! Why wasn’t my own check good enough? I want to explore my own experience and talk about what’s possible.

After graduating I had my first credit card in college only to find out it was useless for sending money anywhere; back to checks and cash. Actually, just checks because sending cold hard cash in the mail “isn’t safe”. I remember dreading and avoiding the act of sending money anywhere in any official capacity. The worst was purchasing a house. A certified check from a bank was required! From a bank! Can’t even go with a money order; at least my situation. Banks have become our go to now for sending money. Have you heard of “Bill Pay”? That’s how I have to send money to people if I want to avoid have to pay a cut to the Western Unions of the world. Also sending cash is slow like dial up slow. My own experience sending money has always been such a hassle. Until now.

The world is evolving to a point where we can transmit our money like an email. In fact that’s already here! No banks required. Cryptocurrencies are on the rise and all of them can do this, however, only one does it well. The digital asset XRP can act as a value transmission system to send money between two points almost instantaneously. No more checking your online banking system to see if that Pending Charge ever clears day after day. Heck! You don’t even have to wait around for Bitcoin or Ethereum to clear. In the crypto-verse it is a known fact that XRP is cleared on its ledger faster than any other cryptocurrency at 1,500 transactions per second. [1] The first time I bought bitcoin, I remember waiting for over an hour for it to clear. The first time I bought XRP the clear time was 3 seconds. Now that is warspeed for payments!

A lot of people have to send money places everyday. Many people send money back home to their folks, such as myself. I like to do that to help out and give back. The process just takes forever! I’ve wondered how many out there have actually tried to get their Mom to take remittance in XRP? Is it more expensive than Western Union? Cheaper? I want to know!

Let’s explore some real life numbers going through the process:

  1. Take your own money; any government currency
  2. Convert to tranmistable medium
  3. Send
  4. Receive
  5. Convert to another or same government currency.

Let’s go over a few assumptions.

  1. In both cases I want to send money for the cheapest method possible.
  2. You may wish to send to a different country or not so there are two scenarios; same country and different country.
  3. I’ll use sending $1000 as a round number. Speed and cost are the metrics to measure.
  4. For sending XRP, there’s the whole 20 XRP wallet minimum thing. I want to ignore that for the sake of argument since it’s a one time deal.

Scenario 1, Example #1: Western Union – Same country; $1000

I went to their Send Money Online app to check and found that to send $1000 to someone would cost $10. That’s if everyone went to a store; paid in person and picked up in person. A little bit of a hassle

Result: Fee $10 and Available “In minutes” according to their website.

Scenario 1, Example #2: XRP – Same country; $1000

I guess you’d have to purchase some XRP to do this. There are many ways to do this. I will suggest using Coinbase and Shapeshift, however, I do not claim it is the cheapest.

I recommend reading up on Ripples on how to here, or you can see my own on my YouTube channel. I explain how to do the Coinbase/Shapeshift method.

At time of writing $1000 gets me 1.88339079 ETH on Coinbase which equates to 1838.84929114 XRP from Shapeshift. In reality, when I send this somewhere, the money will have to be sold back for local currency, so I should account for that and double it for purchase. Meaning send more money so when bought and and sold again there’s padding.

New Numbers. $1031 gets 1.93730062 ETH on Coinbase which equates to 1892.42512133 XRP from Shapeshift. Buying in that is a $15.14 fee meaning I’m actually getting $1015.86 worth of XRP to send. Selling back out I would have to supply that fee a second time so whomever i am sending to gets $1000.

Send that ethereum to shapeshift, XRP comes out to my wallet. Shoot that over to my payee and they shapeshift it back to ethereum to their Coinbase account.

Something to note here. Using Coinbase is slow. Their site claims it can take 14 business days to process a withdrawal to a bank account. I have performed withdrawals before and had it happen in a few days. I don’t really consider this a problem if you’re not in a rush to have cash in hand. I mean, the money is in your Coinbase account in literal seconds.

Result: About $30 to send; Available as fast as you can click buttons and transaction time of ethereum chain. Still just minutes.

Scenario 2, Example #1: Western Union – Send to a different country; $1000

I picked the philippines randomly for this exercise. I did not have a country preference.

Guess what? The online calculator produces the same result. $10

Scenario 1, Example #2: XRP – Send to a different country; $1000

Also the same. When you withdraw USD to a bank account in Euros, the banks deal with conversion.

Results: Overall, you can get your payment to somebody just as fast. Using the Coinbase to Shapeshift method results in waiting around for Coinbase to handle your transactions. There has to be a better way? Thirty dollars vs ten dollars is almost no contest.

What could that better way be? One obvious way to cut some cost would be to use GDAX. Coinbase is nice but they charge you for that over the top user friendly interface (left). GDAX is a market traders interface (right). Soon GDAX will become Coinbase Pro in case when you’re reading this the name has already changed.

Here’s how much you might save with GDAX over Coinbase. Fees are 0.3% if you’re using it. On Coinbase if you’re buying from a bank account you’ll pay 1.5%. Talk about a markup! That’s both ways too.

Numbers: 0.3% of $1000 is $3. To go with this instead you would need $3 to buy $1000 worth of ethereum. Double that and that would give the person you’re sending to another $3 to have $1000 when they sold. Pad it by a dollar for some margin.

Results: Now we’re talking $7 to send $1000! Slightly cheaper than Western Union.

Can we do better? Let’s try a different exchange.

On Bitstamp a person can buy XRP directly for USD. Hey CoinTrek? Why didn’t you tell us this to begin with? I think Coinbase is a huge first entry point for a lot of crypto users, so I thougth why not give an easy to use solution first.

Let’s say a person is not in a rush and will do a bank transfer to fund an account. Bitstamp is slightly cheaper than GDAX. Trades are 0.25% as opposed to 0.3%. That means 0.25% of $1000 is $2.5 and you’d need double to trade back out to USD, so to send $1000 we’re talking $6 if you pad it.

Now you can get the total down to $6. That’s not bad! And, you can do it from your home office, however. There’s still the question of how to send the XRP from person to person. I have a couple suggestions; a wallet and one novel method.

XRP Wallets

Toast Wallet is a nice IOs capable wallet that works from the comfort of your phone. I like it because the wallet works pretty much everywhere, but for one reason especially. I’m a security nut and I like to keep my crypto in a cold wallet. A Ledger Nano S to be exact. A fellow by the name of @WietseWind on Twitter has created a utility to connect the Toast wallet up to your Ledger Nano S. You can get the app here on his GitHub Page. An XRP wallet has the unique capability to be shared through the use of a unique Family Seed. The app creates one from your Ledger information and you can use it to sync up the toast wallet with your hardware wallet. Now that is cool!

If you thought that was neat, well, there’s more. The novel way to send XRP is with Twitter! @WietseWind has also created the XRP Tip Bot; xrptipbot.com. All you need is a twitter account and you’re good to go. Tweet somebody with the following:

+X @xrptipbot, where X is the amount of XRP you want to send.

And, they’ll receive the XRP in their name. One only has to go to the website, log in and claim the XRP.

The XRP Community would not have that capability if it was not for Wietse. I never would have imagined sending money on twitter 10 years ago in college. Back then I was still writing checks! A slave to the banks! If this movement is going to take off then it is up to us in the community to live it and breath it. My ways to send XRP are certainly not the only out there. I would enjoy hearing about it and sharing it with everyone. I also challenge Western Union to match $6. I mean really?! Why not?

I am following the lead of the others and doing my best to contribute because I believe sending money should be as simple as sending a text (guess what Wieste did that one too.. I wonder what that man does all day?) I am writing about XRP and crypto, but I am also working on something tangible that I can produce for the community on my CoinTrek. Stay tuned and I’ll soon be able to share what that is with you!

Until then. Second star to the right! Warp 8.

Reference:

  • https://ripple.com/insights/10-things-need-know-xrp/

Catpain’s Log 009 – xCoding XRP

Ever read a Dan Brown book? I have. A lot of people will have heard of this Novel, “The Davinci Code” [1]. In short, it’s a mystery, suspense book where the main character Robert Langdon embarks on an adventure to search for a real life Holy Grail. The man is a symbologist and on his journey he deciphers countless meanings behind paintings and object to help solve the mystery of finding the grail. “A picture is worth a thousand words” as the saying goes, but Langdon would say “Which words?”

Symbols are at the heart of every civilization. Use them every day! From the app icons on our smartphones to the alphabet to the markings on our currency. Symbols are instantly recognizable and when looking at one you may identify with the meaning immediately.

Let’s take a look at a widely known symbol. It’s a very important one. And you don’t even have to be a math geek to know it! Pi!

Image result for pi

This singular symbol is a cornerstone of mathematics; geometry. Unlink a flag it is also a unit of measurement. Pi is used as an angle measurement expressed in the unit radians. But if you prefer degrees, one Pi is 180 degrees. Two Pi and you get a full circle.

Alright, so units and instant identification and meaning make up a good symbol. A currencies do this exactly. Here are two currency symbols. Can you tell what country they belong to?

Image result for indian rupee symbolImage result for british pound symbol

On the left is the Indian Rupee symbol, and the British Pound symbol on the right. Each, when seen, can easily strike in the mind of the view what country that money came from. I argue XRP needs the same. Bitcoin even does this! The capital ‘B’ with two lines down.

Image result for bitcoin symbol

When I think of XRP I think of this symbol. The symbol is that of a triskelion, and it has been around for years. To me, it reminds me of their three core software offerings; xRapid, xCurrent, xVia. All joined together.

Image result for ripple symbol

When thinking of XRP you may be tricked into thinking that the Ripple triskelion is good enough, but you’d be dead wrong. Ripple and XRP are totally different things. XRP is the digital asset that flows like drops of water on the Interledger that has a caretaker; Ripple.

The XRP community has called for a design. There have been numerous submissions. All you have to do is take a look at the @xrpsmbol twitter account to see the various tweets and ideas of others.

Here are a couple of the submissions from that twitter account:

CoinTrek even has one! Although mine is less of a creation and points out something that’s already out there. I even like the explanation behind it. I had this idea of complex numbers. There’s a real part and an imaginary one.

Image result for complex numbers

The ledger is very real and we use it to confirm transactions we make. Swapping IOU’s actually. But XRP is the enabler of said ledger and maybe it’s analogous to the imaginary part. I was searching about for existing symbols for imaginary parts of numbers. Of course there’s the italicised letter ‘i’ that we all know from high school algebra. But what about those fancy math papers? Then I remembered writing a document in LaTeX and thought of a font. Why don’t we just use this? It’s simple. The image below is the symbol ‘I’ from the Fraktur script [2][3]. There a loads of angles and is used by LaTex for, you guessed it, the imaginary number symbol. Nobody would see it coming either, and it already exists!

Call me silly but there’s kind of a backward ‘P’ and forward ‘R’ in there too. Not seeing an ‘X’ though. Just drop a line in there somewhere and call it a day!

File:Fraktur I symbol.png

Symbols are important. The community is adoping one. Years from now, the adoped symbol for XRP is going to be globally recognizable. The question I submit to you is, will you rember the days you owned XRP before then?

References:

  1. https://en.wikipedia.org/wiki/The_Da_Vinci_Code
  2. https://en.wikipedia.org/wiki/Fraktur
  3. https://commons.wikimedia.org/wiki/File:Fraktur_I_symbol.png

Captain’s Log 008 – Mindless vs Mindful Mining

Secondary Warp Field – Achievement

imageHas anyone bothered to take a look at the price of graphics cards lately? An Nvidia GTX 1070 is over $500! I have even seen them as high as $800 at the beginning of 2018. All the GPUs have been snapped up by, well, people like me! I have no shame. From my perspective. Earning passive income has been a small obsession of mine for a while. Some people manage this in the form of collecting royalties from a published book. I know there are folks that do this renting out their houses, but I decided to do it with cryptocurrency. There are many way to earn cryptocurrency, but in this case mining. In this post, I’ll take you on my journey building a mining rig, I’ll share with you some resources and I’ll tell you why I decided to build instead of renting hash power.

Like most people Googling “How to Mine Bitcoin”, I was nuts about the rage of making massive amounts of money! I stumbled across NiceHash [1] and quickly learned that the Nvidia GTX 1060 6GB graphics card in my day to day gaming rig would bring me in roughly $0.50-1.0 USD a day. Wow! That’s pretty awesome. All I had to do was let this thing run and in come the dollar signs. I saw this work over a month earning my first, call it, $50 worth of BTC. Logically I wanted to find a way to do this faster with more hash power and earn more. Here’s a nice graphic of the NiceHash concept. You’re not actually mining. You’re selling hashpower to renters whom in turn mine with your rig and pay for it in Bitcoin.

Image result for nicehash

Even before GPU prices hit all time highs, a GTX 1070 was still pretty expensive; around $3-400. Enter the NiceHash marketplace to order hash power. I had worked it out! Yes! I thought I could actually put in, say $50 in BTC to NiceHash, make an order for hashpower to go mine Ethereum. Then make enough from that to sell the ETH for BTC and end up with more than what I had put in. Mindlessly hoping I’d mine for less and make more. Translated I thought the cycle would repeat endlessly. Great idea if the markets are heading in your direction. Great idea if the difficulty of whatever you’re mining holds steady forever… Great idea if… So, you get the point. I actually tried this and failed. Not to say this is impossible. Mining or buying crypto in the hopes that it will one day increase in price is the mantra of a HODLER.

Here’s why I failed and you might too. The reason is fees and a poor understanding of how I’d actually make money. I spent a lot of time thinking about why I failed to make more money back than I put in, so like a good engineer I made a spreadsheet and went to the math. NiceHash charges a fee to place an order and you pay an amount in BTC per unit of hash per day. Check out my calculator here if you want! The calculator disregards the fees but you’ll get the idea. Usage is pretty simple. Put in the price of bitcoin and the marketplace rate of whatever algorithm on NiceHash you want to use. Then adjust the hashpower limit and amount you want to spend until the duration in hours or days matches what you want. Lastly, use another mining calculator online to determine if what you’re going to mine will net you more than what you paid in BTC. I’ve used whattomine [2] to do this. Remember to ignore electrical cost because as a renter of hashpower you don’t have it.

Keep in mind, this calculator doesn’t account for two things. The first is the fee that NiceHash charges and what I call “slippage”. Slipple is a term I coined referring to the percent of hashpower that either gets rejected by the pool or somehow doesn’t earn you anything. Keyword is somehow. After I made this sheet I learned that there would have to be a perfect storm of market pricing for both the price of the coin and what hashpower is selling for on NiceHash. There are some advantages to this system. If you want a lot of hashpower quickly, then this solution is great. I used it once to mine some siacoin early on and ended up with a boat load of it, which I then used to toy around with.

After all this I decided it was worth getting my own rig and to quit trying to play the “will mining X using rented hashpower make me money?” game. I wanted to build a mining rig but wasn’t quite sure how to do it. After searching for a resource I came across one of the best run blogs and resources for individuals wanting to get into hobby mining, and that is www.1stminingrig.com [3]. The fellow that runs the blog goes by the name Ciprian V, and it is obvious that he actually cares about helping others get in on the action. He is very knowledgeable and gives good advice. I credit his blog with arming me with the knowledge I needed to build my rig. I have built a number of computers in the past, but when it comes to a specialty computer there are extra steps to follow, specifically in the realm of BIOS settings. I saved up a few bucks and settled on a parts list, which I’ve shared below. Personally, I like to use PCPartpicker [4] because it help make sure your parts are compatible.

Here is my build: https://pcpartpicker.com/list/tRCr7W

Rationale for part selection:

  • CPU – You do not need a powerful processor.
  • RAM – Max of 4GB. Barebones memory for Windows to run.
  • Mother Board – Get one with the most PCIe slots you can.
  • Hard Drive – Anything will do. Cheapest SSD you can find.
  • Power Supply – PSU – Two 750 or 850 Watt supplies daisy chained together.
  • Accessories:
    • Risers. Get good ones! – Here’s an example.
    • Multipower Supply Adapter – Here’s an example.
    • External power button. – Here’s an example.
  • GPU – What you get is really up to you or your bank account XD.

For me, I wanted to get the most efficient and the most versatile GPU. I evaluated my NVIDIA and AMD options, and honed in on my choice. While the AMD RX 580 and 480 GPUs are descent for mining, I already had an NVIDIA 1060 6GB in my gaming rig so I knew that I wanted to try and stick with NVIDIA if I could. I was looking to build a 6 GPU mining rig and my first inclination was go get a 6 1080Ti’s. Except those things were going for over $1000 at the time and my budget was about $2000 for GPUs. I kept scaling my choices back and ultimately realized that I could get 4 GPUs at best, and I was eyeing the GTX 1070 and 1080 models. I ran the numbers for hash power and decided I’d be better off with the 1070s.

For performance metrics I went off of Ciprian’s 1stminingrig site. He really has done a ton of leg work getting these numbers together.

Fair warning about profitability. Do not base your entire research off of NiceHash’s profitability calculator. The thing really is a wild guess. True the calculator uses past data, but the markets are so volatile that you have to ask yourself. Is the past going to be any reflection of the future? Probably not.

To tell you why I chose the GTX 1070 over a 1080 was because of the confluence versatility combined with efficiency requirement. You may check profitability of a 1080 vs a 1070 and determine that you may be able to make more income with a 1080 much more readily than a 1070, but you may overlook one important fact. NVIDIA has outfitted the GTX 1700 with GDDR5 and the GTX 1080 with GDDR5X (5X) memory. 5X memory actually hinders the 1080 such that you are really limiting yourself to being the best at mining the Equihash and Lyra2REv2 algorithms. Ethereum, or Ethash, on a 1080 is problematic. A 1070 is better at Ethash mining than a 1080, and per watt more efficient at Equihash than a 1080 too.

The specific GPU I chose was the EVGA GTX 1070 SC Black Edition, Model#08G-P4-5173-KR. I wanted to be able to mine the most algorithms I could since as a hobby miner I wanted the ability to randomly mine that new up and coming coin at will. Of course, my mining rig’s primary purpose would be t reach return on investment and beyond, but I definately devote a little hashpower time to other cryptos. For instance, I heard about Ravencoin a while back. Dropped everything I was doing for a few days to go mine 1000RVN. No idea if that will ever become anything, but I figured why not? Plus it’s insane fun. Not knowing is what makes things interesting!

Building a rig is fun. There will be challenges. Do your homework! I will share one bit of very good advice. Take your time and don’t be in a rush. I destroyed a motherboard and a CPU because I was excited and rushed to build my rig. A mistake that cost me a couple hundred dollars in components. My rig is unique because I built the frame myself out of wood. Can you believe that people sell these things online for $100+?!? I build mine with $15 worth of wood and a few extra screws lying around my home. I made use of this 1stminingrig guide to help me through it. Although, fair warning, I don’t care how many BIOS articles you read get ready to play with it. 😉

Here is what I ended up with. No, I wasn’t going for good looking. Just functional hardware.

I’ve pictured my rig’s case with and without hardware installed. The case is simply a shelf backed with a piece of plywood. I secured all the components with ether velcro or screws strategically placed to hold things down to the wood.

A lot of people use MSI Afterburner but I happen to be using EVGA Precision. Both software allow you to do the same thing, which is tune the GPU’s core and memory clock speeds as well as voltages. I have used it to set all of my GPUs to +150/+500Mhz core and memory clock speeds, respectively. The EVGA 1070 SC Black Edition is already clock around 1784Mhz with its boost clock, and the additional settings bring it up to about 2000 Mhz stable. Believe me, these settings can take some patience and tweaking to get to a setting that doesn’t render the GPU dead afer 5 minutes of mining.

Here are some benchmarks I’ve collected for my rig with baseline settings by algorithm:

  • Neoscrypt – 3.308568 MH/s
  • Lyra2REv2 154.264 MH/s
  • DaggerHashimoto – 104.052 MH/s
  • Equihash – 1,061.98 H/s

With the +150/+500 clock settings by algorithm:

  • Neoscrypt – 3.6545344 MH/s
  • Lyra2REv2 166.396 MH/s
  • DaggerHashimoto – 121.196 MH/s
  • Equihash – 1,360.408 H/s

Here’s the increase in percentage I got for my hours of playing around with settings!

  • Neoscrypt – +10.45%
  • Lyra2REv2 +7.86%
  • DaggerHashimoto – +16.47%
  • Equihash – +28.1%

As you can see, the payoff is small for some algorithms and larger for others. Just learning how to play with GPU settings makes the venture worthwhile!

As of today, I have made about 27% of my initial GPU investment back. That’s $500 out of $1800 I spent on GPUs. Around last December I got my hands on 4 GTX 1070s for about $435 a piece. I intend to make the rest of the full amount back. I’d like to get another two GPUs and increase the rate at which I’m earning, even if it does prolong my return on investment. As of writing, the GPU I bought original is retailing for $550 at NewEgg’s website. That’s still a lot more than I’d rather pay. Hopefully with the slump in the market the prices will continue to drop.

I intend to continue the achievement warp field focus with additional ways to go about earning cryptocurrency. I think mining is the most stereotypical way of doing so, and I want to shed light on others. That is one purpose of CoinTrek, teach cryptocurrency achievement to others, support Ripple, and tackle the hard topics just like  Star Trek has and continues to do! I have removed my gauge from the sidebar. Since I’m not solely about earning a single Bitcoin anymore, I felt having it there was a moot point.

If you feel like helping me out on my journey, or you found this article useful. I would happily take a donation. Ripple and Ethereum are my cryptos of choice and those addresses can be found in the right sidebar.

ETH: 0xe85810d64a28c6ffc2351368beace84992a01e09
BTC: 3JQKyiMReYXHkGb48PvdJgd6wjBsBBKD78

As always. Second Star to the Right!

References:

  1. www.nicehash.com
  2. www.wahttomine.com
  3. www.1stminingrig.com
  4. www.pcpartpicker.com

Captain’s Log 007 – Ripple Leads The Way

Primary Field of Focus: Ripple – Leading the Way.Today I want to write about a recent occurrence in the realm of crypto and why I think that it is important.Ripple recently announce in a public statement [1] that they were giving $29 Million dollars worth of $XRP to DonorsChoosefor the benefit of teachers in the classroom for Best School Day This single donation of cryptocurrency is special because it is notably the largest ever donated in a single instance before. Check out their YouTube video! The founders of OmiseGO (OMG), Jun Hasegawa, and Ethereum (ETH), Vitalik Buterin, also donated $1Million to Ugandan Refugees [2]. The average person even has the opportunity donate to charity with their own cryptocurrency through an organization called Fidelity Charitable. There is even a little known crypto called Donationcoin (DON). That particular crypto doesn’t seem to have much activity, but at least the concept is out there. If there’s another one out there, let me know. I’d be curious.The act of giving $29 Million to Donors Choose by Ripple is not some publicity stunt by Ripple. I’d venture to say there is way more behind it than that. Yes their name is out there, but for starters, Ripple isn’t just a crypto. Like OmiseGo, they are a company. This single act will help show other companies out there that, one, donating in crypto is possible and a good thing, and two, they are carrying the torch leading the way to encourage other companies to do the same. Now 35,000 classrooms across the country are having their needs fulfilled because of $XRP.Another significant effect, in my opinion, is the market stimulation. DonorsChoose didn’t get $29 United States Dollars, they have it in $XRP. DonorsChoose has to liquidate all of the $XRP into USD to obtain their donation for it to be useful to them. That means selling on markets. At the time of donation $XRP was trading at $0.53, so the $29 Million donation released a new 54,716,981 $XRP onto the market. I know Ripple still has boat loads of $XRP of their own, but it’s now less! This is good for the market because, first, Ripple itself has less of a piece of the overall market. Second, because of the increase in trade volume over the coming weeks as DonorsChoose sells off their donation. They agreed not to sell it all at once, as is their policy with donated shares of a company, according to CNBC [3].In the future, it is my hope and also I expect there will be additional companies contributing to society by donating their crypto. As new companies are created and their crypto assets obtain and grow value, a great source of financial power is wielded. One that can benefit any charity should that company or crypto organization choose to follow Ripple’s lead. In the market volatility of crypto currency $29 Million is created and lost on a weekly basis. We should try and do some good with it while we ride the roller coaster!References:

  1. https://ripple.com/insights/ripple-executives-proud-support-americas-public-schools-29-million-xrp-donation-donorschoose-org/
  2. https://stocksgazette.com/2018/03/30/omisego-omg-and-ethereum-founder-give-hope-to-uganda-refugees-with-1m-donation/
  3. https://www.cnbc.com/2018/03/28/ripple-gives-away-29-million-of-its-cryptocurrency-to-public-schools.html

Captain’s Log 006 – Introducing Warp Fields!

When I first started CoinTrek, I couldn’t help but dive in aimlessly and start writing, and my goal to earn a single bitcoin quickly became a limiting factor in the development of this blog. Since then I have reimagined what CoinTrek will become. Now with great pleasure I bring to you Warp Fields! One of my greatest fascinations with Star Trek was the mere fact that almost everything was plausible. I read a book in my early college days called, “The Physics of Star Trek” [1]. In that book I first came to realize that a man named Miguel Alcubierre had actually invented Warp Drive. Albeit on paper, but the math existed! Isn’t that awesome? We as a species have the brain power to figure out how to warp space. Unfortunately, the energy requirements are impossible with today’s technology but I am confident that humanity will get there one day.

The Alcubierre Drive got me thinking. CoinTrek is trying to cover a broad range of topics, but I only need one niche, and then it hit me. Just like any starship needs a warp field to travel, I need one too. A Field of Focus! Cointrek will now have Warp Fields of Focus! Now, I do not wish to abandon entirely my other interests, so there will be four Fields of Focus starting out. However, only one of them will be my primary field of focus at any given time. The others shall be secondary. Moving forward I plan to blog monthly about my primary field of focus and one of the three secondaries. If I have time for a third or more then I will do so.

Primary Warp Field: – Ripple, $XRP

My primary field of focus moving forward is going to be Ripple! I repeatedly kept coming back to a single crypto subject that I feel strongly about. Ripple is a company that is going to change the world. I’m not jumping on the bandwagon here by any means because of the $XRP hype last December 2017. I will disclose that I own some $XRP, but I got in before it broke above $0.20. That’s late compared to some people who’ve been into this since 2013.

Here’s what Ripple has on everyone else in crypto:

  1. A dream team company that is making all of the right moves. All you have to do is go check out their own blog and twitter feeds to see their progress.
  2. Multi-faceted technology that extends beyond just sending around XRP. Ripple goes so much beyond its native token, $XRP.
  3. My opinion. Ripple is the most likely to be adopted not only by crypto fan boys and girls, but by industry and regulators.

I will be joining the ranks of what I call “Ripple Reporters”. THese are the men and women that scour the interwebs for information to discuss related to Ripple, and frequent xrpchat[2]. They have their own blogs too. One of my inspirations was a person with the handle Hodor, @Hodor7777 on twitter [3]. I am looking forward to seeing how I fall into this niche.

Secondary Warp Fields

CoinTrek started out talking areas of investing and education, and I have refashioned them into the secondary Warp Fields of Focus. Neither of them has priority over the other, but these represent areas in crypto I want to touch on.

Secondary Warp Field #1 – Achievement

The achievement field of focus will cover all things that I have personally accomplished on my own CoinTrek. This field will focus on earning cryptocurrency, technical development, and cryptocurrencies that are making a difference.

Secondary Warp Field #2 – Investing

I wanted investing to be its own field of focus because I have no real desire to achieve perfection with it. I am not a day trader or swing trader, I am an investor. Fundamentally, if a company has good potential, I am interested. This field of focus will dwell on what I’ve done to keep track of my portfolio and any major moves that I make. As always, for you the reader, only invest in anything what you are personally willing to lose. Any sort of investment moves I make are my own.

Secondary Warp Field #3 – Crypto Culture

This is going to be one of my own most interesting fields of focus because I want to touch on the waves of change crypto and crypto-industry is making on society. There are points worth talking about in both an internal and external context. For instance, internally, crypto is has lots of issues with scamming and hacks. ICOs are taking investor money and not delivering much. What can be done to make your grandmother comfortable with buying cryptocurrency? In another light, how about indirect impacts? Such as companies and crypto organizations. How they treat employees. How diverse are they? What is the makeup of such places? This field of focus is broad and the topics may range widely but I think it’s important to write about. After all, isn’t that what Star Trek was always about? Talking about the hard topics. Getting you to think.

There you have it! I will start on this style of writing starting next month. You may have already noticed that my bitcoin gauge has been replaced with an XRP gauge. I placed a maximum of 10,000 as a placeholder and I may set a goal for myself in the future. For now I intend to collect more XRP relative to any other crypto in my portfolio and I wanted a shiny gauge for it.

References:

  1. https://www.amazon.com/Physics-Star-Trek-Lawrence-Krauss/dp/0465002048
  2. www.xrpchat.com
  3. https://twitter.com/Hodor7777