title
A Guide to Building Your First Decentralized Application

description
Web 3.0 is here! Welcome to the dark side of web and mobile development (in a good way). Lets talk about how we can use blockchains, distributed hash tables, and peer to peer protocols to create decentralized applications! Code for this video: https://github.com/llSourcell/Your_First_Decentralized_Application Follow me: Twitter: https://twitter.com/sirajraval Facebook: https://www.facebook.com/sirajology More learning resources: https://www.safaribooksonline.com/library/view/decentralized-applications/9781491924532/ch01.html https://github.com/DavidJohnstonCEO/DecentralizedApplications https://coinsutra.com/dapps-decentralized-applications/ https://medium.com/@mvmurthy/full-stack-hello-world-voting-ethereum-dapp-tutorial-part-1-40d2d0d807c2 https://blockgeeks.com/guides/dapps-the-decentralized-future/ https://dappsforbeginners.wordpress.com/tutorials/your-first-dapp/ https://ethereum.stackexchange.com/questions/122/how-to-create-a-dapp-from-scratch-on-ethereum https://blog.coinbase.com/app-coins-and-the-dawn-of-the-decentralized-business-model-8b8c951e734f Join us in the Wizards Slack channel: http://wizards.herokuapp.com/ And please support me on Patreon: https://www.patreon.com/user?u=3191693 Follow me: Twitter: https://twitter.com/sirajraval Facebook: https://www.facebook.com/sirajology Instagram: https://www.instagram.com/sirajraval/ Instagram: https://www.instagram.com/sirajraval/ Credits to Mahesh Murthy for the code and inspiration: http://www.zastrin.com Signup for my newsletter for exciting updates in the field of AI: https://goo.gl/FZzJ5w Hit the Join button above to sign up to become a member of my channel for access to exclusive content! Join my AI community: http://chatgptschool.io/ Sign up for my AI Sports betting Bot, WagerGPT! (500 spots available): https://www.wagergpt.co

