Skip to content

Instantly share code, notes, and snippets.

@ronfe
Last active October 26, 2016 05:49
Show Gist options
  • Save ronfe/b57570d69c5e81ba08531ed3a863925e to your computer and use it in GitHub Desktop.
Save ronfe/b57570d69c5e81ba08531ed3a863925e to your computer and use it in GitHub Desktop.
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"## DATA 102\n",
"\n",
"by ronfe"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"### Course Info\n",
"\n",
"* 数据结构与基础数据\n",
"* Contents\n",
" - Course / Product features\n",
" - Tech / Data Stack\n",
" - Data Schema Intro\n",
"* Duration\n",
" - ~2 Lessons\n",
"* Prerequistes\n",
" - No prior experience needed"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "subslide"
}
},
"source": [
"### Syllabus\n",
"\n",
"* L1\n",
" - Course Structure in Detail\n",
" - Product Structure\n",
" - Tech Stack\n",
" - Data Stack\n",
"* L2\n",
" - events / httplogs / getMeProfiles / orders\n",
" - onions"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"## Lesson 1"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"### Course Structure in Detail\n",
"\n",
"* 原点计划"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "subslide"
}
},
"source": [
"### Product Structure\n",
"\n",
"* 核心业务逻辑:https://shimo.im/doc/trwDcrXnnQ01xIma\n",
"* 当前和后续版本功能规划:https://shimo.im/doc/7XBBc9yNaa0rMeA3"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "subslide"
}
},
"source": [
"### Tech Stack\n",
"\n",
"* JS-based stack (meanJS)\n",
" - MongoDB\n",
" - ExpressJS\n",
" - Angular\n",
" - NodeJS\n",
" - Apache Cordova\n",
"\n",
"* In progress\n",
" - Angular -> React / ReactNative\n",
" - ExpressJS -> Koa\n",
" - JS -> ES6 -> Go\n",
"\n",
"* Github Repo\n",
"\n",
" - Frontend (web) `onionfp`\n",
" - Backend `onions`\n",
" \n",
"* Data Stack"
]
},
{
"cell_type": "markdown",
"metadata": {
"collapsed": true
},
"source": [
"## Lesson 2"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"* Events\n",
" - FrontEnd: https://gist.github.com/ronfe/b8dfe871221867620a7a4cef16abdb2c#file-gistfile1-txt\n",
" - BackEnd / httpLogs\n",
" \n",
" ```\n",
" {\n",
" \"_id\" : ObjectId(\"57d6ec0b822397213ef4bbf8\"),\n",
" \"category\" : \"onionsBackend_v4\",\n",
" \"httpStatus\" : \"200\",\n",
" \"eventTime\" : 1473648079532,\n",
" \"url\" : \"http://android-api-v4-0.yangcong345.com/progresses/topics/firstEntry\",\n",
" \"ip\" : \"106.38.206.174\",\n",
" \"user\" : ObjectId(\"5791a0eb8c399674053b9d1c\"),\n",
" \"serverTime\" : ISODate(\"2016-09-12T02:41:20.035Z\"),\n",
" \"request\" : {\n",
" \"topicId\" : \"54cc731fabc5bbb971f99bb5\",\n",
" \"subject\" : \"math\"\n",
" },\n",
" \"method\" : \"PUT\",\n",
" \"platform\" : \"backend\",\n",
" \"role\" : \"student\",\n",
" \"eventKey\" : \"startTopic\",\n",
" \"device\" : \"865377021116443\",\n",
" \"ua\" : \"Dalvik/1.6.0 (Linux; U; Android 4.4.2; Lenovo X2-TO Build/KOT49H)\",\n",
" \"response\" : {\n",
" \"practice\" : {\n",
" \"timeLine\" : [],\n",
" \"state\" : \"unentered\",\n",
" \"levels\" : [],\n",
" \"doneProblemCount\" : 0\n",
" },\n",
" \"state\" : \"unfinished\",\n",
" \"video\" : {\n",
" \"timeLine\" : [],\n",
" \"state\" : \"unentered\",\n",
" \"sections\" : [],\n",
" \"durations\" : []\n",
" },\n",
" \"firstEntry\" : \"2016-09-12T02:41:20.024Z\",\n",
" \"_id\" : \"54cc731fabc5bbb971f99bb5\",\n",
" \"subject\" : \"math\"\n",
" },\n",
" \"location\" : \"北京市\",\n",
" \"os\" : \"android\"\n",
" }\n",
" ```\n",
" \n",
" - getMeProfiles \n",
" - orders/orderHistory\n",
" \n",
" ```\n",
" {\n",
" \"_id\" : ObjectId(\"580fe3cc82239760c7788319\"),\n",
" \"category\" : \"order\",\n",
" \"orderTime\" : ISODate(\"2016-09-12T06:12:31.700Z\"),\n",
" \"bySelf\" : false,\n",
" \"orderInfo\" : {\n",
" \"status\" : \"创建订单\",\n",
" \"isTest\" : false,\n",
" \"creationWay\" : {\n",
" \"report\" : \"noReport\",\n",
" \"platform\" : \"android\",\n",
" \"onH5\" : true,\n",
" \"bySelf\" : false\n",
" },\n",
" \"userId\" : ObjectId(\"5791a0eb8c399674053b9d1c\"),\n",
" \"isOwnerless\" : false,\n",
" \"paid\" : false,\n",
" \"isRenewal\" : false,\n",
" \"good\" : ObjectId(\"57ad49a8794c61af71093556\"),\n",
" \"closed\" : false,\n",
" \"updatedAt\" : ISODate(\"2016-09-12T06:12:31.700Z\"),\n",
" \"urlId\" : ObjectId(\"57d6472b95b823db617f02fb\"),\n",
" \"paymentCredentials\" : {\n",
" \"body\" : \"258元/3个月\",\n",
" \"client_ip\" : \"106.38.206.174\",\n",
" \"description\" : \"为 15210013568 购买洋葱数学会员258元/3个月\",\n",
" \"order_no\" : \"00000001473660751699\",\n",
" \"extra\" : {\n",
" \"cancel_url\" : \"http://yangcong345.com/pay_cancel.html\",\n",
" \"success_url\" : \"http://yangcong345.com/pay_success.html\"\n",
" },\n",
" \"app\" : {\n",
" \"id\" : \"app_Dun5mLXPebT8fP4e\"\n",
" },\n",
" \"currency\" : \"cny\",\n",
" \"amount\" : 25800,\n",
" \"time_expire\" : 1473662552,\n",
" \"channel\" : \"alipay_wap\",\n",
" \"subject\" : \"洋葱数学会员\"\n",
" },\n",
" \"_id\" : ObjectId(\"57d6474f95b823db617f02fe\"),\n",
" \"createdAt\" : ISODate(\"2016-09-12T06:12:31.700Z\")\n",
" },\n",
" \"serverTime\" : ISODate(\"2016-09-12T06:12:31.700Z\"),\n",
" \"platform\" : \"backend\",\n",
" \"onH5\" : true,\n",
" \"eventKey\" : \"createOrder\",\n",
" \"report\" : \"noReport\",\n",
" \"os\" : \"android\",\n",
" \"channel\" : \"alipay_wap\",\n",
" \"user\" : ObjectId(\"5791a0eb8c399674053b9d1c\")\n",
"}\n",
" ```\n",
" \n",
" "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"* onions\n",
" - github: https://github.com/guanghetv/onions/tree/master/src/models\n",
" - https://github.com/guanghetv/onions/blob/master/api-doc.md"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.5.1"
},
"widgets": {
"state": {},
"version": "1.1.2"
}
},
"nbformat": 4,
"nbformat_minor": 0
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment