I've finally conjured the willpower to buckle down and learn a new programming language: JavaScript. This will allow me to code applications that execute directly in web browsers. It will also allow me to make API calls directly to the Steem blockchain.
Javascript seems to be Steem's main programming language so learning it is a must. The ultimate goal here is to create decentralized browsers extensions. Anyone will be able to download my apps and the code will execute directly from your own computer. This is exactly how the MetaMask Ethereum wallet works.
This kind of full decentralized access is exactly what the cryptosphere needs. You'll be able to choose which witness or node the app gets information from and the app will run directly in your browser. I will have nothing to do with it. It will be totally free for me and for you. It will only cost Steem bandwidth, which is free if you have stake.
How many Steem apps are centralized on a private server and funneled into a bottleneck? Can you say all of them? I have yet to see an actually decentralized app on Steem. A decentralized app is one that runs on your device; everyone is their own server. The reasons for centralizing a Steem application are simple: monetization (greed), lack of innovation, or primitive technology. These problems are what stand in the way of cryptocurrency.
Hopefully, by learning JavaScript, I can bring real value to the table and perhaps even implement entirely new business models right here at Steem. I have a lot of ideas floating around in this dome. All I need to do is put my nose to the grindstone and bang it out. "Simple".
I think one of the reasons it's taken me so long to commit to learning JavaScript is that I already know Java. JavaScript has Java in the name. JavaScript is a scripting language, so a full-fledged Object Oriented Programming language like Java (with a virtual machine) must be superior in every way, right?
Unfortunately not. JavaScript is completely different than Java. In fact, doing the tutorials on https://www.w3schools.com/js has shown me that it feels like a hybrid of both Java and Python; two languages that I really like. However, unlike Java and Python, JavaScript interacts seamlessly with HTML and web browsers. This is what makes it so powerful and widely used. Even the first three lines of W3Schools states:
JavaScript is the programming language of HTML and the Web.
JavaScript is easy to learn.
This tutorial will teach you JavaScript from basic to advanced.
It's honestly embarrassing that I haven't learned, "the programming language of HTML," especially when you consider it's, "easy to learn." Oh well, I'm on the right track, even if a bit late.
I'm constantly referring to blockchain tech as The Wild West and an untapped gold mine. If you want to try your hand at programming but have no idea where to start I highly suggest you take a look at https://www.w3schools.com/js. The exercises are extremely simplified to ensure you can learn web programming with the smallest baby steps possible. I actually find it to be a bit oversimplified because I already have programming experience. However, in a space as complicated as software development (much like crypto) it's best to simplify as much as humanly possible.
This is my ultimate goal: to create blockchain applications that simplify the space and extend the proof-of-brain concept. Blogs are boring and they aren't bringing all that much value to the platform. If we really want to capture the world's attention we have to start paying Steemians for more productive activities.
By creating truly decentralized applications, the value of Steem bandwidth will will skyrocket. All of a sudden, people who use Steem will not only see buying Steem as an investment, but also as a way to get more bandwidth for the applications they want to use. Personally, I feel extremely lucky to have 2.5 gigs worth of Steem bandwidth, even if there is nothing to spend it on yet.
Not to worry, I have quite a few ideas on this front. Now wish me luck as I go work a near-minimum wage job for the man.
Return from Learning JavaScript to edicted's Web3 Blog