banner
欧雷

欧雷流 on-Ch@iN

🫣
follow

Web2 is finally a dead end, Web3 is the destination: Embracing Web3

In the previous article "Web2 is the end, Web3 is the destination: Introduction to Web3", I roughly reviewed my learning experience of transitioning to a Web3 full-stack engineer through the "Web3 Frontend Bootcamp".

During the early days of the bootcamp, I often saw people asking, "Can I find a Web3 job after completing the training?" Some even held on to traditional thinking and wanted to find stable Web3 jobs...

From my current understanding, the Web3 industry is unpredictable and quite volatile. There is no such thing as "stability". It is normal for a project to disappear overnight. If we have to say, exchanges may be relatively stable.

Therefore, if you want to enter the Web3 industry, you must accept the instability of the job and embrace uncertainty. Make yourself flexible and adaptable, able to learn new knowledge quickly and efficiently to cope with constant changes.

As a self-proclaimed "independent developer", I naturally won't limit my income to just "working (finding a job)". I want to diversify.

In addition to the "common topics" mentioned in the article "Developers, go independent!", there are also two interesting things in the Web3 community - "bounty tasks" and "hackathons". Being a "bounty hunter" is also great!

Hackathon Experience#

As OpenBuild, which has some influence in the Web3 developer community in China, besides the "Web3 Frontend Bootcamp", we have organized many activities, including the recently concluded "ETH Shenzhen".

This "ETH Shenzhen" event consists of two parts: sharing and roundtable meetings, and a hackathon competition. If the hackathon team does not win a prize, there will be travel subsidies for those outside Guangdong Province.

Half a month before the conference started, there was an online hackathon exclusively for bootcamp participants, which can be considered as a link with the "ETH Shenzhen Hackathon". Both events can use the same project, so I participated in both.

Before joining the bootcamp, I already had the idea of developing a community-centered organization similar to a DAO. When I was working on the NFT market during the bootcamp, I felt that the idea was feasible.

So, I took the opportunity to participate in the hackathon and make it more concrete as a competition project, which would later become another work in my "Internet Freedom Manifesto" camp!

Introduction to the Competition Project#

After thinking for about a day, I established the name and positioning of the project -

The Chinese name is "吾界" (Wu Jie), and the English name is "Selfverse". They both express the same meaning - "self" is the "world" or "universe" itself.

The world we see is a manifestation of our inner world. If we want to live an exciting life, we must enrich our spirits first, forming a more complete, systematic, and self-sustaining "ecosystem".

The true and complete "self" is often deeply hidden, and what we interact with others is the "personality mask" that has been filtered and somewhat embellished.

This is true in real life, and even on the Internet, where anonymity is possible, most people still have to follow the "unwritten rules" of interpersonal communication.

Daily life nowadays is increasingly inseparable from the Internet. Many people need to maintain a relatively stable "personality mask" online, especially those who rely on digital means to make a living or even get rich, such as freelancers, independent hackers, digital nomads, and so on.

Some popular and more easily understood terms can replace the term "personality mask" - persona, influence, personal brand, super individual...

The positioning of the project is to provide a series of tools as infrastructure to help people in need build their "personality masks" more easily and promote closer "connections" between people.

Using decentralized technologies that are not limited to blockchain, the project solves problems for users in a decentralized manner, giving them the choice of deployment, hosting, management, and other aspects.

This project is an important part of my envisioned "decentralized and intelligent solutions for individuals and families" and will be deeply integrated with LinXoid and KnoSys in the future.

Online Hackathon#

Although the online hackathon of the bootcamp was scheduled from August 1st to 10th, the first day was basically over when it was announced, and the submission deadline was before 2 pm on the 10th, so the actual development time was probably less than 8 days.

Promotional image of the "Web3 Frontend Bootcamp Online Hackathon"

In my case, I started development around noon on the 3rd day. I first wrote a smart contract that supports RBAC and passed unit testing on the 5th day. From the 6th day onwards, I started working on the frontend interface. I thought it would only take two days to complete, but I underestimated the complexity of role-based access control. I finally completed the integration on the afternoon of the 9th day.

Then I prepared the project introduction materials and submitted them to the bootcamp's GitHub repository as a pull request. Time was very tight!

Since my project idea was too big, it was impossible to implement everything in such a short time. So I could only focus on developing a small part of the functionality:

To save development time, I chose to use the Ant Design and Ant Design Web3 UI component libraries, which I was familiar with, and deployed them as a pure frontend single-page application using Vite.

Offline Hackathon#

Although the "ETH Shenzhen Hackathon" can be participated online, it is still better to go to the offline venue for a different experience.

This hackathon was held in Shenzhen from the afternoon of August 16th to the evening of the 18th. I needed to take a flight to get there, so I bought a flight ticket for the 15th to increase fault tolerance.

Promotional image of the "ETH Shenzhen Hackathon"

The first event on the 16th was the registration for hackathon participants. We received exclusive paper wristbands to distinguish our identities. There were also "goodie bags" with cultural shirts, hats, bags, and more, which were completely different from what we received during the bootcamp. They were newly designed!

Then there were several workshops by sponsors in succession. The opening one may not have been well-prepared and ended up with some on-site debugging, which caused the presentation to not go smoothly. I forgot whether it was during the second or third workshop, but I left to write my own project code.

If you watched the video mentioned earlier, you would find that the paid work is just an empty shell without actual content, just like buying a book with only a cover and no pages. The main focus during these competition days was to solve this problem.

