Shwetal Soni: GSOD'21 project proposal for wechaty

针对Wechaty新手用户遇到的问题,提出了一套从入门到进阶的教程重构方案。旨在通过清晰的步骤指导,帮助用户快速上手并掌握Wechaty的各项功能。

GSOD21 Proposal for Wechaty

Introduction

Hello Fellow Developers!

Shwetal Soni

Myself Shwetal Soni. I’m CSE Sophomore from National Institue of Technology Hamirpur, Himachal Pradesh, India and a Frontend Web Developer and UI/UX Designer also. Currently I’m exploring blockchains. I’m interested in contributing to wechaty’s tutorial.

Technical Writer

Shwetal Soni

Contact Email

sonishwetal704@gmail.com

Professional Information

Writing Samples

My Resume

shwetalsoni_resume

My Portfolio

shwetalsoni.github.io

Overview of my recent work

Recently I had written a beginner-friendly tutorial for writing smart contracts on SmartPy which takes the user from introducing to blockchain to finally deploying a smart contract. To make it easier to understand I have attached screenshots guiding them throughout the whole process ensuring they learn by doing. I got it reviewed by some people and they really found it useful and easy to follow.

Project Title

Create easy to learn tutorials for beginner users of Wechaty

Abstract

Tutorials are lessons that take the reader by the hand through a series of steps to complete running Wechaty code. They are what our project needs in order to show a beginner that they can achieve something with it. They are wholly learning-oriented, and specifically, they are oriented towards learning ‘how’ rather than learning ‘what’. Tutorials need to be useful for the beginner, easy to follow, meaningful, extremely robust, and kept up-to-date. The Tutorial project should:

  • Allow the user to learn by doing

  • Get the user started

  • Make sure that the tutorial works all the time

  • Ensure the user sees results immediately

  • Make the tutorial repeatable

  • Focus on concrete steps, not abstract concepts

  • Provide the minimum necessary explanation

  • Focus only on the steps the user needs to take

  • Work with the contributor team to update the documentation on the Wechaty site.

Current Situation

Users come to Wechaty website seeking how to use Wechaty to build a chatbot application for solving their problems. Unfortunately, the learning curve is not friendly to our users, they always struggle with setting up with their development environment, can not get started with the simplest example source code, and find it hard to know what they can do with our API. This problem leads to us losing lots of new users, an increased number of questions asked in the community, and lowered user satisfaction.

Analysis

Being a new user to wechaty I encountered a lot of problems while running Ding Dong Bot. For deep analysis, I asked some of my friends to go through the documentation and try running the bot. Almost everyone faced a lot of issues while running the bot. This clearly depicts that the Tutorial is not properly structured.

Following are the problems I have found out with the tutorials

  • Quick Start is a place where most of the beginners will head over to and should be mentioned at the top of tutorials unlike now it is inside a Getting Started dropdown.

  • Don’t mention something a learner doesn’t need to know in order to complete the tutorial. Inside Quick Start under the first heading In Next 10 min, I found out that the points written there about getting QR Code for wechaty and QR Code for WhatsApp are useless and even misleading. It messed me up when clicking on WeChat QR Code it didn’t open and later found out that it has nothing to do with the tutorial.

  • Tutorials overview didn’t have necessary info on what are the ways in which users can get started. In many good documentations, I have found out that they provide the main link on the overview page so that users can head over from there directly.

  • Tutorials should always be working but Usage with Heroku is not working.

  • Video Tutorials are like icing on the cake and should be provided in a language that is widely spoken other than Chinese. I even found a comment on youtube requesting for English video.

  • There is a link Getting started without leaving your browser after Let's run your first Ding Dong Bot given in the read more section by Huan Li. It is very well written and should be mentioned separately in the sidebar under the Gitpod option.

  • Currently Tutorials only teach the user to set up wechaty but a tutorial should also give the user an experience of working with the features of wechaty.

Based on the above analysis I propose the following structure

Getting Started with Wechaty |- Overview | -> Beginner Level | -> Running on Gitpod | -> Running on Google Cloud Shell | -> Running Locally | -> Creating your first bot from scratch | -> Intermediate and Advanced Level | -> Usage with Docker | -> Using with Heroku | -> Using Plugin with wechaty | -> Using Redux with wechaty | -> Using Vorpal with wechaty |- Quick Start | |- Running on Gitpod | |- Running on Google Cloud Shell | |- Running Locally |- Tutorial Series(Creating your first bot from scratch) | |- From Scratch | | |- Overview | | |- Installation | |- Tutorial | | |- Create a bot | | |- Dealing with messages | | |- Processing files | | |- Writing tests |- Video Tutorials | -> Chinese Tutorials | -> Other than Chinese Tutorials |- Advanced Topics | | |- Usage with Docker | | |- Using with Heroku | | |- Using Plugin with wechaty | | |- Using Redux with wechaty | | |- Using Vorpal with wechaty

  • The above structure is well organized from beginner to advanced level.

  • The overview section should give a complete overview of the topics. If a person is a beginner he can either simply run the app using any of the following options Running on Gitpod, Running on Google Cloud Shell, Running locally by clicking on the given links here.
    • Also the link for Tutorial Series (Creating your first bot from scratch) will also be given in case a user want to follow up with steps creating their own chatbot.
    • If a user has prior knowledge about wechaty, they can go to the advanced topics by clicking on the links given for respective topics Usage with Docker, Using with Heroku, etc.
  • Quick Start should be divided into sections. If a user wants to run the app using Gitpod, there should be a separate page for that. Similarly for the remaining two options also. This will enable proper step-wise step tutorial for every option unlike now Running with Gitpod and Running with Google Cloud Shell are both on the same page messing it up and leading to skipping of some important points.

  • Tutorial Series(Creating your first bot from scratch) is the most important part of this tutorial as this will allow the user to create their own chatbot from scratch and then playing around with the features provided by wechaty. It should be well equiped with code snippets with proper explanation and screenshots of how the result will look after running a given code/command. This will make sure that they learn by doing and will definitely gather interest of more users.

  • Video Tutorial plays a great role in providing a better understanding and should be available in the language which is widely spoken.

  • Advanced Topics At the end, if a user has gone through the easy concepts they can dive into intermediate and advanced concepts.

Why is my proposed tutorial better?

QuickStart will get the user started. The Tutorial Series will allow the user to learn by doing. Users can see immediate results in the form of output screenshots attached with every step. The whole structure focuses only on the steps the user needs to take with the minimum necessary explanation.

Why am I the right person for this project?

From last year I have building many personal projects and also writing Readme for that. Recently I learned to write Smart Contracts on Tezos blockchain and it had very few resources available to get the user started and hence I struggled a lot. This motivated me to write a medium article Tutorial for writing Smart Contracts on Tezos. So, I know what people expect from a tutorial. Hence, combining all my experience and analysis of this project I can assure a great tutorial.

Proposed Timeline

  • 2 weeks -> Information Gathering
  • 3 weeks -> Restructuring the tutorials. Organizing and presenting the content in a better way.
  • 5 weeks -> Creating a tutorial series.
  • 2 weeks -> Improvising and publication.

Proposed Budget

Technical Writer Stipend -> 5000 (Decided by the organization)

根据原作 https://pan.quark.cn/s/459657bcfd45 的源码改编 Classic-ML-Methods-Algo 引言 建立这个项目,是为了梳理和总结传统机器学习(Machine Learning)方法(methods)或者算法(algo),和各位同仁相互学习交流. 现在的深度学习本质上来自于传统的神经网络模型,很大程度上是传统机器学习的延续,同时也在不少时候需要结合传统方法来实现. 任何机器学习方法基本的流程结构都是通用的;使用的评价方法也基本通用;使用的一些数学知识也是通用的. 本文在梳理传统机器学习方法算法的同时也会顺便补充这些流程,数学上的知识以供参考. 机器学习 机器学习是人工智能(Artificial Intelligence)的一个分支,也是实现人工智能最重要的手段.区别于传统的基于规则(rule-based)的算法,机器学习可以从数据中获取知识,从而实现规定的任务[Ian Goodfellow and Yoshua Bengio and Aaron Courville的Deep Learning].这些知识可以分为四种: 总结(summarization) 预测(prediction) 估计(estimation) 假想验证(hypothesis testing) 机器学习主要关心的是预测[Varian在Big Data : New Tricks for Econometrics],预测的可以是连续性的输出变量,分类,聚类或者物品之间的有趣关联. 机器学习分类 根据数据配置(setting,是否有标签,可以是连续的也可以是离散的)和任务目标,我们可以将机器学习方法分为四种: 无监督(unsupervised) 训练数据没有给定...
本系统采用微信小程序作为前端交互界面,结合Spring Boot与Vue.js框架实现后端服务及管理后台的构建,形成一套完整的电子商务解决方案。该系统架构支持单一商户独立运营,亦兼容多商户入驻的平台模式,具备高度的灵活性与扩展性。 在技术实现上,后端以Java语言为核心,依托Spring Boot框架提供稳定的业务逻辑处理与数据接口服务;管理后台采用Vue.js进行开发,实现了直观高效的操作界面;前端微信小程序则为用户提供了便捷的移动端购物体验。整套系统各模块间紧密协作,功能链路完整闭环,已通过严格测试与优化,符合商业应用的标准要求。 系统设计注重业务场景的全面覆盖,不仅包含商品展示、交易流程、订单处理等核心电商功能,还集成了会员管理、营销工具、数据统计等辅助模块,能够满足不同规模商户的日常运营需求。其多店铺支持机制允许平台方对入驻商户进行统一管理,同时保障各店铺在品牌展示、商品销售及客户服务方面的独立运作空间。 该解决方案强调代码结构的规范性与可维护性,遵循企业级开发标准,确保了系统的长期稳定运行与后续功能迭代的可行性。整体而言,这是一套技术选型成熟、架构清晰、功能完备且可直接投入商用的电商平台系统。 资源来源于网络分享,仅用于学习交流使用,请勿用于商业,如有侵权请联系我删除!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值