Categories
Weekly Update

This Week In TurtleCoin (April 22, 2020)

This week we wrote code with our eyes closed and everything still compiled. Lightsabers are in the mail! Continue Reading →

Categories
All Feature Story

SoreGums on Distributed Compute [Karai]

I think I need to listen the to the Kevin Rose TRTL podcast again – the only reason I really ended up in TurtleCoin in the first place is that of the core concept of a “network” with “applications” and “TRTL is just the currency one”. There was a bunch of other details that I liked as well technically, hence probably warrants a relisten.

Cause if we want “other” applications it seems like it mostly comes down to messaging. As in information needs to get around to the apps on everyone’s devices. Right now we have the daemon which then feeds wallets. The wallets keep balances by reading the messages in the blockchain. Blockchain works cause of PoW. Nice.

How do we get other applications then?

The current thinking is a smart contract platform, aka Karai, something like Ethereum – however, we’ve identified issues with it that we don’t want to adopt. So breaking down things to first principles any app we can think of is doable the traditional way (racks and go – racks is the catch-all phrase for anything that combines compute/storage), depending on what it is that can be expensive to maintain or difficult to launch in the amount of time needed to set up various parts.  Racks are also susceptible to adversaries be they Governments or script kiddies. Thus the natural jump is to a peer-2-peer model, aka de-centralisation. Once Filecoin becomes a real thing storage via IPFS is handled, what isn’t handled is the compute side of things. Ethereum does it by being the compute, the daemon has a virtual machine that accepts scripts which when invoked produces results that are then committed to the blockchain and chicken dinners for all! As we can see they are having scaling issues and personally I don’t believe that is the best way to go about this in the first place. The thing is whatever is in the blockchain is never actually used as is, apps written to run client-side are also needed to interact with any of this data.

Idea

How about we simply augment the TurtleCoin blockchain to support the various kinds of messages needed to power these client-side devices? Maybe it needs Karai to help with that, not sure. Thinking about this it is difficult to define Karai as a smart contract platform like Ethereum as the only way you get Ethereum is if you do Ethereum and all that isn’t what I believe is actually needed to get to “TurtleCoin Network” powers distributed applications.

Examples

Gods Unchained

Having non-fungible-tokens is something that should exist. This trading card game is a practical example of how being able to say I own a thing and it is a unique thing, like printing out a piece of paper and it being unique, is useful. Keep in mind that representing physical items in the digital realm is different, yes someone could chop up a block of land into 1,000 pieces and say that whoever has those 1,000 digital tokens owns the land, but really the person whose name is on the land title at the local land titles registry is the landowner… Then the game actually takes place off-chain and requires a client. The rules are published and the smart contracts are in place and the tokens exist – with all of these components in place ANYONE can create a client to play this game or any other kind of application where those tokens fit. No one can actually take the tokens away from anyone cause blockchain. The tokens don’t rely on the game devs being around in the future, the tokens now exist, their value and significance is open source and committed to digital permanence as long as Ethereum exists, even then if Ethereum dies they can still be sucked up into a new thing as all of Ethereum up to the stop point exits…

Cipherise

This is a platform to handle identity verification without usernames/passwords by using PKI. In practice it works like this, the bank calls you and says “so give me all your personal details and I can verify I’m speaking with the correct person” and you’re like “dafuq? you’re not my bank, scammer!” and hang up.

Instead, the bank calls you and sends a signal on their side of the app conversation with some info they told you on the phone, you open your app and confirm you are you and the bank also sees the confirmation, you know you are talking to the bank and the bank knows they are talking to their customer, no more “so ahh give me all your details so I can steal your identity”.  It works by sending messages and apps responding to those messages as needed. This is like our currency application. The difference here is 95% of the messages don’t need to be recorded as they are only useful for the moment they are read. Committing all these messages to a blockchain is really only useful for auditing purposes in the future to see what happened previously. Really dedicated apps can take care of that if needed. These messages are small however if the application was adopted by millions the message volume would explode the storage requirements of the network (~25KB/msg, 10k msg, 91GB/yr for ONE app…) and make it unsustainable. Thus it seems like some kind of ephemeral messaging ability is needed. See discussion in #dev_general for more on ephemeral messages.

Conclusion

These are my thoughts on what TurtleCoin network needs to help us address, non-fungible-tokens / ephemeral messages. Maybe Karai is our non-fungible-token platform and ephemeral messages go into TurtleCoind. Outright compute in a distributed VM, I don’t know about that maybe? an example would be great!

Your Thoughts?

join me and others in the #dev_karai chat on Discord: http://chat.turtlecoin.lol. Jumping off point for when this conversation might have started, link Continue Reading →

Categories
Feature Story

Interview w/ Turtley McTurtleton McDrizzle from ForkMaps.com

RockSteady (TRTL)

@Turtley McTurtleton McDrizzle Thanks for doing the interview. I wanted to talk today about ForkMaps, and what forking means to the community, and why it’s worth tracking.

Turtley McTurtleton McDrizzle

The forkmaps.com story goes something like this… A couple of months ago, RockSteady said he wished someone would make an updated version of the fork timeline on the CryptoNote Wikipedia page. Turtley McTurtleton looked around a bit, didn’t find anything that was being maintained, and had only one response… “Hold my beer.” “I’m on it.” The timing was just right. I was evaluating frontend JS frameworks for an upcoming work project, and rather than writing some contrived “hello world” sample, I used forkmaps as an opportunity to test a handful of frameworks in a real-life scenario.

