A Free Trial That Lets You Build Big!
Start building with 50+ products and up to 12 months usage for Elastic Compute Service
Introduction: Sometimes we need more than just a product manager who knows technology well, and what we need is a product manager who can trust his partners to do well and encourage them to work better together. So in the end product managers need to understand the technology, let's take a look at know the answer of this question.
In the last seven years, I have been doing Internet products, of which the first five years of time in the start-up companies and listed companies, to do other people's products; the last two years in the venture, and strive to do their own products.
And you have to ask my experience, my experience is that: product managers need to understand the technology, and entrepreneurs in particular need. But the prerequisite is that you always feel that there is no hope of something to do something impulsive, but if you intend to mix quiet life, especially if you are in a big company, then you do not need to understand anything, but you want Be careful not to "know too much", to know silly life is safe.
Product in recent years, and development engineers deal with most, and they usually have two taboos exchange:
A. Do not understand technology
To be more accurate, is the lack of design, development of a basic technical knowledge of Internet products, such as at least be aware of a website from being non-existent to be able to be accessed by users, what are the necessary steps; also understand an App from your mind to go To the user's mobile phone, you need to experience what kind of process.
With common sense, of course, not necessarily able to make good products, but no common sense, it is like staying in the village half a life of people first came to the city, even if every move with care, it can not reveal the absurd and discordant.
There are a few of the early seventies that I met with, some typical of the early seventies. Probably, they were over curiosity and longing for unknown age when they appeared on the Internet. They did not want to be demeaorating to learn something new and liked Only by imagination and own experience of life on the spray, or to a number of recent popular keywords as embellishment to show that they are still squatting in the trend of cutting-edge.
Such people may be flirting with some leaders, but they must not hire engineers to see. They may say nothing, but they are already starting to wait for jokes and give them their development needs. Mongolia.
Second, avoid technology
I encountered many engineers like to say: "As long as the product needs clear, technically everything can be achieved."
This sentence sounds quite heroic, but also to the product manager reassured that technology is really a strong backing of the product. But in fact delivered a particularly bad signal.
When the engineer says so, the subtext is: "Just take care of yourself, do not mind me!" And this implies an optimistic but apparently unrealistic assumption that technology is omnipotent He (the person who masters of technology), like the lord, can do whatever you want, as long as you can clearly describe it.
I do not know if Aladdin had finished his wish and would not be stuck in the lamp if he dared to continue asking if the lighting project would implement the technology plan. However, I know many engineers are finding that you are concerned about the technical level too deep Time, there will be a kind of territory is the feeling of being violated.
This is the instinct of engineers to maintain their own professional trough. Compared with other roles in the industry, engineers have the highest status and are not the best to deal with. They also often have to work overtime to survive and die. The only advantage is that professional trough is better than any other role All deep. On the product, about the UI, and even on the business model every employee can spray a few words, if it comes to user experience, it is even outsiders dare to spray special spray without any psychological burden: anyway, I am the user Well, the more silly the more glorious. And when it comes to code, most people are dizzy. Think of those UI designer's hard-working paragraph, no spray at work, the infamous interference, it is God's unique gift to the engineer.
So when they think that outsiders are trying to cross this trough, they will naturally be on guard and even show resistance and hostility. When a product manager discovers that engineers are beginning to use more intensive terms or desperately to complicate simple questions, you should know that they started shooting at you.
From the entire product and even the company's point of view, the professional trough between the various professional roles should be filled, the product manager should not be reluctant to engineer emperor to make princes, do not always pretend to be the user's three representatives, At every turn take the imagination of the "user needs" when "Fengtian carrier" to use; engineers do not have to install the lamp God, pretend nothing can be very tired, engineers must have the ability to compete, in fact, sometimes the function can not do Or not doing well, purely because of the limited ability of engineers. If you are frank with each other, you can effectively and effectively communicate in advance, avoid the part where the input-output ratio is too low as much as possible, and the technical implementation details that many engineers are unwilling to discuss are all worth the involvement of the product manager. How to choose and decide on these details will greatly affect the product development progress, performance and even function. If the communication is in place, development engineers can often make a lot less useless work. After I started writing the code myself, I got a deeper and deeper understanding of this.
Here to talk about why I started to learn to write code, be the second half of the answer to the problem.
During the first five years of my internet product development, my knowledge of technology was only maintained in common sense. The only code that I could handwrite was html and css, not even js, not to mention any programming language for web development. I always think I can not completely write one even the most simple dynamic website, as a product of Internet users, a great flaw and shame.
Engineers generally do not think so, when chatting with them, and sometimes shut up some views on the technical architecture or some technical issues, was immediately praised: "You know technology Well!" Then immediately said haha: "Understand p ah, I will not write even hello world, is completely on paper." So laughter, a group of people put the arrows in his hand up.
However, I did not want to be the sole proponent of TM. In 2009, I ignored the then 32-year-old and brazenly decided to study Ruby, bought a book, installed the environment, started reading and typing, persisted for a few days, and then failed And, considering that perhaps Ruby is too hard for me to try Python again, the result is still a failure. A few days after the depression did not give up and bought a book developed by the iPhone, but also took the opportunity to decide to buy a 27-inch iMac, but the tragedy is only turning the page, even Xcode did not dare to give up directly, this book On what ah! Up is a large section of the code ah! And obj-c code is huge, completely unable to understand.
Later, I think, there are two gains in this matter: First, found their IQ boundaries. I have an iMac.
Blink of an eye and over a year later, you want to do an iPhone on the App feel more and more strong, fast suppressed. So one day, I forgot the pain of the scar like that almost no crease iPhone Development Fundamentals and turned it out, waiting for the process of Xcode download, secretly determined: do not understand I also put it back.
Later found stupid way at least for me, quite useful: according to the book knock code, normal operation, then close the book, and then click again. Generally repeat four or five times can remember very fast. Co-authored book, Pilipa skilled Tap on what they still do not know what the code means, plus Xcode auto-fill is to force, a few minutes you can toss a large screen colorful code, but also run on the iPhone , Then there will be an illusion that iPhone App has been written, it is wonderful.
Human brain is also very fantastic, if you have been back down, do not understand it will slowly understand automatically, so after a while back code, I suddenly found: I understand what is going on. After that I started to give myself a variety of small functional needs no longer small, try to use these codes to achieve, every realization of one, are ecstatic: I can show the button! I can pop up a dialog box! I can write a scroll List! I can send a push message! ......
These things, after they are proficient, may be just as dull as drinking saliva, but they bring great joy to beginners. I always think that I can always maintain the enthusiasm as a beginner, concentrate on and decide to do something How far you can go and how well you can do it.
Due to the book Xcode version of the problem and I use different and some typographical errors, the code on the book will not always be able to run, sometimes incorrect report, only the Internet exhausted all means search, the search process will be Slowly see some specialized technical forums, Blog, eventually will inevitably find Stack Overflow this magical site, most of the problems you encounter, can find the answer above.
When the function of the book has been unable to bring ecstasy, you will be tempted to release the various ideas you have been bound to for a long time, and finally you can do it in your own hands, rather than confine yourself to the drawing of prototypes and writing Write the description of the needs Finally, pious wipe the magic lamp, called the gods of light so every boot itch products.
The process of development is fun to me because when writing code, the world becomes simple and beautiful, something is right or wrong, you do not need to repeatedly speculate on yourself, and you do not need to argue with anyone endlessly, compile The device is the sacred judge. Each of your operations can be timely and clear feedback, but also has almost luxury trial and error opportunities, from this perspective, the programming fun is kind of like playing games.
Of course, will encounter numerous problems, Stack Overflow, Github, Bitbucket, mailing list will slowly become your friend.
After being able to write an iPhone App on its own and put it on the App Store, I found that I needed to learn another language to develop the site and the RESTful Web Service that I needed to call in the App. Of the elders once again flagrantly played the idea of Python, with the experience of learning obj-c, know the key is to be able to relentlessly get heart and calm down to see what books, in fact, the difference is not particularly large, so I use Free Learn Python The Hard Way, follow the method mentioned above, and then done it again (the first half is relatively simple, you can do more than a dozen exercises, the back may be slower), understand how to write Python , And immediately began to look at Django Book 2.0, only to see the ninth chapter, can not wait to use the same method Django Tutorial done twice, then the surprise discovery has been able to write a simple but complete website. Then I quickly tried to use Django to write a very small tool for a vertical field. After running for some time, I ended up with a free trial last night and started charging. Now I am pleased to see that there are already several paid subscribers.
As for the extent to which technology needs to be understood, I think it would be enough for us to spend a few months studying things. This sale is too cost-effective. In particular, in the field of technology, it will certainly require continuous learning. However, for me, Just like a dozen or twenty-year-olds who qualify on the basis of a wide range of interests, my current principle of the matter is very utilitarian: immediate schooling that can significantly improve efficiency or is recognized as best practice, or else First do not learn, try not to toss, strictly control the input time and effort.
For example, the code written on the Server, although as long as you can run even if the deployment is successful, but the accepted best practice is to use virtualenv isolated Python environment, so that you can reduce a lot of trouble later, it is worth the extra time to understand, Go to the application; using Fabric with Git for automated deployment can greatly improve efficiency, it is also worth the time to learn how to use.
I also know that you can use Memcached or Redis for caching to improve application performance, or use asynchronous queues with Rabbit Mq and Celery to improve the uncomfortable feeling users get when synchronously performing long-running tasks, and Node. js seems to be a better RESTful API than traditional web development languages ... but none of these are the most pressing issues right now, so although I'm not sure yet it will be useful, I will not go to school first.
An inattentive, sprayed a few words, or stop it, it seems mid-aged man's long-winded regarded as not saved.
Finally, to summarize, to one sentence ah:
Product Manager Understands Technology = Rogue Would Martial Arts. If you think the gang is big enough, his mind is good and can be used as a teacher, it will not make up for martial arts; or coincidentally, like me, no teamwork, and old like loner, but also want to rely solely on My brain can not even practice self-defense, I am afraid it can easily be labeled as reptiles.
A more serious conclusion is: product managers understand the technology, in the absence of resources can be used to do the lowest cost things, resources can be used when the resources more efficient.
sofish (others call me fish http://sofish.de)
As an engineer, and a designer who constantly pursues better products. Personally think that the best product manager is like this:
First, proficient in technology. Technology is easy to frame people's thinking, or not particularly proficient, can be out of the shackles of technology at any time, bring the real improvement of the product. Typically such product managers will appear in companies like Facebook and Google can lead the company's products, or some technology-based startups.
Second, do not understand technology, like an abstract, but also can hear the engineer's advice. Good at product design, life cycle management.
If you just know a little bit of technology, you may (ideally, be "likely") bring about mental limitations. A man can never manage that much, proficient got so much. Sometimes, what we need more is not the product manager who understands the product technically, but the partner who believes it does well and encourages them to work together as a better product manager.
More answers, please see know almost: http: //www.zhihu.com/question/19554113
Start building with 50+ products and up to 12 months usage for Elastic Compute Service