API DOCUMENTATION - Bitcoin, Litecoin, Zcash & more ...

Dragonchain Great Reddit Scaling Bake-Off Public Proposal

Dragonchain Great Reddit Scaling Bake-Off Public Proposal

Dragonchain Public Proposal TL;DR:

Dragonchain has demonstrated twice Reddit’s entire total daily volume (votes, comments, and posts per Reddit 2019 Year in Review) in a 24-hour demo on an operational network. Every single transaction on Dragonchain is decentralized immediately through 5 levels of Dragon Net, and then secured with combined proof on Bitcoin, Ethereum, Ethereum Classic, and Binance Chain, via Interchain. At the time, in January 2020, the entire cost of the demo was approximately $25K on a single system (transaction fees locked at $0.0001/txn). With current fees (lowest fee $0.0000025/txn), this would cost as little as $625.
Watch Joe walk through the entire proposal and answer questions on YouTube.
This proposal is also available on the Dragonchain blog.

Hello Reddit and Ethereum community!

I’m Joe Roets, Founder & CEO of Dragonchain. When the team and I first heard about The Great Reddit Scaling Bake-Off we were intrigued. We believe we have the solutions Reddit seeks for its community points system and we have them at scale.
For your consideration, we have submitted our proposal below. The team at Dragonchain and I welcome and look forward to your technical questions, philosophical feedback, and fair criticism, to build a scaling solution for Reddit that will empower its users. Because our architecture is unlike other blockchain platforms out there today, we expect to receive many questions while people try to grasp our project. I will answer all questions here in this thread on Reddit, and I've answered some questions in the stream on YouTube.
We have seen good discussions so far in the competition. We hope that Reddit’s scaling solution will emerge from The Great Reddit Scaling Bake-Off and that Reddit will have great success with the implementation.

Executive summary

Dragonchain is a robust open source hybrid blockchain platform that has proven to withstand the passing of time since our inception in 2014. We have continued to evolve to harness the scalability of private nodes, yet take full advantage of the security of public decentralized networks, like Ethereum. We have a live, operational, and fully functional Interchain network integrating Bitcoin, Ethereum, Ethereum Classic, and ~700 independent Dragonchain nodes. Every transaction is secured to Ethereum, Bitcoin, and Ethereum Classic. Transactions are immediately usable on chain, and the first decentralization is seen within 20 seconds on Dragon Net. Security increases further to public networks ETH, BTC, and ETC within 10 minutes to 2 hours. Smart contracts can be written in any executable language, offering full freedom to existing developers. We invite any developer to watch the demo, play with our SDK’s, review open source code, and to help us move forward. Dragonchain specializes in scalable loyalty & rewards solutions and has built a decentralized social network on chain, with very affordable transaction costs. This experience can be combined with the insights Reddit and the Ethereum community have gained in the past couple of months to roll out the solution at a rapid pace.

Response and PoC

In The Great Reddit Scaling Bake-Off post, Reddit has asked for a series of demonstrations, requirements, and other considerations. In this section, we will attempt to answer all of these requests.

Live Demo

A live proof of concept showing hundreds of thousands of transactions
On Jan 7, 2020, Dragonchain hosted a 24-hour live demonstration during which a quarter of a billion (250 million+) transactions executed fully on an operational network. Every single transaction on Dragonchain is decentralized immediately through 5 levels of Dragon Net, and then secured with combined proof on Bitcoin, Ethereum, Ethereum Classic, and Binance Chain, via Interchain. This means that every single transaction is secured by, and traceable to these networks. An attack on this system would require a simultaneous attack on all of the Interchained networks.
24 hours in 4 minutes (YouTube):
24 hours in 4 minutes
The demonstration was of a single business system, and any user is able to scale this further, by running multiple systems simultaneously. Our goals for the event were to demonstrate a consistent capacity greater than that of Visa over an extended time period.
Tooling to reproduce our demo is available here:
https://github.com/dragonchain/spirit-bomb

Source Code

Source code (for on & off-chain components as well tooling used for the PoC). The source code does not have to be shared publicly, but if Reddit decides to use a particular solution it will need to be shared with Reddit at some point.

Scaling

How it works & scales

Architectural Scaling

Dragonchain’s architecture attacks the scalability issue from multiple angles. Dragonchain is a hybrid blockchain platform, wherein every transaction is protected on a business node to the requirements of that business or purpose. A business node may be held completely private or may be exposed or replicated to any level of exposure desired.
Every node has its own blockchain and is independently scalable. Dragonchain established Context Based Verification as its consensus model. Every transaction is immediately usable on a trust basis, and in time is provable to an increasing level of decentralized consensus. A transaction will have a level of decentralization to independently owned and deployed Dragonchain nodes (~700 nodes) within seconds, and full decentralization to BTC and ETH within minutes or hours. Level 5 nodes (Interchain nodes) function to secure all transactions to public or otherwise external chains such as Bitcoin and Ethereum. These nodes scale the system by aggregating multiple blocks into a single Interchain transaction on a cadence. This timing is configurable based upon average fees for each respective chain. For detailed information about Dragonchain’s architecture, and Context Based Verification, please refer to the Dragonchain Architecture Document.

Economic Scaling

An interesting feature of Dragonchain’s network consensus is its economics and scarcity model. Since Dragon Net nodes (L2-L4) are independent staking nodes, deployment to cloud platforms would allow any of these nodes to scale to take on a large percentage of the verification work. This is great for scalability, but not good for the economy, because there is no scarcity, and pricing would develop a downward spiral and result in fewer verification nodes. For this reason, Dragonchain uses TIME as scarcity.
TIME is calculated as the number of Dragons held, multiplied by the number of days held. TIME influences the user’s access to features within the Dragonchain ecosystem. It takes into account both the Dragon balance and length of time each Dragon is held. TIME is staked by users against every verification node and dictates how much of the transaction fees are awarded to each participating node for every block.
TIME also dictates the transaction fee itself for the business node. TIME is staked against a business node to set a deterministic transaction fee level (see transaction fee table below in Cost section). This is very interesting in a discussion about scaling because it guarantees independence for business implementation. No matter how much traffic appears on the entire network, a business is guaranteed to not see an increased transaction fee rate.

Scaled Deployment

Dragonchain uses Docker and Kubernetes to allow the use of best practices traditional system scaling. Dragonchain offers managed nodes with an easy to use web based console interface. The user may also deploy a Dragonchain node within their own datacenter or favorite cloud platform. Users have deployed Dragonchain nodes on-prem on Amazon AWS, Google Cloud, MS Azure, and other hosting platforms around the world. Any executable code, anything you can write, can be written into a smart contract. This flexibility is what allows us to say that developers with no blockchain experience can use any code language to access the benefits of blockchain. Customers have used NodeJS, Python, Java, and even BASH shell script to write smart contracts on Dragonchain.
With Docker containers, we achieve better separation of concerns, faster deployment, higher reliability, and lower response times.
We chose Kubernetes for its self-healing features, ability to run multiple services on one server, and its large and thriving development community. It is resilient, scalable, and automated. OpenFaaS allows us to package smart contracts as Docker images for easy deployment.
Contract deployment time is now bounded only by the size of the Docker image being deployed but remains fast even for reasonably large images. We also take advantage of Docker’s flexibility and its ability to support any language that can run on x86 architecture. Any image, public or private, can be run as a smart contract using Dragonchain.

Flexibility in Scaling

Dragonchain’s architecture considers interoperability and integration as key features. From inception, we had a goal to increase adoption via integration with real business use cases and traditional systems.
We envision the ability for Reddit, in the future, to be able to integrate alternate content storage platforms or other financial services along with the token.
  • LBRY - To allow users to deploy content natively to LBRY
  • MakerDAO to allow users to lend small amounts backed by their Reddit community points.
  • STORJ/SIA to allow decentralized on chain storage of portions of content. These integrations or any other are relatively easy to integrate on Dragonchain with an Interchain implementation.

Cost

Cost estimates (on-chain and off-chain) For the purpose of this proposal, we assume that all transactions are on chain (posts, replies, and votes).
On the Dragonchain network, transaction costs are deterministic/predictable. By staking TIME on the business node (as described above) Reddit can reduce transaction costs to as low as $0.0000025 per transaction.
Dragonchain Fees Table

Getting Started

How to run it
Building on Dragonchain is simple and requires no blockchain experience. Spin up a business node (L1) in our managed environment (AWS), run it in your own cloud environment, or on-prem in your own datacenter. Clear documentation will walk you through the steps of spinning up your first Dragonchain Level 1 Business node.
Getting started is easy...
  1. Download Dragonchain’s dctl
  2. Input three commands into a terminal
  3. Build an image
  4. Run it
More information can be found in our Get started documents.

Architecture
Dragonchain is an open source hybrid platform. Through Dragon Net, each chain combines the power of a public blockchain (like Ethereum) with the privacy of a private blockchain.
Dragonchain organizes its network into five separate levels. A Level 1, or business node, is a totally private blockchain only accessible through the use of public/private keypairs. All business logic, including smart contracts, can be executed on this node directly and added to the chain.
After creating a block, the Level 1 business node broadcasts a version stripped of sensitive private data to Dragon Net. Three Level 2 Validating nodes validate the transaction based on guidelines determined from the business. A Level 3 Diversity node checks that the level 2 nodes are from a diverse array of locations. A Level 4 Notary node, hosted by a KYC partner, then signs the validation record received from the Level 3 node. The transaction hash is ledgered to the Level 5 public chain to take advantage of the hash power of massive public networks.
Dragon Net can be thought of as a “blockchain of blockchains”, where every level is a complete private blockchain. Because an L1 can send to multiple nodes on a single level, proof of existence is distributed among many places in the network. Eventually, proof of existence reaches level 5 and is published on a public network.

API Documentation

APIs (on chain & off)

SDK Source

Nobody’s Perfect

Known issues or tradeoffs
  • Dragonchain is open source and even though the platform is easy enough for developers to code in any language they are comfortable with, we do not have so large a developer community as Ethereum. We would like to see the Ethereum developer community (and any other communities) become familiar with our SDK’s, our solutions, and our platform, to unlock the full potential of our Ethereum Interchain. Long ago we decided to prioritize both Bitcoin and Ethereum Interchains. We envision an ecosystem that encompasses different projects to give developers the ability to take full advantage of all the opportunities blockchain offers to create decentralized solutions not only for Reddit but for all of our current platforms and systems. We believe that together we will take the adoption of blockchain further. We currently have additional Interchain with Ethereum Classic. We look forward to Interchain with other blockchains in the future. We invite all blockchains projects who believe in decentralization and security to Interchain with Dragonchain.
  • While we only have 700 nodes compared to 8,000 Ethereum and 10,000 Bitcoin nodes. We harness those 18,000 nodes to scale to extremely high levels of security. See Dragonchain metrics.
  • Some may consider the centralization of Dragonchain’s business nodes as an issue at first glance, however, the model is by design to protect business data. We do not consider this a drawback as these nodes can make any, none, or all data public. Depending upon the implementation, every subreddit could have control of its own business node, for potential business and enterprise offerings, bringing new alternative revenue streams to Reddit.

Costs and resources

Summary of cost & resource information for both on-chain & off-chain components used in the PoC, as well as cost & resource estimates for further scaling. If your PoC is not on mainnet, make note of any mainnet caveats (such as congestion issues).
Every transaction on the PoC system had a transaction fee of $0.0001 (one-hundredth of a cent USD). At 256MM transactions, the demo cost $25,600. With current operational fees, the same demonstration would cost $640 USD.
For the demonstration, to achieve throughput to mimic a worldwide payments network, we modeled several clients in AWS and 4-5 business nodes to handle the traffic. The business nodes were tuned to handle higher throughput by adjusting memory and machine footprint on AWS. This flexibility is valuable to implementing a system such as envisioned by Reddit. Given that Reddit’s daily traffic (posts, replies, and votes) is less than half that of our demo, we would expect that the entire Reddit system could be handled on 2-5 business nodes using right-sized containers on AWS or similar environments.
Verification was accomplished on the operational Dragon Net network with over 700 independently owned verification nodes running around the world at no cost to the business other than paid transaction fees.

Requirements

Scaling

