前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >爱提问题是对的,但是……

爱提问题是对的,但是……

作者头像
小美娜娜
发布2019-04-19 11:45:50
5380
发布2019-04-19 11:45:50
举报
文章被收录于专栏:小美娜娜小美娜娜

警告:本文乃个人主观情绪极重的文章,不喜勿入。但是本文并非diss任何人任何事,仅仅是希望提问者和回答者能够更加有效地沟通。提问者肯定是无奈之下才会寻求帮助,但是回答者都有各自的事情,并不可能随叫随到给提问者回复,估计也只有Siri才能随叫随到,及时回复。

互相体谅,互相尊重也许是共同进步的关键所在!

最近笔者一直在想一个问题,就是该如何问问题?

说句不要脸的大实话,笔者挺自私的,并不喜欢回答问题,原因有三:

  • 有些问题明明可以通过各种搜索软件得到问题,偏要找“人肉搜索引擎”。
  • 秉着负责任的态度,对待答案总要自行检查一遍,虽然过程中也可有收获,奈何费时费力。
  • 本身工作挺忙,待学习的队列已经排到美国了,期间看到问题,真心觉得烦躁。

可以说上述三条理由都是笔者在为自己这种自私的行为开脱,但是要笔者不情不愿的回答一些“不是问题”的问题,憋屈啊。将心比心,因为知晓己所不欲勿施于人,所以笔者很少提问。即使提问也要斟酌再三,确认无误,确保不是“恼人”的问题。那么,究竟什么样的问题是“恼人”的,甚至“不是问题”的问题,什么问题是“值得回答”的问题呢?

问题黑名单

首先来谈谈那些“恼人的”问题(若有雷同,纯属巧合):

第一类:百度搜索

相信大家都遇到过,客气的人会说这个不复杂,你可以百度一下。,但是脾气暴躁的人会说,这么傻X的问题,你不会百度啊。这类语气着实伤人,为了防止个人的玻璃心受伤,就要避免一些“百度”的问题。

百度问题分以下几类:

  • 最经典的莫过于api的问题,有关api的用法,百度吧。但是有个隐藏的api问题,就比如笔者想要实现某个功能,但是根本不知道用啥api,这个时候有好心人给了方向之后,就自行百度吧。
  • 0基础的小白的问题,这一类问题,很难回答,相信很多好心人说着说着恨不得自己拿过来帮人家写了算了。这个时候笔者推荐提问者先从基础开始学吧,网上挺多零基础的教程的。虽说要对自己有所要求,但总不能还没学会爬就要开始跑了吧。
  • 常见问题,比如CSS中经典的居中问题,布局问题,自适应问题,相信网上应有尽有。相信大家已经回答地不想再回答了,并不是说鄙视这类问题,而且乏了,真的乏了,估计已经回答了几十遍同类问题了。

第二类:不知所云

每次遇到别人问,咦,这个怎么没出来呀?为什么报错了呀?。这个时候笔者就想装死,毕竟本人不住在浏览器,报错和不出现的问题,就算当面调试也不一定能够立马出答案。而且考虑到面子问题,万一出不来会不会显得笔者很渣?

不知所云分为:

  • 截图或者一句话,没有详细说明,没有操作说明,没有想要的结果说明。比如为什么ajax获取不到数据,这一类好心人会一步步引导出真正的问题,像笔者这样的就直接无视了,甚至会diss,“谁XXX知道你想问什么”(乖宝宝们不要学习)。
  • 直接丢出一个报错,报错的原因千千万种,不了解对方项目的该如何,这个时候又要回到第一类问题了,完全可以百度以下错误的成因,然后根据自己的项目分析。此类问题非经验丰富的,基本get不到提问的点。

第三类:道德绑架

在线等,急

此类问题一律不答。至于原因,感觉笔者不帮助找到正确答案,仿佛就是个大坏蛋,甚至自我怀疑。

第四类:要你何用

