No open source software is perfect.

Some people would say that this is the limitation of the language itself. Some seek temporary solutions; There are simply switch technology stacks.

He was different. Since 2013, whenever he encountered problems in using libraries, he would persist in bringing pull Requests to the community.

Bit by bit, like a craftsman with a carving knife, gradually grinding out a perfect and precise shape.

When he was nominated for node.js Colloborator that year, he was just a small coder at a startup.

Today, he is the head of Pipcook, an open source project for front-end intelligence.

“The front end is a very imaginative group of developers, and I want to help them do more of that,” Rehm says.

Games, repeat grades, and Programming: The Front end of the Road

Click on his GitHub homepage, and you’ll be struck by the image of a comic girl smiling humbly and gently, her pale blue hair waving gently, as if blowing a breeze through the entire blog page.

That’s his favorite anime character, Rem. Also his flower name in Ali, meaning strong and gentle.

Becoming a front-end engineer was something he had never dreamed of.

Instead of being exposed to computers and code as a child, Rehm majored in inorganic nonmetal materials and engineering. From his sophomore year, he had no interest in classes, indulged in video games, and was even flunked for lack of credits. From 08 grade 1 class down to 09 grade 1 class, before very little study parents also urgently launched a long talk.

The story is still not moving towards the reverse of the GPA explosion.

Rem fell in love with a girl who wanted to start a website. So he started teaching himself Flash, then DW, ActionScript and jQuery, learning to get a little bit above it, he forgot about making websites…

Later, he did the front end.

Left hand company, right hand community: Don’t put limits on yourself

Rehm’s first job was at a startup in Beijing, where he found out he wasn’t in the front end. His main responsibilities were to write servers and make email push systems using Node.js.

It is common for startups to encounter difficulties beyond their own field because of their hard work and many changes.

Rehm, on the other hand, was able to devote himself to writing his favorite technology in the community, which gave him a greater sense of identity and accomplishment than his work.

Due to the lack of rigorous testing and review process on the first day of the project rehm was in charge of, serious problems appeared on the client side. “I feel like it’s murphy’s Law in action, both in development and testing, that what you think won’t happen, will happen.”

Reim, who was depressed, met a teacher aged 50+ who was working in accounting at a bank on Weibo by chance. This teacher is fond of programming in his spare time. He can finish the same work in 2 hours while others do it for 6 hours, so that he has more time to learn more things.

“From his experience, I felt that my usual complaint was that I didn’t really try to solve my problems.”

Don’t use “I’m just a front end” as a way of avoiding problems that are out of scope. By simply focusing on the problem, looking at it from zero, giving yourself no limits, and always being ready to learn new things in programming, you will learn more and more.

This is one of the first rules rehm learned for programmers.

At the same time, he has never stopped output and work on GitHub, Zhihu and other places. As a contributor to Node.js Collaborator, he has gained 2.2K deep user fans and is a low-key god in everyone’s mind.

(Remian habitual modesty: No, no, no, I’m not a god.)

“Do one thing that benefits all front-end engineers.”

Rehm’s career has gone round and round. He once worked as a part-time outsourcing engineer with the dream of “writing code and traveling at the same time”, but returned to full-time due to the bad WIFI and location in tourist areas. He joined Alibaba Robotics because “his mother-in-law likes the fame of big companies”, and made a new career choice due to the termination of the project and the transfer of his post.

“At that time, I didn’t know what I was supposed to do.” Leaving Ali was something Rem had been thinking about.

** The confusion isn’t whether he should be a front end, but why. 支那

Technology is not an indifferent force to promote productivity. It not only solves the problems of production efficiency and financial profit under the era, but also how each line of code promoted by individuals is related to their own pursuit of ideal value. This is the power and temperature behind technology.

At first, Rem saw the front end as a job. Gradually, he began to have real fun in coding. No matter how late he gets off work, he spends time every day in the community talking to developers.

“I’ve found that the front end, both at home and abroad, is a very imaginative group of developers. Because the technology on the front end is relatively light, it’s easier for developers to do what they want to do.”

At the time, Google’s deep learning framework tensorFlow was popular, and Rem tried to write a version of Node.js in the community. Although this version of Tensorflow-NodeJS can only be used for prediction, it still attracts the attention of node.js founder Ry and the author of jQuery.