This PoC should scale to the numbers below with minimal costs (both on & off-chain). There should also be a clear path to supporting hundreds of millions of users.
Over a 5 day period, your scaling PoC should be able to handle:
*100,000 point claims (minting & distributing points) *25,000 subscriptions *75,000 one-off points burning *100,000 transfers
During Dragonchain’s 24 hour demo, the above required numbers were reached within the first few minutes.
Reddit’s total activity is 9000% more than Ethereum’s total transaction level. Even if you do not include votes, it is still 700% more than Ethereum’s current volume. Dragonchain has demonstrated that it can handle 250 million transactions a day, and it’s architecture allows for multiple systems to work at that level simultaneously. In our PoC, we demonstrate double the full capacity of Reddit, and every transaction was proven all the way to Bitcoin and Ethereum.
Reddit Scaling on Ethereum

Decentralization

Solutions should not depend on any single third-party provider. We prefer solutions that do not depend on specific entities such as Reddit or another provider, and solutions with no single point of control or failure in off-chain components but recognize there are numerous trade-offs to consider
Dragonchain’s architecture calls for a hybrid approach. Private business nodes hold the sensitive data while the validation and verification of transactions for the business are decentralized within seconds and secured to public blockchains within 10 minutes to 2 hours. Nodes could potentially be controlled by owners of individual subreddits for more organic decentralization.
  • Billing is currently centralized - there is a path to federation and decentralization of a scaled billing solution.
  • Operational multi-cloud
  • Operational on-premises capabilities
  • Operational deployment to any datacenter
  • Over 700 independent Community Verification Nodes with proof of ownership
  • Operational Interchain (Interoperable to Bitcoin, Ethereum, and Ethereum Classic, open to more)

Usability Scaling solutions should have a simple end user experience.

Users shouldn't have to maintain any extra state/proofs, regularly monitor activity, keep track of extra keys, or sign anything other than their normal transactions
Dragonchain and its customers have demonstrated extraordinary usability as a feature in many applications, where users do not need to know that the system is backed by a live blockchain. Lyceum is one of these examples, where the progress of academy courses is being tracked, and successful completion of courses is rewarded with certificates on chain. Our @Save_The_Tweet bot is popular on Twitter. When used with one of the following hashtags - #please, #blockchain, #ThankYou, or #eternalize the tweet is saved through Eternal to multiple blockchains. A proof report is available for future reference. Other examples in use are DEN, our decentralized social media platform, and our console, where users can track their node rewards, view their TIME, and operate a business node.
Examples:

Transactions complete in a reasonable amount of time (seconds or minutes, not hours or days)
All transactions are immediately usable on chain by the system. A transaction begins the path to decentralization at the conclusion of a 5-second block when it gets distributed across 5 separate community run nodes. Full decentralization occurs within 10 minutes to 2 hours depending on which interchain (Bitcoin, Ethereum, or Ethereum Classic) the transaction hits first. Within approximately 2 hours, the combined hash power of all interchained blockchains secures the transaction.

Free to use for end users (no gas fees, or fixed/minimal fees that Reddit can pay on their behalf)
With transaction pricing as low as $0.0000025 per transaction, it may be considered reasonable for Reddit to cover transaction fees for users.
All of Reddit's Transactions on Blockchain (month)
Community points can be earned by users and distributed directly to their Reddit account in batch (as per Reddit minting plan), and allow users to withdraw rewards to their Ethereum wallet whenever they wish. Withdrawal fees can be paid by either user or Reddit. This model has been operating inside the Dragonchain system since 2018, and many security and financial compliance features can be optionally added. We feel that this capability greatly enhances user experience because it is seamless to a regular user without cryptocurrency experience, yet flexible to a tech savvy user. With regard to currency or token transactions, these would occur on the Reddit network, verified to BTC and ETH. These transactions would incur the $0.0000025 transaction fee. To estimate this fee we use the monthly active Reddit users statista with a 60% adoption rate and an estimated 10 transactions per month average resulting in an approximate $720 cost across the system. Reddit could feasibly incur all associated internal network charges (mining/minting, transfer, burn) as these are very low and controllable fees.
Reddit Internal Token Transaction Fees

Reddit Ethereum Token Transaction Fees
When we consider further the Ethereum fees that might be incurred, we have a few choices for a solution.
  1. Offload all Ethereum transaction fees (user withdrawals) to interested users as they wish to withdraw tokens for external use or sale.
  2. Cover Ethereum transaction fees by aggregating them on a timed schedule. Users would request withdrawal (from Reddit or individual subreddits), and they would be transacted on the Ethereum network every hour (or some other schedule).
  3. In a combination of the above, customers could cover aggregated fees.
  4. Integrate with alternate Ethereum roll up solutions or other proposals to aggregate minting and distribution transactions onto Ethereum.

Bonus Points

Users should be able to view their balances & transactions via a blockchain explorer-style interface
From interfaces for users who have no knowledge of blockchain technology to users who are well versed in blockchain terms such as those present in a typical block explorer, a system powered by Dragonchain has flexibility on how to provide balances and transaction data to users. Transactions can be made viewable in an Eternal Proof Report, which displays raw data along with TIME staking information and traceability all the way to Bitcoin, Ethereum, and every other Interchained network. The report shows fields such as transaction ID, timestamp, block ID, multiple verifications, and Interchain proof. See example here.
Node payouts within the Dragonchain console are listed in chronological order and can be further seen in either Dragons or USD. See example here.
In our social media platform, Dragon Den, users can see, in real-time, their NRG and MTR balances. See example here.
A new influencer app powered by Dragonchain, Raiinmaker, breaks down data into a user friendly interface that shows coin portfolio, redeemed rewards, and social scores per campaign. See example here.

Exiting is fast & simple
Withdrawing funds on Dragonchain’s console requires three clicks, however, withdrawal scenarios with more enhanced security features per Reddit’s discretion are obtainable.

Interoperability Compatibility with third party apps (wallets/contracts/etc) is necessary.
Proven interoperability at scale that surpasses the required specifications. Our entire platform consists of interoperable blockchains connected to each other and traditional systems. APIs are well documented. Third party permissions are possible with a simple smart contract without the end user being aware. No need to learn any specialized proprietary language. Any code base (not subsets) is usable within a Docker container. Interoperable with any blockchain or traditional APIs. We’ve witnessed relatively complex systems built by engineers with no blockchain or cryptocurrency experience. We’ve also demonstrated the creation of smart contracts within minutes built with BASH shell and Node.js. Please see our source code and API documentation.

Scaling solutions should be extensible and allow third parties to build on top of it Open source and extensible
APIs should be well documented and stable

Documentation should be clear and complete
For full documentation, explore our docs, SDK’s, Github repo’s, architecture documents, original Disney documentation, and other links or resources provided in this proposal.

Third-party permissionless integrations should be possible & straightforward Smart contracts are Docker based, can be written in any language, use full language (not subsets), and can therefore be integrated with any system including traditional system APIs. Simple is better. Learning an uncommon or proprietary language should not be necessary.
Advanced knowledge of mathematics, cryptography, or L2 scaling should not be required. Compatibility with common utilities & toolchains is expected.
Dragonchain business nodes and smart contracts leverage Docker to allow the use of literally any language or executable code. No proprietary language is necessary. We’ve witnessed relatively complex systems built by engineers with no blockchain or cryptocurrency experience. We’ve also demonstrated the creation of smart contracts within minutes built with BASH shell and Node.js.

Bonus

Bonus Points: Show us how it works. Do you have an idea for a cool new use case for Community Points? Build it!

TIME

Community points could be awarded to Reddit users based upon TIME too, whereas the longer someone is part of a subreddit, the more community points someone naturally gained, even if not actively commenting or sharing new posts. A daily login could be required for these community points to be credited. This grants awards to readers too and incentivizes readers to create an account on Reddit if they browse the website often. This concept could also be leveraged to provide some level of reputation based upon duration and consistency of contribution to a community subreddit.

Dragon Den

Dragonchain has already built a social media platform that harnesses community involvement. Dragon Den is a decentralized community built on the Dragonchain blockchain platform. Dragon Den is Dragonchain’s answer to fake news, trolling, and censorship. It incentivizes the creation and evaluation of quality content within communities. It could be described as being a shareholder of a subreddit or Reddit in its entirety. The more your subreddit is thriving, the more rewarding it will be. Den is currently in a public beta and in active development, though the real token economy is not live yet. There are different tokens for various purposes. Two tokens are Lair Ownership Rights (LOR) and Lair Ownership Tokens (LOT). LOT is a non-fungible token for ownership of a specific Lair. LOT will only be created and converted from LOR.
Energy (NRG) and Matter (MTR) work jointly. Your MTR determines how much NRG you receive in a 24-hour period. Providing quality content, or evaluating content will earn MTR.

Security. Users have full ownership & control of their points.
All community points awarded based upon any type of activity or gift, are secured and provable to all Interchain networks (currently BTC, ETH, ETC). Users are free to spend and withdraw their points as they please, depending on the features Reddit wants to bring into production.

Balances and transactions cannot be forged, manipulated, or blocked by Reddit or anyone else
Users can withdraw their balance to their ERC20 wallet, directly through Reddit. Reddit can cover the fees on their behalf, or the user covers this with a portion of their balance.

Users should own their points and be able to get on-chain ERC20 tokens without permission from anyone else
Through our console users can withdraw their ERC20 rewards. This can be achieved on Reddit too. Here is a walkthrough of our console, though this does not show the quick withdrawal functionality, a user can withdraw at any time. https://www.youtube.com/watch?v=aNlTMxnfVHw

Points should be recoverable to on-chain ERC20 tokens even if all third-parties involved go offline
If necessary, signed transactions from the Reddit system (e.g. Reddit + Subreddit) can be sent to the Ethereum smart contract for minting.

A public, third-party review attesting to the soundness of the design should be available
To our knowledge, at least two large corporations, including a top 3 accounting firm, have conducted positive reviews. These reviews have never been made public, as Dragonchain did not pay or contract for these studies to be released.

Bonus points
Public, third-party implementation review available or in progress
See above

Compatibility with HSMs & hardware wallets
For the purpose of this proposal, all tokenization would be on the Ethereum network using standard token contracts and as such, would be able to leverage all hardware wallet and Ethereum ecosystem services.

Other Considerations

Minting/distributing tokens is not performed by Reddit directly
This operation can be automated by smart contract on Ethereum. Subreddits can if desired have a role to play.

One off point burning, as well as recurring, non-interactive point burning (for subreddit memberships) should be possible and scalable
This is possible and scalable with interaction between Dragonchain Reddit system and Ethereum token contract(s).

Fully open-source solutions are strongly preferred
Dragonchain is fully open source (see section on Disney release after conclusion).

Conclusion

Whether it is today, or in the future, we would like to work together to bring secure flexibility to the highest standards. It is our hope to be considered by Ethereum, Reddit, and other integrative solutions so we may further discuss the possibilities of implementation. In our public demonstration, 256 million transactions were handled in our operational network on chain in 24 hours, for the low cost of $25K, which if run today would cost $625. Dragonchain’s interoperable foundation provides the atmosphere necessary to implement a frictionless community points system. Thank you for your consideration of our proposal. We look forward to working with the community to make something great!

Disney Releases Blockchain Platform as Open Source

The team at Disney created the Disney Private Blockchain Platform. The system was a hybrid interoperable blockchain platform for ledgering and smart contract development geared toward solving problems with blockchain adoption and usability. All objective evaluation would consider the team’s output a success. We released a list of use cases that we explored in some capacity at Disney, and our input on blockchain standardization as part of our participation in the W3C Blockchain Community Group.
https://lists.w3.org/Archives/Public/public-blockchain/2016May/0052.html

Open Source

