Day 28 : Become a self-taught blockchain developer with zero knowledge in 365 days
By: Ximena Han
Tags: Application Development, Application, Backend Development, Backend, Blockchain

Day 28 : Become a self-taught blockchain developer with zero knowledge in 365 days Ximena Han Feb 23·13 min read

START TO CLARITY THE INSUFFICIENCE OF THREE TOPICS

continued from day 27

node.js

second solution part 1

brief introduction

The second part is for me to have more understanding for the backend. And to be more specific, knowing the concrete operation and real example of the using and the development of the backend.

the common options for the backend

There are many options for the backend. For example, Java and PHP are tradtional ones, and also Ruby and Python with their own features. Node.js and Go are the rising stars in these days.

what is the (web) server to be more specific?

What is a web server?, What software do I need to build a website?, What is the Difference Between a Domain Name and a Website URL?, dns purpose

It may be better for me to understand the composition of the server. And the server is especially targeting at the web server, for on my percpective, it may be more similiar to the backend of the blockchain application.

Now, I apply two kinds of classification method. The first is the hardware and the software, and the second is the static web server and the dynamic web server.

For the first classification method, actually, both of them combined together would be the complete web server. On the hardware side, a web server is a computer that stores web server software and a website’s component files. It connects to the Internet and supports physical data interchange with other hardwares connected to the web. On the software side, a web server includes several parts that control how web users access hosted files. It is able to understand the HTTP and URL. It stores a lot of websites with the domain name, and thus it be accessed to easily. Then, it delivers the content of these hosted websites to the end user’s device.

For the seocnd classification method, these server have different functionalities. A static server simply sends its hosted files to the browser, and nothing more than that. While a dynammic server consists of a static web server plus extra software, most commonly an application server and a database. There may be many files withhold in the database and only when it is asked it would be sent by following the order.

For example, to produce the final webpages you see in the browser, the application server might fill an HTML template with content from a database. Sites like MDN or Wikipedia have thousands of webpages. Typically, these kinds of sites are composed of only a few HTML templates and a giant database, rather than thousands of static HTML documents. This setup makes it easier to maintain and deliver the content.

The difference between frontend and backend programming

Introduction to the server side

First, unlike the frontend programming, the server side programming has full access to the server operating system.

Second, Developers typically write their code using web frameworks. It is quite different than the framework of the frontend. The frontend web frameworks layout and presentation tasks while server-side web frameworks provide a lot of “common” web server functionalities, e.g., support for sessions, support for users and authentication, easy database access, templating libraries, etc.)

Third, it is really common for backend developing using feameworks, whereas it's not necessary for fronend developmeny using framework. It is ok to strat from scratch if the part is pretty small.

common use for backend programming

Introduction to the server side, Client-Server Overview, Server-side web frameworks

the e-commerce site would be a good example

this part is more like describing the benefits of the dynamic server

2. Customised user experience

the stored data is able to enhance the user experience whiling using the application, e.g., the credit card information, the using of google map

the stored data is able to undergo the deeper analysis

3. Controlled access to content

allowing sites to restrict access to authorized users and serve only the information that a user is permitted to see.

user has more power to determine the access, e.g., facebook, medium.

4. Store session/state information

a mechanism that allows a server to store information on the current user of a site and send different responses based on that information.

E.g., the state of a simple game, the using history, the 3 limited articles for harvard business reciew.

5. Notifications and communication

servers are able to send general or user-specific notifications through the website itself or via email, SMS, instant messaging, video conversations, or other communications services.

6. Data analysis

By collecting datas of users, it is able to refine responses based on analysis of this data.

blockchain application

brief introduction

In brief, there are two main things for me to do in this part. The first is to define and create more concrete image of my application. And the second is to do more research of all factors to realize such applications. It would be a hard task.

first solution: the exact application part 1: perhaps no need to be concrete

Solving the first one is really the hard question. I have no intention to copy the existing applications. Instead, the one I aim to do may not even exist by now, and thus it's hard to describe. So maybe, I should give up the idea of coming up with one executable idea and just depict its approximate picture. Also, it would be ok to pick the existing one as the template. After all, my purpose is the disassemble the composition of the development of the blockchain application. Combining these two methods I mentioned above would also do the job as the old one, but easier to execute.

first solution: the exact application part 2: no much difference for the user than web2

Back to the basic, the network, web3, of blockchain application is merely builds upon the Internet, which means that it is kind of the Internet that revise some of the defects from Internet that should be eliminated. Although the underlying technology might be different, the user may not notice the distinct difference between the applications based on these two technologies. It is fair to speculate that the form of the application may be quite similiar to the ones of the Internet.

first solution: the exact application part 3: protocol V.S. application, value captured

What's noticeable is that in the world of web2, the applications occupy most of the value, and the protocol(e.g. http) almost got nothing. However, in the age of web3, things are revresed. Protocols possess the major value, and applications building based on protocols hold much less. The redistribution of the power is reasonable and not hard to understand. After all, it is the protocol of blockchain that provides the guarantee of decentralization and the security. There is no difference no matter the applications is toB(to business) or toC(to customer), which may apply different platforms. Public, private, or ferderated.