detail
{'title': 'A Guide to Building Your First Decentralized Application', 'heatmap': [{'end': 851.792, 'start': 821.793, 'weight': 1}], 'summary': "Covers building an unhackable voting app, the centralized web's impact, decentralized applications, web 3.0, markets in decentralized apps, and autonomous software with blockchain and voting contracts, offering insights into decentralized app construction and the shift from centralized to decentralized systems.", 'chapters': [{'end': 102.602, 'segs': [{'end': 102.602, 'src': 'embed', 'start': 19.638, 'weight': 0, 'content': [{'end': 21.879, 'text': "I'm going to pick one, Rama, and then click vote.", 'start': 19.638, 'duration': 2.241}, {'end': 24.02, 'text': 'and the vote shows up.', 'start': 22.999, 'duration': 1.021}, {'end': 26.162, 'text': 'Okay, there are three candidates in this app.', 'start': 24.46, 'duration': 1.702}, {'end': 28.143, 'text': 'I voted and then the vote shows up.', 'start': 26.522, 'duration': 1.621}, {'end': 33.108, 'text': 'And anybody who uses this app can vote and then that vote is going to show up in the web app.', 'start': 28.584, 'duration': 4.524}, {'end': 36.35, 'text': "So you might be thinking, wait a second, that's so easy.", 'start': 33.448, 'duration': 2.902}, {'end': 44.377, 'text': 'Why are you demoing this? Because the difference between this voting app and a normal voting app is that this voting app is unhackable.', 'start': 36.41, 'duration': 7.967}, {'end': 47.299, 'text': 'That means that no one can modify the votes.', 'start': 44.737, 'duration': 2.562}, {'end': 57.499, 'text': "Okay, so it is hackable but it's hackable in that you would have to have access to the 500 fastest supercomputers in the world combined.", 'start': 48.734, 'duration': 8.765}, {'end': 61.562, 'text': "That's how much computing power you would have to have in order to hack this.", 'start': 57.98, 'duration': 3.582}, {'end': 66.545, 'text': "So it's basically unhackable unless you have that much computing power, which no one does.", 'start': 61.922, 'duration': 4.623}, {'end': 70.799, 'text': 'And this is called a decentralized application.', 'start': 68.197, 'duration': 2.602}, {'end': 74.202, 'text': 'Now you are probably used to building a centralized application.', 'start': 71.18, 'duration': 3.022}, {'end': 75.924, 'text': "So am I, right? That's what we do.", 'start': 74.322, 'duration': 1.602}, {'end': 83.33, 'text': 'All of web development, all of mobile development, all of it is centered around building centralized software.', 'start': 76.844, 'duration': 6.486}, {'end': 88.893, 'text': "I'm gonna talk about what centralized and decentralized are in a second, but that's the voting app we're gonna do.", 'start': 83.67, 'duration': 5.223}, {'end': 90.915, 'text': "That's the demo we're gonna build today.", 'start': 88.933, 'duration': 1.982}, {'end': 96.078, 'text': "I'm gonna go through setting up the environment and all the tools you need to build it, and then we'll build it ourselves.", 'start': 90.935, 'duration': 5.143}, {'end': 102.602, 'text': "But first, let's talk a little bit about the World Wide Web, okay? So the web started off decentralized.", 'start': 96.398, 'duration': 6.204}], 'summary': 'The demo showcases an unhackable voting app based on decentralized application, requiring immense computing power to hack.', 'duration': 82.964, 'max_score': 19.638, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/gSQXq2_j-mw/pics/gSQXq2_j-mw19638.jpg'}], 'start': 0.049, 'title': 'Building an unhackable voting app', 'summary': 'Delves into the construction of an unhackable voting app, emphasizing its decentralized nature, which necessitates significant computing power to breach. it also clarifies the disparities between centralized and decentralized applications.', 'chapters': [{'end': 102.602, 'start': 0.049, 'title': 'Building an unhackable voting app', 'summary': 'Discusses building an unhackable voting app that is decentralized, requiring massive computing power to hack, and explains the difference between centralized and decentralized applications.', 'duration': 102.553, 'highlights': ['The voting app is unhackable, requiring access to the computing power of 500 fastest supercomputers in the world combined to modify votes.', 'The app is decentralized, in contrast to traditional centralized applications, which makes it resistant to hacking.', 'The chapter discusses the difference between centralized and decentralized applications, emphasizing the decentralized nature of the voting app.', 'The demo of the voting app showcases its functionality with three candidates and the ability for users to vote, with the votes showing up in the web app.']}], 'duration': 102.553, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/gSQXq2_j-mw/pics/gSQXq2_j-mw49.jpg', 'highlights': ['The voting app is unhackable, requiring access to the computing power of 500 fastest supercomputers in the world combined to modify votes.', 'The app is decentralized, in contrast to traditional centralized applications, which makes it resistant to hacking.', 'The chapter discusses the difference between centralized and decentralized applications, emphasizing the decentralized nature of the voting app.', 'The demo of the voting app showcases its functionality with three candidates and the ability for users to vote, with the votes showing up in the web app.']}, {'end': 377.573, 'segs': [{'end': 168.878, 'src': 'embed', 'start': 120.833, 'weight': 0, 'content': [{'end': 123.455, 'text': 'you know whatever you wanted on your server, on your computer.', 'start': 120.833, 'duration': 2.622}, {'end': 129.238, 'text': 'And then you owned that server, because no one was offering to host your data for you.', 'start': 123.875, 'duration': 5.363}, {'end': 135.584, 'text': 'What that meant was the web consisted of a series of nodes that were all linked together,', 'start': 129.678, 'duration': 5.906}, {'end': 142.952, 'text': 'a very neutral playing field where everybody owned their data, or the data that they contributed to the World Wide Web.', 'start': 135.584, 'duration': 7.368}, {'end': 144.735, 'text': "That's how the web started off.", 'start': 143.373, 'duration': 1.362}, {'end': 155.071, 'text': 'But what happened was, During the dot-com bubble, entrepreneurs realized that if you wanted to provide value on top of this neutral playing field,', 'start': 145.115, 'duration': 9.956}, {'end': 156.912, 'text': 'Then you would create some service.', 'start': 155.071, 'duration': 1.841}, {'end': 165.196, 'text': 'right, you create some service and that service would collect data and monetize it, and this proved extremely, extremely useful.', 'start': 156.912, 'duration': 8.284}, {'end': 168.878, 'text': 'right, we started hosting our data on Geo cities.', 'start': 165.196, 'duration': 3.682}], 'summary': 'The web started as a neutral playing field where everyone owned and contributed their data, but during the dot-com bubble, entrepreneurs began creating services to collect and monetize data.', 'duration': 48.045, 'max_score': 120.833, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/gSQXq2_j-mw/pics/gSQXq2_j-mw120833.jpg'}, {'end': 312.174, 'src': 'embed', 'start': 225.392, 'weight': 1, 'content': [{'end': 226.813, 'text': 'we use them every day, right?', 'start': 225.392, 'duration': 1.421}, {'end': 228.953, 'text': 'we i use google and all the services every day.', 'start': 226.813, 'duration': 2.14}, {'end': 230.254, 'text': 'they make our lives easier.', 'start': 228.953, 'duration': 1.301}, {'end': 231.734, 'text': "but it's bad for four reasons.", 'start': 230.254, 'duration': 1.48}, {'end': 234.955, 'text': "the first reason is that it's shrinking our economy.", 'start': 231.734, 'duration': 3.221}, {'end': 242.137, 'text': 'what I mean by that is that in a good economy, we monetize more and more, but in a bad economy we monetize less and less.', 'start': 234.955, 'duration': 7.182}, {'end': 243.238, 'text': "and that's what's happening.", 'start': 242.137, 'duration': 1.101}, {'end': 248.961, 'text': 'because data is the natural resource of our time and because data is so centralized.', 'start': 243.238, 'duration': 5.723}, {'end': 252.223, 'text': 'that means the ownership of data is so centralized.', 'start': 248.961, 'duration': 3.262}, {'end': 259.529, 'text': 'there are less opportunities for people to generate value, to generate capital, because all the data is being collected right.', 'start': 252.223, 'duration': 7.306}, {'end': 261.291, 'text': 'data is how you make money right.', 'start': 259.529, 'duration': 1.762}, {'end': 267.075, 'text': 'as a society, we are starting to value more and more data and less and less labor.', 'start': 261.291, 'duration': 5.784}, {'end': 268.797, 'text': 'right before we valued labor.', 'start': 267.075, 'duration': 1.722}, {'end': 269.557, 'text': 'now not so much.', 'start': 268.797, 'duration': 0.76}, {'end': 275.262, 'text': "it's all about the data, and as this economic trend progresses, It's going to.", 'start': 269.557, 'duration': 5.705}, {'end': 278.825, 'text': 'only the value of data is only gonna increase over time.', 'start': 275.262, 'duration': 3.563}, {'end': 285.53, 'text': "And because that data is so siloed right now, it's hard for normal people to make money off of it.", 'start': 279.205, 'duration': 6.325}, {'end': 288.672, 'text': 'You would have to be a part of one of these big corporations to do so.', 'start': 285.97, 'duration': 2.702}, {'end': 290.894, 'text': "And that's not the future that we want, right?", 'start': 289.112, 'duration': 1.782}, {'end': 294.929, 'text': "So that's that's a problem.", 'start': 293.068, 'duration': 1.861}, {'end': 297.53, 'text': 'the other problem is that this is just too much concentrated.', 'start': 294.929, 'duration': 2.601}, {'end': 298.41, 'text': 'power right.', 'start': 297.53, 'duration': 0.88}, {'end': 300.89, 'text': 'knowledge is power right and knowledge is data.', 'start': 298.41, 'duration': 2.48}, {'end': 302.371, 'text': 'information is power,', 'start': 300.89, 'duration': 1.481}, {'end': 311.633, 'text': "information is data and it's it's just too much of an overhead God view of What everybody is doing for any of these companies to have uber,", 'start': 302.371, 'duration': 9.262}, {'end': 312.174, 'text': 'for example?', 'start': 311.633, 'duration': 0.541}], 'summary': 'Data centralization is shrinking economy, limiting opportunities, and concentrating power, hindering societal progress.', 'duration': 86.782, 'max_score': 225.392, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/gSQXq2_j-mw/pics/gSQXq2_j-mw225392.jpg'}, {'end': 377.573, 'src': 'embed', 'start': 338.068, 'weight': 7, 'content': [{'end': 344.85, 'text': "That is just too much power for any, any one entity to have, and that's just not good, because It doesn't matter where our intentions were.", 'start': 338.068, 'duration': 6.782}, {'end': 348.932, 'text': 'this is a problem And we have no say in how our data is used.', 'start': 344.85, 'duration': 4.082}, {'end': 355.214, 'text': 'right are once, once we, we exchange our data, control of our data for access to a free service,', 'start': 348.932, 'duration': 6.282}, {'end': 357.635, 'text': 'and what this means is they can do anything with our data.', 'start': 355.214, 'duration': 2.421}, {'end': 363.458, 'text': 'they can sell it to advertisers, they can use it to manipulate us, they can learn our personal details,', 'start': 357.635, 'duration': 5.823}, {'end': 369.545, 'text': 'they can sell it to the US government or any government really, and we just have no say in how this goes in the end.', 'start': 363.458, 'duration': 6.087}, {'end': 372.288, 'text': 'the last point is that we should be paid for our data.', 'start': 369.545, 'duration': 2.743}, {'end': 373.129, 'text': 'we need to.', 'start': 372.288, 'duration': 0.841}, {'end': 377.573, 'text': 'we are generating this valuable resource, this natural resource, and we should be paid for it.', 'start': 373.129, 'duration': 4.444}], 'summary': 'Exchanging data for free services gives too much power to entities, leading to manipulation and lack of control. users should be paid for their data.', 'duration': 39.505, 'max_score': 338.068, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/gSQXq2_j-mw/pics/gSQXq2_j-mw338068.jpg'}], 'start': 102.622, 'title': 'Centralized web and its impact', 'summary': 'Discusses the evolution of the web into a centralized structure dominated by major companies like amazon, google, facebook, snapchat, and instagram, and its negative impact on the economy, emphasizing shrinking monetization in a bad economy, centralized data ownership, the shift from valuing labor to valuing data, and the excessive power held by tech companies through data collection.', 'chapters': [{'end': 243.238, 'start': 102.622, 'title': 'Centralized web and its impact', 'summary': 'Discusses the evolution of the web from a decentralized network of nodes to a centralized structure dominated by a few major companies like amazon, google, facebook, snapchat, and instagram, and its negative impact on the economy, emphasizing the shrinking monetization in a bad economy.', 'duration': 140.616, 'highlights': ['The web evolved from a decentralized network of nodes to a centralized structure dominated by a few major companies like Amazon, Google, Facebook, Snapchat, and Instagram. The web transitioned from a neutral playing field with individual ownership of data to a centralized system where data is routed through a handful of massive nodes, impacting the overall structure and control of the web.', 'The centralized structure is negatively impacting the economy by shrinking monetization, especially in a bad economy. The author argues that the centralized web is adversely affecting the economy by leading to decreased monetization in a good economy and even less in a bad economy, thereby highlighting the negative economic consequences of this shift.', 'Entrepreneurs realized the value of providing services on top of the neutral playing field, leading to the creation of centralized services that collect and monetize data. During the dot-com bubble, entrepreneurs recognized the potential in creating services on top of the neutral web, resulting in the emergence of centralized services that collect and monetize data, ultimately altering the landscape of the web.']}, {'end': 288.672, 'start': 243.238, 'title': 'Centralized data and economic trends', 'summary': 'Discusses the centralized ownership of data, the shift from valuing labor to valuing data, and the limited opportunities for individuals to generate value and capital from data, leading to the increasing value of data over time.', 'duration': 45.434, 'highlights': ['Data ownership is centralized, limiting opportunities for individuals to generate value and capital. The centralized ownership of data limits opportunities for people to generate value and capital from data, as it is predominantly collected and controlled by large corporations.', 'Shift from valuing labor to valuing data as the primary source of revenue and societal value. There is a societal shift from valuing labor to valuing data as the primary source of revenue and societal value, leading to the increased importance of data in generating wealth.', 'Limited access for normal people to make money from siloed data, requiring association with big corporations. The current siloed nature of data makes it difficult for normal individuals to profit from it, necessitating affiliation with large corporations to do so.']}, {'end': 377.573, 'start': 289.112, 'title': 'Data power and privacy concerns', 'summary': "Highlights the excessive power held by tech companies through data collection, citing examples such as uber's 'god mode' and emphasizes the lack of control and compensation for individuals' data.", 'duration': 88.461, 'highlights': ["Tech companies wield excessive power through data collection, exemplified by Uber's 'God mode' which allows access to personal details of users, posing significant privacy concerns.", 'Individuals have little to no control over the use of their data, leading to potential manipulation and unauthorized sharing with third parties, including governments, posing significant privacy concerns.', 'The chapter emphasizes the need for individuals to be compensated for their data as it is a valuable resource that is being exploited without consent or compensation.']}], 'duration': 274.951, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/gSQXq2_j-mw/pics/gSQXq2_j-mw102622.jpg', 'highlights': ['The web transitioned from a neutral playing field with individual ownership of data to a centralized system where data is routed through a handful of massive nodes, impacting the overall structure and control of the web.', 'The centralized structure is negatively impacting the economy by shrinking monetization, especially in a bad economy.', 'Entrepreneurs recognized the potential in creating services on top of the neutral web, resulting in the emergence of centralized services that collect and monetize data, ultimately altering the landscape of the web.', 'Data ownership is centralized, limiting opportunities for individuals to generate value and capital.', 'Shift from valuing labor to valuing data as the primary source of revenue and societal value.', 'Limited access for normal people to make money from siloed data, requiring association with big corporations.', "Tech companies wield excessive power through data collection, exemplified by Uber's 'God mode' which allows access to personal details of users, posing significant privacy concerns.", 'Individuals have little to no control over the use of their data, leading to potential manipulation and unauthorized sharing with third parties, including governments, posing significant privacy concerns.', 'The chapter emphasizes the need for individuals to be compensated for their data as it is a valuable resource that is being exploited without consent or compensation.']}, {'end': 670.697, 'segs': [{'end': 529.851, 'src': 'embed', 'start': 503.609, 'weight': 1, 'content': [{'end': 507.493, 'text': "because, if you think about it, is Facebook doesn't just have one giant server.", 'start': 503.609, 'duration': 3.884}, {'end': 515.159, 'text': 'They have several data centers that are scattered across the web and data is routed through these servers depending on where you are.', 'start': 507.493, 'duration': 7.666}, {'end': 524.288, 'text': "and So these services are both centralized and they're distributed, and And so having a distributed architecture speeds up computing,", 'start': 515.159, 'duration': 9.129}, {'end': 525.688, 'text': "and it's just data latency.", 'start': 524.288, 'duration': 1.4}, {'end': 527.109, 'text': 'It increases bandwidth.', 'start': 526.169, 'duration': 0.94}, {'end': 529.851, 'text': "There's a bunch of pros to having a distributed architecture.", 'start': 527.149, 'duration': 2.702}], 'summary': 'Facebook utilizes distributed architecture with multiple data centers to speed up computing and reduce data latency, increasing bandwidth.', 'duration': 26.242, 'max_score': 503.609, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/gSQXq2_j-mw/pics/gSQXq2_j-mw503609.jpg'}, {'end': 615.678, 'src': 'embed', 'start': 583.371, 'weight': 0, 'content': [{'end': 587.513, 'text': 'You could take down 20 Bitcoin miners, but Bitcoin would still run.', 'start': 583.371, 'duration': 4.142}, {'end': 592.036, 'text': "It's a more resilient way of building software.", 'start': 587.533, 'duration': 4.503}, {'end': 593.697, 'text': "It's faster software.", 'start': 592.336, 'duration': 1.361}, {'end': 595.998, 'text': 'The demand and failures are better handled.', 'start': 593.977, 'duration': 2.021}, {'end': 604.606, 'text': 'So examples of decentralized software are All of these cryptocurrencies that we look at Bitcoin, Ethereum, Litecoin.', 'start': 596.458, 'duration': 8.148}, {'end': 606.548, 'text': 'these are all decentralized systems.', 'start': 604.606, 'duration': 1.942}, {'end': 615.678, 'text': "And when it comes to decentralized applications, there's really only one that satisfies my criteria, at least right now, and that's called Steemit.", 'start': 606.948, 'duration': 8.73}], 'summary': 'Bitcoin is a resilient decentralized system, with faster software and better failure handling. other examples include ethereum, litecoin, and steemit.', 'duration': 32.307, 'max_score': 583.371, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/gSQXq2_j-mw/pics/gSQXq2_j-mw583371.jpg'}, {'end': 652.128, 'src': 'embed', 'start': 627.169, 'weight': 2, 'content': [{'end': 633.394, 'text': 'so anytime you want to build software, any any kind of web app or mobile app, you are using these tools right there.', 'start': 627.169, 'duration': 6.225}, {'end': 638.938, 'text': 'there are certain parts of a website or an app that you need to use tools for right.', 'start': 633.394, 'duration': 5.544}, {'end': 645.224, 'text': "so for payments, you're going to use credit cards and paypal stripe, some kind of api for monetization.", 'start': 638.938, 'duration': 6.286}, {'end': 645.784, 'text': "you know you'll.", 'start': 645.224, 'duration': 0.56}, {'end': 652.128, 'text': "you'll develop some strategy like selling ads, paywall in your content, selling some good, some goods.", 'start': 645.784, 'duration': 6.344}], 'summary': 'Web and mobile app development involves using tools for payments and monetization strategies.', 'duration': 24.959, 'max_score': 627.169, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/gSQXq2_j-mw/pics/gSQXq2_j-mw627169.jpg'}], 'start': 378.797, 'title': 'Decentralized applications', 'summary': 'Provides an overview of decentralized applications, including differences between centralized, distributed, and decentralized systems, benefits of decentralized architecture, and examples of decentralized software.', 'chapters': [{'end': 670.697, 'start': 378.797, 'title': 'Decentralized applications overview', 'summary': 'Provides an overview of decentralized applications, including the differences between centralized, distributed, and decentralized systems, the benefits of decentralized architecture, and examples of decentralized software.', 'duration': 291.9, 'highlights': ['Decentralized systems like Bitcoin and decentralized applications such as Steemit offer a resilient and faster way of building software, where the demand and failures are better handled. Decentralized systems like Bitcoin and decentralized applications offer a resilient and faster way of building software, with better handling of demand and failures.', 'The difference between centralized, distributed, and decentralized systems is explained, highlighting the equal authority of nodes in a decentralized system, as well as the benefits of distributed architecture in terms of speed, computing, and data latency. The explanation of the differences between centralized, distributed, and decentralized systems and the benefits of distributed architecture in terms of speed, computing, and data latency.', 'A comparison of tools used in web 2.0 stack for software development, including payments, monetization, external data, file storage, and computation. A comparison of tools used in the web 2.0 stack for software development, including payments, monetization, external data, file storage, and computation.']}], 'duration': 291.9, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/gSQXq2_j-mw/pics/gSQXq2_j-mw378797.jpg', 'highlights': ['Decentralized systems like Bitcoin and decentralized applications such as Steemit offer a resilient and faster way of building software, with better handling of demand and failures.', 'The explanation of the differences between centralized, distributed, and decentralized systems and the benefits of distributed architecture in terms of speed, computing, and data latency.', 'A comparison of tools used in the web 2.0 stack for software development, including payments, monetization, external data, file storage, and computation.']}, {'end': 960.715, 'segs': [{'end': 761.488, 'src': 'embed', 'start': 670.697, 'weight': 0, 'content': [{'end': 673.998, 'text': 'because web 2.0 has been around for so long.', 'start': 670.697, 'duration': 3.301}, {'end': 677.16, 'text': 'But now we are moving into web 3.0.', 'start': 673.998, 'duration': 3.162}, {'end': 686.125, 'text': 'and that means that because of the invention of a certain set of technologies in order Bit torrent, which maximize bandwidth, Bitcoin,', 'start': 677.16, 'duration': 8.965}, {'end': 697.059, 'text': 'which allowed for decentralized consensus amongst a set of nodes in a system for the first time several of these technologies We are now able to make decentralized apps.', 'start': 686.125, 'duration': 10.934}, {'end': 707.668, 'text': "So the web is kind of like a pendulum, and it started off as decentralized, it moved to centralized, and now it's moving back to decentralized.", 'start': 697.359, 'duration': 10.309}, {'end': 713.673, 'text': 'And that is the mission of many developers right now, is to re-decentralize the web.', 'start': 708.148, 'duration': 5.525}, {'end': 716.694, 'text': 'And so there are tools out there that will let us do that.', 'start': 714.133, 'duration': 2.561}, {'end': 720.036, 'text': 'Ethereum, Bitcoin, all these cryptocurrencies are for payments.', 'start': 717.135, 'duration': 2.901}, {'end': 723.598, 'text': 'The token model for monetization, now this is a really interesting bit.', 'start': 720.496, 'duration': 3.102}, {'end': 725.579, 'text': "And I'll talk about the token model in a second.", 'start': 723.878, 'duration': 1.701}, {'end': 727.54, 'text': 'Oracles for external data.', 'start': 726.039, 'duration': 1.501}, {'end': 732.222, 'text': "Oracles are third party data sources that you don't have to trust a human for.", 'start': 727.9, 'duration': 4.322}, {'end': 737.084, 'text': 'Like you have to trust Stripe or any of these APIs to provide valid data.', 'start': 732.282, 'duration': 4.802}, {'end': 744.936, 'text': "But an oracle is essentially a smart contract that has some data that You can trust, but it's run by machines.", 'start': 737.405, 'duration': 7.531}, {'end': 750.82, 'text': "For file storage, you would use a network like the Interplanetary File System which I'll talk about,", 'start': 745.837, 'duration': 4.983}, {'end': 753.262, 'text': 'which is essentially a big distributed hash table.', 'start': 750.82, 'duration': 2.442}, {'end': 761.488, 'text': 'And lastly, for computation, you would use Ethereum, for example, which is a decentralized virtual machine.', 'start': 753.823, 'duration': 7.665}], 'summary': 'Web 3.0 enables decentralized apps using technologies like bittorrent, bitcoin, ethereum, and ipfs.', 'duration': 90.791, 'max_score': 670.697, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/gSQXq2_j-mw/pics/gSQXq2_j-mw670697.jpg'}, {'end': 851.792, 'src': 'heatmap', 'start': 799.46, 'weight': 6, 'content': [{'end': 808.045, 'text': "and now, if you're using a traditional business model, yes, if a competitor can see your code A lot of the times, that is your competitive advantage.", 'start': 799.46, 'duration': 8.585}, {'end': 812.607, 'text': 'They could then just use that code and then fork it and then profit off of your code.', 'start': 808.045, 'duration': 4.562}, {'end': 821.793, 'text': "but in a decentralized application, if you're using a token business model, an app coin model, then They could not take away from your network.", 'start': 812.607, 'duration': 9.186}, {'end': 830.599, 'text': 'right, because it depends on the community of users, it depends on, It depends on the trust of your users,', 'start': 821.793, 'duration': 8.806}, {'end': 834.001, 'text': 'and your users are profiting from your model as well.', 'start': 830.599, 'duration': 3.402}, {'end': 840.425, 'text': "So people want to join the network that has the most trust, that's built the most trust over time.", 'start': 834.501, 'duration': 5.924}, {'end': 842.166, 'text': 'Trust is a moving concept.', 'start': 840.785, 'duration': 1.381}, {'end': 843.747, 'text': "It's not just established once.", 'start': 842.466, 'duration': 1.281}, {'end': 847.049, 'text': 'You have to continually prove and reprove that trust.', 'start': 844.027, 'duration': 3.022}, {'end': 851.792, 'text': 'And so people want to go with the longest chain of trust, so to speak.', 'start': 847.429, 'duration': 4.363}], 'summary': 'In a decentralized app, trust and community users drive success, not easily replicable code.', 'duration': 47.589, 'max_score': 799.46, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/gSQXq2_j-mw/pics/gSQXq2_j-mw799460.jpg'}, {'end': 904.442, 'src': 'embed', 'start': 874.155, 'weight': 5, 'content': [{'end': 876.016, 'text': 'But the cryptocurrency way is to do this.', 'start': 874.155, 'duration': 1.861}, {'end': 881.642, 'text': 'Okay, so you would allocate some scarce resource in your network using a scarce token.', 'start': 876.656, 'duration': 4.986}, {'end': 889.11, 'text': 'right. that scarce resource could be storage space, it could be images, it could be videos some scarce resource, some scarce data.', 'start': 881.642, 'duration': 7.468}, {'end': 895.356, 'text': "that's, people are contributing to the network and And you monetize that with an app coin, some kind of token.", 'start': 889.11, 'duration': 6.246}, {'end': 897.677, 'text': 'and what happens is Users need this.', 'start': 895.356, 'duration': 2.321}, {'end': 904.442, 'text': "app can't app coin to access the scarce resource and because of that you're creating a supply and a demand.", 'start': 897.677, 'duration': 6.765}], 'summary': 'Cryptocurrency networks allocate and monetize scarce resources, creating supply and demand.', 'duration': 30.287, 'max_score': 874.155, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/gSQXq2_j-mw/pics/gSQXq2_j-mw874155.jpg'}], 'start': 670.697, 'title': 'Web 3.0 and decentralized apps', 'summary': 'Discusses the transition from web 2.0 to web 3.0, enabled by technologies like bittorrent and bitcoin, leading to the rise of decentralized apps and the mission of re-decentralizing the web. it also covers the four features that make up a profitable decentralized application, emphasizing the benefits of a decentralized approach and the use of cryptocurrency to monetize scarce resources.', 'chapters': [{'end': 761.488, 'start': 670.697, 'title': 'Web 3.0 and decentralized apps', 'summary': 'Discusses the transition from web 2.0 to web 3.0, enabled by technologies like bittorrent and bitcoin, leading to the rise of decentralized apps and the mission of re-decentralizing the web.', 'duration': 90.791, 'highlights': ['Web 3.0 enabled by BitTorrent and Bitcoin Technologies like BitTorrent and Bitcoin are enabling the transition to web 3.0 and the development of decentralized apps.', 'Mission of re-decentralizing the web Developers are focused on the mission of re-decentralizing the web, with tools like Ethereum and Bitcoin facilitating this transition.', 'Token model for monetization The token model for monetization in the context of cryptocurrencies like Ethereum and Bitcoin is a significant aspect of web 3.0.', 'Oracles for external data The use of oracles, which are smart contracts run by machines, provides a trustworthy way to access third-party data without relying on human intermediaries.', 'File storage using Interplanetary File System The Interplanetary File System, a distributed hash table, is highlighted as a solution for decentralized file storage in web 3.0.']}, {'end': 960.715, 'start': 761.808, 'title': 'Features of decentralized applications', 'summary': 'Discusses the four features that make up a profitable decentralized application, including open source nature, use of cryptocurrency, token business model, and the concept of trust, emphasizing the benefits of a decentralized approach and the use of cryptocurrency to monetize scarce resources.', 'duration': 198.907, 'highlights': ['The concept of trust is a crucial aspect of decentralized applications, as it depends on the community of users and the continual establishment of trust, leading people to join the network with the most trust over time. ', 'The use of cryptocurrency in decentralized applications involves allocating scarce resources in the network using a scarce token, creating a supply and demand dynamic, and making the value of the app coin rise by paying owners of the scarce resource in app coins. ', 'Open source nature and the token business model in decentralized applications provide a level of security and community trust, allowing users to profit from the model and preventing competitors from stealing code for profit. ']}], 'duration': 290.018, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/gSQXq2_j-mw/pics/gSQXq2_j-mw670697.jpg', 'highlights': ['Web 3.0 enabled by BitTorrent and Bitcoin Technologies like BitTorrent and Bitcoin are enabling the transition to web 3.0 and the development of decentralized apps.', 'Mission of re-decentralizing the web Developers are focused on the mission of re-decentralizing the web, with tools like Ethereum and Bitcoin facilitating this transition.', 'Token model for monetization The token model for monetization in the context of cryptocurrencies like Ethereum and Bitcoin is a significant aspect of web 3.0.', 'Oracles for external data The use of oracles, which are smart contracts run by machines, provides a trustworthy way to access third-party data without relying on human intermediaries.', 'File storage using Interplanetary File System The Interplanetary File System, a distributed hash table, is highlighted as a solution for decentralized file storage in web 3.0.', 'The use of cryptocurrency in decentralized applications involves allocating scarce resources in the network using a scarce token, creating a supply and demand dynamic, and making the value of the app coin rise by paying owners of the scarce resource in app coins.', 'Open source nature and the token business model in decentralized applications provide a level of security and community trust, allowing users to profit from the model and preventing competitors from stealing code for profit.', 'The concept of trust is a crucial aspect of decentralized applications, as it depends on the community of users and the continual establishment of trust, leading people to join the network with the most trust over time.']}, {'end': 1318.726, 'segs': [{'end': 1015.103, 'src': 'embed', 'start': 986.124, 'weight': 1, 'content': [{'end': 990.005, 'text': 'As you can see here, the most valuable posts are the most paid posts.', 'start': 986.124, 'duration': 3.881}, {'end': 996.808, 'text': "And it's open source, it uses cryptocurrency under the hood, but it's got a dollar wrapper here.", 'start': 990.706, 'duration': 6.102}, {'end': 999.189, 'text': 'But anyone can pay in cryptocurrency.', 'start': 997.528, 'duration': 1.661}, {'end': 1003.03, 'text': 'So Steemit is a great example of a working decentralized application.', 'start': 999.209, 'duration': 3.821}, {'end': 1007.401, 'text': 'The third feature is decentralized consensus.', 'start': 1004.721, 'duration': 2.68}, {'end': 1015.103, 'text': "So what I mean by that is the ability for a network to all agree upon everything that's happening in the app.", 'start': 1007.802, 'duration': 7.301}], 'summary': 'Steemit is a valuable decentralized platform using cryptocurrency for payments, with open-source and decentralized consensus features.', 'duration': 28.979, 'max_score': 986.124, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/gSQXq2_j-mw/pics/gSQXq2_j-mw986124.jpg'}, {'end': 1050.75, 'src': 'embed', 'start': 1025.023, 'weight': 0, 'content': [{'end': 1033.306, 'text': "51% of the nodes in the Bitcoin network have to approve a transaction before it's made valid and added to the chain of blocks, the blockchain.", 'start': 1025.023, 'duration': 8.283}, {'end': 1042.468, 'text': 'And as they vote on the validity of a transaction, they also have to offer a proof of their computational work.', 'start': 1033.965, 'duration': 8.503}, {'end': 1050.75, 'text': 'And so what this means is you have to have more computing power than 51% of the Bitcoin network in order to fake a transaction.', 'start': 1042.867, 'duration': 7.883}], 'summary': '51% of bitcoin nodes must approve a transaction, requiring more computing power to fake it.', 'duration': 25.727, 'max_score': 1025.023, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/gSQXq2_j-mw/pics/gSQXq2_j-mw1025022.jpg'}, {'end': 1111.74, 'src': 'embed', 'start': 1088.347, 'weight': 3, 'content': [{'end': 1095.312, 'text': 'So you use a distributed hash table to store the data and then you use a blockchain for app level constructs.', 'start': 1088.347, 'duration': 6.965}, {'end': 1100.235, 'text': 'These are time stamped constructs like usernames and status updates and high scores.', 'start': 1095.672, 'duration': 4.563}, {'end': 1102.897, 'text': 'Anything that you need the network to agree upon.', 'start': 1100.756, 'duration': 2.141}, {'end': 1111.74, 'text': 'and so the reason you use a dht and a blockchain is because the blockchain solves the major security issue of dhts,', 'start': 1104.358, 'duration': 7.382}], 'summary': 'Distributed hash table stores data, blockchain manages app-level constructs, solving security issue.', 'duration': 23.393, 'max_score': 1088.347, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/gSQXq2_j-mw/pics/gSQXq2_j-mw1088347.jpg'}, {'end': 1209.217, 'src': 'embed', 'start': 1179.023, 'weight': 5, 'content': [{'end': 1186.828, 'text': "So it's that what that means is it is a pre-agreed upon snippet of code that, once deployed, is Unchangeable, it is immutable.", 'start': 1179.023, 'duration': 7.805}, {'end': 1188.889, 'text': "okay, so that's a smart contract.", 'start': 1186.828, 'duration': 2.061}, {'end': 1195.012, 'text': 'and lastly, For a profitable decentralized application, there is no central point of failure.', 'start': 1188.889, 'duration': 6.123}, {'end': 1199.293, 'text': 'That means that you just could not take this application down if you wanted to.', 'start': 1195.372, 'duration': 3.921}, {'end': 1209.217, 'text': 'So all these big countries that try to block access like China to applications like Facebook, they could not do that for a decentralized application.', 'start': 1199.894, 'duration': 9.323}], 'summary': 'Smart contracts are immutable code snippets, enabling profitable decentralized applications with no central point of failure.', 'duration': 30.194, 'max_score': 1179.023, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/gSQXq2_j-mw/pics/gSQXq2_j-mw1179023.jpg'}, {'end': 1318.726, 'src': 'embed', 'start': 1293.795, 'weight': 4, 'content': [{'end': 1302.176, 'text': 'So you could take down a website by just DDoSing it, right? But you could not DDoS an IPFS node because the data is replicated.', 'start': 1293.795, 'duration': 8.381}, {'end': 1304.897, 'text': "It's not location addressed, it's content addressed.", 'start': 1302.256, 'duration': 2.641}, {'end': 1312.522, 'text': "And there's a lot of reasons for creating IPFS that I could go into, but basically it helps us create a permanent web where links never die.", 'start': 1305.117, 'duration': 7.405}, {'end': 1315.124, 'text': "So it's a more resilient web than HTTP.", 'start': 1312.822, 'duration': 2.302}, {'end': 1318.726, 'text': "Okay, so it's decentralized.", 'start': 1315.904, 'duration': 2.822}], 'summary': 'Ipfs creates a more resilient, decentralized web with permanent links and data replication.', 'duration': 24.931, 'max_score': 1293.795, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/gSQXq2_j-mw/pics/gSQXq2_j-mw1293795.jpg'}], 'start': 960.715, 'title': 'Decentralized applications', 'summary': 'Discusses the creation of markets in decentralized applications, highlighting examples such as steemit and the concept of decentralized consensus. it also explores the role of blockchain, distributed hash tables, and smart contracts in creating decentralized applications, and the advantages of ipfs in creating a more resilient and decentralized web compared to http.', 'chapters': [{'end': 1050.75, 'start': 960.715, 'title': 'Decentralized applications and market creation', 'summary': "Discusses the creation of markets in decentralized applications, highlighting the example of steemit where users are rewarded for their valuable posts, and the concept of decentralized consensus, exemplified by bitcoin's proof of work algorithm and the need for 51% computing power for transaction validation.", 'duration': 90.035, 'highlights': ["Bitcoin's proof of work algorithm demonstrates decentralized consensus, requiring 51% computing power for transaction validation.", 'Steemit exemplifies market creation in decentralized applications where users are rewarded for valuable posts.', 'Decentralized applications, such as Steemit, utilize digital point systems and cryptocurrency for rewarding scarce resources.']}, {'end': 1318.726, 'start': 1051.43, 'title': 'Decentralized applications and ipfs', 'summary': 'Explores the role of blockchain, distributed hash tables, and smart contracts in creating decentralized applications, and the advantages of ipfs in creating a more resilient and decentralized web compared to http.', 'duration': 267.296, 'highlights': ["Blockchain's role in decentralized consensus and application constructs Blockchain plays a crucial role in reaching decentralized consensus for timestamps constructs like usernames, status updates, and high scores, ensuring network agreement and security.", 'Usage of IPFS as a distributed hash table for storing data IPFS is utilized for storing large files and creating a more resilient web by addressing content rather than location, ensuring data replication and preventing DDoS attacks.', 'Advantages of smart contracts in decentralized applications Smart contracts, deployed on a blockchain like Ethereum, provide crypto-economically secured, immutable snippets of code, eliminating the need to trust a central source and preventing application takedown.']}], 'duration': 358.011, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/gSQXq2_j-mw/pics/gSQXq2_j-mw960715.jpg', 'highlights': ["Bitcoin's proof of work algorithm demonstrates decentralized consensus, requiring 51% computing power for transaction validation.", 'Steemit exemplifies market creation in decentralized applications where users are rewarded for valuable posts.', 'Decentralized applications, such as Steemit, utilize digital point systems and cryptocurrency for rewarding scarce resources.', "Blockchain's role in decentralized consensus and application constructs Blockchain plays a crucial role in reaching decentralized consensus for timestamps constructs like usernames, status updates, and high scores, ensuring network agreement and security.", 'Usage of IPFS as a distributed hash table for storing data IPFS is utilized for storing large files and creating a more resilient web by addressing content rather than location, ensuring data replication and preventing DDoS attacks.', 'Advantages of smart contracts in decentralized applications Smart contracts, deployed on a blockchain like Ethereum, provide crypto-economically secured, immutable snippets of code, eliminating the need to trust a central source and preventing application takedown.']}, {'end': 2236.358, 'segs': [{'end': 1342.841, 'src': 'embed', 'start': 1319.146, 'weight': 1, 'content': [{'end': 1325.771, 'text': 'So in general, these technologies are all a way for us to build more autonomous software.', 'start': 1319.146, 'duration': 6.625}, {'end': 1328.753, 'text': 'That is software that is independent of its creators.', 'start': 1325.791, 'duration': 2.962}, {'end': 1330.354, 'text': "It's almost like we're.", 'start': 1329.193, 'duration': 1.161}, {'end': 1339.359, 'text': 'you know, with AI and with blockchain and all of these very interesting new technologies, We are creating ways of removing the human from the loop,', 'start': 1330.354, 'duration': 9.005}, {'end': 1342.841, 'text': 'because with humans there is always some kind of trust involved, right,', 'start': 1339.359, 'duration': 3.482}], 'summary': 'New technologies aim to create autonomous software, reducing human involvement.', 'duration': 23.695, 'max_score': 1319.146, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/gSQXq2_j-mw/pics/gSQXq2_j-mw1319146.jpg'}, {'end': 1413.605, 'src': 'embed', 'start': 1384.54, 'weight': 2, 'content': [{'end': 1388.681, 'text': 'the next step is to have automation at the edges and humans at the center.', 'start': 1384.54, 'duration': 4.141}, {'end': 1393.765, 'text': 'so the assembly line is a great example and Robots are doing all the grunt work, but humans are overhead watching it.', 'start': 1388.681, 'duration': 5.084}, {'end': 1399.811, 'text': "Now where we're heading towards are distributed autonomous organizations, which is what ADAPT is.", 'start': 1394.446, 'duration': 5.365}, {'end': 1400.832, 'text': "It's another word for it.", 'start': 1399.851, 'duration': 0.981}, {'end': 1404.235, 'text': 'And that means automation is at the center.', 'start': 1401.833, 'duration': 2.402}, {'end': 1410.201, 'text': "the trust is in the blockchain, it's in these distributed, decentralized technologies, and humans are at the edges.", 'start': 1404.235, 'duration': 5.966}, {'end': 1413.605, 'text': 'So the community kind of supports this autonomous network.', 'start': 1410.261, 'duration': 3.344}], 'summary': 'Automation at center, humans at edges in distributed autonomous organizations like adapt.', 'duration': 29.065, 'max_score': 1384.54, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/gSQXq2_j-mw/pics/gSQXq2_j-mw1384540.jpg'}, {'end': 1451.91, 'src': 'embed', 'start': 1424.554, 'weight': 0, 'content': [{'end': 1432.58, 'text': 'And lastly, you would have automation at the edges and automation at the center, and that is just the holy grail, right? Just pure AI.', 'start': 1424.554, 'duration': 8.026}, {'end': 1435.682, 'text': 'So in the end, these technologies are all really related.', 'start': 1433.12, 'duration': 2.562}, {'end': 1439.447, 'text': 'Lastly, before we, before I go into the code,', 'start': 1436.906, 'duration': 2.541}, {'end': 1451.91, 'text': 'this blockchain and the ICO model is just a way for us to more closely approximate the the value generation and capital generation.', 'start': 1439.447, 'duration': 12.463}], 'summary': 'Automation at edges and center is the ultimate goal, with blockchain and ico for value and capital generation.', 'duration': 27.356, 'max_score': 1424.554, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/gSQXq2_j-mw/pics/gSQXq2_j-mw1424554.jpg'}, {'end': 1612.527, 'src': 'embed', 'start': 1581.654, 'weight': 5, 'content': [{'end': 1586.856, 'text': "which we're going to access this from, and we can do all this from a web browser.", 'start': 1581.654, 'duration': 5.202}, {'end': 1588.836, 'text': "So that's, that's, that's what it's going to look like.", 'start': 1586.856, 'duration': 1.98}, {'end': 1591.097, 'text': "so let's go ahead and set up our environment, okay?", 'start': 1588.836, 'duration': 2.261}, {'end': 1597.66, 'text': 'So the first step is for us to download a The Ethereum test RPC.', 'start': 1591.778, 'duration': 5.882}, {'end': 1605.624, 'text': "This is an in-memory blockchain and it's great for testing out blockchain without having to download the actual blockchain.", 'start': 1597.96, 'duration': 7.664}, {'end': 1612.527, 'text': "So we're going to go ahead and install that by running npm install ethereum.js test RPC and web3.", 'start': 1605.644, 'duration': 6.883}], 'summary': 'Setting up environment with ethereum test rpc for blockchain testing.', 'duration': 30.873, 'max_score': 1581.654, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/gSQXq2_j-mw/pics/gSQXq2_j-mw1581654.jpg'}, {'end': 1691.787, 'src': 'embed', 'start': 1666.074, 'weight': 6, 'content': [{'end': 1670.998, 'text': "We're gonna deploy that contract to the Ethereum blockchain, and it's gonna consist of two functions.", 'start': 1666.074, 'duration': 4.924}, {'end': 1677.841, 'text': 'One is gonna return the total votes a candidate has received, and the other to increment the vote count for a candidate.', 'start': 1671.618, 'duration': 6.223}, {'end': 1680.662, 'text': 'And these deployed contracts are immutable.', 'start': 1678.301, 'duration': 2.361}, {'end': 1684.704, 'text': 'If we have any changes we wanna make, we would just deploy a new contract.', 'start': 1681.002, 'duration': 3.702}, {'end': 1689.266, 'text': "Unlike in a regular web app where you could just modify the existing code, you can't do that.", 'start': 1685.044, 'duration': 4.222}, {'end': 1691.787, 'text': 'These are immutable pieces of code.', 'start': 1689.846, 'duration': 1.941}], 'summary': 'Deploy contract to ethereum blockchain with two functions to manage votes, and contracts are immutable.', 'duration': 25.713, 'max_score': 1666.074, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/gSQXq2_j-mw/pics/gSQXq2_j-mw1666074.jpg'}, {'end': 1765.885, 'src': 'embed', 'start': 1734.979, 'weight': 7, 'content': [{'end': 1741.021, 'text': 'So we could think of this as kind of like a class in whatever your favorite object-oriented language is.', 'start': 1734.979, 'duration': 6.042}, {'end': 1742.202, 'text': 'Okay, so..', 'start': 1741.682, 'duration': 0.52}, {'end': 1745.346, 'text': 'So this is our voting contract.', 'start': 1744.045, 'duration': 1.301}, {'end': 1752.913, 'text': 'Our first bit is to create a mapping field, which is the equivalent of creating an associative array or hash.', 'start': 1745.766, 'duration': 7.147}, {'end': 1758.637, 'text': "And what this is going to do is we're going to say, we're going to say uint8.", 'start': 1753.533, 'duration': 5.104}, {'end': 1765.885, 'text': "And this is the number of votes we've received.", 'start': 1761.94, 'duration': 3.945}], 'summary': 'Creating a voting contract with a mapping field to store uint8 votes.', 'duration': 30.906, 'max_score': 1734.979, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/gSQXq2_j-mw/pics/gSQXq2_j-mw1734979.jpg'}, {'end': 1909.892, 'src': 'embed', 'start': 1787.511, 'weight': 8, 'content': [{'end': 1799.344, 'text': "so we're going to use an array of bytes 32, bytes 32 To store the list of candidates right and we want to have three candidates.", 'start': 1787.511, 'duration': 11.833}, {'end': 1800.505, 'text': "so I'm going to say candidate list.", 'start': 1799.344, 'duration': 1.161}, {'end': 1811.282, 'text': "and then we're going to create our constructor, our con, our constructor, which is going to be called once when we deploy the contract right.", 'start': 1800.505, 'duration': 10.777}, {'end': 1814.926, 'text': 'so this is our voting constructor right for our class.', 'start': 1811.282, 'duration': 3.644}, {'end': 1828.382, 'text': "it's going to be of type block 32 and the parameter is are going to be the candidate names and inside of the constructor we can set our variable candidate list candidate list to the parameter candidate names,", 'start': 1814.926, 'duration': 13.456}, {'end': 1829.544, 'text': 'which is how we initialize it.', 'start': 1828.382, 'duration': 1.162}, {'end': 1835.997, 'text': "Okay, so then when we deploy the contract, we're going to pass an array of candidates who will be contesting in the election.", 'start': 1830.246, 'duration': 5.751}, {'end': 1840.058, 'text': 'And so, once we have that we can return,', 'start': 1837.597, 'duration': 2.461}, {'end': 1848.763, 'text': "we'll create a function that's going to return the total votes for the candidate that a candidate has received so far.", 'start': 1840.058, 'duration': 8.705}, {'end': 1858.288, 'text': "And again, the parameter is going to be the candidate, and then it's gonna return the total votes as an integer.", 'start': 1849.283, 'duration': 9.005}, {'end': 1860.969, 'text': 'Okay, as an integer.', 'start': 1858.308, 'duration': 2.661}, {'end': 1864.811, 'text': 'And so yes, we can go ahead and return it, votes received, candidate.', 'start': 1861.909, 'duration': 2.902}, {'end': 1886.285, 'text': "Now we're gonna create, so now we have two more functions.", 'start': 1882.102, 'duration': 4.183}, {'end': 1891.129, 'text': 'So the next function is going to be to vote for the candidate.', 'start': 1886.766, 'duration': 4.363}, {'end': 1897.515, 'text': "So this is the function that increments the vote count for the specified candidate and it's equivalent to casting a vote.", 'start': 1891.89, 'duration': 5.625}, {'end': 1905.728, 'text': "So for voting for a candidate, so voting for candidate That's going to be bytes 32.", 'start': 1897.555, 'duration': 8.173}, {'end': 1909.892, 'text': "For a given candidate, we want to say if it's a valid candidate.", 'start': 1905.728, 'duration': 4.164}], 'summary': 'Creating a voting contract with an array of 32 bytes to store three candidates and functions to return total votes and vote for a candidate.', 'duration': 122.381, 'max_score': 1787.511, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/gSQXq2_j-mw/pics/gSQXq2_j-mw1787511.jpg'}, {'end': 2083.853, 'src': 'embed', 'start': 2048.692, 'weight': 12, 'content': [{'end': 2051.152, 'text': 'then we then update the.', 'start': 2048.692, 'duration': 2.46}, {'end': 2058.418, 'text': 'we then send the vote from the string the string vote that we did in the web app to the blockchain to update the candidate,', 'start': 2051.693, 'duration': 6.725}, {'end': 2064.902, 'text': 'and then we can retrieve it from the blockchain and then display it in the HTML web app.', 'start': 2058.418, 'duration': 6.484}, {'end': 2075.309, 'text': "so so then we can say okay, so, after writing our smart contract, we're going to use web 3js to deploy our app and interact with it.", 'start': 2064.902, 'duration': 10.407}, {'end': 2083.853, 'text': "so our first step let me make this bigger is to open up the node console and then we're gonna say okay, so web3,", 'start': 2075.309, 'duration': 8.544}], 'summary': 'Updating and retrieving votes from blockchain using web3js for web app interaction.', 'duration': 35.161, 'max_score': 2048.692, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/gSQXq2_j-mw/pics/gSQXq2_j-mw2048692.jpg'}, {'end': 2149.443, 'src': 'embed', 'start': 2113.453, 'weight': 13, 'content': [{'end': 2119.976, 'text': 'to let us access the Ethereum blockchain, the test chain, from HTTP.', 'start': 2113.453, 'duration': 6.523}, {'end': 2128.061, 'text': "So it's kind of like an interface between HTTP and the Ethereum test RPC chain.", 'start': 2120.056, 'duration': 8.005}, {'end': 2130.442, 'text': 'Close Okay, we did that.', 'start': 2128.561, 'duration': 1.881}, {'end': 2137.076, 'text': 'And now we can ensure that web3.js initialized by querying the accounts on the blockchain.', 'start': 2131.673, 'duration': 5.403}, {'end': 2139.738, 'text': "All right, we've queried those accounts.", 'start': 2137.596, 'duration': 2.142}, {'end': 2144.12, 'text': "And lastly, we're going to compile this contract by reading it.", 'start': 2140.178, 'duration': 3.942}, {'end': 2149.443, 'text': 'Hold on.', 'start': 2149.103, 'duration': 0.34}], 'summary': 'Developing an interface to access ethereum blockchain via http, initializing web3.js, and querying accounts.', 'duration': 35.99, 'max_score': 2113.453, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/gSQXq2_j-mw/pics/gSQXq2_j-mw2113453.jpg'}, {'end': 2220.189, 'src': 'embed', 'start': 2194.116, 'weight': 14, 'content': [{'end': 2199.36, 'text': 'or we could just interact with it directly from our HTML interface, which I already have here.', 'start': 2194.116, 'duration': 5.244}, {'end': 2202.522, 'text': "So let's go ahead and interact with it from our HTML interface.", 'start': 2199.64, 'duration': 2.882}, {'end': 2211.528, 'text': "So let's see, I'll just say, you know, Rama again to see if it increments.", 'start': 2203.282, 'duration': 8.246}, {'end': 2213.365, 'text': 'And it increments.', 'start': 2212.765, 'duration': 0.6}, {'end': 2216.727, 'text': 'OK, so that is my simple voting app demo.', 'start': 2213.565, 'duration': 3.162}, {'end': 2218.848, 'text': 'All the code for this is in the description.', 'start': 2216.907, 'duration': 1.941}, {'end': 2220.189, 'text': 'Check it out on GitHub.', 'start': 2219.169, 'duration': 1.02}], 'summary': 'A demonstration of a simple voting app using html interface, with code available on github.', 'duration': 26.073, 'max_score': 2194.116, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/gSQXq2_j-mw/pics/gSQXq2_j-mw2194116.jpg'}], 'start': 1319.146, 'title': 'Autonomous software, blockchain, and voting contracts', 'summary': 'Explores the shift towards autonomous software and distributed organizations, the potential of blockchain for social impact, and the process of creating and deploying voting contracts using solidity and web3.js, with examples and practical demonstrations.', 'chapters': [{'end': 1451.91, 'start': 1319.146, 'title': 'Autonomous software and distributed organizations', 'summary': 'Discusses the shift towards creating more autonomous software with ai and blockchain, leading to the concept of distributed autonomous organizations (daos), where automation is at the center and humans are at the edges, with examples such as decentralized uber and the ultimate goal of pure ai.', 'duration': 132.764, 'highlights': ['The shift towards creating more autonomous software with AI and blockchain The discussion emphasizes the use of AI and blockchain to create more autonomous software, removing the need for human trust and involvement.', "Concept of distributed autonomous organizations (DAOs) and the role of automation and humans The concept of DAOs is explained, where automation is at the center and humans are at the edges, with examples such as decentralized Uber, highlighting the community's role in supporting the autonomous network.", "The ultimate goal of pure AI with automation at the edges and center The ultimate goal of having automation at both the edges and center, representing pure AI, is mentioned as the 'holy grail' of this technological advancement.", 'Role of blockchain and ICO model in approximating value generation and capital generation The discussion mentions the role of blockchain and the ICO model in closely approximating the value generation and capital generation within this context.']}, {'end': 1734.939, 'start': 1451.91, 'title': 'Blockchain for social impact', 'summary': 'Discusses the alignment of capital generation and value generation, and the potential of blockchain to monetize social impact causes, with examples of ethereum and the voting smart contract. it also explains the process of setting up the environment for ethereum and creating a voting smart contract.', 'duration': 283.029, 'highlights': ["Blockchain's potential to align capital generation and value generation, allowing for more money to be earned by those generating real value for the world. The discussion emphasizes how blockchain can closely approximate the alignment of capital generation and value generation, enabling individuals generating real value for the world to earn as much money as they deserve.", 'Explanation of setting up the environment for Ethereum, including downloading the Ethereum test RPC and using web3 thin client to access the blockchain. The process of setting up the environment for Ethereum is explained, involving the download of Ethereum test RPC and the utilization of web3 thin client to access the blockchain.', "Process of creating a voting smart contract using Ethereum's language Solidity, and its immutability once deployed. The chapter details the process of creating a voting smart contract using Ethereum's language Solidity, highlighting the immutability of the deployed contracts and the inability to modify the existing code."]}, {'end': 1975.636, 'start': 1734.979, 'title': 'Creating a voting contract in solidity', 'summary': 'Explains the process of creating a voting contract in solidity, including mapping fields for vote counts, constructor for candidate names, and functions for voting and candidate validation.', 'duration': 240.657, 'highlights': ['Creating a mapping field to store the vote count for each candidate The contract includes a mapping field to store the vote count for each candidate using the equivalent of an associative array or hash.', 'Using an array of bytes 32 to store the list of candidates, with a total of three candidates The contract utilizes an array of bytes 32 to store the list of candidates, with a total of three candidates specified.', 'Designing a constructor to initialize the candidate list when deploying the contract A constructor is designed to initialize the candidate list when deploying the contract, allowing the passing of candidate names as parameters.', "Implementing a function to return the total votes received by a specific candidate The contract includes a function to return the total votes received by a specific candidate, with the candidate's name as the parameter and the total votes as the return value.", "Creating a function to increment the vote count for a specified candidate and validating the candidate's existence A function is created to increment the vote count for a specified candidate, with validation to check the candidate's existence before incrementing the vote count."]}, {'end': 2236.358, 'start': 1976.116, 'title': 'Voting app deployment with solidity and web3.js', 'summary': 'Covers the deployment of a voting app using solidity and web3.js, including initializing web3, compiling the contract, interacting with the blockchain, and demonstrating a simple voting app demo.', 'duration': 260.242, 'highlights': ['The chapter covers the deployment of a voting app using Solidity and Web3.js The chapter discusses the deployment process of a voting app utilizing Solidity and Web3.js for interacting with the blockchain.', 'Initializing web3, compiling the contract, and interacting with the blockchain The process involves initializing web3, querying accounts on the blockchain, compiling the contract, and deploying it, as well as interacting with the blockchain directly from an HTML interface.', 'Demonstrating a simple voting app demo The speaker demonstrates a simple voting app demo, where the user can interact with the app by voting for candidates and seeing the increments, concluding the chapter.']}], 'duration': 917.212, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/gSQXq2_j-mw/pics/gSQXq2_j-mw1319146.jpg', 'highlights': ["The ultimate goal of pure AI with automation at the edges and center, representing pure AI, is mentioned as the 'holy grail' of this technological advancement.", 'The shift towards creating more autonomous software with AI and blockchain, emphasizing the use of AI and blockchain to create more autonomous software, removing the need for human trust and involvement.', 'Concept of distributed autonomous organizations (DAOs) and the role of automation and humans, explaining the concept of DAOs where automation is at the center and humans are at the edges, with examples such as decentralized Uber.', 'Role of blockchain and ICO model in approximating value generation and capital generation, mentioning the role of blockchain and the ICO model in closely approximating the value generation and capital generation within this context.', "Blockchain's potential to align capital generation and value generation, allowing for more money to be earned by those generating real value for the world, emphasizing how blockchain can closely approximate the alignment of capital generation and value generation.", 'Explanation of setting up the environment for Ethereum, involving the download of Ethereum test RPC and the utilization of web3 thin client to access the blockchain.', "Process of creating a voting smart contract using Ethereum's language Solidity, highlighting the immutability of the deployed contracts and the inability to modify the existing code.", 'Creating a mapping field to store the vote count for each candidate, including a mapping field to store the vote count for each candidate using the equivalent of an associative array or hash.', 'Using an array of bytes 32 to store the list of candidates, with a total of three candidates specified.', 'Designing a constructor to initialize the candidate list when deploying the contract, allowing the passing of candidate names as parameters.', "Implementing a function to return the total votes received by a specific candidate, including a function to return the total votes received by a specific candidate, with the candidate's name as the parameter and the total votes as the return value.", "Creating a function to increment the vote count for a specified candidate and validating the candidate's existence, with validation to check the candidate's existence before incrementing the vote count.", 'The chapter covers the deployment of a voting app using Solidity and Web3.js, discussing the deployment process of a voting app utilizing Solidity and Web3.js for interacting with the blockchain.', 'Initializing web3, compiling the contract, and interacting with the blockchain, involving initializing web3, querying accounts on the blockchain, compiling the contract, and deploying it, as well as interacting with the blockchain directly from an HTML interface.', 'Demonstrating a simple voting app demo, where the user can interact with the app by voting for candidates and seeing the increments, concluding the chapter.']}], 'highlights': ['The voting app is unhackable, requiring access to the computing power of 500 fastest supercomputers in the world combined to modify votes.', 'The app is decentralized, resistant to hacking, and showcases its functionality with three candidates and the ability for users to vote.', 'The web transitioned from a neutral playing field with individual ownership of data to a centralized system where data is routed through a handful of massive nodes, impacting the overall structure and control of the web.', 'Data ownership is centralized, limiting opportunities for individuals to generate value and capital, leading to a shift from valuing labor to valuing data as the primary source of revenue and societal value.', 'Tech companies wield excessive power through data collection, posing significant privacy concerns, emphasizing the need for individuals to be compensated for their data.', 'Decentralized systems like Bitcoin and decentralized applications such as Steemit offer a resilient and faster way of building software, with better handling of demand and failures.', 'Web 3.0 enabled by BitTorrent and Bitcoin Technologies like BitTorrent and Bitcoin are enabling the transition to web 3.0 and the development of decentralized apps.', 'The token model for monetization in the context of cryptocurrencies like Ethereum and Bitcoin is a significant aspect of web 3.0, involving allocating scarce resources in the network using a scarce token, creating a supply and demand dynamic.', "Bitcoin's proof of work algorithm demonstrates decentralized consensus, requiring 51% computing power for transaction validation, exemplifying market creation in decentralized applications where users are rewarded for valuable posts.", "The ultimate goal of pure AI with automation at the edges and center, representing pure AI, is mentioned as the 'holy grail' of this technological advancement, emphasizing the use of AI and blockchain to create more autonomous software, removing the need for human trust and involvement.", 'Concept of distributed autonomous organizations (DAOs) and the role of automation and humans, explaining the concept of DAOs where automation is at the center and humans are at the edges, with examples such as decentralized Uber.', "Process of creating a voting smart contract using Ethereum's language Solidity, highlighting the immutability of the deployed contracts and the inability to modify the existing code, concluding the chapter."]}