In 2016, Roets proposed to release the platform as open source to spread the technology outside of Disney, as others within the W3C group were interested in the solutions that had been created inside of Disney.
Following a long process, step by step, the team met requirements for release. Among the requirements, the team had to:
  • Obtain VP support and approval for the release
  • Verify ownership of the software to be released
  • Verify that no proprietary content would be released
  • Convince the organization that there was a value to the open source community
  • Convince the organization that there was a value to Disney
  • Offer the plan for ongoing maintenance of the project outside of Disney
  • Itemize competing projects
  • Verify no conflict of interest
  • Preferred license
  • Change the project name to not use the name Disney, any Disney character, or any other associated IP - proposed Dragonchain - approved
  • Obtain legal approval
  • Approval from corporate, parks, and other business units
  • Approval from multiple Disney patent groups Copyright holder defined by Disney (Disney Connected and Advanced Technologies)
  • Trademark searches conducted for the selected name Dragonchain
  • Obtain IT security approval
  • Manual review of OSS components conducted
  • OWASP Dependency and Vulnerability Check Conducted
  • Obtain technical (software) approval
  • Offer management, process, and financial plans for the maintenance of the project.
  • Meet list of items to be addressed before release
  • Remove all Disney project references and scripts
  • Create a public distribution list for email communications
  • Remove Roets’ direct and internal contact information
  • Create public Slack channel and move from Disney slack channels
  • Create proper labels for issue tracking
  • Rename internal private Github repository
  • Add informative description to Github page
  • Expand README.md with more specific information
  • Add information beyond current “Blockchains are Magic”
  • Add getting started sections and info on cloning/forking the project
  • Add installation details
  • Add uninstall process
  • Add unit, functional, and integration test information
  • Detail how to contribute and get involved
  • Describe the git workflow that the project will use
  • Move to public, non-Disney git repository (Github or Bitbucket)
  • Obtain Disney Open Source Committee approval for release
On top of meeting the above criteria, as part of the process, the maintainer of the project had to receive the codebase on their own personal email and create accounts for maintenance (e.g. Github) with non-Disney accounts. Given the fact that the project spanned multiple business units, Roets was individually responsible for its ongoing maintenance. Because of this, he proposed in the open source application to create a non-profit organization to hold the IP and maintain the project. This was approved by Disney.
The Disney Open Source Committee approved the application known as OSSRELEASE-10, and the code was released on October 2, 2016. Disney decided to not issue a press release.
Original OSSRELASE-10 document

Dragonchain Foundation

The Dragonchain Foundation was created on January 17, 2017. https://den.social/l/Dragonchain/24130078352e485d96d2125082151cf0/dragonchain-and-disney/
submitted by j0j0r0 to ethereum [link] [comments]

vectorbt - blazingly fast backtesting and interactive data analysis for quants

I want to share with you a tool that I was continuously developing during the last couple of months.
https://github.com/polakowo/vectorbt

As a data scientist, when I first started flirting with quant trading, I quickly realized that there is a shortage of Python packages that can actually enable me to iterate over a long list of possible strategies and hyper-parameters quickly. Most open-source backtesting libraries are very evolved in terms of functionality, but simply lack speed. Questions like "Which strategy is better: X or Y?" require fast computation and transformation of data. This not only prolongs your lifecycle of designing strategies, but is dangerous after all: limited number of tests is similar to a tunnel vision - it prevents you from seeing the bigger picture and makes you dive into the market blindly.
After trying tweaking pandas, multiprocessing, and even evaluating my strategies on a cluster with Spark, I finally found myself using Numba - a Python library that can compile slow Python code to be run at native machine code speed. And since there were no packages in the Python ecosystem that could even closely match the speed of my own backtests, I made vectorbt.
vectorbt combines pandas, NumPy and Numba sauce to obtain orders-of-magnitude speedup over other libraries. It builds upon the idea that each instance of a trading strategy can be represented in a vectorized form, so multiple strategy instances can be packed into a single multi-dimensional array. In this form, they can processed in a highly efficient manner and compared easily. It also integrates Plotly and ipywidgets to display complex charts and dashboards akin to Tableau right in the Jupyter notebook. You can find basic examples and explanations in the documentation.

Below is an example of doing in total 67,032 tests on three different timeframes of Bitcoin price history to explore how performance of a MACD strategy depends upon various combinations of fast, slow and signal windows:
import vectorbt as vbt import numpy as np import yfinance as yf from itertools import combinations, product # Fetch daily price of Bitcoin price = yf.Ticker("BTC-USD").history(period="max")['Close'] price = price.vbt.split_into_ranges(n=3) # Define hyper-parameter space # 49 fast x 49 slow x 19 signal fast_windows, slow_windows, signal_windows = vbt.indicators.create_param_combs( (product, (combinations, np.arange(2, 51, 1), 2), np.arange(2, 21, 1))) # Run MACD indicator macd_ind = vbt.MACD.from_params( price, fast_window=fast_windows, slow_window=slow_windows, signal_window=signal_windows, hide_params=['macd_ewm', 'signal_ewm'] ) # Long when MACD is above zero AND signal entries = macd_ind.macd_above(0) & macd_ind.macd_above(macd_ind.signal) # Short when MACD is below zero OR signal exits = macd_ind.macd_below(0) | macd_ind.macd_below(macd_ind.signal) # Build portfolio portfolio = vbt.Portfolio.from_signals( price.vbt.tile(len(fast_windows)), entries, exits, fees=0.001, freq='1D') # Draw all window combinations as a 3D volume fig = portfolio.total_return.vbt.volume( x_level='macd_fast_window', y_level='macd_slow_window', z_level='macd_signal_window', slider_level='range_start', template='plotly_dark', trace_kwargs=dict( colorscale='Viridis', colorbar=dict( title='Total return', tickformat='%' ) ) ) fig.show() 

https://reddit.com/link/hxl6bn/video/180sxqa8mzc51/player
From signal generation to data visualization, the example above needs roughly a minute to run.

vectorbt let's you
The current implementation has limitations though:

If it sounds cool enough, try it out! I would love if you'd give me some feedback and contribute to it at some point, as the codebase has grown very fast. Cheers.
submitted by plkwo to algotrading [link] [comments]

Gridcoin 5.0.0.0-Mandatory "Fern" Release

https://github.com/gridcoin-community/Gridcoin-Research/releases/tag/5.0.0.0
Finally! After over ten months of development and testing, "Fern" has arrived! This is a whopper. 240 pull requests merged. Essentially a complete rewrite that was started with the scraper (the "neural net" rewrite) in "Denise" has now been completed. Practically the ENTIRE Gridcoin specific codebase resting on top of the vanilla Bitcoin/Peercoin/Blackcoin vanilla PoS code has been rewritten. This removes the team requirement at last (see below), although there are many other important improvements besides that.
Fern was a monumental undertaking. We had to encode all of the old rules active for the v10 block protocol in new code and ensure that the new code was 100% compatible. This had to be done in such a way as to clear out all of the old spaghetti and ring-fence it with tightly controlled class implementations. We then wrote an entirely new, simplified ruleset for research rewards and reengineered contracts (which includes beacon management, polls, and voting) using properly classed code. The fundamentals of Gridcoin with this release are now on a very sound and maintainable footing, and the developers believe the codebase as updated here will serve as the fundamental basis for Gridcoin's future roadmap.
We have been testing this for MONTHS on testnet in various stages. The v10 (legacy) compatibility code has been running on testnet continuously as it was developed to ensure compatibility with existing nodes. During the last few months, we have done two private testnet forks and then the full public testnet testing for v11 code (the new protocol which is what Fern implements). The developers have also been running non-staking "sentinel" nodes on mainnet with this code to verify that the consensus rules are problem-free for the legacy compatibility code on the broader mainnet. We believe this amount of testing is going to result in a smooth rollout.
Given the amount of changes in Fern, I am presenting TWO changelogs below. One is high level, which summarizes the most significant changes in the protocol. The second changelog is the detailed one in the usual format, and gives you an inkling of the size of this release.

Highlights

Protocol

Note that the protocol changes will not become active until we cross the hard-fork transition height to v11, which has been set at 2053000. Given current average block spacing, this should happen around October 4, about one month from now.
Note that to get all of the beacons in the network on the new protocol, we are requiring ALL beacons to be validated. A two week (14 day) grace period is provided by the code, starting at the time of the transition height, for people currently holding a beacon to validate the beacon and prevent it from expiring. That means that EVERY CRUNCHER must advertise and validate their beacon AFTER the v11 transition (around Oct 4th) and BEFORE October 18th (or more precisely, 14 days from the actual date of the v11 transition). If you do not advertise and validate your beacon by this time, your beacon will expire and you will stop earning research rewards until you advertise and validate a new beacon. This process has been made much easier by a brand new beacon "wizard" that helps manage beacon advertisements and renewals. Once a beacon has been validated and is a v11 protocol beacon, the normal 180 day expiration rules apply. Note, however, that the 180 day expiration on research rewards has been removed with the Fern update. This means that while your beacon might expire after 180 days, your earned research rewards will be retained and can be claimed by advertising a beacon with the same CPID and going through the validation process again. In other words, you do not lose any earned research rewards if you do not stake a block within 180 days and keep your beacon up-to-date.
The transition height is also when the team requirement will be relaxed for the network.

GUI

Besides the beacon wizard, there are a number of improvements to the GUI, including new UI transaction types (and icons) for staking the superblock, sidestake sends, beacon advertisement, voting, poll creation, and transactions with a message. The main screen has been revamped with a better summary section, and better status icons. Several changes under the hood have improved GUI performance. And finally, the diagnostics have been revamped.

Blockchain

The wallet sync speed has been DRASTICALLY improved. A decent machine with a good network connection should be able to sync the entire mainnet blockchain in less than 4 hours. A fast machine with a really fast network connection and a good SSD can do it in about 2.5 hours. One of our goals was to reduce or eliminate the reliance on snapshots for mainnet, and I think we have accomplished that goal with the new sync speed. We have also streamlined the in-memory structures for the blockchain which shaves some memory use.
There are so many goodies here it is hard to summarize them all.
I would like to thank all of the contributors to this release, but especially thank @cyrossignol, whose incredible contributions formed the backbone of this release. I would also like to pay special thanks to @barton2526, @caraka, and @Quezacoatl1, who tirelessly helped during the testing and polishing phase on testnet with testing and repeated builds for all architectures.
The developers are proud to present this release to the community and we believe this represents the starting point for a true renaissance for Gridcoin!

Summary Changelog

Accrual

Changed

Most significantly, nodes calculate research rewards directly from the magnitudes in EACH superblock between stakes instead of using a two- or three- point average based on a CPID's current magnitude and the magnitude for the CPID when it last staked. For those long-timers in the community, this has been referred to as "Superblock Windows," and was first done in proof-of-concept form by @denravonska.

Removed

Beacons

Added

Changed

Removed

Unaltered

As a reminder:

Superblocks

Added

Changed

Removed

Voting

Added

Changed

Removed

Detailed Changelog

[5.0.0.0] 2020-09-03, mandatory, "Fern"

Added

Changed

Removed

Fixed

submitted by jamescowens to gridcoin [link] [comments]

Radix Solving DeFi Risk