To conclude, when choosing the starting point of the blockchain business, there is ought to be six choices, two kinds of options(building a platform or the protocol) multiple three kind of platforms(which type of platforms to choose).

first solution: the exact application part 4: I choose applications instead of protocols

Building an application would definitely be easier than building the protocol. It would be an ideal option if the application itself is able to have more value captured by providing addtional powerful functionalities. On the other hand, building the protocol would be a tricky task, but if it succeds, the captured value would be considerable. But I should avoid building the public platform on the perspective for value captured. The value captured for the single person or entity is limited in this situation. Strictly speaking, the value is kind of distributed, that's why the public platform is so damn secure. Hence, I crossed out one and there are five options left. Let's only focus on the applications of these five options, and that make it only got three left. And the reason is building the protocol is too difficult requiring much more,vision, ambition, and capabilities than building the application. Maybe in the future. Moreover, never forget that even though the protocols capture most of the value, it is also the more risky one, it might be trash if there is no application building on it. And we still don't know whether the result of the competition of the protocols would be various or just a handful of survivors.

first solution: the exact application part 5: I choose public platform for testing

Now, I'm gonna catogorize these applications into two types, which is toB and toC. It would be clearer to comprehend and analyze. I am not sure which would be the final target for me, and actually, I prefer toB more, but there's no need to decide rushly. Based on my understanding, Nearly all of the toC services are build on the public platforms. As for toB services, public, ferderated, private could all be possible. Hence, using public platforms as the testing and analyzed example may be more worth it. And also, I have little knowledge of the private or federated platforms so far.

Due to choosing the path of developing an application, which is highly possible that it captures less value than the protocol. It is better to choose the field that desperately needs the blockchain technology to solve its problem, so it might create additional values.

first solution: the exact application part 6: sorry, still need to be concrete

Although I said in part 1 that there is no need to be concrete, just take the example in the reality would be fine. There is definitely the slap in my face now, for I "smell" the right moment for myself. It might be the time for me to decide the topic. I am able to do that now. Also, if there is already the exact business topic for me, not only would it accelerate the learning speed for me, because the goal would be pretty clear and certain, it could also "elevate" my learning process to a whole new level. It is no longer the learning, also become the initial stage of the research and development. And if things go smoothly and I'm fortunate, maybe I could build the preliminary foundation of the business.

When brainstorming the idea of the business, based on mt past experience, it is not recommended to think top-down, for example, I think that provenance and traceability is the field with great potential, then I start to think what I can do in this field. It's an awful method. Instead, when it comes to the business idea, you should think bottom up, trying to figure out problems in the daily life, or the scenarios in the business which are plenty suitable to be solved by the blockchain technology.

first solution: the exact application part 7: finial decision

And now, here is the result. After the 3-hour thinking, still have no concrete idea yet. However, I have the clearer picture what I'm aiming for. I'm trying to avoid the kinds of application for household use, which is mostly toC. It is too risky, hard to execute, and have high possibility for being bubble on my perspective. To conclude, the applicaiton would be toB. Also, the application scenario probably requires multi-party collaboration and the kind of collaboration is highly digitalized. Those three definitions above is quite sufficient for the opening of next part. And the brainstorming of the business idea would keep oning simultaneously.

second solution: disassemble of the development

#

order[5]: The brainstorming of methods to connect them (teamwork aspect, Teamwork, connections with the talents)

method 0: personal networking

9 Ways to Find a New Job

the materials online

On the perspective of employees, Networking, online and in person, is one of the best ways to stay on top of what’s happening in your field, including what jobs are open and where.

Networking is another word for socializing. You can join professional associations, attend events for graduates of your school, connect with professionals who work in your field, and take every chance you get to meet up, in person or online, with others in your field.

Various online sites such as LinkedIn allow you to broaden your network to include friends of friends. The bigger your network, the more likely you’ll find out about new opportunities.

my thinking

The perspective of the employees occur to me that I should have more connection to the person currently in the industry, following on their recent situation or even have some comversation with them. It is really an essential thing to do.

Also, I got one more thing in my mind. For the co-founder or the number 1–10 employees, is may not be a good idea to find them on the job websites, for I don’t really have much leverage and bargaining power to be frankly. It might be better for me search for them, do research about them and approach them actively. But it costs quite a lot of time and efforts.

method 1: The job websites

The 22 Best Niche Job Sites of 2021, The 10 Best Job Search Websites of 2021, 25 Best Job Search Websites

the materials online

Indeed

Best Overall

the largest job website in the world

its size, the number of industries, lifestyles catered to, and its unmatched update frequency.

Indeed is 100% free for job seekers and no account is necessary

provides a salary comparison tool and a company reviews section, so you can read candid opinions on prospective employers before applying to a role or accepting an offer.

Indeed’s interface is highly intuitive and designed to make your job search move faster.

Monster

A true pioneer in digital recruiting

