Search content
Sort by

Showing 4 of 4 results by mattkindy
Post
Topic
Board Altcoin Discussion
Topic OP
Divine: A Blockchain Reputation System For Determining Good Market Actors
by
mattkindy
on 21/06/2017, 15:20:09 UTC
Hey, everyone! I've written a bit on the prediction-market-based reputation system that we're developing. Would appreciate any feedback, questions, and other comments, of course!

Divine: A Blockchain Reputation System for Determining Good Market Actors

We're bringing the advantages of "centralised" reputation systems within a p2p setting by using the protocol to enforce objective reputation constraints. Hope you enjoy!
Post
Topic
Board Altcoin Discussion
Re: Topl on Developing a Scala Blockchain
by
mattkindy
on 08/06/2017, 16:03:15 UTC
Scorex under the hood uses Akka actor references for message passing between modules meaning there's no static type checking for class properties that use ActorRef. What you can do then is, for example,

Code:
implicit lazy val settings = new ForgingSettings {
    override val settingsJSON: Map[String, circe.Json] = settingsFromFile(settingsFilename)
  }

val forger: ActorRef = actorSystem.actorOf(Props(classOf[Forger], settings, nodeViewHolderRef))

override val localInterface: ActorRef = actorSystem.actorOf(Props(classOf[BifrostLocalInterface], nodeViewHolderRef, forger, settings))

If you want to change consensus rules or whatnot, just reference different files. Alternatively, you can always do this in memory. For reference, a simple ForgingSettings might look like this:

Code:
trait ForgingSettings extends Settings with ForgingConstants {

  val InitialDifficulty = 15000000L
  val MinimumDifficulty = 100L

  lazy val offlineGeneration = settingsJSON.get("offlineGeneration").flatMap(_.asBoolean).getOrElse(false)

  lazy val posAttachmentSize = settingsJSON.get("posAttachmentSize").flatMap(_.asNumber).flatMap(_.toInt)
    .getOrElse(DefaulPtosAttachmentSize)

  val DefaulPtosAttachmentSize = 1024

  override def toString: String = (Map("BlockDelay" -> blockGenerationDelay.length.asJson) ++
    settingsJSON.map(s => s._1 -> s._2)).asJson.spaces2
}

(This is using io.circe for json parsing) You can generally just swap between different children of Settings for different consensus modules.

Scorex also has a testkit built in if you want to do discrete runs quickly between different settings. It would essentially be handled the same way as well.

Cheers!
Post
Topic
Board Altcoin Discussion
Topic OP
Topl on Developing a Scala Blockchain
by
mattkindy
on 07/06/2017, 17:02:14 UTC
Hey, everyone. Matt from Topl here. My colleague, Zihe, just put out a new post about engineering our blockchain in Scala and using Scorex 2 by IOHK. I think it's worth a read to get an idea of the type of development work we're doing. Would appreciate any feedback, questions, and other comments, of course!

Why Everyone Should Build Their Next Blockchain in Scala

We believe that one of the biggest advantages of using Scorex 2 is that it can (and should) begin to become a focal point for cryptocurrency component standardization (e.g., consensus modules, networking modules, etc.) which should reduce the friction associated with developing new blockchains and building towards an internet of blockchains (for those projects where, for example, a Dapp may not be an appropriate fit for various reasons). Let me know what you think!
Post
Topic
Board Speculation (Altcoins)
Re: We're in a bubble
by
mattkindy
on 22/05/2017, 19:37:30 UTC
The real question isn't about whether we're in a bubble, but rather, when and how much the bubble will pop. This year? 2019? Deflation or explosion?

The fact that there are significant happenings can partially justify Ethereum growth, but the sheer amount of speculation on almost everything else leads me to believe that this one will drop significantly, and quickly, especially with the number of "investors" entirely new to the space jumping in because they see bitcoin or whatever up 3x in a month.