0%

迭代思维与 MVP 产品规划方法

MVP: minimum viable product 最小可用产品

OOPD:Online&Offline Product Development,线上线下相结合的产品开发方法

  • 内裤原则:MVP包含了产品的轮廓,核心的功能,让业务可以运转
  • 优先线下:能够走线下的,优先走线下流程,让核心的功能先跑起来,快速做用户验证和方案验证
  • MVP的核心:忽略掉一切的细枝末节,做合适的假设和简化,使用最短的时间开发出来

迭代思维是最强大的产品思维逻辑,互联网上唯快不破的秘诀。

在资源受限的情况下(如人力、时间、资金、技术储备),忽略掉一切细枝末节,做合适的假设和简化,使用最短的时间开发出来简单的功能,之后再进行快速迭代,验证用户的需求。

阅读全文 »

利用 Django 输出 CSV 示例

环境:Python3 + Django 2.2.24

代码编辑器默认的编码是 UTF-8

1
2
3
4
5
6
7
8
9
10
import csv
from django.http import HttpResponse

def some_view(request):
response = HttpResponse(content_type='text/csv')
response['Content-Disposition'] = 'attachment; filename="somefilename.csv"'
writer = csv.writer(response)
writer.writerow(['姓名', '性别', '年龄', '地址'])
writer.writerow(['张三', '男', '18', '北京'])
return response
阅读全文 »

初始化

  1. 创建项目:manage.py startproject project_x

  2. 创建应用:manage.py startapp app_x

  3. 创建管理用户:manage.py createsuperuser

  4. 在 app_x 里面的 models.py 文件中,创建数据库字段(建模),涉及到字段改动时,为了保证数据安全性,建议只新增字段而不直接修改原来的字段,防止 migrate 时操作数据库时出现问题。

    1
    2
    3
    4
    5
    6
    7
    8
    # 使用系统自带的鉴权功能
    from django.contrib.auth.models import User
    JobTypes = [(0, "技术类"),(1, "产品类"),(2, "运营类"),]
    class Job(models.Model):
    creator = models.Foreignkey(User,verbose_name="创建人")
    # 使用下拉选项,需要定义一个列表 JobTypes
    job_type = models.SmallIntegerField(
    blank=False, choices=JobTypes, verbose_name="职位类别",help_text="页面上显示的帮助信息。")
阅读全文 »

Kuryr-kubernetes 是 openstack neutrn 的子项目。

本身没有网络能力,是将 openstack neutron 的网络能力提供给 k8s。

9c7f7b717d793c6db27eb9ea8ae0ab5a.png

阅读全文 »