这一类算是笔者的亲身经历吧,可能脾气太好了。在大学的时候,一个小学弟来问笔者数据库的问题。且不说笔者当时并不熟悉,现在笔者也是个渣渣。小学弟问了很多问题,笔者都没答上来,最后他来了一句要你何用。真棒,学姐没用!题外话,说者无心听者有心,这对笔者当时的幼小心灵造成了极大的伤害,还好笔者没心没肺,没多久就恢复了。

对于问问题,且不说虚心讨教,还要充大佬的,不尊重人的,门在那边,出门左拐不送,不伺候。

问问题是门艺术

这里笔者想要借用StackOverflow的一些规范,来总结下如何问出讨喜的问题。

先给出一个错误示范:

代码语言:javascript
复制
大佬,我碰到了XXX问题,不知所措。(谢谢,大佬比你更不知所措~)
复制代码

搜索搜索再搜索!

问问题之前,请再三地搜索,即使找不到有用的信息,也可以对比你的问题和其他人的不同,同时总结出一些结果,即使现在无用,以后也许用得上,这也是一种学习过程。

详细说明

详细说明你的问题,一上来就放出一堆代码,反正笔者看到几十行的代码都是直接遛的。用简短的语言,整理逻辑关系,详细说明。

必要时给出实列代码

现在有很多在线的code play的网站,比如codepen(my favourite),jsfiddle,实在不行贴上github地址。这样大幅度减少了对方了解问题的时间。

举个例子,笔者的模版

代码语言:javascript
复制
提出问题:
大佬,我碰到了XXX问题。我希望的结果XXX,然而预期的结果XXX。

处理过程:
我搜索了很多资料(表明你搜索过了),网上有一些和我的问题很像,但是有些区别,我是这样地,他是那样的。(给对方画一个范围,告诉对方你的问题在哪一个区域)。
我试过了1,2,3,4……种方法(最好讲明每一种方法的利弊,节约对方的劳动力)。

客套一下:希望大佬能给我指一条明路。(因人而异,看个人个性,笔者喜欢谦虚一点,毕竟是请求对方帮忙。)
复制代码

相信笔者,经过这一番的思考之后,自己就能找出答案了。

解惑者

那么遇到一个问题,该如何回答,毕竟大家都有做新人的时候,总是要受点挫折才能成长为大佬。对于萌新还是要有“慈悲为怀”的。

此处再次借用StackOverflow地规范,有关于态度地,也许对于解惑者更重要的是一种态度。

错误示范:

代码语言:javascript
复制
这个问题百度下就可以了。
我都不知道你要问什么。
(虽然有时候有些问题确实一言难尽,但是此类的回答语气还是不太好的。)

复制代码

和善地提出——你可以去百度了

第一种,优雅地告诉对方,请百度:

这个问题其实难点在于XXX,是很常见,推荐搜索一下,应该就会有许多解答。

第二种,手头上有合适的大佬文章,抛出链接:

这个链接里面的内容,感觉和你的问题很像,可以参考下。

友好地告诉对方我不知道你在说啥

我无法get到你的问题点。给出对应的推理,是XXX这个原因吗?还是说你想要XXX?

避免带有挑衅的语气

比如不屑,侮辱,甚至人身攻击,这里就不举例子了,不合适。

优雅地回答!让萌新不再瑟瑟发抖。

笔者解决问题的过程

  • 首先是StackOverflow搜索,这里能找到答案的机率最大,而且用英文搜索,更加精准,不是笔者推崇英文,而是中文的表述过于复杂,很多名词有多个解释。
  • 找不到问题再去google,同样关键字删选。
  • 整理解决方案,一个个调试,整理每次失败的过程。
  • 无法解决可以换一个思路再去解决,此路不通,那么就绕路而行。
  • 最后的最后,整理解决过程,找大佬解决。

笔者曾经问过一个关于video在微信上自动播放的问题,虽然最后并未找到更简单的方式。大家可以参考一下。

一个问题的产生过程

