Crypto Avoidance Guide: How FDV and Unlocking Affect Crypto Projects
Some thoughts on market cap, FDV valuation, token economics, and unlocking. I've noticed that even many seasoned crypto-tweeters don't know how to use these metrics to guide their investments or trades.The market value of a crypto asset is derived by multiplying the coin price by the number of tokens currently in circulation. FDV, which means "Fully Diluted Valuation", is another valuation metric, and is derived by multiplying the coin price by the total number of tokens. The market...
Vitalik Explains 5 Different Types of ZK-EVM
Note: The original article was written by Vitalik Buterin, co-founder of Ether. Special thanks to PSE, Polygon Hermez, Zksync, Scroll, Matter Labs, and the Starkware team for discussion and review. A number of "ZK-EVM" projects have made flashy announcements recently, such as Polygon opening their ZK-EVM project, ZKSync releasing their ZKSync 2.0 initiative, and the relatively new Scroll recently announcing their ZK-EVM. privacy and scaling The Privacy and Scaling Explorations team, Nicolas L...
GPT reinvents business models: they've brought big models into the business stream
With a number of star players entering GPT one after another, the field of large models is like a thriving scene. However, although OpenAI has shown amazing performance in ChatGPT, according to the judgment of many industry insiders, GPT is still in the primary stage of "crossing the river by feeling the stones" in terms of landing scenarios. The industry is still in a wait-and-see mood about GPT, "afraid of falling behind, but also afraid of being too far ahead and having risks in data and o...
Hi freinds! I'm veresa and a fiction lover. I love this platform and would like to share my reading experence and skills with you all!
Crypto Avoidance Guide: How FDV and Unlocking Affect Crypto Projects
Some thoughts on market cap, FDV valuation, token economics, and unlocking. I've noticed that even many seasoned crypto-tweeters don't know how to use these metrics to guide their investments or trades.The market value of a crypto asset is derived by multiplying the coin price by the number of tokens currently in circulation. FDV, which means "Fully Diluted Valuation", is another valuation metric, and is derived by multiplying the coin price by the total number of tokens. The market...
Vitalik Explains 5 Different Types of ZK-EVM
Note: The original article was written by Vitalik Buterin, co-founder of Ether. Special thanks to PSE, Polygon Hermez, Zksync, Scroll, Matter Labs, and the Starkware team for discussion and review. A number of "ZK-EVM" projects have made flashy announcements recently, such as Polygon opening their ZK-EVM project, ZKSync releasing their ZKSync 2.0 initiative, and the relatively new Scroll recently announcing their ZK-EVM. privacy and scaling The Privacy and Scaling Explorations team, Nicolas L...
GPT reinvents business models: they've brought big models into the business stream
With a number of star players entering GPT one after another, the field of large models is like a thriving scene. However, although OpenAI has shown amazing performance in ChatGPT, according to the judgment of many industry insiders, GPT is still in the primary stage of "crossing the river by feeling the stones" in terms of landing scenarios. The industry is still in a wait-and-see mood about GPT, "afraid of falling behind, but also afraid of being too far ahead and having risks in data and o...
Share Dialog
Share Dialog
Hi freinds! I'm veresa and a fiction lover. I love this platform and would like to share my reading experence and skills with you all!
Foreword Programming has become an increasingly important "skill" these days: as a designer, knowing some programming may help you better understand what you're doing; as an entrepreneur, being a technical founder will make a lot of your work seem easier. And as a newbie just trying to get started, you may not even know where to start in the face of the massive amount of information in front of you; after getting started and getting through the primary material easily, you find it increasingly difficult to learn, and the steep learning curve discourages you; you know how to print out some lines of text on a page, but you don't know when to work on a really useful project; you're not sure what else you don't know You're not sure what you don't know, and you can't even figure out what to learn next. The content of this article will not only have some directional suggestions, but will also contain a basic core-oriented programming guide (advanced job search-related content is currently recommended to follow @Michael282694's op-ed: Programmer's Plus Blood, so come in and take a look!) . Of course, the Step by Step route is not realistic, and everyone will have their own characteristics, so this introductory programming guide is given more to provoke the reader's thinking, and ultimately help you to form your own learning route. Examples from several readers. - How to get started with computers when you are not a computer science major? - Wave Without a Trace - I just want to be a qualified programmer - Zhihu's "Beginner's Guide to Programming v1.3" mind map
But be careful: this article is written for those who really want to learn programming - those who hold back a ruthless energy and must make something real, and won't stop until they learn it well; not those who "heard programming is fun". In my opinion, such people will never enter the door of programming, let alone make a decent thing. ---DISCLAIMER "Disclaimer: Although the tone of this article is what we call "Strong Opinions, Weakly Held", readers should be as skeptical of the accuracy of what we write as they are of everything around them. If you have any questions about this, please feel free to discuss them openly on Zhihu or in the technical community CoCode. Questions and Answers related to the guide. - Why isn't Java in the Beginner's Guide to Programming? - Why isn't C# in the Introductory Programming Guide? - Programming
Mindset Adjustment Setting goals They cannot. That is pretty damn cool. - Learn Python The Hard Way Thinking about your goals before you learn to code will make the path clearer when you have an end goal. So, what do you want to write? A website? An iOS or Android app? Or do you want to automate some tedious task so you can spend more time looking out the window? Maybe you just want to be more employable and get a good job. All of these are valuable goals that are part of your programming learning drive, and without it, you won't get far on the long, slightly boring learning journey. This video may inspire you: What Most Schools Don't Teach Don't be impatient Even Dummies can learn it in 21 days. Good programming requires thought, but everyone can do it and everyone can experience the Good programming requires thought, but everyone can do it and everyone can experience the extreme satisfaction that comes with it. Both offline and online bookstores are full of "21 Days to Java" quick-fix titles that promise to get you up and running in a short period of time. Matthias Felleisen, in his book How to Design Programs, Second Edition, clearly identifies this trend of "quick fixes" and makes the above irony. There is no such thing as a "shortcut" or a "silver bullet". Wise men have said that it takes 10 years or 10,000 hours to become proficient at something, or "ten years to sharpen a sword" in Chinese, so there is no rush.
Cultivate interest Most good programmers do programming not because they expect to get paid or get adulation by the public, but because it is fun to program. - Linus Torvalds Programming is more about interest than indulging in it. Interest is an inexhaustible source of motivation, and it's important to maintain that feeling of interest so that you can devote 10 years/10,000 hours of programming to it. Programming is fun, it's the joy of exploration. It's the joy of creating. It's fun to see the work you've done with your own hands displayed on the screen. It's fun to have someone marvel at your code. It's fun to have people praising your product in public, neighbors using your product, and talking about your product in the media. Programming should be fun, but if it's not, identify the problems that make it uninteresting and fix them.
Start learning A sobering story I started programming when I was in middle school, and unfortunately, I finished several of the crap books like 21 Days to C++ that were common at the time, and it was fine to read them and even write a little program. But the software broke down for some reason, and I had no way to get started on the slightly larger programming problems, and I could only do what I couldn't do with the existing libraries. Although I kept coding every day, I found that my programming skills were improving so slowly, and I only had a very limited understanding of the concepts of "iteration" and "recursion", so I could say that I was using the computer as a calculator. After I entered college, I majored in physics, and for the first time I kept memorizing the physics formulas without understanding how they were derived, how they were related, or what they meant. I kept learning how to calculate answers to common physics problems without knowing anything about the Whys behind the Hows. And when I tried to make some computer games based on physics behaviors, I encountered the same difficulties as before: I couldn't get started on new problems, and my fear of new problems kept growing, and I started to actively avoid them, not really understanding them, but imagining that I could solve them by copying and pasting code through Google searches. Fortunately, one class in my sophomore year completely changed my approach to learning. It was the first time I had the feeling of "opening my eyes to the sky," and I realized with painful clarity that I had only a pitiful understanding of some subjects, including my major in physics and minor in computer science. About that class: We had just finished studying electricity and special relativity, and the professor wrote down the two topics on the board and drew a line connecting them. "Suppose we have an electron moving along the wire at relativistic levels of speed..." At first the professor just wrote down those common formulas of electricity and special relativity that we were familiar with, but after several blackboards of algebraic derivations, the formula for the magnetic field magically appeared. Although I knew this formula years ago, I had no idea at the time that there was such a potential connection between these phenomena. The difference between magnetism and electricity was just a matter of "observation angle", and I was so awakened that I stopped just pursuing the how and started asking why, and started going back to pick up the basics and learn what I should have learned before. This process of going back is painful, and I hope you will be warned about this and never do such foolish things.
Reflection after the wake up call

