The PHP Global Developers Conference will be held in Beijing from May 14, 2016 to 15th, before the meeting, one of the speakers of this event, Link home network platform architect Yi LV teacher to carry out a text interview, the text in bold part for the DevLink reporter, the fine part of the Yi LV teacher.
Yi Lv Teacher Hello, can you first introduce your own technology history?
Good.
I taught myself some web development techniques while I was in school. In 2011, the first half of the year before graduation in Sina SAE internship, during the internship to participate in the development of Sina Micro-disk version, after graduation, the development of SAE before and after the ability of PHP and JS will be involved. Since SAE is part of the Sina Platform Architecture Division, the first 1.5 of the work will intersect with a variety of technical roles, and that experience broadens a lot of technical perspective.
At the end of 2012, Baidu Mobile Cloud Division to join the mobile phone Baidu product line to do service-side business development, PHP-based. In the three years of Baidu roughly divided into three stages, business development, mobile search speed optimization, platform service construction, the corresponding growth is divided into three stages, in-depth business, fine buckle details, horizontal technical solution support. In Baidu's three-year catch hand hundred product line development of the fastest three years, fortunately from the T4 rose to the T6.
Baidu in the last period of time, have thought how to follow the technical line, tried a few months of C + + service development, also invested in a few months of Topdown key projects, and finally want to jump out of the relatively comfortable environment of Baidu exercise, so September 2015 joined the Chain Home network.
Your work in Sina and Baidu during the main focus on the application, front-end development, why join the chain, the center of gravity transformation to architecture and platform development?
Indeed, the work of the previous years is mostly PHP development business. But from the above introduction can be seen, I in the second half of Baidu, has been involved in some platform service construction, through the abstract line of business public special type, development services to support the horizontal multi-app line of business. At that time, I was just a participant in the Platform Service topic, but a few horizontal services have also accumulated a lot of design ideas, methods of doing things.
Just to the chain home network, there are a few things need the direction of the responsible person, and the urgent need to carry out is the traffic platform project. I take the company's goals for consideration, put into the Service platform project, which is a need to support the horizontal chain of all business lines in the network platform services, but also very important. In the follow-up work of the chain Home network, several other platform service projects have been carried out along with the demand collection of the line of business and supplemented by team members.
Therefore, the focus of the transfer is not deliberate, but also according to the company needs and I can, comprehensive selection and natural development of the results, this also has to thank the chain Home network to the technical role of enough technology development space.
Let's talk about your main job now.
At present, I am in the chain home network to do some platform service work, the content of the work is roughly two aspects: on the one hand is the technology, on the other hand is the team.
Technical planning and architecture design should be done, and participate in project development. The team needs to do well in project management, team planning and team member maintenance. Two areas of work were interspersed.
For the project, the comparative molding project I will delegate the project to the team of students responsible, I put in a new project to focus on the first phase of the overall planning, for the team has been delivered to the stability of the project, I do the project iterative follow-up and direction of control.
Technically I encourage members of the group to diverge, I will try to solve the problem with new technology, but as a team responsible I will do a good job of the team technology stack convergence, any new technology, the introduction of a novel plan must be through the review and detailed data comparison support, encourage team members to propose a better solution to the problem, good technology input-output control.
Specific to the project, the current traffic, storage, pictures, statistics, real-time analysis of the log is our team's current platform work, are oriented to the chain home network all product line services, it is easy to see the work of our team, upstream for the line of business, downstream as the basis of capacity, we have to do a good job in the middle-tier services Let the line of business have more energy to run faster and more robust.
Do you think PHP as an "old" language, and now go, node. js and other emerging languages compared to what is different?
PHP is indeed an "old" language for both the new language go and node. js, released in 2009. Since I have no practical experience with node. js, I don't evaluate it. For PHP and go, I have a few summary: the language use of differences, program transfer differences.
Language use of the difference is mainly determined by language characteristics and language objectives, the PHP target is to quickly build a service-side business module, go is the native to provide concurrency features to quickly develop high-concurrency services, the two languages of the target difference caused by different applications, PHP through so many years of accumulation, The service-side business module is still the most preferred language to meet the needs of rapid development and sound, while go is the process of processing requests, data and shine. Take the common web logic requirements for example, PHP itself processing method support and PHP upstream and downstream support for PHP, so that PHP can firmly develop a set of Web services business module, and at this time with go, you need to select a lot of third-party libraries to achieve the trivial needs of the business, or need to develop their own, and the service upstream and downstream services to go support is uneven also limited the GO Web application scene.
Program transitivity differences are determined by the language history, PHP history has been introduced by the syntax of sugar, for the first-order PHP programmers in the process of taking over a historical PHP project still need some time to comb the project data flow and project code, and the go language has not been a few years history, And go is in the last three or four years to gradually improve the language itself and build a good perimeter, so to read the go write program for the first step go programmer is not too laborious. Of course it is worth mentioning that the go language is designed with particular regard to code writing and code readability, which makes reading comprehension code relatively easy.
The difference between the application of the language and the transfer of the program, that is, the decision to choose the appropriate language in the design of the project to develop, which determines the use of language scenarios.
I think you mentioned on your personal blog that the future will be focused on go, PHP two languages, can you tell me more about the complementary areas of the two languages so that you choose?
Accurately say "follow-up will converge to these two languages" this matter, actually in our team all in the entire stack development, currently the team project uses the language has PHP, Java, Go, Lua and so on. Why to do convergence mainly consider the technical team's technology stack construction, welcome to the language of the integration of the language direction of the team, in the consideration of team members, industry trends and the use of projects at hand, decided to follow the business logic project and scheduling requirements for more compact projects using PHP development, For projects that require higher concurrency and have a certain period of time for development, the use of Go development, of course, these require specific projects to see, can not be mandated.
What do you want me to do to make this choice for the "two languages you mentioned?" "On the one hand, the difference between PHP and go in the previous question can be complementary in the overall project technology selection, on the other hand, when doing the overall architecture design can split the submodule into micro services, through the API or RPC communication of the various sub-modules, At this point, PHP and go can be used in a sub-module to play the director, in the overall project to form a complementary.
What are you going to talk about at this conference on PHP global developers? Can you give us a brief preview?
This conference is fortunate to be a lecturer to share some of the accumulation of projects, the main share of the chain Home network statistics platform, log real-time processing platform behind a set of real-time log processing scheme. This package will involve log collection, processing, recording, display all aspects, this package has been running in the chain Home network, for Rd, QA provides each log analysis and statistical work, for PM, operations to provide the product tree nodes in the multi-dimensional data support. At the meeting I will be a rich introduction from the architecture to the details, and share the link within the network of the use of the scene, and the package can be used more scenarios. For more information, please focus on our PHP conference in mid-May.
Have you ever written an article "Young Man" on the road to PHP, can you tell me how you think of writing this article?
Very embarrassed, my blog changes lead to the loss of historical content, the new blog coincides with the chain home network before the building, and in the chain home network too many challenges need to break, so that more than half a year not how to send a blog. And this is the only article, then with a new PHP after the feeling of communication, why write it mainly because I communicate with the new person after a night, it feels like I was in the dialogue with the new work, the confusion, concern, and I just work when the basic consistent, that night I think most of the young should have these puzzles , then it is better to write down the idea of my "experienced", so that the young people less detours, with a shorter path to find their request, then wrote a piece, hoping to many have just stepped into the work of the programmer has helped.
What do you have to say to our first-tier developers? Could you give us some professional advice?
I am also a programmer on the road, and a first-line developer, I would like to say to the front-line developers: do not leave the development and architecture. I believe that everyone, like me, often adore the architecture design of some cattle in the industry and their various professional perspectives, but please understand that all the perfect architecture is built on the perfect control of the details. I believe that the cattle in the industry must be through a long time to grasp the details of the exquisite architecture design, if there is no intrinsic ability but simple imitation of a scheme to do the architectural design, it will have a day yixue. Even if it is known as the technology of the Brother Bird, and did not give up the most basic coding work, in the Chain Home Office area will always see the brother in the night in the workplace check the PHP community bug list and put into the PHP Community project development.
For PHP programmers, I have from my years of PHP development experience to everyone's advice is, must be familiar with official documents, for built-in functions, extended use of the document, official formal parameter description, return value description and sample code, even the page comments are worth the experience of PHP programmers, and develop a good habit of checking official documents when forgetting. This will help junior-level PHP programmers to be very busy, and a solid foundation is important.
Thank you for taking the time to receive our visit and look forward to seeing your wonderful share at this year's PHP global Developers Conference.
Also thank DevLink to the vast number of PHP developers such a sharing and communication opportunities and platform, we will be there!
The second PHP Global Developers Conference, exclusively hosted by the developer community DevLink, will be held at the Beijing International Convention Center from May 14, 2016 to 15th. This meeting invited top experts from PHP, including PHP founder Rasmus Lerdorf, PHP7 's main core developer Xinchen (brother Bird), to attend and share the topic.
This meeting is a consistent tenet of the DevLink developer community: For mid-tier developers, focused on helping developers grow. All topics are reviewed by a number of technical experts in the field of PHP, including Brother Bird, and only a speech that really helps developers in their daily work and technical skills can take the stage and ensure the quality of content sharing.
DevLink is a developer community founded by experienced developers, Gao Chunhui, and continuous entrepreneurs. We provide developers with the ability to upgrade their technical capabilities and track the latest technological advances in the form of offline conferences, training, online professional media, and community-based communities. As a dedicated service provider for developers, DevLink's activities focus on a single programming language or topic in-depth. Through sharing, we can let the participating developers not only understand the industry trends, but also can master the specific technical implementation, architecture and methodology. DevLink's activities are more like a public class than a meeting, and developers can contribute directly and effectively to their work by participating in activities.
At present, the PHP Global Developers Conference has some of the remaining tickets for sale, you can click to read the original text to learn more details of the merger ticket participants.
Have questions about this interview? Want to talk to your technical Daniel before the meeting starts? Please use the QR code below to add a friend, we will verify that you are really a PHP developer, after you join the group, and immediately engage with the technical Daniel. (Technical certification services by the technical assessment solution provider-the ape-circle friendship)
This article for DevLink exclusive manuscript, reprinted before the need to contact DevLink to obtain authorization, reprint shall not be modified. Contact Tel: 13752002090