To do so, I made the following adjustments:

  1. Added an article module for the webmaster to add, edit, and publish articles, and for visitors to browse and reward.
  2. Revamped the paid work module, where the webmaster associates articles as chapters, and visitors can see the table of contents and view the actual content.
  3. Added a fund module to centrally control the flow of funds for payments and rewards, consolidating them in the same smart contract.
  4. Added a visitor-exclusive personal center to view their payment and reward records.

First, I worked on the relatively simple visitor personal center. I felt that using only the wallet address as the user identifier would be too pale and monotonous, so I added a Jazzicon generated based on the address, similar to MetaMask, and changed all avatars to this.

Next, I finished writing the smart contract code for the token fund, system settings, user registration, and other logic that I had already thought about. It was almost time for the ice-breaking party.

The organizers ordered kebabs, pizza, fried chicken, beer, soda, and other takeout to the venue. Seeing everyone rushing to get food and drinks, they were quickly distributed. There was no time to chat - it seemed that everyone was starving...

Hackers' Party

I had some social interactions that day. I met and communicated with some people I had met in Hangzhou before, as well as those I had established a certain level of connection with online. This was the first time we met in person.

After returning to the hotel, it was already late. There was still some development work to be done for my project, and time was tight. Since I didn't want to prepare a slide deck for the pitch, I had to finish the development in the next two days. I decided to work all night!

Listening to songs by Xu Wei, BIGBANG, and others, I completed the article smart contract and the parts of the smart contract related to fund flow without any issues. Then I went to sleep. It was already 4 am.

The next two days followed a similar schedule:

  1. Arrive at the venue before 9 am, sign in, and then go to the coding area to work on the project code.
  2. Have boxed lunches provided by the organizers at noon, all with soup and beef.
  3. Do project-related tasks in the afternoon, such as coding or explaining.
  4. Attend the dinner organized by the organizers in the evening and switch to social mode.

I hardly attended any of the guest speakers' sessions. Instead, I focused on preparing for the pitch on the last afternoon. I stayed up all night on the 17th to finish most of the remaining functionality. Now I could finally relax!

Preparing for the pitch in the coding area

On the 18th, after wrapping up the project, I couldn't wait to share my project with others. So I took my laptop and went to the front desk to find a fellow bootcamp participant and assistant who was also a volunteer at the conference. Luckily, he wasn't busy at the moment.

I sat next to him and demonstrated the project on my computer while explaining its functionality. I also talked about some long-term ideas, such as attracting others to invest by using myself as a value carrier, issuing tokens to investors to prove their rights, and providing returns when certain conditions are met in the future.

This was the first time I introduced my project in such detail, and I felt excited while speaking. He listened attentively to my "bragging" and not only shared his understanding but also gave some suggestions.

Finally, it was time for the pitch. There were about 30 projects, each given 10 minutes. After all the projects were presented, including breaks and other time, it would take about 5 to 6 hours. I was the 10th presenter.

Pitch schedule

Although it was impossible to explain my project completely within 10 minutes, I couldn't use that as an excuse. There is still room for improvement, such as:

  1. Even if the functionality is relatively complete, a demonstration alone is not enough. The slide deck is indispensable.
  2. I spoke a bit slowly, and the expression process lacked rhythm. I listened to two consecutive projects after mine, and they were so engaging and enjoyable. I need to learn from them.
  3. Spend more time interacting with the judges before the pitch, introduce my project more, which is equivalent to extending the time for my pitch.

Now I understand that participating in a hackathon is like playing another game - how to allocate the proportion of time for development, pitch preparation, socializing, and other activities throughout the competition will affect the actual workload and the design and arrangement of social interactions, thus affecting the probability of winning.

For me, the hackathon has two meanings:

  1. When doing my own project, it feels like starting a business, and the judges are like investment institutions. I need to impress them with elegant expressions to get the investment, which is equivalent to winning the prize.
  2. When working on other people's projects, it's like a bounty task. I use my professional skills to help them win and share the prize as a reward. However, for bounty tasks, the reward has higher uncertainty.

In addition to coding, I also put more effort into socializing during these few days. In the past, I didn't like to talk much in offline events. I mainly listened to others. But this time, I actively engaged in passive communication and also took the initiative to talk to others, including strangers.

However, there is still room for improvement. Most of the people I socialized with were those I had already had some contact with. There were very few "completely new" connections.

Many technical people have a misconception about events like hackathons - they participate to learn technology. Those who hold this idea will most likely be disappointed in the end.

I used to be one of those people. Before 2017, I would participate in various technical events, but I rarely felt like I "learned something". Most of the time, it was just "so-so", so I haven't participated in such events since earlier this year.

Now my perspective has changed. The most important thing about participating in events is to understand the industry trends, communicate with others, and establish deep connections, thereby increasing the chances of finding potential collaborations. These are the keys to success for someone like me who calls themselves an "independent developer".

Conclusion#

With this, I conclude my summary of the initial stage of my transition from a traditional web frontend engineer to a Web3 full-stack engineer, which took about three months.

For me, the technical aspect of the transition was not difficult due to the support of the abstract model network formed by my rich knowledge and experience. The real challenge was to extract a relatively stable model from the complex blockchain ecosystem and the ever-changing Web3 industry, and accumulate valuable project experience.

To enter the Web3 industry, one must firmly remove the "stability" band-aid from their mindset. "Flexibility" and "efficiency" are their greatest and strongest weapons!


Read the full article on my personal website or WeChat Official Account.

Loading...
Ownership of this post data is guaranteed by blockchain and smart contracts to the creator alone.