This diagram is taken from Douglas Hofstadter's book Gödel, Escher, Bach. each letter in the diagram is composed of other, smaller letters. At the highest level, we see "MU", the letter M being made up of three HOLISM (holistic) and U being made up of one REDUCTIONISM (reductionist), each letter of the former containing the whole word of the latter, and vice versa. At the lowest level, you will find the smallest letter consisting of the repeated "MU". Each level of abstraction contains information, and if you look at the highest level with a single naive application of holism, or the lowest level with reductionism, all you will get is "MU" (mu means nothing in some regional dialects). The question arises, how to get as much information as possible from each level? Or, in other words, how to learn the multitude of knowledge contained in a complex field (such as programming)? A key problem prevails in the education and learning process: beginners often aim too much towards a holistic view and ignore the basics, as a common example, students want to build a robot but have no idea about the underlying Understanding physical models → Understanding electrical engineering fundamentals → Understanding servo systems and sensors → Making robots move The process is completely uninteresting. There are two big pitfalls for beginners here. 1. if beginners only engage with pre-built "engines and components" (without understanding and thinking about how they are built), this will severely limit their ability to build these things in the future, and leave them with no way to diagnose the problem. 2. The second pitfall is not as obvious as the first: the childish "holistic" approach can sometimes seem effective, which is somewhat hidden and misleading, but after a year or two (maybe not that long), when you are far along the learning path, there will be a huge psychological barrier to go back and "make up the basics", and you will have to abandon your previous narrow-minded ideas and move forward patiently and slowly, which is much more difficult than when you first learn This is much more difficult than learning the basics when you first started.
But you can't overdo it and fall into the pit of reductionism, trying to do grand theories when you first learn. This often happens to computer science students. To understand it better, you can compare learning programming to learning to cook: you buy some recipe books in order to cook well, which is a good idea if you just want to cook for your family, and you can make good dishes by repeating the steps in the recipes, but if you have bigger ambitions and really want to show off your skills in front of your friends, make some unique and delicious dishes, or even become a "chef", you have to understand the master behind these recipes. You have to understand the ideas of the masters behind these recipes and understand the theory behind them, not just practice them. But if your only job every day is to read those heavy theoretical books, because of the lack of practice, you will only become a bad cook, or even never become a cook, because after a few days of reading you give up the learning of cooking because it is boring. In conclusion, programming is the link between theory and practice, a field where computer science and computer application technology intersect. The right way to learn programming should be: to gain programming intuition and drive through top-down exploration and project practice; to gain the most important general methods and consolidate the understanding of programming ideas from the bottom-up foundation-building process. As a beginner, the latter should be the primary focus, and the former the secondary focus.
Getting Started "Which language should I learn to program in?" This is often the first question beginners ask, but it's the wrong question. The first question you should consider is "what forms the basis for learning programming? There are three key components at the bottom of the programming knowledge pyramid. - Algorithmic ideas: How do you find the largest number in a set, for example? First you have to have a maxSoFar variable, and then for each number... - Syntax: How do I express these algorithms in some programming language that the computer can understand. - System Basics: Why does a thread never end when while(1)? Why is int *foo() { int x = 0; return &x; } infeasible?
Beginners choosing C as their first language can be difficult and tedious because they are forced to learn all three parts at the same time and spend a lot of time before they can make something. So, to minimize the "syntax" and "system fundamentals" parts, Python is recommended as a first language to learn. Although Python is beginner-friendly, that doesn't mean it's just a "toy". Once you are familiar with Python, learning C is a good choice: learning C will help you think close to the bottom and help you understand some of the principles at the operating system level later on, but you can skip it if you just want to be a normal (mediocre) developer. The following is a guide to the Getting Started phase, which when completed will give you a general framework in your mind to help you explore from the top down. 1. complete Learn Python The Hard Way (Dumb Ways to Learn Python (3rd Edition) (Douban)) 2. complete the MIT Introduction to Computing course (if your English is not up to scratch: MIT Open: Introduction to Computer Science and Programming). a MOOC is an effective way to learn programming. Although the course is taught in Python, it is an excellent introductory course that emphasizes learning important concepts and paradigms in the field of computer science, rather than just teaching you a specific language. If you are not a student of the subject, this will open your eyes while you are studying on your own; Course content: computational concepts, python programming language, some simple data structures and algorithms, testing and debugging. The side task: complete "Core Programming in Python". 3. 3. complete Harvard CS50 (If you can't get through English: complete Harvard open course: computer science cs50. This is also an introductory course, but it is complementary to the MIT introductory course. The language of instruction is C, PHP, JavaScript + SQL, HTML + CSS, and the breadth and depth of content is very reasonable, and you can learn about the latest technological achievements, which can be a good way to stimulate interest in learning about computers. Side quests. - Read The Mystery of Coding - Complete Programming in C - [Optional] If your goal is to become a Hacker: Read Hacker's Delight
PS: If the education is still aimed at a child, the following resources would be helpful (ages for reference) - Ages 5-8: Turtle Academy - Ages 8-12: Python for Kids - Ages 12+: MIT Scratch (don't underestimate Scratch, some people use it to write ray tracing systems for 3D rendering) or KhanAcademy
Foreword Programming has become an increasingly important "skill" these days: as a designer, knowing some programming may help you better understand what you're doing; as an entrepreneur, being a technical founder will make a lot of your work seem easier. And as a newbie just trying to get started, you may not even know where to start in the face of the massive amount of information in front of you; after getting started and getting through the primary material easily, you find it increasingly difficult to learn, and the steep learning curve discourages you; you know how to print out some lines of text on a page, but you don't know when to work on a really useful project; you're not sure what else you don't know You're not sure what you don't know, and you can't even figure out what to learn next. The content of this article will not only have some directional suggestions, but will also contain a basic core-oriented programming guide (advanced job search-related content is currently recommended to follow @Michael282694's op-ed: Programmer's Plus Blood, so come in and take a look!) . Of course, the Step by Step route is not realistic, and everyone will have their own characteristics, so this introductory programming guide is given more to provoke the reader's thinking, and ultimately help you to form your own learning route. Examples from several readers. - How to get started with computers when you are not a computer science major? - Wave Without a Trace - I just want to be a qualified programmer - Zhihu's "Beginner's Guide to Programming v1.3" mind map
But be careful: this article is written for those who really want to learn programming - those who hold back a ruthless energy and must make something real, and won't stop until they learn it well; not those who "heard programming is fun". In my opinion, such people will never enter the door of programming, let alone make a decent thing. ---DISCLAIMER "Disclaimer: Although the tone of this article is what we call "Strong Opinions, Weakly Held", readers should be as skeptical of the accuracy of what we write as they are of everything around them. If you have any questions about this, please feel free to discuss them openly on Zhihu or in the technical community CoCode. Questions and Answers related to the guide. - Why isn't Java in the Beginner's Guide to Programming? - Why isn't C# in the Introductory Programming Guide? - Programming
Mindset Adjustment Setting goals They cannot. That is pretty damn cool. - Learn Python The Hard Way Thinking about your goals before you learn to code will make the path clearer when you have an end goal. So, what do you want to write? A website? An iOS or Android app? Or do you want to automate some tedious task so you can spend more time looking out the window? Maybe you just want to be more employable and get a good job. All of these are valuable goals that are part of your programming learning drive, and without it, you won't get far on the long, slightly boring learning journey. This video may inspire you: What Most Schools Don't Teach Don't be impatient Even Dummies can learn it in 21 days. Good programming requires thought, but everyone can do it and everyone can experience the Good programming requires thought, but everyone can do it and everyone can experience the extreme satisfaction that comes with it. Both offline and online bookstores are full of "21 Days to Java" quick-fix titles that promise to get you up and running in a short period of time. Matthias Felleisen, in his book How to Design Programs, Second Edition, clearly identifies this trend of "quick fixes" and makes the above irony. There is no such thing as a "shortcut" or a "silver bullet". Wise men have said that it takes 10 years or 10,000 hours to become proficient at something, or "ten years to sharpen a sword" in Chinese, so there is no rush.
Cultivate interest Most good programmers do programming not because they expect to get paid or get adulation by the public, but because it is fun to program. - Linus Torvalds Programming is more about interest than indulging in it. Interest is an inexhaustible source of motivation, and it's important to maintain that feeling of interest so that you can devote 10 years/10,000 hours of programming to it. Programming is fun, it's the joy of exploration. It's the joy of creating. It's fun to see the work you've done with your own hands displayed on the screen. It's fun to have someone marvel at your code. It's fun to have people praising your product in public, neighbors using your product, and talking about your product in the media. Programming should be fun, but if it's not, identify the problems that make it uninteresting and fix them.
Start learning A sobering story I started programming when I was in middle school, and unfortunately, I finished several of the crap books like 21 Days to C++ that were common at the time, and it was fine to read them and even write a little program. But the software broke down for some reason, and I had no way to get started on the slightly larger programming problems, and I could only do what I couldn't do with the existing libraries. Although I kept coding every day, I found that my programming skills were improving so slowly, and I only had a very limited understanding of the concepts of "iteration" and "recursion", so I could say that I was using the computer as a calculator. After I entered college, I majored in physics, and for the first time I kept memorizing the physics formulas without understanding how they were derived, how they were related, or what they meant. I kept learning how to calculate answers to common physics problems without knowing anything about the Whys behind the Hows. And when I tried to make some computer games based on physics behaviors, I encountered the same difficulties as before: I couldn't get started on new problems, and my fear of new problems kept growing, and I started to actively avoid them, not really understanding them, but imagining that I could solve them by copying and pasting code through Google searches. Fortunately, one class in my sophomore year completely changed my approach to learning. It was the first time I had the feeling of "opening my eyes to the sky," and I realized with painful clarity that I had only a pitiful understanding of some subjects, including my major in physics and minor in computer science. About that class: We had just finished studying electricity and special relativity, and the professor wrote down the two topics on the board and drew a line connecting them. "Suppose we have an electron moving along the wire at relativistic levels of speed..." At first the professor just wrote down those common formulas of electricity and special relativity that we were familiar with, but after several blackboards of algebraic derivations, the formula for the magnetic field magically appeared. Although I knew this formula years ago, I had no idea at the time that there was such a potential connection between these phenomena. The difference between magnetism and electricity was just a matter of "observation angle", and I was so awakened that I stopped just pursuing the how and started asking why, and started going back to pick up the basics and learn what I should have learned before. This process of going back is painful, and I hope you will be warned about this and never do such foolish things.
Reflection after the wake up call

This diagram is taken from Douglas Hofstadter's book Gödel, Escher, Bach. each letter in the diagram is composed of other, smaller letters. At the highest level, we see "MU", the letter M being made up of three HOLISM (holistic) and U being made up of one REDUCTIONISM (reductionist), each letter of the former containing the whole word of the latter, and vice versa. At the lowest level, you will find the smallest letter consisting of the repeated "MU". Each level of abstraction contains information, and if you look at the highest level with a single naive application of holism, or the lowest level with reductionism, all you will get is "MU" (mu means nothing in some regional dialects). The question arises, how to get as much information as possible from each level? Or, in other words, how to learn the multitude of knowledge contained in a complex field (such as programming)? A key problem prevails in the education and learning process: beginners often aim too much towards a holistic view and ignore the basics, as a common example, students want to build a robot but have no idea about the underlying Understanding physical models → Understanding electrical engineering fundamentals → Understanding servo systems and sensors → Making robots move The process is completely uninteresting. There are two big pitfalls for beginners here. 1. if beginners only engage with pre-built "engines and components" (without understanding and thinking about how they are built), this will severely limit their ability to build these things in the future, and leave them with no way to diagnose the problem. 2. The second pitfall is not as obvious as the first: the childish "holistic" approach can sometimes seem effective, which is somewhat hidden and misleading, but after a year or two (maybe not that long), when you are far along the learning path, there will be a huge psychological barrier to go back and "make up the basics", and you will have to abandon your previous narrow-minded ideas and move forward patiently and slowly, which is much more difficult than when you first learn This is much more difficult than learning the basics when you first started.
But you can't overdo it and fall into the pit of reductionism, trying to do grand theories when you first learn. This often happens to computer science students. To understand it better, you can compare learning programming to learning to cook: you buy some recipe books in order to cook well, which is a good idea if you just want to cook for your family, and you can make good dishes by repeating the steps in the recipes, but if you have bigger ambitions and really want to show off your skills in front of your friends, make some unique and delicious dishes, or even become a "chef", you have to understand the master behind these recipes. You have to understand the ideas of the masters behind these recipes and understand the theory behind them, not just practice them. But if your only job every day is to read those heavy theoretical books, because of the lack of practice, you will only become a bad cook, or even never become a cook, because after a few days of reading you give up the learning of cooking because it is boring. In conclusion, programming is the link between theory and practice, a field where computer science and computer application technology intersect. The right way to learn programming should be: to gain programming intuition and drive through top-down exploration and project practice; to gain the most important general methods and consolidate the understanding of programming ideas from the bottom-up foundation-building process. As a beginner, the latter should be the primary focus, and the former the secondary focus.
Getting Started "Which language should I learn to program in?" This is often the first question beginners ask, but it's the wrong question. The first question you should consider is "what forms the basis for learning programming? There are three key components at the bottom of the programming knowledge pyramid. - Algorithmic ideas: How do you find the largest number in a set, for example? First you have to have a maxSoFar variable, and then for each number... - Syntax: How do I express these algorithms in some programming language that the computer can understand. - System Basics: Why does a thread never end when while(1)? Why is int *foo() { int x = 0; return &x; } infeasible?
Beginners choosing C as their first language can be difficult and tedious because they are forced to learn all three parts at the same time and spend a lot of time before they can make something. So, to minimize the "syntax" and "system fundamentals" parts, Python is recommended as a first language to learn. Although Python is beginner-friendly, that doesn't mean it's just a "toy". Once you are familiar with Python, learning C is a good choice: learning C will help you think close to the bottom and help you understand some of the principles at the operating system level later on, but you can skip it if you just want to be a normal (mediocre) developer. The following is a guide to the Getting Started phase, which when completed will give you a general framework in your mind to help you explore from the top down. 1. complete Learn Python The Hard Way (Dumb Ways to Learn Python (3rd Edition) (Douban)) 2. complete the MIT Introduction to Computing course (if your English is not up to scratch: MIT Open: Introduction to Computer Science and Programming). a MOOC is an effective way to learn programming. Although the course is taught in Python, it is an excellent introductory course that emphasizes learning important concepts and paradigms in the field of computer science, rather than just teaching you a specific language. If you are not a student of the subject, this will open your eyes while you are studying on your own; Course content: computational concepts, python programming language, some simple data structures and algorithms, testing and debugging. The side task: complete "Core Programming in Python". 3. 3. complete Harvard CS50 (If you can't get through English: complete Harvard open course: computer science cs50. This is also an introductory course, but it is complementary to the MIT introductory course. The language of instruction is C, PHP, JavaScript + SQL, HTML + CSS, and the breadth and depth of content is very reasonable, and you can learn about the latest technological achievements, which can be a good way to stimulate interest in learning about computers. Side quests. - Read The Mystery of Coding - Complete Programming in C - [Optional] If your goal is to become a Hacker: Read Hacker's Delight
PS: If the education is still aimed at a child, the following resources would be helpful (ages for reference) - Ages 5-8: Turtle Academy - Ages 8-12: Python for Kids - Ages 12+: MIT Scratch (don't underestimate Scratch, some people use it to write ray tracing systems for 3D rendering) or KhanAcademy

Subscribe to Veresa

Subscribe to Veresa
<100 subscribers
<100 subscribers
No activity yet