this post was last edited by Brotherlamp on 2015-1-13 13:45
The real story of a beginner programmer we are having a meeting with the client and he has an idea about the project. He wanted us to provide him with a draft system architecture that would support the technical requirements of his project. In this connection, I have also made it clear to him that value-added development requires a realignment of the architecture. When I mentioned that finding a suitable architecture was also a learning process, he interrupted me and said the following sentence: Do I have to pay for your study? In order to save time, I told him that I was referring to the business domain, and that we could only provide the right framework after we had fully understood it. Do you want your project to be developed by a team of unskilled web developers? Unless you're well-paid for outsourcing, most need a software development team to work for you. If the project has spanned a year or more, what do you think of the team that seems to have never had a level of improvement? Software development is recognized as one of the knowledge-driven industries, yet many people do not know why it is easy for developers to grasp all the skills needed to solve any given problem. Programming languages continue to evolve. The relational database is constantly adding new functionality. The new NoSQL database may not have been used by most people. The successful framework is constantly rolling out new versions. While new technologies, such as responsive programming and microservices, have emerged, other technologies that we have previously shrugged off have been increasing their attractiveness (e.g. functional programming). To master all the techniques and methods, it is impossible not to take the time. When should you consider upgrading the programmer's level? Of course there are programmers who are passionate about programming that will spend their spare time reading, reading technical articles, learning new technologies, but you can't deny that such examples are really not many. Most programmers choose to learn all the knowledge they need to work on, and if you can't invest in them, they'll never grow up in the team. The most appropriate time and place is to learn software technology at work. Unfortunately, not every person in this line agrees with me about this view. Business owners are reluctant to spend resources (time and money) to develop their developers. This may be different from the perspective of the problem, because many people feel that the investment is not directly or indirectly rewarded-it is simply a waste of resources. But if you plan carefully, it can easily become a profitable investment. Learning high-quality software for profit requires solid knowledge and professional judgment, but accumulating skills requires not just reading. You have to be an active learner and get the most out of your knowledge. I used to be a passive learner, just read books and articles, although I know a ballpark, but in fact, there is no big progress. When I wrote this blog, I found that educational developments was also a good way to learn skills. When I became an active StackOverflow user, this feeling became clearer. When I started working on an open source project, I finally realized that learning was only hard work.One of the side effects. The above experience has made me deeply understand what is active learning. From a commercial point of view, it is not difficult to foresee that the proceeds from such investments may come from a more sophisticated development team that can operate more complex projects at lower risk of failure. After mastering a certain technology, we can provide professional training and consulting services. Write a book and sell it through a self-help publishing program. The other thing is that professional class skills are always particularly popular. Investing in development skills is definitely worth the money. Many developers like the kind of work environment that fosters self-growth, so this trick is actually good for keeping employees. This journey of learning is not as difficult as people think, and below I will introduce some of the activities I really appreciate about active learning: preparing training materials For example, if you want to promote specific core technical skills in your company, you can assign some developers to research and prepare training materials on the subject. The effectiveness of the workshop would be better than a simple demonstration. In the preparation of training materials, in fact, you already have a certain accumulation of relevant knowledge and training Foundation. You can then start providing training or consulting services on this technology. Company blog every software company has accumulated experience, but few people can really share it with others. At this time, opening a company's technical blog or can help to communicate with each other. High-quality blogs can show your expertise and professional competence. You can also build a strategic partnership with Dzone/javacodegeeks, which can also help you grow your business. Answering questions on StackOverflow StackOverflow The role of many people will underestimate. If you really want to be an expert in a field, then you should start answering questions in that particular direction. While you are answering questions, you are also consolidating your own field of knowledge. In a word, repetition is the mother of learning. Open source projects if you want to improve your design and coding skills, then you should be on the open source project. The authors of the framework are mostly very rigorous, and their code reviews can teach you many of the best programming practices. If your company often needs to use one of the open source technologies, it is necessary to go back and study hard. The best way to deal with a framework problem is to settle it honestly. No one knows this framework better than its maintainers. You can summarize your experience in books by writing articles and selling books. Writing a book is also a very interesting learning process. It is only when you have finished writing that you can say that you have really mastered the content. Amazon offers a self-help publishing program that can be helpful if needed. Conclusion Learning can help your company increase its competitive edge. Products represent the company, the quality of software products reflects the professional level of the development team. Finally, what I want to tell you is that you invest not only in individuals, but also in your own company. Receive your free lamp Brother's original PHP video tutorial CD/PHP Essentials Edition, more information on the official website customer service: http://www.lampbrother.net You can subscribe to the mail, I will occasionally share it-related tutorials and books. http://list.qq.com/cgi-bin/qf_invite?id=ea7d919ad263169bce2be53a3e16da0f0ec55ac36513c68e |