作为一个全栈开发者,经常要在多种语言之间挑战,然而最熟悉的只有一种,其它的往往是随用随学,对搜索引擎的依赖很大,而搜索引擎的结果需要再点进去查找,比较繁琐了那么一点点。
dig.codes 希望减少那一点点繁琐,在结果页主要显示代码,通过看这一页的结果快速解决编程中的问题,比如“js 数组 方法”。如果需要深入了解这个问题,再点击原始链接查看详情。
实际上,“减少那一点点繁琐”的愿望并不好实现。dig.codes 的数据源是在线教程、文档、博客,挖掘其中的代码匹配用户查询并把最符合的代码呈现给用户,这个匹配过程其实相当难。用户输入是带有语义的自然语言,目前搜索引擎的算法主要是字符串匹配,这中间有个巨大的鸿沟——语义。这就导致你很容易发现 bad case ,当然也有很多 good case 。也尝试了语义搜索的方法,但是效果比字符串匹配差很多。这个愿望的圆满还任重道远。
下一步,搜索算法,减少答非所问的情况。同时也在考虑是否要实现 github 代码搜索。目前的搜索,主要是搜索文档中的代码,要搜索 GitHub 的话就是从工程代码中搜,即纯代码搜索。由于 GitHub 已经提供的代码搜索,dig.codes 再提供类似的功能意义何在?近期一直在考虑这个问题。如果您有什么建议,欢迎回复提出,十分感谢。
请大家试用 https://dig.codes/ , 提出您的宝贵意见和建议,以及各种讨论,谢谢,谢谢。
谢谢大家的反馈。
根据反馈,dig.codes (挖码)作为一个“代码知识库”,提供“代码搜索服务”,这种搜索是基于自然语言的,而不是只在工程代码中匹配。
因此,“代码知识库”的建立很重要,除了机器挖掘之外,UGC也是非常重要的途径。下一步,挖码将推出 [代码知识管理] ,方便用户记录编码中产生的有价值的“代码知识”。
如何激励用户产生代码知识是一个非常非常重要的问题,如果大家有何意见请回复讨论。初步想法是,产生一条知识就会累积积分,用户点赞也有积分,而积分有何用呢?值得深入思考。
帖子发了一周,得到了下面的访问量曲线:
1
sciel 2022-04-24 08:58:46 +08:00 via iPhone
不错呀,虽然搜索 文字转语音 没有找到想要的结果
不过还是收藏,下次遇到问题时试试哈 另外 移动端下输入框可以加长一点( ´▽`) |
2
gogogo1203 2022-04-24 09:02:52 +08:00
1. dark mode 可以做一个. 大家用的频率应该很高, 我用自动 dark mode 的插件,页面看得有点怪。
2. 搜索的结果还是有点差强人意, 尤其是竞品越来越强,copilot 是一种没有办法逾越的大山。我也是全栈,golang- js-css-docker-sql 跳来跳去的,原来仰赖 Notion 自己做知识库. 现在 copilot 在我还没有想好下一步写啥,它就能给出答案。 3. 我觉得可以缩小范围,最初只做一个语言或者一个框架的知识库。这样好完善内容建设,也好吸引用户。我觉得你把一个 react 各种 hooks 做好,就会有不少人用了 4. 加入更多的用户自己打标签? ucg ? |
3
techv OP @gogogo1203 哇喔,太详细的回复!
1. dark mode 确实是用的很多, 有空试试。 2. 跟 copilot 还是无法攀比的,这个工具最初是向快速查询基础用法,比如“js 遍历数组”对于偶尔用 js 的人来说,需要看一个 code 例子就可以马上学会,当然搜索结果有待大大提高。 3. 这是个很好的建议,如果设计好一种知识库插件机制,每个语言是一个知识库。知识库:1. 有特定的数据结构; 2. 可以从文档自动生成该结构知识库; 3. 众包知识库。 4. ucg 是个好方向。用户打标签外,还可以用户写代码;有人出题,有人做题。如何激励用户产生内容需要好好想想。 |
5
njutree 2022-04-24 09:38:38 +08:00
感觉结果需要优化, 现在的结果感觉还不如 google
|
6
gogogo1203 2022-04-24 09:40:24 +08:00
我建议还是要把定位做清晰一点,把 target customer 再做小一点,大而全的结果是推广难,内容乱。
你看你是要定位成“完全没有用过 arr.map 的”用户, 还是“知道 arr.map, 但是一段时间不用,忘记了”的用户。 可能 arr.map 不是一个很好的例子,arr.reduce 估计很多人都用过, 但是一段时间不用就忘了。 我个人建议前期做透做精一个点. 或者做成个人知识库的管理, 也可以共享知识库. 大家都是全栈, 什么都懂点,什么都不精.如果一个产品也跟我一样,那可不太行. |
7
tobeyoung 2022-04-24 10:06:12 +08:00
|
8
LeeReamond 2022-04-24 10:09:32 +08:00
支持 lz 探索的精神,但是我试着上去搜了几个关键字得到的结果都不是很好。。
|
9
mahone3297 2022-04-24 10:14:48 +08:00
感觉要被 copilot 打败。使用起来 copilot 效率会更高
|
10
fgd 2022-04-24 10:24:03 +08:00
不错,感觉我能用到。
|
11
MaxSoloware 2022-04-24 10:26:18 +08:00
想法很不错哎,但是我随便试了一下比如 swift import musickit 出来的都是 JS 的结果。
在实现上加一些规则是否可以让结果更精准命中一些?比如 github 的 language:这种功能呢? |
12
fuis 2022-04-24 11:27:44 +08:00 1
|
13
xiadd 2022-04-24 11:32:02 +08:00
|
14
huntagain2008 2022-04-24 12:49:31 +08:00
牛逼,开始我以为是 searchcode 一样的光搜代码片段的东西。结果搜到了我想知道的用法,各种教学。比如
``` shell awk 'max<$5 || NR==1{ max=$5; data=$2 } END{ print data }' ``` 我是小白,用 awk 查找某一列的最大值,这一段我就搞不清楚 NR==1 是干嘛的,结果用 awk ' max < || NR == 1 用你的搜索引擎一搜就搜到了。有点像别人现场教学的感觉。 |
15
techv OP @gogogo1203 做精与做全并不矛盾,做精可能需要更多的人力投入,现在正在探索如何用机器做知识的抽取,这个做好了可以解决很多问题,可以从一点出发做精做透,探索知识抽取的路径。
|
17
gogogo1203 2022-04-24 13:35:23 +08:00
@techv 我觉得中文和英文同时做自然语言得学习实在太难了。还是取舍和定位吧。
|
18
techv OP |
19
cweijan 2022-04-24 13:40:10 +08:00
试了几下, 没搜到想要的
|
20
techv OP @mahone3297 与 copilot 还是不一样,它是帮助你补充代码,digcodes 是帮你补充代码知识。
初试 copilot 确实被它惊艳到了,我自定义的数据结构它都能“理解”而补充了正确的代码,几次之后就相信了它,然而它对复杂的数据结构有时候不准确,导致 debug 好久才发现是它代码的问题。 |
21
techv OP @fengyiqicoder language: 过滤在计划中,应该能提高准确率,多谢。
|
22
techv OP @LeeReamond 谢谢鼓励,它在不断进化,请多多使用,希望它有一天能成为你的助手。
|
23
techv OP @huntagain2008 恭喜您,发现了它的真正目的,希望这个特点成为它的价值。
|
25
techv OP @gogogo1203 确实很难,我再好好考虑考虑取舍和定位的问题,谢谢您的建议。
|
26
zagfai 2022-04-24 14:05:39 +08:00
"python redis asyncio" 没有得到想要答案
|
27
Echoldman 2022-04-24 14:45:47 +08:00
用了一下,感觉很有意思,一定程度上能给到我想要的东西。
好奇的问下,这是你的个人在做的项目吗? |
28
haobogu 2022-04-24 17:46:24 +08:00
如果是 Java 的话,可以试一下 IDEA 的插件 Alibaba Clouding Coding Assistant ,里面也有类似的代码搜索功能 https://alibaba-cloud-toolkit.github.io/cosy/#/zh-cn/guide/how-to-use-codesearch
|
32
xman99 2022-04-24 18:32:50 +08:00
挺有意思的,哈哈
|
33
LemonK 2022-04-24 19:16:55 +08:00
优秀,关注了。曾经设想过类似的 UGC+知识图谱,OP 用搜索+机器抽取效果也很不错。
我个人还是赞同#2 先按语言一个个做精的想法,如果某个语言结果不全或者质量不高,对这个语言的用户来说就是基本不可用,留着也意义不大。 |
37
huntagain2008 2022-05-23 12:31:43 +08:00 via iPhone
printf %b
点搜索就 500 — Internal Server Error The server encountered an internal error and cannot complete your request. iphoneXs safari |
38
techv OP @huntagain2008 已修复,非常感谢您的反馈。
|
39
bigtang 2023-05-30 08:18:56 +08:00
dig.codes 域名正在出售,网站是关闭了?问了一下 gpt, 列出几个吧:
SearchCode.com:SearchCode 从 Github 、BitBucket 、CodePlex 、SourceForge 、Fedora 等代码仓库里筛选了近 160 亿行开源代码; tanglib.com: 小唐代码搜索,可以搜索 github star 数量超过 100 的项目中的代码,超过 1.15 亿个代码文件,可以搜索 openharmony 鸿蒙,Android 13 ,chromium 源代码等项目源码,小唐代码搜索是字符级搜索引擎,这意味着你可以搜索任意代码片段(包括符号); grep.app:可以搜索超过 50 万个 Git 仓库中的代码,支持正则表达式搜索,但好像是不能组合搜索; github.com : github 自己的代码搜索,GitHub 的代码搜索功能可以帮助开发者快速找到自己需要的代码,支持关键字、语言、文件名、文件路径、代码片段等多种搜索方式,可以根据代码的贡献者、更新时间、星级等指标进行排序。GitHub 的代码搜索引擎可以搜索 GitHub 上的所有公开仓库,也可以搜索自己的仓库和组织内的仓库,很强大但是网络访问不好。 |