Runner-Up

its job search tools are free to use.

You need to create an account using your email address doing so takes less than 30 seconds.

Candidates can search jobs by location, company, title, date posted, and position length, but there is no option to search by salary or experience level.

Glassdoor

bring salary transparency and honest company reviews

can search for open jobs and read detailed information on each company’s culture, CEO, benefits, and salary data

the clear winner for employer research and insights.

can read detailed reviews on employee and interviewee experiences, which can be a game-changer for interview preparation

FlexJobs

Best for Remote Jobs

FlexJobs charges $6.95 for a one-week trial, $14.95 for a one-month membership

to conduct the necessary research for compaanies ensuring that every listing on FlexJobs is legitimate, giving job seekers peace of mind and a safer experience.

scam-free, ad-free environment

without paying for a monthly membership can browse FlexJobs’s sister site, Remote.co, which is free but lists significantly fewer opportunities.

The Ladders

the home of $100K careers

Best for Experienced Managers

AngelList

Best for Startup Jobs

LinkedIn

Best for Connecting Directly With Recruiters

the world’s largest professional networking platform

allows you to add recruiters and other people of interest to your virtual network, making it the best website for connecting directly with recruiters.

Your LinkedIn profile serves as a public digital resume and portfolio and gets sent to recruiters once you’ve applied for a role, so it’s important to invest the time and effort to make sure it’s detailed, accurate, and optimized for search.

LinkedIn offers a premium membership option that allows you to see who viewed your profile, detailed insights on the other applicants who applied for the listings you’re interested in, and the ability to send messages to people you’ve not yet connected with.

LinkUp

creating a higher quality database and better search experience for job searchers.

best choice for those looking to be the first to apply to newly listed opportunities

Best for Up-to-Date Listings

Scouted

Companies that hire through Scouted use a more holistic approach when hiring by taking into account applicants’ personal attributes against traditional metrics like skills and experience

Best for Recent College Graduates

Snagajob

Best for Hourly Workers

the top hourly work marketplace online

the best site for hourly job seekers due to the number of listings and easy-to-use interface.

ZipRecruiter

its search function and artificial intelligence capabilities do an excellent job at returning results that match more niche keywords

runner-up

has a free separate salary research tool, so you can see how much people are earning across any niche.

CollegeGrad

leading job site for recent college graduates

searching for quality entry-level jobs on CollegeGrad is incredibly fast and easy

Freelancer:

Best for Freelance Jobs

SalesJobs:

Best for Sales Jobs

Stack Overflow:

Best for Tech Jobs

my thinking

It occurs to me that maybe the core members have to be found exclusively by me. But there might be some work projects that is kind of trivial and marginal to the core business, and it would be good to use the required niche job websites to find the employee.

I have to ask myself again and again what kind of employee am I aiming for, is it ok to be foreigners aroung the world? Or it had better to be Taiwanese. Where is the starting market for me? These questions can only be answered precisely after the business idea is defined. And after that, the choice of the job website would come out. Also, depending on the market and the location I choose, I should use suitable platforms or websites for finding talents.

method 3: company website

9 Ways to Find a New Job

the materials online

If you already have your dream employer in mind, go directly to the career section of the company’s website. If you track openings on its site, there’s a chance you’ll find just the opportunity that you’ve been waiting for.

my thinking

I might be an option to create a site, it is a good way marketing the company and let others know who you are. But I think it depends more on if having time and resources for that.

Method 4: Headhunters and Recruiters

9 Ways to Find a New Job

the materials online

Many organizations hire through recruitment agencies to streamline the hiring process. Head hunters actively recruit individuals to fill specific vacancies.

my thinking

It seems an expensive way to do so. I don't think it is the good way unless we need to hire the experienced manager in order to expand the scale rapidly.

Method 5: Creative or Outlandish Tactics

9 Ways to Find a New Job

the materials online

In a competitive job market, some job seekers have pulled out all the stops. Billboards, chain letters with a copy of your resume attached, or even pasting your resume to yourself and walking around the city as a human billboard are just some of the methods job-seekers have used to get noticed.

my thinking

This one is pretty cool and hilarious. If I become so desperate to find the talents it may be my last resort to do. I definitely admire the one who has the courage to do such thing.

Method 6: other ideas from me

It is likely that I am unable to seek or attract the required talents, and thus, some of the positions would be the person having no similiar experiences in that field. But don't be discouraged so soon. There are many alternatives. I can find some talents as the external consultant with required experience instead of being employees, and it even can be the experienced investors, venture capitals, professionals in the industry who are able to offer this kind of resouces, experiences, or connections. Also, it's available to seek for my own connections and network who is qualified. Employee is just one of the method to the problem. There are stil many other possible methods to solve it. Don't always try to ask someone to work for you. It is hard to find the experienced one willing to be your employee.

###The temporary conclusion is that method 0 and method 6 is my first priority and method 1 is my second priority. If I have additional time, method 2 may be fine, and if the situation is really desperate, I have no choice but to apply method 5 haha.###

#