RADIX: THE PROTECTION AGAINST DEFI RISK
Radix is a First-layer protocol for DeFi. Currently, DeFi applications are based on protocols that are not scalable Radix has created a robust, secure, and scalable protocol for building applications and tokens. Based on existing public ledgers’ success, the Radix protocol is an unauthorized framework within which DeFi services can be developed and operated. Radix claims to solve two of the biggest problems in DeFi: scalability and security. Overall, the blockchain-based decentralized finance (DeFi) space is still evolving but offers a compelling value proposition where individuals and institutions have broader access to financial applications without the need for a trusted broker.
WHAT IS DECENTRALIZED FINANCE (DeFi)
Decentralized finance is a new financial system based on public blockchains such as Bitcoin and Ethereum. After all, Bitcoin and Ethereum are not just digital currencies. They are essentially open-source networks that can be used to change the way the world economy works. DeFi is a significant project to decentralize traditional core use cases such as trading, lending, investment, asset management, payments, and insurance on blockchains. DeFi relies on decentralized applications or protocols (dApps). By running these dApps on a blockchain, a peer-to-peer financial network is provided. Each dApp can be combined with each other like Lego blocks. Smart contracts act as connectors comparable to perfectly defined APIs in traditional systems. Rarely will you get great rewards without huge risk Just like every other industry, the DeFi system also has its own risks and issues. Unfortunately, many DeFi system users underestimate the risk associated with automated loan protocol’s impressive interest rates.
FORMS OF DEFI RISKS
When working with DeFi solutions, it is essential to consider technical and procedural risks as well. Technical risk means assessing potential weak spots in the hardware and software behind a product or service. This is important for decentralized applications (dApps) Procedural risk can be viewed as similar to technical risk, but rather than considering the product or service, procedural risk examines how users can be directed to use the product in undesirable ways that could compromise their safety.
RADIX SOLVING DeFi RISKS
DeFi is worth more than $ 8 billion. However, DeFi requires fast and minimal transaction fees and secure building systems to reach its full potential. DeFi applications must be scalable and compilable. Protocols such as Ethereum 2.0, Polkadot, and Cosmos solve the wrong scaling issues and don’t attract others, according to Piers. According to Piers, mainstream DeFi needs a bottom-up DLT platform for DeFi_ to work for both users and developers. This is the purpose of Radix.
Incentives are needed to attract developers for the DeFi ecosystem to continue to grow. Radix has an innovative incentive program for developers that allows them to take advantage of the applications they contribute to. Radix has two significant innovations: The first is Cerberus, the scalable consensus protocol. Thanks to its highly fragmented data structure and its unique application layer, Cerberus can process many transactions.
The second innovation is the Radix Engine, a developer interface that enables public ledger to be quickly deployed in a secure environment. Radix Engine is the Radix application layer. In Crypto Chat, Piers anticipates that DeFi will have more liquidity in the transition market than any other exchange in the next decade. “The key component of DeFi is how liquidity can move between applications and products.” The Radix protocol is a combination of four core technologies that solve four significant issues to the growth of DeFi. It is a platform where transactions are fast with minimal transaction fee and high security. The scale is unlimited, and connections between applications. dApps can be created quickly and rely on their ability to safely manage user resources. Builders are rewarded directly from the platform for additional contributions, both large and small. It is a platform intended to serve as the basis for mainstream DeFi on a global scale.
Each of the four technologies on the Radix platform represents a breakthrough in the Defi-related issue we want to share with the world. At a critical technology milestone last year, the Radix team overcame DeFi’s core scalability problem by using its technology to over 1 million transactions per second, a performance that exceeds five times the NASDAQ at its peak.
THE POSSIBLE IMPACT OF DECENTRALIZED FINANCE
Five ways decentralized finance can affect the universe 1. Accessing financial services across borders With decentralized finance, all you need is an internet connection to access financial services in any part of the world. There are several barriers to access in the current system: Status: citizenship, document, identity, etc. Lack of Wealth: High Entry-Level Funds to Access Financial Services Location: Great distance to business economies and financial service providers A senior trader in a financial company will have the same access as a farmer in India’s remote area in a decentralized financial system.
  1. Affordable cross-border payments Decentralized funding eliminates costly intermediaries to make remittance services more affordable to the world’s population. In today’s system, sending money across borders is too expensive for people — the average global transfer fee is 7%. In decentralized financial services, transfer fees can be less than 3%.
  2. More privacy and security With decentralized finance, users have responsibility for their assets and can securely transact without a major party’s approval. In this day and age, parents risk people’s wealth and knowledge if they don’t protect them.
  3. Censorship-resistant transactions In a decentralized financial network, transactions are immutable, and blockchains cannot be closed by central institutions such as governments, central banks, or large corporations.
There are poor governance and authoritarianism. Users can exit the decentralized financial system to protect their assets. Venezuelans, for example, are already using Bitcoin to protect their wealth from government manipulation and hyperinflation. 5.Ease of use
With plug and play applications, users can spontaneously access and use the decentralized financial without centralized finance. With a decentralized system, anyone can get a loan from any part of the world through interoperable apps, invest in a business, pay off the loan, and make a profit.
writen By Naphtali Dabuk for more information visit https://t.me/radix_dlt https://twitter.com/radixdlt http://www.radixdlt.com/
submitted by d_realnafty to Radix [link] [comments]

What naming convention should I use for a JSON RPC client API designed for multiple languages?

This is the documentation with the original RPC client API specification. The naming convention in the specification is camel case.
Naming conventions might differ in subtle ways for different languages (camel case vs. pascal case), but for some conventions like snake case (Python) or Swift's Fluent Usage API changing the names in the original specification might increase the cognitive load when using the API for those already familiar with the specification.
When searching for different JSON RPC APIs on GitHub, some implementations seem to take advantage of reflection to intercept method calls and pass them to RPC request "as is" so method names for that language are the same as in the original spec. If reflection is not available the names are hardcoded and are mostly the same as the spec, changing only the capitalization of letters for some languages.
Some examples:
Not using Fluent Design in Swift
https://github.com/fanquake/CoreRPC/blob/masteSources/CoreRPC/Blockchain.swift https://github.com/brunophilipe/SwiftRPC/blob/masteSwiftRPC/SwiftRPC+Requests.swift
Not using snake case in Ruby
https://github.com/sinisterchipmunk/bitcoin-client/blob/mastelib/bitcoin-client/client.rb
Changing method names to pascal case in C#
https://github.com/cryptean/bitcoinlib/blob/mastesrc/BitcoinLib/Services/RpcServices/RpcService/RpcService.cs
submitted by rraallvv to learnprogramming [link] [comments]

Google Alternatives huge list restore your privacy

This guide aims to be the most exhaustive resource available for documenting alternatives to Google products.
With growing concerns over online privacy and securing personal data, more people than ever are considering alternatives to Google products.
After all, Google’s business model essentially revolves around data collection and advertisements, both of which infringe on your privacy. More data means better (targeted) ads and more revenue. The company pulled in over $116 billion in ad revenue last year alone – and that number continues to grow.
But the word is getting out. A growing number of people are seeking alternatives to Google products that respect their privacy and data.
So let’s get started.
Note: The lists below are not necessarily in rank order. Choose the best products and services based on your own unique needs.

Google search alternatives

When it comes to privacy, using Google search is not a good idea. When you use their search engine, Google is recording your IP address, search terms, user agent, and often a unique identifier, which is stored in cookies.
Here are ten alternatives to Google search:
  1. Searx – A privacy-friendly and versatile metasearch engine that’s also open source.
  2. MetaGer – An open source metasearch engine with good features, based in Germany.
  3. SwissCows – A zero-tracking private search engine based in Switzerland, hosted on secure Swiss infrastructure.
  4. Qwant – A private search engine based in France.
  5. DuckDuckGo – A private search engine based in the US.
  6. Mojeek – The only true search engine (rather than metasearch engine) that has its own crawler and index (based in the UK).
  7. YaCy – A decentralized, open source, peer-to-peer search engine.
  8. Givero – Based in Denmark, Givero offers more privacy than Google and combines search with charitable donations.
  9. Ecosia – Ecosia is based in Germany and donates a part of revenues to planting trees.
*Note: With the exception of Mojeek, all of the private search engines above are technically metasearch engines, since they source their results from other search engines, such as Bing and Google.
(Startpage is no longer recommended.)

Gmail alternatives

Gmail may be convenient and popular, but there are three major problems:
  1. Your inbox is used as a data collection tool. (Did you know Google is tracking your purchasing history from the receipts in your inbox?)
  2. Rather than seeing just emails, your email inbox is also used for ads and marketing.
  3. The contents of your inbox are being shared with Google and other random third parties.
When you remain logged in to your Gmail account, Google can easily track your activities online as you browse different websites, which may be hosting Google Analytics or Google ads (Adsense).
Here are ten alternatives to Gmail that do well in terms of privacy:
  1. Tutanota – based in Germany; very secure and private; free accounts up to 1 GB
  2. Mailfence – based in Belgium; lots of features; free accounts up to 500 MB
  3. Posteo – based in Germany; €1/mo with 14 day refund window
  4. StartMail – based in Netherlands; $5.00/mo with 7 day free trial
  5. Runbox – based in Norway; lots of storage and features; $1.66/mo with 30 day free trial
  6. Mailbox.org – based in Germany; €1/mo with 30 day free trial
  7. CounterMail – based in Sweden; $4.00/mo with 7 day free trial
  8. Kolab Now – based in Switzerland; €4.41/mo with 30 day money-back guarantee
  9. ProtonMail – based in Switzerland; free accounts up to 500 MB
  10. Thexyz – based in Canada; $1.95/mo with 30 day refund window

Chrome alternatives

Google Chrome is a popular browser, but it’s also a data collection tool – and many people are taking notice. Just a few days ago, the Washington Post asserted that “Google’s web browser has become spy software,” with 11,000 tracker cookies observed in a single week.
Here are seven alternatives for more privacy:
  1. Firefox browser – Firefox is a very customizable, open-source browser that is popular in privacy circles. There are also many different Firefox modifications and tweaks that will give you more privacy and security. (Also check out Firefox Focus, a privacy-focused version for mobile users.)
  2. Iridium – Based on open source Chromium, Iridium offers numerous privacy and security enhancements over Chrome, source code here.
  3. GNU IceCat – A fork of Firefox from the Free Software Foundation.
  4. Tor browser – A hardened and secured version of Firefox that runs on the Tor network by default. (It also does a good job against browser fingerprinting.)
  5. Ungoogled Chromium – Just as the name says, this is an open source version of Chromium that has been “ungoogled” and modified for more privacy.
  6. Brave – Brave is another Chromium-based browser that is rather popular. It blocks trackers and ads by default (except for “approved” ads that are part of the “Brave Ads” network).
  7. Waterfox – This is a fork of Firefox that is configured for more privacy by default, with Mozilla telemetry stripped out of the code.
Of course, there are other alternatives to Chrome, such as Safari (from Apple), Microsoft Internet ExploreEdge, Opera, and Vivaldi – but these also come with some privacy drawbacks.

Google Drive alternatives

If you’re looking for a secure cloud storage option, you can check out these Google Drive alternatives:
  1. Tresorit – A user-friendly cloud storage option based in Switzerland.
  2. ownCloud – An open source and self-hosted cloud platform developed in Germany.
  3. Nextcloud – Nextcloud is also an open source, self-hosted file sharing and collaboration platform, based in Germany.
  4. Sync – Based in Canada, Sync offers a secure, encrypted cloud storage solution for businesses and individuals.
  5. Syncthing – Here we have a decentralized, open source, peer-to-peer cloud storage platform.
Of course, Dropbox is another popular Google drive alternative, but it’s not the best in terms of privacy.

Google Calendar alternative

Here are some Google Calendar alternatives:
  1. Lightning Calendar is an open source calendar option developed by Mozilla, and it’s compatible with Thunderbird and Seamonkey.
  2. Etar, an open source, basic calendar option.
  3. Fruux, an open source calendar with good features and support for many operating systems.
For those wanting a combined solution for both email and calendar functionality, these providers offer that:

Google Docs / Sheets / Slides alternative

There are many solid Google Docs alternatives available. The largest offline document editing suite is, of course, Microsoft Office. As most people know, however, Microsoft is not the best company for privacy. Nonetheless, there are a few other good Google Docs alternatives:
  1. CryptPad – CryptPad is a privacy-focused alternative with strong encryption, and it’s free.
  2. Etherpad – A self-hosted collaborative online editor that’s also open source.
  3. Mailfence Documents – From the Mailfence team, this is a secure file sharing, storage, and collaboration tool.
  4. Zoho Docs – This is another good Google Docs alternative with a clean interface and good functionality, although it may not be the best for privacy.
  5. OnlyOffice – OnlyOffice feels a bit more restricted than some of the other options in terms of features.
  6. Cryptee – This is a privacy-focused platform for photo and document storage and editing. It’s open source and based in Estonia.
  7. LibreOffice (offline) – You can use LibreOffice which is free and open source.
  8. Apache OpenOffice (offline) – Another good open source office suite.

Google Photos alternative

Here are a few good Google Photos alternatives:
Shoebox was another alternative, but it closed operations in June 2019.

YouTube alternatives

Unfortunately, YouTube alternatives can really be hit or miss, with most struggling to gain popularity.
  1. Peertube
  2. DTube
  3. Bitchute
  4. invidio.us
  5. Vimeo
  6. Bit.tube
  7. Dailymotion
  8. Hooktube
Tip: Invidio.us is a great Youtube proxy that allows you to watch any Youtube video without logging in, even if the video is somehow restricted. To do this, simply replace [www.youtube.com] with [invidio.us] in the URL you want to view.

Google translate alternative