RockSteady (TRTL)

That’s really cool. While making forkmaps is there anything that surprised you about all these forks?

Turtley McTurtleton McDrizzle

I found the general friendliness by the CryptoNote community a little surprising. I’ve ventured into many discord servers either looking for project details, or advising someone to restore license headers, and I almost always receive a warm greeting.

RockSteady (TRTL)

Tell us a bit about the tech behind the project and how it all works. I noticed the front end got noticeably faster to load recently. Can you talk about that a bit for some of our nerdier readers?

Turtley McTurtleton McDrizzle

I used Vue.js for the frontend. I wrote it using Vue first, then rewrote it using React, and then messed around with a handful of other frameworks/libraries. I’ve used AngularJS and React quite a bit in the past, and to me, Vue is the perfect marriage of the two.

The site has very few dependencies. I used three Vue packages (base, vue-router, vuex), axios for HTTP requests, and echarts. I didn’t use a CSS framework, so design took me forever, but taught me a lot.

Turtley McTurtleton McDrizzle

To tackle performance, I cleaned up a lot of my JS, replacing a lot of nested functions with array reducers. I added a few CSS transitions to smooth out navigation, added loading indicators (which you should almost never see), and threw in some other UX tricks. Other than the fork map page, my improvements were mostly about perceived performance. You can make something that’s actually very fast, feel slow through clunky UX, and that’s what I’d done with my first attempt.

On the map page, I switched from vis.js to echarts, which is much more UX-friendly.

That was a lot, and I promise I’m almost done.

On the data side, all of the CryptoNote coins live in a separate git repo, as individual coin files to make them easy to manage. Whenever there’s an update, I run a gulp task to combine them into a single json file, which forkmaps.com pulls directly from GitHub. This way, it’s trivial to add additional coin families in the future.

RockSteady (TRTL)

That’s really cool, what do you plan to add to it next and what kind of helpers are you currently looking for?

Turtley McTurtleton McDrizzle

Next I’m working on a timeline representation similar to the example you initially showed me. Someone’s working on the 200k TRTL bounty for adding start/end dates to all of the coins as we speak. After that, I want to do max supply, emission curves, primary emission length, and possibly current supply. That one’s been requested a lot, and I think it’ll make an interesting chart. Most coins seem to have a primary emission measured in decades, while Nerva is only three years. I’m always happy to send TRTLs to anyone who contributes data or ideas.

RockSteady (TRTL)

That’s great that you’re including the community in this project, and even chipping in bounties for people who are helping out. With so much exposure to all of these different forks, surely you’ve come by some really interesting ones. If you don’t mind, let’s run through a few of the more memorable ones to you: Which fork has the best logo in your opinion – What is the most interesting fork – Which forks do you mine – What’s the worst fork name you’ve encountered – If you made a fantasy fork tomorrow, what would it be called and what would it do?

Turtley McTurtleton McDrizzle

I like logos that don’t look like a coin. Some of my favorites are Boolberry, Alloy, Athena, Lethean, Nerva, TurtleCoin, and Karai (not on my site yet, but the logo is solid). Right now, I think the most interesting fork is Nerva. I’m looking forward to seeing what happens when the supply is exhausted in like 2.5 years, and CPU-only mining is the shit. I only mine Nerva and TurtleCoin. I rent some of my miners on miningrigrentals, and I used that income to buy more TRTL. Worst fork name? How about all of those dumbass XMR forks that happened when Monero switched their PoW algorithm? Actually, Sadomi might be the worst. I really don’t think they thought that one through. A fantasy coin for me would be a TRTL fork so I’d always have a reliable codebase and community, and I’d implement a prime sieve PoW component similar to riecoin. I’d call it Turtimus Prime.

RockSteady (TRTL)

Haha that sounds fun. Whats up with Prime Sieve? tell me about that

Turtley McTurtleton McDrizzle

So basically, you have an algorithm for finding prime numbers, or prime number patterns. Many projects have chosen to do something “useful” as PoW, at the expense of cryptographic security. But why not both? Add a secondary PoW step that’s relatively easy to perform, does something interesting, and throws another wrench at potential ASICs.

RockSteady (TRTL)

That’s cool, I think we’ve about got it all covered, is there anything you want to add?

Turtley McTurtleton McDrizzle

I’m glad you asked! Years and years ago, before cryptocurrency was a thing, I had a closet full of crunchers (mining rigs nowadays) working hard on distributed computing projects like folding@home (Team 32!) and BOINC/SETI. Back then, there was no financial incentive to spend lots of money on hardware and electricity, but we did it anyway. Some did it for a cause, some for leaderboard points, but I think most did it for the knowledge and the community. I treat crypto projects the same way. At this point in my life, my time is far more valuable than any amount of hardware or hashrate, and there’s a big reason I spend so much of that time with my fellow turtles. And TurtleCoin is the only project I’ve found that really embodies that sense of teamwork and community that the distributed computing scene seems to have lost to crypto over the years. So to all my turtle-fam, keep up the good work, and stay turtley!

RockSteady (TRTL)

Jerme, I’m glad you did this interview, and I’m happy you’re a part of this community! Thanks for everything you do with ForkMaps and otherwise, and I look forward to what you come up with next!

Continue Reading →