每天推荐一个 GitHub 优质开源项目和一篇精选英文科技或编程文章原文,欢迎关注开源日报。交流QQ群:202790710;微博:https://weibo.com/openingsource;电报群 https://t.me/OpeningSourceOrg


今日推荐开源项目:《我的意思是所有人都该看看这个 How-To-Ask-Questions-The-Smart-Way》传送门:GitHub链接

推荐理由:相信我,如果你没看过这个提问的智慧,你一定得去看看,不管是为了自己,还是为了以后可能会因为你的问题向你提供帮助的人,学会正确有效的提出问题可以让你更快的获得能够帮助你的人的支援。最起码,看了这个之后,你应该不会问诸如 “我的主机板有问题了,谁来帮我?” 这样的蠢问题了。

实际上这个精读注解版也值得一看:https://hacpai.com/article/1536377163156#toc_h3_14


今日推荐英文原文:《How To Be A Good Customer》作者:Yellow Blog

原文链接:https://medium.com/@blog_81869/how-to-be-a-good-customer-96f9191902f9

推荐理由:如何成为一个好的顾客来支持为你工作的开发团队,这与如何成为一个好的开发团队成员同样重要

How To Be A Good Customer

Based on real cases: check out our tips on how to stay focused, confident, and cooperative when working with your engineering team

If you Google how to find the best software engineering team, you’ll get a number of decent articles covering the topic quite in depth. Unfortunately, the same can’t be said about the client’s role in the development process, which, from our experience, contributes to one half of the product’s success.

To prove this, we looked back at the real cases we encountered during our work and came up with five tips on how to be a more engaged and helpful client.

Stay involved

We know it’s not easy to stay focused when you have several projects running at the same time — or when you are physically thousands of miles away, which is also sometimes the case. However, there are multiple ways to keep in touch with the development team and the progress they make.

Make sure you are aware of all the project updates. They may come to you as a brief weekly report or a new project build — it depends on how the workflow is organized on the developers’ side. This will give you a general overview of how things are going.

Participate in all video calls, meetups, and discussions along with your project manager. As a result, you’ll become aware of the project details, on the one hand, and learn how you can help on the other.

Hint: Don’t hope that the team will read your mind. You are the one who has the vision. If you see that the project goes in the wrong direction, be sure to interject at any stage and put everything back on track.

Some time ago, we worked on an application for a client from the travel industry. When he felt he was not happy with the application design, he prepared a mood board with carefully-selected designs and colors for us to refer to. Need we mention that the result was just as he imagined it?

Participate proactively!

Start small

When creating an app from scratch, make sure the release version includes only the necessary minimum of features. Ideally — just one essential feature that makes a new product viable enough to enter the market.

Launching a simple app version can give you answers to a bunch of important questions. How do users react to the product? Do they use it in the way you thought they would? What features do they turn to most often?

Hint: Give users some time to play around with the application and use the chance to discover their real expectations of the product. Thus, you”ll be able to provide new features in small portions — in just the right time — making users crave more.

For instance, if you launch a new messenger, don’t include video calls in the release version. Text messages will definitely cover the users’ needs while you are trying to get a clue of what else they may want. Otherwise, you risk finding out upon release that your target users never really make video calls and prefer voice messages instead.

Another argument in favor of starting small is the issue of money. Don’t invest everything you have in a product that may not even work as you want it to. Launching a simple version to understand how users react to it and then adding one new feature at a time sound like a much more reasonable plan from the money perspective.

Be ready to pivot

Just as we mentioned in the previous point — be prepared to learn that all your assumptions about the product, its usage, and audience might be wrong. As we established from our own experience, the only way to give users what they want is to experiment.

Hint: Be flexible. If something doesn’t work as you expected it to — change the direction.

StickerBox is our pet product that allows people to take photos of their friends and transform them into fun stickers. When we launched the app, we thought users would mostly like to make custom stickers and manually tweak them to their liking. Soon after release, we found out they were much more amused with the stickers provided by the app.

We challenged ourselves to make a U-turn. We removed most of the customization features and released a version offering ready-made stickers with just one button click. A simple “one-button-to-magic” approach — and the popularity of the app rocketed.

Trust your team

Be sure to make a responsible choice of the team to work with, and, once having made up your mind, learn to trust them as professionals.

Sometimes clients, especially those with no technical or design background, are prone to micromanagement due to a lack of knowledge. At the same time, any project requires making dozens of microdecisions every day, both technical and non-technical ones, and overcontrolling may dramatically slow down progress.

Hint: If you feel you are close to overcontrolling, or simply need a second opinion about the project, consider inviting a third-party expert.

We advise finding someone you trust as a person and as a professional. It may be a technical consultant, a design expert, or a strategist, depending on what part of the project you worry about the most. The expert will join the team once or twice a week and report to you if anything doesn’t go as you have expected.

However, don’t rely fully on the expert’s opinion. Software products are not entirely about coding or design. Even if you cannot tell whether everything is okay with the code, you still can evaluate if the project solves your problem.

Join the team

Sometimes clients who come to us with an idea of a product do not fully understand how it should be implemented. “We think that the market needs this, but we are not quite sure how it should work.” — we hear these words quite often.

Prototyping is a generally good way of finding the right realization for the project. A simple black-and-white wireframe may give an understanding of what features should or should not be added to the future application. But what if you’ve never even heard about prototyping?

Hint: If nothing else is the option, don’t hesitate to simply sit and brainstorm with the development team.

One time we had a client with an idea of an easy-to-use messenger for in-family communication. He felt he should occupy the niche but didn’t really know how to do it.

We took the idea of a messenger as a basis and started brainstorming. As a result, we came up with several bright ideas, such as a timeline of family events and an interactive family tree, and then the application saw the light of day.

Sometimes, it feels so tempting to step back and shift to other tasks once the project is safely delegated. Sometimes, vice versa, it seems impossible to entrust the realization of your vision and ideas to a team.

We hope these recommendations will help you maintain balance between these two extremes and stay in tune with the development team. In fact, being a cooperative client requires effort, but it’s definitely rewarding for both sides, and, above all, the product.


每天推荐一个 GitHub 优质开源项目和一篇精选英文科技或编程文章原文,欢迎关注开源日报。交流QQ群:202790710;微博:https://weibo.com/openingsource;电报群 https://t.me/OpeningSourceOrg