Here are a few Google translate alternatives I have come across:
  1. DeepL – DeepL is a solid Google Translate alternative that seems to give great results. Like Google Translate, DeepL allows you to post up to 5,000 characters at a time (but the pro version is unlimited). The user interface is good and there is also a built-in dictionary feature.
  2. Linguee – Linguee does not allow you to post large blocks of text like DeepL. However, Linguee will give you very accurate translations for single words or phrases, along with context examples.
  3. dict.cc – This Google Translate alternative seems to do a decent job on single-world lookups, but it also feels a bit outdated.
  4. Swisscows Translate – A good translation service supporting many languages.
If you want to translate blocks of text, check out DeepL. If you want in-depth translations for single words or phrases, then Linguee is a good choice.

Google analytics alternative

For website admins, there are many reasons to use an alternative to Google analytics. Aside from privacy concerns, there are also faster and more user-friendly alternatives that also respect your visitors’ privacy.
  1. Clicky is a great alternative to Google Analytics that truncates and anonymizes visitor IP addresses by default. It is lightweight, user-friendly, and fully compliant with GDPR regulations, while also being certified by Privacy Shield.
  2. Matomo (formerly Piwik) is an open-source analytics platform that respects the privacy of visitors by anonymizing and truncating visitor IP addresses (if enabled by the website admin). It is also certified to respect user privacy.
  3. Fathom Analytics is an open source alternative to Google Analytics that’s available on Github here. It’s minimal, fast, and lightweight.
  4. Get Insights – Another privacy-focused analytics platform, with a full analytics suite. The front-end client is open source and available here.
  5. AT Internet is a France-based analytics provider that is fully GDPR compliant, with all data stored on French servers, and a good track record going back to 1996.
Many websites host Google Analytics because they run Google Adsense campaigns. Without Google Analytics, tracking performance of these campaigns would be difficult. Nonetheless, there are still better options for privacy.

Google Maps alternative

A map alternative for PCs is OpenStreetMap.
A few Google Maps alternatives for mobile devices include:
  1. OsmAnd is a free and open-source mobile maps app for both Android and iOS (based on OpenStreetMap data).
  2. Maps (F Droid) uses OpenStreetMap data (offline).
  3. Maps.Me is another option that is free on both Android and iOS, but there is a fair amount of data collection with this alternative, as explained in their privacy policy.
  4. MapHub is also based on OpenStreeMap data and it does not collect locations or user IP addresses.
Note: Waze is not an “alternative” as it is now owned by Google.

Google Play Store alternative

Currently the best Google Play Store alternative is to use F-Droid and then go through the Yalp store. As explained on the official site, F-Droid is an installable catalog of FOSS (Free and Open Source Software) applications for the Android platform.
After you have installed F-Droid, you can then download the Yalp store APK, which allows you to download apps from the Google Play Store directly as APK files.
📷The Yalp Store is a good alternative to the Google Play Store.
See the F-Droid website or the official GitHub page for more info. Other alternatives to the Google Play Store include:

Google Chrome OS alternative

Want to ditch the Chromebook and Chrome OS? Here are a few alternatives:
  1. Linux – Of course, Linux is arguably the best alternative, being a free, open-source operating system with lots of different flavors. With some adjustments, Linux Ubuntu can be run on Chromebooks.
  2. Tails – Tails is a free, privacy-focused operating system based on Linux that routes all traffic through the Tor network.
  3. QubesOS – Recommended by Snowden, free, and also open source.
Of course, the other two big operating system alternatives are Windows and Apple’s operating system for MacBooks – Mac OS. Windows, particularly Windows 10, is a very bad option for privacy. While slightly better, Apple also collects user data and has partnered with the NSA) for surveillance.

Android alternatives

The biggest alternative to Android is iOS from Apple. But we’ll skip over that for reasons already mentioned. Here are a few Android OS alternatives:
  1. LineageOS – A free and open-source operating system for phones and tablets based on Android.
  2. Ubuntu Touch – A mobile version of the Ubuntu operating system.
  3. Plasma Mobile – An open source, Linux-based operating system with active development.
  4. Sailfish OS – Another open source, Linux-based mobile OS.
  5. Replicant – A fully free Android distribution with an emphasis on freedom, privacy, and security.
  6. /e/ – This is another open source project with a focus on privacy and security.
Purism is also working on a privacy-focused mobile phone called the Librem 5. It is in production, but not yet available (estimated Q3 2019).

Google Hangouts alternatives

Here are some alternatives to Google Hangouts:
  1. Wire – A great all-around secure messenger, video, and chat app, but somewhat limited on the number of people who can chat together in a group conversation via voice or video.
  2. Signal – A good secure messenger platform from Open Whisper Systems.
  3. Telegram – A longtime secure messenger app, formerly based in Russia, now in Dubai.
  4. Riot – A privacy-focused encrypted chat service that is also open source.

Google Domains alternative

Google Domains is a domain registration service. Here are a few alternatives:
  1. Namecheap – I like Namecheap because all domain purchases now come with free WhoisGuard protection for life, which protects your contact information from third parties. Namecheap also accepts Bitcoin and offers domain registration, hosting, email, SSL certs, and a variety of other products.
  2. Njalla – Njalla is a privacy-focused domain registration service based in Nevis. They offer hosting options, too, and also accept cryptocurrency payments.
  3. OrangeWebsite – OrangeWebsite offers anonymous domain registration services and also accepts cryptocurrency payments, based in Iceland.

Other Google alternatives

Here more alternatives for various Google products:
Google forms alternativeJotForm is a free online form builder.
Google Keep alternative – Below are a few different Google Keep alternatives:
Google Fonts alternative – Many websites load Google fonts through Google APIs, but that’s not necessary. One alternative to this is to use Font Squirrel, which has a large selection of both Google and non-Google fonts which are free to download and use.
Google Voice alternativeJMP.chat (both free and paid)
G Suite alternativeZoho is probably the best option
Google Firebase alternativeKuzzle (free and open source)
Google Blogger alternativesWordPress, Medium, and Ghost are all good options.
submitted by giganticcobra to degoogle [link] [comments]

List of CFML Vulnerabilities & Security Issues

This list is updated frequently as we detect more issues, also note that we can’t detect these issues in all cases on all servers, even if the issue has not been patched yet.
Here are some CFML Vulnerabilities & Security Issues that you might have faced-

  1. Jakarta Virtual Directory Exposed – The /jakarta virtual directory (which is required by CF10+ on Tomcat/IIS) is serving files such as isapi_redirect.properties or isapi_redirect.log. The only URI that should be served is /jakarta/isapi_redirect.dll – you can use Request Filtering to block.
  2. Bitcoin Miner Discovered – Found files in /CFIDE that match the signature of a bitcoin miner exploit. Look for /CFIDE/m /CFIDE/m32 /CFIDE/m64 and /CFIDE/updates.cfm among others.
  3. Hotfix APSB11-14 Not Installed – Apply the hotfixes located in Adobe Security Notice apsb11-14.
  4. Railo Security Issue 2635 – Input of Chr(0) to the ReplaceList function can cause infinate loop / crash. Fixed in Version 4.1.1.008
  5. XSS Injection in cfform.js – A document.write call was found in your /CFIDE/scripts/cfform.js file, an attacker may be injecting a javascript, please check your cfform.js file.
  6. Executable found in CFIDE – Found executable file(s) in /CFIDE with one of the following file extensions: dll, exe, bat, sh
  7. Heartbleed Vulnerability Detected – The heartbleed vulnerability is a bug in OpenSSL (the crypto library used by Apache, NGinx, and others) that can allow the leakage of private keys used for TLS/SSL encryption.
  8. OpenBD AdminAPI Exposed to the Public – The /bluedragon/adminapi/ directory is open to the public it should be locked down to prevent exploit.
  9. Security Hotfix APSB12-26 Not Installed – The security hotfix referenced in Adobe Security Bulletin APSB12-26 was not found to be installed on your server. This hotfix resolves a sandbox permission issue.
  10. Security Hotfix APSB17-30 Not Installed Or Partailly Installed – The security hotfix referenced in Adobe Security Bulletin APSB17-30 was not found to be fully installed on your server. For the hotfix to be effective you must have Java 8 update 121 or greater installed. This hotfix resolves two critical vulnerabilities CVE-2017-11286 and CVE-2017-11283 / CVE-2017-11284 and one important vulnerability CVE-2017-11285. The issues are resolved in ColdFusion 11 Update 13+ and ColdFusion 2016 Update 5+ with Java 8 update 121 or greater.
  11. ColdFusion Example Applications Installed – The ColdFusion example applications are installed at /cfdocs/exampleapps/ or /CFIDE/gettingstarted/, they should not be installed on a production server.
  12. Svn Hidden Directory Exposed – A request for /.svn/text-base/index.cfm.svn-base appears to resolve to a subversion repository, which could lead to source code disclosure. Please block .svn/
  13. Solr Search Service Exposed – CVE-2010-0185 detected. ColdFusion 9 Apache Solr services are exposed to the public. Any data in solr search collections may be exposed to the public. Follow the instructions in APSB10-04 to remedy, or upgrade to ColdFusion 9.0.1.
  14. TLS Compression Supported – TLS Compression should be disabled due to the CRIME TLS vulnerability.
  15. Security Hotfix APSB11-04 Not Installed – The security hotfix referenced in Adobe Security Bulletin APSB11-04 was not found to be installed on your server. This hotfix also contains most prior security hotfixes.
  16. Git Hidden Directory Exposed – A request for /.git/config appears to resolve to a git repository, wouch could lead to source code disclosure. Please block .git/
  17. Cross Site Scripting Vulnerability CVE-2011-4368 – CVE-2011-4368 detected. Apply the hotfix located in Adobe Security Notice apsb11-29.
  18. JVM Vulnerable to Java Null Byte Injection – The JVM that you are running is vulnerable to null byte injections (or null byte poisioning) in java.io file operations. Java 1.7.0_40+ or 1.8+ attempt to mitigate null byte injection attacks.
  19. Java 11 Security Update Available – The JVM that you are running contains security vulnerabilities that could be exploited in server side environments. Update to the latest version of Java 11. Note that Oracle Java 11 requires a commercial license. Adobe CF customers can download Oracle Java 11 from the ColdFusion Downloads Page. You can also use OpenJDK, Amazon Corretto, or other non-oracle JVMs for free.
  20. Security Hotfix APSB19-10 Not Installed – The security hotfix referenced in Adobe Security Bulletin APSB19-10 was not found to be installed on your server. This hotfix resolves 2 issues, one important (CVE-2019-7092) and one critical (CVE-2019-7091). The issues are resolved in ColdFusion 11 Update 16+ ColdFusion 2016 Update 8+ and ColdFusion 2018 Update 2+. For all security fixes to be effective you should also have Java 8 update 121 or greater installed.
  21. Cross Site Scripting Vulnerability CVE-2011-0583 – CVE-2011-0583 detected. Apply the hotfixes located in Adobe Security Notice apsb11-04. The detection of this vulnerability also indicates to a high degree of likelihood that the following vulnerabilities may also exist: CVE-2011-0580, CVE-2011-0581, CVE-2011-0582, CVE-2011-0584
  22. Apache 2.2 Security Update Available – The version of Apache you are running does not contain the most recent security fixes.
  23. BlaseDS/AMF External XML Entity Injection – CVE-2009-3960 detected. You must apply the hotfix specified in Adobe Security Bulliten APSB10-05, otherwise an attacker can read any file on the server that ColdFusion has permission to read. You need to do this even if you don’t use BlaseDS or Flash Remoting because it is enabled in CF by default.
  24. SSL Version 2 Enabled – Your Web Server is accepting SSL V2 connections, a weak protocol. For PCI compliance, and strong security you must disable this protocol on your web server.
  25. Missing Strict-Transport-Security Header – This domain supports HTTPS but does not send the HTTP Strict-Transport-Security response header (HSTS) to force HTTPS.
  26. The /CFIDE/scripts directory is in default location. – Consider changing the default location of /CFIDE/scripts/ by changing the value of the Default Script Src setting in the ColdFusion Administrator.
  27. Recalled Hotfix 10.0.3 Installed – You are running ColdFusion 10.0.3 which has been recalled by adobe due to bugs in the release. Please install the latest 10.0 hotfix.
  28. ComponentUtils Exposed to the Public – The /CFIDE/componentutils/ directory is open to the public it should be locked down to prevent exploit.
  29. ColdFusion Update Available – You may not be running the latest version of ColdFusion 8, consider updating to ColdFusion 8.0.1
  30. Security Hotfix APSB13-10 Not Installed – The security hotfix referenced in Adobe Security Bulletin APSB13-10 was not found on your server. This hotfix resolves authentication issues that could allow an attacker impersonate a user in your application, or a ColdFusion Administrator.
  31. CVE-2010-2861 Detected – Path Traversal Vulnerability detected (CVE-2010-2861 APSB10-18), this allows an attacker to read any file on the servers file system that ColdFusion has access to (within the same drive on windows).
  32. Security Hotfix APSB13-19 Not Installed – The security hotfix referenced in Adobe Security Bulletin APSB13-19 was not found on your server.
  33. Security Hotfix APSB12-15 Not Installed – The security hotfix referenced in Adobe Security Bulletin APSB12-15 was not found to be installed on your server. This hotfix resolves a HTTP response splitting vulnerability in the ColdFusion Component Browser CVE-2012-2041.
  34. Security Hotfix APSB16-16 Not Installed – The security hotfix referenced in Adobe Security Bulletin APSB16-16 was not found to be installed on your server. This hotfix addresses a XSS issue, a Java Deserialization Vulnerability and a TLS Hostname verification issue. This issue is fixed in ColdFusion 10 Update 19+, ColdFusion 11 Update 8+, and ColdFusion 2016 Update 1+
  35. Vulnerable PageSpeed Module – The Version of PageSpeed Module you are using may be vulnerable to one or more vulnerabilities. Update your PageSpeed web server module to the latest version to resolve.
  36. TLS 1.2 Is Not Enabled – Configure your server to accept TLS 1.2 connections for optimal HTTPS security. Note for IIS you must be running Windows 2008r2 or greater for TLS 1.2 support. You can use our IIS SSL / TLS configuration tool to toggle protocol support on your server.
  37. Java 13 EOL – Java 13 has reached end of life at the release of Java 14. It is not a LTS (Long Term Support Version), you can use Java 11 for LTS.
  38. Lucee Security Issue 2015-08-06 – Lucee fixed an XSS issue in version 4.5.1.023. This issue remains unpatched in Railo.