But since the tensorFlow glue layer is written in Python, the deeper you go, the more it almost all settles on the Python side. Rehm found that writing like this was almost tantamount to reconstructing, so he had to shelve it.

Two years later, Rehm met Zhen Zi, a teacher at Alitao, who asked, “Can I call Python directly from JS?”

Rehm went into a euphoric state when he heard the idea, and that night began experimenting with his own.

“The more I write, the more CORRECT I feel. I can really get through this ecology!”

Rehm, who agreed with Zhen’s philosophy, returned to Alibaba and joined FX Team, a Team dedicated to exploring and practicing the field of front-end intelligence.

Reem: Second from the left

This time he knew exactly where he was going.

“That’s what I want to do. I want to build Bridges. I want to lower the cost of learning for front-end developers, lower the barrier to entry, and maximize their imagination.”

Open Source Project Pipcook — “Intelligence for Front End Engineers”

Some people on Zhihu questioned whether the front end had to be tied to the AI because it was just a fantastic stunt.

“The front end should communicate with the market. It is subjective and dynamic. If you have to make something intelligent, it will become simple and mechanical.”

Unlike the back end, which is naturally intelligent, this is a new concept that most people don’t understand and feel unable to land on.

For Rem and the open source project Pipcook, we’re not doing front-end intelligence, we’re doing front-end engineer intelligence.

“It’s not about how much smart stuff is in the front page, it’s about how many people in this country have the ability to use machine learning to solve problems, and that’s what Pipcook is there for.”

The front-end community can complement its ecosystem by reusing Python as the first step in the transition from front-end engineer to machine learning engineer. It’s a bridge between the front end and machine learning. Just as Rem’s favorite Node.js built a bridge to the service side for front-end engineers.

Pipcook is still not the perfect way to connect, and Rehm and his team are still experimenting with new ways of thinking and programming, hoping to find the best way for the front end to enter machine learning.

The landing scene of front-end intelligence is not born from the delineation and planning of open source technology, but how all front-end developers full of imagination and creativity in the community will use this new perspective to think about problems and connect the two ecologically, so as to solve more problems in a more effective way.

“It’s this sense of slowly finding purpose and answers that gets me more and more excited.”

Apart from the Pipcook project, Rem’s most valuable gain at Alitao was finding a foothold for technology.

In the community, technology to be popular, to black technology, to cool, to shout about the exquisite addiction and cool feeling; In Tao Department, due to the complexity and richness of business scenes, sometimes Reim would be asked again and again by Teacher Zhen zi about the ABCD 4 things he thought he should do from the technical perspective, what is the purpose, where is the starting point, how to improve business efficiency or reduce manpower…

Technology is no longer a screw, rehm began to learn to treat products and technical problems from a systematic perspective. This feeling of stringing pearls of thinking into a coherent line made Rehm feel that his code was not floating, and he had a real foothold, which was another source of excitement in his work.

conclusion

When reem talks about communities and technology, he speaks at an involuntarily quickening pace, his breath glowing.

Reem was slow to talk about the minutiae of life, tilting his head for a moment before he could dimly remember The Times and places.

Just like his favorite cartoon characters, Naz in The Demon Tail and Shana in the burning eyes, they are both young girls with a clear ideal goal. Rehm gave coding his full energy and hard work, and such happiness is incomparable.

His love, carefulness and romance were also given to Coding. He once wrote his name and wife’s name (Yorkie & Babeee) into the test case quietly, as a kind of inscription, the name left in GitHub for a long time, by countless like-minded people inadvertently read and blessing.

“A real engineer should be open and inclusive in heart. He or she will not be obsessed with the impossibility of learning certain concepts or whether to learn them. Instead, through practice and participation, he or she can draw on the strengths of hundreds of others to make his or her code or software branded with the brand of history without regret.”

This is Rehm’s respect and dedication to coding.

Rehm’s GitHub: github.com/yorkie

Attached: Introduction of Pipcook project

**1. Project Address: **github.com/alibaba/pip…

2. Project introduction

What can be achieved: Providing visual and NLP capabilities available on the front end

Which scenarios are available: Design2Code

Operating environment: MAC, Linux

Development language: JavaScript, Python

Open source license: Apache 2.0

Architecture diagram: github.com/alibaba/pip…