问题提出: 需要在微信上面,自动播放视频。但是手机为了用户体验着想,都不允许自动播放,所以该如何绕路而行了。我并不想使用常规的摸一摸播放,顺便提一下在安卓上面一定要click事件才能点开视频……

问题的痛点: 搜索了多方面的信息发现一个噩耗,无论什么样的播放都需要用户的操作支持。而且ios和android的支持不同。首先苹果为了代替gif,虽然支持静音状态下的播放,但是我无法保证音频和视频的一个同步执行,总是有个微微的延迟或者提前,而且音频也需要摸一摸。安卓?不提了……

可行的方案: 终于找到了解决方案,然而却需要利用ffmpeg转流,然后通过jsmpeg将转化之后的流通过canvas等技术播放出来。这能同时解决安卓和苹果的自动播放问题。不过学习成本过高,需要掌握ffmpeg的基本操作以及jsmpeg的用法。

请求: 不知道大家有什么更加简易的解决方法?

当笔者写整理完问题的时候,仿佛已经知道了最终答案,只是抱着试一试的心态去问一下也许有大神就知道呢?同时这也算是一个小小的经验分享吧,该踩的坑都踩了。相信大家有一个自我的思考过程答案迎刃而解。

(感觉只有加粗大家才能看到笔者的请求,到现在都没有收到更加简单的方法,要是有大神知道请留下您宝贵的建议!)

笔者回答问题的过程

让笔者找一个在stackoverflow回答的例子

提问的宝宝很客气,原文大概是这样的:

有关于通过js运行css的问题。

谢谢大家花时间看我的问题,任何帮助我都会感谢大家。

我有以下一串代码:

代码语言:javascript
复制
.middle_n.expand.remove
{
 animation: contractm 0.3s forwards;
 transform-origin: 0 75px;
 height:200%;
 animation-delay: 1.3s;
}

@keyframes contractm 
{
 0%{}
 100%{transform:translate(147.8%,100%) rotate(-16.75deg);}
}
复制代码

我希望能够传递一个动态的值,让这个转起来。我该如何做。通过js可以实现多个动画吗?

再次感谢。

虽然是个新手,但是提问点很清晰。刚好笔者擅长该领域,于是就给出了回答。


笔者的回答:

在我看来,如果你希望控制你的动画,我的简易是你可以使用js控制你的元素的style。因为animation是完成一系列的动画的。

并且有一个非常强大的css属性,叫做css变量,你可以通过这个链接得到更详细的解释

然后给出笔者的例子:

代码语言:javascript
复制
const rotate=document.getElementById("rotate")
let r=0
rotate.addEventListener("click",()=>{
  r += 10
  rotate.style.setProperty("--rotate", r+"deg");
})
复制代码
代码语言:javascript
复制
#rotate{
  --rotate:0deg;
  background:pink;
  width:100px;
  height:100px;
  transform:rotate(var(--rotate));
  transition:transform 1s;
}
复制代码

当然,如果你希望一系列的动画,你可以查看这里。设置一系列的动画很简单。


本文的主观性很强,如果有感到不适的地方,笔者道歉。笔者只是为了大家能够有个更好的学习氛围。少一些争论,多一些讨论。好好学习,天天向上。

怕被打,溜了溜了。

不知道如何安放的文章,笔者应该怎么添加标签呢?

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019年04月13日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 问题黑名单
    • 第一类:百度搜索
      • 第二类:不知所云
        • 第三类:道德绑架
          • 第四类:要你何用
          • 问问题是门艺术
            • 搜索搜索再搜索!
              • 详细说明
                • 必要时给出实列代码
                  • 举个例子,笔者的模版
                  • 解惑者
                    • 和善地提出——你可以去百度了
                      • 友好地告诉对方我不知道你在说啥
                        • 避免带有挑衅的语气
                        • 笔者解决问题的过程
                          • 一个问题的产生过程
                          • 笔者回答问题的过程
                          领券
                          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档