submitted by aligatorraid to coldfusion [link] [comments]

Placing Your Crypto Eggs in Every Basket: Everything You Need to Know About Yield Farming in 2020

Placing Your Crypto Eggs in Every Basket: Everything You Need to Know About Yield Farming in 2020
One of the most prominent reasons people invest in cryptocurrencies is that it is a hedge. It has been proven with some clarity that the asset class operates independently of traditional markets. A lot of established investors and firms have invested in the market just to diversify their portfolio, the most recent being MicroStrategy, which invested $250 million in Bitcoin and other assets.
But even within the cryptocurrency asset class, there are several ways in which one can diversify their income. In some ways, it may even be better than other assets classes, as it can be tokenized in digital form. There are challenges too, most notably, a high barrier of entry for the non-tech-savvy.
We’ll get to the ‘how’ in a bit. Let’s turn our attention back to the ‘why’.
Cryptocurrencies provide many ways in which to diversify your portfolio but one of the best ways is with passive income options, of which there are several. The most talked about option is easily Decentralized Finance (DeFi), which will be the subject of our discussion today.
It’s important to know how the service works in order to make the most out of it. Unfortunately, there are many out there seeking to capitalize on the mania and make quick a buck — but that’ll never happen.
The purpose of this piece is to help you position yourself for passive income maximization with DeFi and possibly even make a decent profit. The time frame you are looking at is months, not days, so don’t get hasty. The best value comes from long-term investments.
The QDeFi team is here to make everything easy for you.
What is DeFi and Yield Farming?
The chances are, you have heard of DeFi. Given the buzz, it’s been hitting the headlines and is even being talked about in mainstream finance. So there is a good probability that you know about this rapidly developing niche in the cryptocurrency space.
Even if the practical aspect of investing is a little technical, the concept itself is fairly simple.
DeFi is simply various financial services (like lending and borrowing) that are completely decentralized. There is no middleman involved in the process of lending or trading, meaning that there is no centralized entity to take a cut or slow down the process. Everything happens between the two concerned parties, which results in greater security and faster transactions.
How is this done, you might ask. Mostly through smart contracts and other technologies that take care of dispute resolutions to ensure disagreements are settled fairly. Governance by all of the asset holders also means that the terms of the services can be adjusted, according to their liking and not by some centralized party charging rates to benefit themselves.
But perhaps the most salient feature of DeFi is that anyone can easily participate. You don’t need to go through a lengthy process just to be eligible and you don’t need to have extensive documentation either.
Since this is a new space with evolving technology, the tricky part is making your first investments, which can be challenging. This is true for all cryptocurrency activities but doubly so for such a recent thing as DeFi.
The issue can boil down to user-friendliness. Most DeFi protocols and platforms are not user-friendly at the moment, leaving participation accessible only to those who possess some technical knowledge. But that’s why we’re writing this — so you can begin your foray into DeFi following this a step by step guide without having to worry about making a mistake.
But before that, we’ll have to learn a little about yield farming.
What is Yield Farming in detail ?
Ifyou’re going to invest in something, you’re going to want to choose something to invest in. And any investor in the market will tell you that yield farming is where it’s at.
Strange name, you might think, but cryptocurrencies are no strangers to terms like this (“mining” for example). And the phrase is pretty self-explanatory. Investors simply use their existing assets/collateral on certain platforms, providing liquidity and generating revenue for their contribution.
This may all sound confusing, but let’s break it down (we’ll go through specific examples shortly as well).
In a nutshell, yield farming is simply letting idle assets generate revenue by making them useful to others. The hot topic right now is liquidity pools, which is where you contribute to an asset’s liquidity by providing it to a liquidity pool on a platform like Uniswap.
But the real trick is knowing how to find the synergies between the various DeFi services, i.e. forming a yield farming strategy. As another example, you can borrow a stake on a platform and use that to contribute to a liquidity pool and earn fees. These are the yield farming strategies that some individuals are very adept at forming.
Compound this with governance tokens that platforms release and you have a pretty nifty way of earning tokens, which could potentially reach a high value in the medium to long term. That’s why investors have been rushing towards DeFi.
Now we get to the most exciting part of learning about yield farming — what are the best performing protocols and how much can we realistically make?
Some of the most notable choices for yield farming protocols and platforms are the following:
  • Ampleforth (AMPL)
  • Compound (COMP)
  • YFI (YFI)
  • Balancer (BAL)
  • Curve (CRV)
If you’ve paid any attention to financial news, then you know these are the ones that have made the highest gains for investors. YFI even temporarily held a 1000% APY for its investors, though such unrealistic gains are no longer the norm. Gains have varied but it’s not uncommon to hear gains in the double digits.

https://preview.redd.it/9dpufd6dxjm51.png?width=1600&format=png&auto=webp&s=4752cb7ea900cf0a9c01b5a2e52a55cfe3feb0a9
We’ve mentioned different types of protocols because rates may vary and it does take some constant supervision of the market to know where the best rates lie. The aforementioned projects are only some of the choices you have for yield farming, but they are among the better ones because they have avoided catastrophic incidents so far.
Going over the particulars of each protocol is out of the scope of this guide but we’ll use some of them to run you through your first DeFi investment. From there, you should be able to manage on your own and use the plentiful resources of the internet to refine your strategies.
submitted by QDAODeFi to u/QDAODeFi [link] [comments]

guide to how to restore your privacy huge list

This guide aims to be the most exhaustive resource available for documenting alternatives to Google products.
With growing concerns over online privacy and securing personal data, more people than ever are considering alternatives to Google products.
After all, Google’s business model essentially revolves around data collection and advertisements, both of which infringe on your privacy. More data means better (targeted) ads and more revenue. The company pulled in over $116 billion in ad revenue last year alone – and that number continues to grow.
But the word is getting out. A growing number of people are seeking alternatives to Google products that respect their privacy and data.
So let’s get started.
Note: The lists below are not necessarily in rank order. Choose the best products and services based on your own unique needs.

Google search alternatives

When it comes to privacy, using Google search is not a good idea. When you use their search engine, Google is recording your IP address, search terms, user agent, and often a unique identifier, which is stored in cookies.
Here are ten alternatives to Google search:
  1. Searx – A privacy-friendly and versatile metasearch engine that’s also open source.
  2. MetaGer – An open source metasearch engine with good features, based in Germany.
  3. SwissCows – A zero-tracking private search engine based in Switzerland, hosted on secure Swiss infrastructure.
  4. Qwant – A private search engine based in France.
  5. DuckDuckGo – A private search engine based in the US.
  6. Mojeek – The only true search engine (rather than metasearch engine) that has its own crawler and index (based in the UK).
  7. YaCy – A decentralized, open source, peer-to-peer search engine.
  8. Givero – Based in Denmark, Givero offers more privacy than Google and combines search with charitable donations.
  9. Ecosia – Ecosia is based in Germany and donates a part of revenues to planting trees.
*Note: With the exception of Mojeek, all of the private search engines above are technically metasearch engines, since they source their results from other search engines, such as Bing and Google.
(Startpage is no longer recommended.)

Gmail alternatives

Gmail may be convenient and popular, but there are three major problems:
  1. Your inbox is used as a data collection tool. (Did you know Google is tracking your purchasing history from the receipts in your inbox?)
  2. Rather than seeing just emails, your email inbox is also used for ads and marketing.
  3. The contents of your inbox are being shared with Google and other random third parties.
When you remain logged in to your Gmail account, Google can easily track your activities online as you browse different websites, which may be hosting Google Analytics or Google ads (Adsense).
Here are ten alternatives to Gmail that do well in terms of privacy:
  1. Tutanota – based in Germany; very secure and private; free accounts up to 1 GB
  2. Mailfence – based in Belgium; lots of features; free accounts up to 500 MB
  3. Posteo – based in Germany; €1/mo with 14 day refund window
  4. StartMail – based in Netherlands; $5.00/mo with 7 day free trial
  5. Runbox – based in Norway; lots of storage and features; $1.66/mo with 30 day free trial
  6. Mailbox.org – based in Germany; €1/mo with 30 day free trial
  7. CounterMail – based in Sweden; $4.00/mo with 7 day free trial
  8. Kolab Now – based in Switzerland; €4.41/mo with 30 day money-back guarantee
  9. ProtonMail – based in Switzerland; free accounts up to 500 MB
  10. Thexyz – based in Canada; $1.95/mo with 30 day refund window

Chrome alternatives

Google Chrome is a popular browser, but it’s also a data collection tool – and many people are taking notice. Just a few days ago, the Washington Post asserted that “Google’s web browser has become spy software,” with 11,000 tracker cookies observed in a single week.
Here are seven alternatives for more privacy:
  1. Firefox browser – Firefox is a very customizable, open-source browser that is popular in privacy circles. There are also many different Firefox modifications and tweaks that will give you more privacy and security. (Also check out Firefox Focus, a privacy-focused version for mobile users.)
  2. Iridium – Based on open source Chromium, Iridium offers numerous privacy and security enhancements over Chrome, source code here.
  3. GNU IceCat – A fork of Firefox from the Free Software Foundation.
  4. Tor browser – A hardened and secured version of Firefox that runs on the Tor network by default. (It also does a good job against browser fingerprinting.)
  5. Ungoogled Chromium – Just as the name says, this is an open source version of Chromium that has been “ungoogled” and modified for more privacy.
  6. Brave – Brave is another Chromium-based browser that is rather popular. It blocks trackers and ads by default (except for “approved” ads that are part of the “Brave Ads” network).
  7. Waterfox – This is a fork of Firefox that is configured for more privacy by default, with Mozilla telemetry stripped out of the code.
Of course, there are other alternatives to Chrome, such as Safari (from Apple), Microsoft Internet ExploreEdge, Opera, and Vivaldi – but these also come with some privacy drawbacks.

Google Drive alternatives

