Introduce yourself here!

Hi @pmk,

Welcome to the community :wave:

Great to hear that you are looking to integrate Ethereum into your games. I am a huge fan of true digital ownership of digital assets using blockchain. A game first approach is a really good way to tackle this. The challenges are cost and speed of transactions, and abstracting the blockchain for users (but providing easy transparent access to blockchain information). In my previous life I worked on a blockchain gaming project.

Was it from a blog post or a video from Ivan on Tech that you heard about OpenZeppelin? (I did a quick search to see if I could find it).

I suggest having a look at the upcoming release of OpenZeppelin Contracts 3.0. The latest release candidate is: OpenZeppelin Contracts v3.0 final release candidate This has improvements for ERC721 such as automatic token URI.

You can also follow Michael and Luis on their Coding Journeys (or even share your own coding journey): https://forum.openzeppelin.com/tag/coding-journey

Thanks for all the info.

Ivan on Tech has a blockchain developer course, and has an ethereum section, where they deploy a token, integrate it with a game (they use Phaser, I’m trying to make it work with Construct 3), and that’s where I heard about you.

1 Like

Hi, friends!

I’m Jordan. I have a cat named Hamburger. We live in Manhattan (although this whole lockdown scenario has made the case for staying here very tenuous…).

I’m 100% new to Solidity and OpenZepplin, but I’ve been a full-stack developer for 20+ years (yeah, I’m old), a hodler since 2014, and a PROUD “investor” in SpankChain since the ICO (not super relevant, just trying to add some flavor).

I’m working on turning a failed startup (not adult based!) in to an NFT that, I believe, has much wider appeal and broader implications for everyone. A lofty statement, I know!

Thanks to @abcoathup for already answering some questions for me! Very much looking forward to pulling my hair out and cursing at the terminal.

1 Like

Hi @EvilJordan,

Thanks for introducing yourself.

Hello to Hamburger :wave: :cat2:

I am in Melbourne Australia. :australia:
I’m in my late 40’s so in a mature/older age group. :older_man:

I just watched the empty streets of Philly (thanks to DaringFireball: https://daringfireball.net/linked/2020/04/15/philly-quarantine).
It is definitely interesting times. Stay safe in NYC. In Melbourne we aren’t in lock down, we are allowed out for work, food, health care and exercise.


What made you make the leap to developing in Solidity now?

You can follow Michael and Luis on their Coding Journeys or even share your own Solidity coding journey: https://forum.openzeppelin.com/tag/coding-journey


I am interested to know more about your NFT plans when you can share them. You can showcase with the community how you are using OpenZeppelin in the #general:showcase category.

I :heart: NFTs, especially collectibles (What is your favorite collectible?)


Feel free to ask all the questions that you need, which might save some hair pulling and terminal cursing.

My name is Sekh Motibul, I’m from West Bengal Birbhum (India) and I am a Lab technician. I want to learn how Ethereum blockchain works and how to deploy any smart contract on solidity, I have worked 3 years at IQ City Hospital. one year now learning about crypto specially Ethereum blockchain.

1 Like

Hi Sekh Motibul (@Rahaman),

Thanks for introducing yourself :wave:.

I am in Melbourne :australia: :kangaroo:

I recommend checking out the OpenZeppelin Learn guides: https://docs.openzeppelin.com/learn/

Also worth having a play with Ethernaut (smart contract security hacking game): https://solidity-05.ethernaut.openzeppelin.com/

A nice starting point is to Create an ERC20 without writing Solidity, using OpenZeppelin CLI

I’m enjoying following the Coding Journey of @Jshanks21 and @Proteu5. You would be welcome to share your journey.

Feel free to ask all the questions that you need.

Hi all !

My name is Jaime, I’m a Software Engineer - I’ve been learning about blockchain and Ethereum for over year now and I hope to keep going for as long as I can. I love learning about new things, getting different perspectives and always enjoy a good challenge.

I’m from Spain but I’ve been living in London for a few months now, I’m currently working as a Junior dev for a London-based startup called Clearmatics, with a focus on blockchain and finance, and I’m also a moderator in the CryptoDevs community discord.

I’m here looking to learn as much as I can and hopefully help others on the way.

2 Likes

Hi Jaime (@Madness),

Thank you for being part of the community.
I really appreciate you answering questions and getting involved in discussions.
I think answering questions is a great way to learn.

One of the most interesting concepts I have seen recently is Flash-Mintable Asset-Backed Tokens - a new DeFi primitive

I recommend playing Ethernaut if you haven’t already: https://solidity-05.ethernaut.openzeppelin.com/

What areas of Ethereum are you interested in?
I am very excited to see broader adoption with Reddit’s experiment with community points

1 Like

Thank you for the warm welcome @abcoathup,

I will take some time to read it, looks promising !

I actually never finished it, perhaps this is a good time to do so ! hahaha

Usually I like learning about all things Solidity // EVM - trying to get a grasp of best practices, tips and tricks , etc… so I usually spend a lot of time on github repos trying to understand what others are doing and why - There’s a lot of EVM wizards in the community and it’s always fun finding out about new and different ways of doing things.

I also try to answer questions in the CryptoDevs discord (and lately around here) whenever I find something where I can contribute and when I have some spare time, mainly to give back to the community.

1 Like

I really appreciate your contribution to the community :pray:

Continuing the discussion from Introduce yourself here!:

Hey, everybody!

I’m Hydris, a young smart-contract developer!
I evolved in the world of startups at LLL in Paris, a place of “tech with impact” innovation, where I supported tech startups, organised and led transformation workshops for major groups. In particular, I supported FORGE Capital Market (Société Générale) during the first bond issue on the public network Ethereum (€100 million) in 2019.

I’m now the CTO of QLAY, a startup based in Paris that aims to facilitate home ownership through micro-real estate and real estate tokenization.

Thank you @abcoathup for answering my few questions :grin:

2 Likes

Thanks for introducing yourself @hydris-bessa

I managed to get on the property ladder through a government shared ownership scheme where you were able to purchase a percentage of the property (through a mortgage) and paid rent on the remaining portion.

Using tokenization to provide access to partial property ownership and investment sounds great.

I look forward to hearing more about your solution and what token standards you use. There recently was a question on Smart Contracts For "Fractional Ownership"?

Please reach out to the team when you are ready for security audits. https://openzeppelin.com/security-audits/

As an aside, I love the icons for the team. https://qlay.io/

Feel free to ask all the questions that you need!

Thanks for being part of the community :pray:

1 Like

Hey all, I’m J from the UK. I new to solidity, i came across OpenZeppelin when doing some research on how i could implement some sort of resource access control and after doing a lot of reading it became apparent upgradability & access control isn’t so simple. OpenZeppelin have done some great work and taken a load off so thats why i’m here.

A little about my project. I am trying to create a system where users can give each other access to resources off-chain. My user base has 0 care for blockchains so the use of the blockchain is somewhat hidden. The importance is ensuring that these resources can be shared without the possibility of intervention from the developers, intervention from someone trying to hide something (ie changing and purging data in a conventional database), and that the sharing of data is easily auditable and immutable.

  • The user can “share access” to another individual or an organisation.

  • Users and organisations will be in control of their contracts (both will be logically diffrent, organisations will contain a list of user contract addresses allowing to share with multiple people at once)

  • Developer should not be able to change users proxy contract state

  • Developer should be able to update logical contract state, but user should not.

The network will be a private, permissioned gas free network. The network will be built using “hyperledger besu” nodes. The block time will be very small (undecided), the network will not be using PoW (mechanism undecided). The network will initially be run by 1 entity, but if the project goes well it will hopefully be ran by multiple entites.

1 Like

Hi J (@Rick_Sanchez),

Welcome to the world of Solidity. Thanks for introducing yourself here.

Thinking about your solution:

Given you plan to use a private, permissioned, gas free network run (initially) by 1 entity, users have to trust that the developer won’t change the blockchain, you could potentially use a centralized database, especially if the blockchain is being abstracted for the user. I assume the reason for using a blockchain is the potentially for multiple entities to run it.

Is there a reason why you couldn’t use a public blockchain?
I assume gas cost could be prohibitive on mainnet, depending on the number of transactions users would need to make and the number of contracts you would need to deploy. To get lower cost transactions you could look at POA Network or their xDai chain.

If you need to use a permissioned chain, I like Proof of Authority as the consensus mechanism, which is secured by the (significant) reputation of the authorities, though it requires using authorities where their reputation is high compared with the value of the network, so they have strong incentives to secure the network.

Please ask all the questions that you need. Thanks for being part of the community.

Given you plan to use a private, permissioned, gas free network run (initially) by 1 entity, users have to trust that the developer won’t change the blockchain, you could potentially use a centralized database, especially if the blockchain is being abstracted for the user. I assume the reason for using a blockchain is the potentially for multiple entities to run it.

Correct, my ultimate aim is for the blockchain to be run by multiple entities, taking power away from me. However in reality it’s by no means an easy feat to get anyone to jump on board straight away. My plan is actually to create a centralised permission system using a conventiona/centralised database first and then “upgrade” to a decentralised solution. as creating Dapps require a different way of thinking i am trying to come up with a solution in solidity first, which will influence how i build my permission system in the conventional/centralised DB way. The idea being it will be able to easily “upgrade” when the time comes.

example simplistic thought process:

If i create a centralised/conventional permission system in a DB using Ethereum compatible public/private key pairs, permissions can simply be migrated into contracts. For example, in my conventional database public key X has permission to see public key Y’s resource. then when it comes to upgrading to a blockchain solution, these permissions (through public keys) can simply be passed into the constructor of the users permissions contract.

in theory the upgradable proxy method will be used. The users private key from the conventional solution is used to deploy a proxy contract making the user the owner and the existing permissions are passed in through the constructor. essentially “migrating” permissions from one solution to another.

Is there a reason why you couldn’t use a public blockchain?
I assume gas cost could be prohibitive on mainnet, depending on the number of transactions users would need to make and the number of contracts you would need to deploy. To get lower cost transactions you could look at POA Network or their xDai chain.

Pretty much what you said is the reason why i do not plan on using a public blockchain. The amount of contracts i will be deploying is high, i will also have a high amount of transactions.

Quick example: each “organisation” that wishes to use the network will have users under their organisations. there will then be general users. the organisational users will create and update “records” for general users regularly (records are hashed and the hash is stored on chain to ensure validity of the external data) as well as this there will be constant on chain permission changes. As well as the high throughput, the block-time on the mainnet is to high for my use-case. Also the blockchain will be abstracted ish. Idealistically id eventually want it to be a system where the user has a choice of “here are your keys you are free to interact as you want and be as secure as you want” or “Ill do less secure key management for you if you personally don’t really care about the tech or do not want to take the time to understand the tech”.

having to use Ether is a hinderance to the user and the organisations, who care about the features a blockchain brings, but do not care for using software where they have to pay on a transactional basis / keep accounts filled with gas (which is also highly volatile) / care for how to use the technology etc (i’m aware of using gas stations but i’m not rich). The user base is people that care about security, immutability and trustless systems but don’t care enough to pay for it or learn to properly use technology which benefits them (sadly). Sorry about the vagueness of my project i’m not really allowed talk about it in depth

I see blockchain technology the same as end-to-end encryption on messaging apps, its an amazing technology that is greatly needed. Most users don’t even know of / have heard of the technology or know why they need it but they do. imagine you have a hypothetical app “WhensApp” that uses RSA encryption to send messages. with all the government spying that is going on everyone needs this tech. but if you tell the user “this is a private key you must do X Y and Z with it, if you loose it you loose your messages, it will cost you X amount every time you send a message. so make sure you keep your ‘wallet’ topped up with this volatile token. oh and to get this token you must send GBP to company X then trade for the token on the open market, then send it here to use it” …etc the masses are not going to use it. Instead we need to come up with ways to abstract this from the user experience by making secure key stores, signing messages for users, coming up with ways to move keys seamlessly etc (you get the point).

This is a long convoluted way of me saying i’m trying to implement a technological solution that is greatly needed and the organisations using it know it is needed but they do not care to take extra steps / learn the technology or pay for a solution transactionally

i don’t necessarily fully agree with the solution i’m proposing but as we all know bridging the gap to mainstream is by no means easy. In a world where we are so used to free software or “buy it once use forever” software, combined with using a (necessary but) hard to understand technology. its a really hard sell to make Apps on a public blockchain and expect users to pay for executing functions.

sorry for the mini essay figured id just try explain my rational.

I assume that you will do at least a proof of concept on Ethereum to check this assumption.

You could run scripts to create all the contracts and set the access control for the contract to each user. Then the users don’t need to do anything to migrate.

I suggest looking at POA Network/xDAI chain transaction costs. To see how the cost compares with running and maintaining your own network.
This would also give you a blockchain explorer too.

You could use the gas station network to relay transactions.

Though it comes down to just how many transactions your users would make over time and how much this costs and if you would get the through put. Also if you are storing any private information then that might not be a runner.

Completely agree. It is the challenge to give users all the benefits of blockchain but abstract away much of the complexity.

I assume that you will do at least a proof of concept on Ethereum to check this assumption.

Correct, i’m currently in the process of doing so. I will post this process when i create my “what iv built” / “My experience” post (going to be a long one :sweat_smile:)

You could run scripts to create all the contracts and set the access control for the contract to each user. Then the users don’t need to do anything to migrate.

Good point, that is actually a better solution, thanks. also i’m not sure i was totally clear here. just for clarity, by migrate i mean move already set permissions from conventional database into the contracts on deployment (for example: each user contract has an array stating that address X, Y and Z can view its resources. the conventional data base will have existing permissions at the point of deploying the contracts. the idea is i simply pass the existing permissions (addresses) from the conventional database into the contracts initialisation function so on deployment existing permissions are transfered. ie the same permissions from the old system are set in the new one, meaning the user will not have to re-grant permission) what do you think?

I suggest looking at POA Network/xDAI chain transaction costs. To see how the cost compares with running and maintaining your own network…

Thanks for the suggestion, ill take a look into that

This is all still just ideas floating around in my brain at the moment. appreciate the input and time you’ve taken. Im currently in the process of doing a POC and i will write a post regardless of if it works or not. Maybe my journey could help save someone else time in the future.

1 Like

Hi @Rick_Sanchez,

You are treating the blockchain as a database, so the ideal would be to just migrate the data over with no user intervention. I don’t know enough about cryptography, nor your solution to comment on how feasible this is though. :smile:

I look forward to that.


Please ask all the questions that you need.

hello there
i am yaza al sharif
studying software engineering lvl 3
i was studying web back-end development and now i am interesting in blockchain development
so i am a beginner in ethereum blockchain looking for experience

i am happy to join your community :heart_eyes: :heart_eyes:

2 Likes

Hello, my name is Cristian, I’m from Italy and I start to create my first smart contract using OpenZeppelin…

1 Like