If you’re looking for a secure cloud storage option, you can check out these Google Drive alternatives:
  1. Tresorit – A user-friendly cloud storage option based in Switzerland.
  2. ownCloud – An open source and self-hosted cloud platform developed in Germany.
  3. Nextcloud – Nextcloud is also an open source, self-hosted file sharing and collaboration platform, based in Germany.
  4. Sync – Based in Canada, Sync offers a secure, encrypted cloud storage solution for businesses and individuals.
  5. Syncthing – Here we have a decentralized, open source, peer-to-peer cloud storage platform.
Of course, Dropbox is another popular Google drive alternative, but it’s not the best in terms of privacy.

Google Calendar alternative

Here are some Google Calendar alternatives:
  1. Lightning Calendar is an open source calendar option developed by Mozilla, and it’s compatible with Thunderbird and Seamonkey.
  2. Etar, an open source, basic calendar option.
  3. Fruux, an open source calendar with good features and support for many operating systems.
For those wanting a combined solution for both email and calendar functionality, these providers offer that:

Google Docs / Sheets / Slides alternative

There are many solid Google Docs alternatives available. The largest offline document editing suite is, of course, Microsoft Office. As most people know, however, Microsoft is not the best company for privacy. Nonetheless, there are a few other good Google Docs alternatives:
  1. CryptPad – CryptPad is a privacy-focused alternative with strong encryption, and it’s free.
  2. Etherpad – A self-hosted collaborative online editor that’s also open source.
  3. Mailfence Documents – From the Mailfence team, this is a secure file sharing, storage, and collaboration tool.
  4. Zoho Docs – This is another good Google Docs alternative with a clean interface and good functionality, although it may not be the best for privacy.
  5. OnlyOffice – OnlyOffice feels a bit more restricted than some of the other options in terms of features.
  6. Cryptee – This is a privacy-focused platform for photo and document storage and editing. It’s open source and based in Estonia.
  7. LibreOffice (offline) – You can use LibreOffice which is free and open source.
  8. Apache OpenOffice (offline) – Another good open source office suite.

Google Photos alternative

Here are a few good Google Photos alternatives:
Shoebox was another alternative, but it closed operations in June 2019.

YouTube alternatives

Unfortunately, YouTube alternatives can really be hit or miss, with most struggling to gain popularity.
  1. Peertube
  2. DTube
  3. Bitchute
  4. invidio.us
  5. Vimeo
  6. Bit.tube
  7. Dailymotion
  8. Hooktube
Tip: Invidio.us is a great Youtube proxy that allows you to watch any Youtube video without logging in, even if the video is somehow restricted. To do this, simply replace [www.youtube.com] with [invidio.us] in the URL you want to view.

Google translate alternative

Here are a few Google translate alternatives I have come across:
  1. DeepL – DeepL is a solid Google Translate alternative that seems to give great results. Like Google Translate, DeepL allows you to post up to 5,000 characters at a time (but the pro version is unlimited). The user interface is good and there is also a built-in dictionary feature.
  2. Linguee – Linguee does not allow you to post large blocks of text like DeepL. However, Linguee will give you very accurate translations for single words or phrases, along with context examples.
  3. dict.cc – This Google Translate alternative seems to do a decent job on single-world lookups, but it also feels a bit outdated.
  4. Swisscows Translate – A good translation service supporting many languages.
If you want to translate blocks of text, check out DeepL. If you want in-depth translations for single words or phrases, then Linguee is a good choice.

Google analytics alternative

For website admins, there are many reasons to use an alternative to Google analytics. Aside from privacy concerns, there are also faster and more user-friendly alternatives that also respect your visitors’ privacy.
  1. Clicky is a great alternative to Google Analytics that truncates and anonymizes visitor IP addresses by default. It is lightweight, user-friendly, and fully compliant with GDPR regulations, while also being certified by Privacy Shield.
  2. Matomo (formerly Piwik) is an open-source analytics platform that respects the privacy of visitors by anonymizing and truncating visitor IP addresses (if enabled by the website admin). It is also certified to respect user privacy.
  3. Fathom Analytics is an open source alternative to Google Analytics that’s available on Github here. It’s minimal, fast, and lightweight.
  4. Get Insights – Another privacy-focused analytics platform, with a full analytics suite. The front-end client is open source and available here.
  5. AT Internet is a France-based analytics provider that is fully GDPR compliant, with all data stored on French servers, and a good track record going back to 1996.
Many websites host Google Analytics because they run Google Adsense campaigns. Without Google Analytics, tracking performance of these campaigns would be difficult. Nonetheless, there are still better options for privacy.

Google Maps alternative

A map alternative for PCs is OpenStreetMap.
A few Google Maps alternatives for mobile devices include:
  1. OsmAnd is a free and open-source mobile maps app for both Android and iOS (based on OpenStreetMap data).
  2. Maps (F Droid) uses OpenStreetMap data (offline).
  3. Maps.Me is another option that is free on both Android and iOS, but there is a fair amount of data collection with this alternative, as explained in their privacy policy.
  4. MapHub is also based on OpenStreeMap data and it does not collect locations or user IP addresses.
Note: Waze is not an “alternative” as it is now owned by Google.

Google Play Store alternative

Currently the best Google Play Store alternative is to use F-Droid and then go through the Yalp store. As explained on the official site, F-Droid is an installable catalog of FOSS (Free and Open Source Software) applications for the Android platform.
After you have installed F-Droid, you can then download the Yalp store APK, which allows you to download apps from the Google Play Store directly as APK files.
📷The Yalp Store is a good alternative to the Google Play Store.
See the F-Droid website or the official GitHub page for more info. Other alternatives to the Google Play Store include:

Google Chrome OS alternative

Want to ditch the Chromebook and Chrome OS? Here are a few alternatives:
  1. Linux – Of course, Linux is arguably the best alternative, being a free, open-source operating system with lots of different flavors. With some adjustments, Linux Ubuntu can be run on Chromebooks.
  2. Tails – Tails is a free, privacy-focused operating system based on Linux that routes all traffic through the Tor network.
  3. QubesOS – Recommended by Snowden, free, and also open source.
Of course, the other two big operating system alternatives are Windows and Apple’s operating system for MacBooks – Mac OS. Windows, particularly Windows 10, is a very bad option for privacy. While slightly better, Apple also collects user data and has partnered with the NSA) for surveillance.

Android alternatives

The biggest alternative to Android is iOS from Apple. But we’ll skip over that for reasons already mentioned. Here are a few Android OS alternatives:
  1. LineageOS – A free and open-source operating system for phones and tablets based on Android.
  2. Ubuntu Touch – A mobile version of the Ubuntu operating system.
  3. Plasma Mobile – An open source, Linux-based operating system with active development.
  4. Sailfish OS – Another open source, Linux-based mobile OS.
  5. Replicant – A fully free Android distribution with an emphasis on freedom, privacy, and security.
  6. /e/ – This is another open source project with a focus on privacy and security.
Purism is also working on a privacy-focused mobile phone called the Librem 5. It is in production, but not yet available (estimated Q3 2019).

Google Hangouts alternatives

Here are some alternatives to Google Hangouts:
  1. Wire – A great all-around secure messenger, video, and chat app, but somewhat limited on the number of people who can chat together in a group conversation via voice or video.
  2. Signal – A good secure messenger platform from Open Whisper Systems.
  3. Telegram – A longtime secure messenger app, formerly based in Russia, now in Dubai.
  4. Riot – A privacy-focused encrypted chat service that is also open source.

Google Domains alternative

Google Domains is a domain registration service. Here are a few alternatives:
  1. Namecheap – I like Namecheap because all domain purchases now come with free WhoisGuard protection for life, which protects your contact information from third parties. Namecheap also accepts Bitcoin and offers domain registration, hosting, email, SSL certs, and a variety of other products.
  2. Njalla – Njalla is a privacy-focused domain registration service based in Nevis. They offer hosting options, too, and also accept cryptocurrency payments.
  3. OrangeWebsite – OrangeWebsite offers anonymous domain registration services and also accepts cryptocurrency payments, based in Iceland.

Other Google alternatives

Here more alternatives for various Google products:
Google forms alternativeJotForm is a free online form builder.
Google Keep alternative – Below are a few different Google Keep alternatives:
Google Fonts alternative – Many websites load Google fonts through Google APIs, but that’s not necessary. One alternative to this is to use Font Squirrel, which has a large selection of both Google and non-Google fonts which are free to download and use.
Google Voice alternativeJMP.chat (both free and paid)
G Suite alternativeZoho is probably the best option
Google Firebase alternativeKuzzle (free and open source)
Google Blogger alternativesWordPress, Medium, and Ghost are all good options.
submitted by giganticcobra to privacytoolsIO [link] [comments]

Adding Monero support to a P2P game, need some advice

Hello everyone,
I'm currently in the process of adding Monero support to a peer-to-peer game I've been working on and would like to ask this community for some advice.
The application has a few hard requirements that must be met:
  1. The Monero integration must be done using JavaScript (primarily for Node but browser's okay too).
  2. The application must be able to create addresses and accompanying private keys internally (no CLI or external API). Preferably, these should be derived addresses using a master or main one (like HD wallets in Bitcoin).
  3. The application must be able to generate raw transactions internally -- no CLI or or external API. For this part let's assume that the input UTXOs are going to be available somehow (from a database, for example).
  4. The application must be able to sign raw transactions internally -- no CLI or or external API.
When I say "no CLI", I mean no RPC wallet or daemon; no external API calls either.
Essentially, I should be able to do the above offline, using JavaScript only, and then just post the signed transactions later (this part can be done via CLI or API). These are core requirements for the project otherwise I'd just use RPC or a service and save myself a lot of work.
So my question is: is there a documented JavaScript library that supports all of the above functionality?
I found a project called mymonero-core-js which appears to do what I'd need, but there doesn't seem to be any accompanying documentation (the included unit tests don't offer much information). Does this documentation exist?
There's also an offline wallet generator but it's also undocumented and kinda unwieldy (one huge file).
The game (my project), already supports Bitcoin and Bitcoin Cash using these constraints, and I've done fairly extensive work with Ethereum, smart contracts, and crypto in general (not just cryptocurrencies, I mean), so I shouldn't need much hand-holding.
Thanks muchly in advance!
P.S. It's not my intention to advertise my project so I haven't posted a link but I'll be happy to share if anyone asks.
submitted by monican_agent to Monero [link] [comments]

Sobre Tibia, gold farmers y un caso de ayuda y éxito PT2. Son muy buenos consejos de cómo comenzar a programar profesionalmente

Una vez más, reconocimiento al autor original de los post International-Unit-8
Hello,

I have gotten so many replies and messages since my last post in this thread, that I can't answer them all individually. Previous topic:

https://www.reddit.com/TibiaMMO/comments/h8tu5u/a_great_tip_for_brazilians_venezuelans_and_othe

It has been shared on multiple subreddits so I have no idea where to even post this. But I'd like to come up with a follow-up thread with some more information. The internet is the most powerful tool that mankind has ever invented. You have the ability to reach thousands, millions and even billions of people with just a computer and some internet access.

If you're on this subreddit, chances are you're already playing Tibia and you already have a computer and internet access. It doesn't need to be the best internet, but as long as websites will load (eventually) you are good to go.

In this topic I will go more in-depth on web development and software engineering. If you have a very slow internet connection, you may want to look into web development instead of software development. An application/software is much heavier (larger file size) than a website. And most developer jobs require that you send and download files, back and forth, between you and your company's server. So if you feel like your internet is too slow to send a lot of files - do not worry! There are plenty of jobs.

First, I will go through some more details on how to learn web development and software development. After that, I will list a few other kinds of jobs that you can do remotely. These types of jobs can be done from anywhere in the world as long as you have internet access.



Part 1: Some languages you should learn

What is web development? Well, it can be a lot of things. You perhaps make websites for shops/restaurants/hair dressers/dentists, or you work for a big company and work on their web application, like Outlook, Discord or Spotify (which can all be accessed via a browser: their web app). You can also work with design and user experience, instead of programming. Being a web developer can mean so many different things, it's impossible to name them all. But most web developers are just developers: they program. They make websites, and they either sell the websites to companies (as a consultant) or you work full/part-time for a company.

I can not provide in-depth information about every single thing, but I can give you some pointers. The very basics any web developer should know is this:

HTML (HyperText Markup Language) - it's what almost all websites use as a foundation. This is not a programming language, but it is a markup language. If you want to build websites, you pretty much have to know this language. Don't worry though, it is easy. Not so much to learn. You can learn all about it in a few weeks.

CSS (Cascading Style Sheets) - it's what will add colors and shapes to your website. If you want to focus more on design (also known as front end development) then this is where you want to gain a lot of knowledge.

Python - A very simple language to learn. This language is very often the first programming language that developers start using. You can use it for a lot of things. This language is used in the back of a lot of websites. Google has been using Python for years and still is. It's great for web scraping and making web requests. If you want a language to practice your algorithms, then this language is awesome.

PHP - This used to be a very popular language, but not so much these days. However, it is very good to know how this works because it's very simple to learn and also very functional in some cases. If you want to transmit or withdraw information from a database to your website, then this (in combination with SQL) is a great way to do so. Whenever you make a login system or a contact form, the data must be sent somehow to a recipient or a database. PHP will help you do that. It is a server-side language, which means it will run in the back of the website.

SQL - To be able to communicate with databases (for example: save data, update data, or insert data) you can use different languages for that. But SQL is probably the most widely used language for this. It is basically just a bunch of commands that you tell your website or app to do. If you have a web shop for example, you will need a database to store all your product information in. You can for example use MySQL as your database and then use the SQL language to extract data from your database and publish it as a list of products on your website.

JavaScript - Perhaps the most powerful language at the moment. Anyone who is good at JavaScript will be able to learn most other modern programming languages. In recent years, the demand for good JavaScript developers has skyrocketed. It's because more applications are becoming web based, and JavaScript is probably among the most useful languages to use. You can use it for so many things. Previously JavaScript was only being run on the client side of the website (that means in the user's browser). But in recent years, there has been massive development of this language and you are now able to build servers, connect to databases and do very powerful web applications using just this language. A great tutorial for JavaScript was made by Tony Alicea: https://www.youtube.com/watch?v=Bv_5Zv5c-Ts This video is "just" 3.5 hours, but it's the intro. There is a much longer version of it, and you can download it for free if you search for it. Just find it as a torrent and watch it. It's probably the best tutorial I have seen for JavaScript.

C# - It's pronounced as "C Sharp". This language has been dominating the software engineering market for decades at this point. Everyone loves it. It's relatively easy to learn and you can build a lot of stuff in C#. It's very much like JavaScript, but focuses more on application development rather than website development. I would however try to avoid learning this language if you have very slow internet, since you will most likely be sending a ton of files back and forth. But if application (computer & phone) is your thing, then this language is great. There are so many tutorials on this, but there is 1 channel on YouTube which teaches a lot of the basics in C# (and many other languages) and that channel is called ProgrammingKnowledge. Sure, his C# videos may be old now but most of it is still relevant and useful. You will learn a lot by watching his videos. It's always good to start from the beginning and then when you're familiar with that, you can learn more about the recent updates in C#. https://www.youtube.com/watch?v=V2A8tcb_YyY&list=PLS1QulWo1RIZrmdggzEKbhnfvCMHtT-sA

Java - This is pretty much 90% identical to C# as I wrote above. Widely used, relatively easy to learn the basics and there's plenty of jobs. If you like making android apps, this language is for you.



Part 2: Technologies and useful tools

To become a web developer you will need a few tools. You need a text editor, a FTP client, a SSH client and some other things. Also a good browser.

Text editor: Visual Studio Code, Atom, Sublime Text, Brackets - There are many different text editors but at the moment, I highly recommend Visual Studio Code. It has so many built-in features it's honestly the only thing you may need.Don't forget to install Notepad++ as well - this very basic editor is so handy when you just quickly need to edit some files.

File archiving: WinRar, 7-Zip - You need some way of archiving projects and send it to your customer or employer. These are basic tools anyone should use. I personally use Winrar.

FTP (File Transfer Protocol): FileZilla - This tool will allow you to connect to your website's file manager and upload your files to it. There are many tools for connecting to an FTP server but this is the most popular one, it's simple and it works great.

VPS (Virtual Private Server): Amazon Web Services, Google Cloud - If you want to practice building web applications or want to host your own website as a fun project, it's great to use a VPS for that. Both Amazon and Google offers 365 days of free VPS usage. All you need is a credit card. However, they will not charge you, as long as you stay below the free tier limit. A VPS is basically a remote computer that you can connect to. I highly recommend that, if you have a slow internet connection. Those VPS-servers (by Amazon and Google) usually have 500mbit/s internet speed, which is faster than most countries in the world. You simply connect to them via Remote Desktop, or by SSH. Depending on what type of server you are using (Windows or Linux).

SSH (Secure Shell): Solar-PuTTY, PuTTY - If you for example have a web server where you store applications and files, a great way to connect to it is by using SSH. PuTTY is pretty much the standard when it comes to SSH clients. But I really love the version created by SolarWinds. When you download that one, do not enter your personal details. Their sales people will call you and haunt you! Haha.

File Searching: Agent Ransack - When you have many files and try to locate a specific document or file, you may want to use something like Agent Ransack. Much faster than the traditional search feature in Windows and it is much more accurate.

IDE / Code Editor: Visual Studio - Great tool to use when you want to create applications in C# for example. Do not confuse this with Visual Studio Code. These are two very different tools. This tool (Visual Studio) is more designed for Windows applications. Not just websites. I only recommend getting it if you plan to make programs for Windows.

Web host & domain: NameCheap, Epik, SiteGround - If you develop websites on your own, or maybe want to create a portfolio website, you will need a domain name and web hosting. I have personally used all of these 3 and they are very cheap. NameCheap has some of the cheapest domains and great web hosting for a low price. Their support is also great. Same with SiteGround. And if you want to buy a domain anonymously (with Bitcoin for example), then you can use Epik. Low prices and great customer service on all these 3 websites.

Web Server: XAMPP, Nginx - If you plan to practice PHP, you will need to have a web server on your local computer. If you have Windows, I would highly recommend installing XAMPP (Apache). It is very easy to use for beginners. If you're on Linux, I would recommend Nginx. Also check our PhpMyAdmin if you want to quickly setup a MySQL database locally.Bonus tip: If you use Visual Studio Code to create websites in HTML, CSS and JavaScript: then install the extension "live server" and you can run your applications on a live server without setting it up yourself. Tutorial: https://www.youtube.com/watch?v=WzE0yqwbdgU

Web Browser: Mozilla Firefox, Microsoft Edge Insider, Google Chrome - You need one of the latest web browsers to create websites these days. Since I prefer privacy over functionality, I've always loved Firefox. But recently, Microsoft has been improving its new version of Edge a lot (based on Chromium) and it's also very popular. If you want all your personal details to be saved and have good tools for web development, then use Google Chrome. Don't forget to utilize the built-in developer tools. You can access it in any of these browsers by pressing F12.



Other things you may want to look into:

Web services, SSL certificates, Search Engine Optimization, Databases, API, Algorithms, Data Structures



Part 3: Learning platforms

https://www.youtube.com/

https://www.w3schools.com/

https://leetcode.com/

https://stackoverflow.com/



If you want to learn in-depth about algorithms, data structures and more. Then you can take a look at the curriculum of the top-tier universities of USA. Such as: UC Berkeley, Harvard and MIT. These courses are very hard and are specifically for people who want to become experts in software engineering. You can enroll some of them for free, like the one on Harvard. And by having a such diploma (which costs $90 extra) can get you a lot of job opportunities. You can enroll those courses if you want, but it can have a fee. But just take a look at what they are studying and try do their exercises, that is 100% free. Get the knowledge. It's mostly on video too! These course below are the very same courses that many of the engineers at Facebook, Google, Amazon, Apple, Netflix, Uber, AirBnb, Twitter, LinkedIn, Microsoft, etc. has taken. It's what majority of people in Silicon Valley studied. And it's among the best classes that you can take. These course are held by some of the world's best professors in IT.



UC Berkeley: CS 61a & CS 61b:

https://inst.eecs.berkeley.edu/~cs61a/fa19/

Video playlist here: https://www.youtube.com/watch?v=0_LryzvBxFw&list=PL6BsET-8jgYVAaK0jGVTWr9R5g7kSMQ8i

https://inst.eecs.berkeley.edu/~cs61b/fa19/

Videos: https://www.youtube.com/channel/UCNBSbBTFx8nFahcQyZOYOgQ



Harvard University: CS50 (free enrollment --- 90$ to get a certificate).

https://online-learning.harvard.edu/course/cs50-introduction-computer-science



MIT (Massachusetts Institute of Technology): 6.006

https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-006-introduction-to-algorithms-fall-2011/

Held by Erik Demaine. One of the best - if not THE best - professor at MIT. Just look at this resume. It's almost 50 pages long! https://erikdemaine.org/cv.pdf



Part 4: Finding jobs

https://www.linkedin.com/

https://marketing.hackerrank.com/

https://www.glassdoor.com/index.htm

Facebook groups for web developers, freelancing, remote work, etc.

Portfolio / Code Sharing / Source Control:

https://github.com/



Part 5: Other types of jobs you can work with (remotely) - with/without coding experience

SEO (Search Engine Optimization)

Translations (Spanish/Portuguese, etc.)

Affiliate Marketing (look into Clickbank.com - and use Facebook Ads to promote products)

Design (web design, photo design, etc.)

Copywriting (write sales letters for companies)

Database manager (monitor and administrate a company's database)

YouTube - make YouTube videos to gain views. Views = Money.

Dropshipping (use Shopify.com for example) and sell products in a webshop. Benefit with dropshipping is that you don't personally store the products.

Customer support

more...? Banking, economics, etc.



You can find information about all of the things I have mentioned by using YouTube or Google search.

Hope it helps.



And I hope that in 1 year, there will be at least some new web developers in Brazil, Venezuela and other countries in South America.
submitted by jesuskater to memezuela [link] [comments]

Bitcoin NodeJS Part 1 - Hello World Building Bitcoin Websites - Blockchain API 1 of 2 Blockchain Receive Payments API v2 HD BIP32 xpub Swagger API documentation tutorial for beginners - 1 ... How to integrate the bitcoin trading api in php

CoinDesk provides a simple and free API to make its Bitcoin Price Index (BPI) data programmatically available to others. Find out how to use it here. Our API requires that you have at least one Bitcoin address to which all payments will be forwarded. The private key for this address does not need to be shared with us and can be kept offline for increased security. There are many different ways to get a Bitcoin address. If you do not already have one, you can get one easily; see potential wallet options below. Bitcoin-API. Bitcoin API NodeJS Driver and Documentation Contents. NodeJS Driver; API; About. The GitHub repo and NPM module bitcoin-api lets you add Bitcoin functionality to your websites and apps. Using a token, you can incorporate Bitcoin deposit and withdraw functionality into your tech.. NodeJS Driver Table of Contents CEX.IO API. CEX.IO provides several API solutions for automated trading based on needs of individuals and institutions. Please note that CEX.IO API is limited to 600 requests per 10 minutes. If you are interested in increasing limits, have any feedbacks or feature requests, please drop an email to [email protected] In-depth API documentation and new, granular API calls to save you bandwidth and time. Javascript (JS), Ruby, and Python examples coming soon! Added support for Litecoin main network, Bitcoin test network to the API. Networks Supported. SoChain supports the Dogecoin, Bitcoin, Zcash, Dash, and Litecoin Blockchains, including the relevant Test Networks for experimentation. The API below requires ...

[index] [41833] [9234] [38001] [1737] [1010] [29575] [19829] [45781] [34533] [16314]

Bitcoin NodeJS Part 1 - Hello World

An introduction to the Bitcoin JSON-RPC tutorial series. BTC: 1NPrfWgJfkANmd1jt88A141PjhiarT8d9U How To Pay Off Your Mortgage Fast Using Velocity Banking How To Pay Off Your Mortgage In 5-7 Years - Duration: 41:34. Think Wealthy with Mike Adams Recommended for you Intro to using blockchain's API. This video goes over the right way to get set up and then how to generate addresses using PHP. My Book: https://www.amazon.c... How to set up blockchain.info wallet service API. Blockchain Wallet API V2 My Book: https://www.amazon.com/Building-Bitcoin-Websites-Beginners-Development/dp... Bitcoin Trading API from Bitcoin.com ----- Hi, Today I will Show you How to integrate the bitcoin trad...

#