V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
daishuge
V2EX  ›  Python

准高一生写的代码,请各位大佬过目,不玻璃心

  •  
  •   daishuge · 110 天前 via Android · 14199 次点击
    这是一个创建于 110 天前的主题,其中的信息可能已经有所发展或是发生改变。

    https://github.com/daishuge/qqgpt_basic/blob/main/chat.py

    想知道我的代码规范和程序实现怎么样?谢谢各位

    第 1 条附言  ·  110 天前
    我修改了我的程序!
    现在增加了一个 web 管理界面,可以看到 status 和 message
    https://github.com/daishuge/qqgpt_basic/blob/main/new.py
    谢谢大佬们对我的鼓励和关照╰(*°▽°*)╯
    第 2 条附言  ·  105 天前
    前两天去军训了,所以没有一个个回,但是每位大佬的回复我都看了,受益匪浅!谢谢大家!
    107 条回复    2024-08-31 22:23:50 +08:00
    1  2  
    jimliang
        1
    jimliang  
       110 天前   ❤️ 20
    工作以后发现,代码写得再好也没用,以下可以是要考虑的点:
    1 ,文档。给人看或者给自己看
    2 ,代码测试覆盖率。保证输入输出的正确性,但代码修改时不造成其他问题
    3 ,各种边界考虑,异常数据输入、内存不足的表现、I/O 错误处理、大数据量的性能问题
    4 ,技术选型。开源工具开源框架的优缺点对比
    haimianbihdata
        2
    haimianbihdata  
       110 天前 via Android   ❤️ 1
    准高一。你这一点就领导不少了,至少会 git push ,哥们在读大学的时候,大一大二蛮多人 git 都不知道是个啥。
    wxw752
        3
    wxw752  
       110 天前   ❤️ 7
    代码习惯可以后改,先有产出。我在你这个年纪的时候敲 DNF 外挂,要抓住编程的黄金期啊
    PingAn66
        4
    PingAn66  
       110 天前 via Android
    挺好的,学业别拉下争取考个 985
    artiga033
        5
    artiga033  
       110 天前 via Android
    阅屎山无数之后我觉得这是让我看着比较舒服的。不过单文件考验不了什么工程能力就是了。

    @haimianbihdata 看到你这我还想说甚至 commit 还是 sign 过的,然后发现好像是 github 网页编辑导致的 sign
    PingAn66
        6
    PingAn66  
       110 天前 via Android
    加油
    Anarchy
        7
    Anarchy  
       110 天前
    Openapi key 传 github 了,主要保护自己隐私。
    foolishcrab
        8
    foolishcrab  
       110 天前 via iPhone
    写的挺好的,英语水平也不错,继续努力吧
    Anarchy
        9
    Anarchy  
       110 天前
    @Anarchy 应该是测试站点的,无视无视。
    iOCZS
        10
    iOCZS  
       110 天前
    好好学习,考个名校,将来给有钱人家的孩子一对一辅导。
    zuosiruan
        11
    zuosiruan  
       110 天前
    考个 985 比什么都重要
    Cyron
        12
    Cyron  
       110 天前
    挺牛的,会调 OpenAI 接口说明看文档的能力足够,prompt 工程也懂,代码格式整洁,已经超越太多人了

    虽然注释多了点,但要看是写给谁看的,作为学习笔记来讲没有问题,实际工作中只需要标注方法/接口就足够了
    karatsuba
        13
    karatsuba  
       110 天前
    高中讲究什么规范,能实现就行,
    huangyezhufeng
        14
    huangyezhufeng  
       110 天前
    https://datahonor.com/mppt/
    搞清楚这些,基本可以到达社区标准的水平了
    billzhuang
        15
    billzhuang  
       110 天前 via iPhone   ❤️ 1
    英文注释,英文 README 。
    collery
        16
    collery  
       110 天前
    @haimianbihdata 我们大三的时候用 svn 冲突不会解决,然后就复制代码文件,然后一个人合并
    McZoden
        17
    McZoden  
       110 天前   ❤️ 1
    单纯说代码规范,以 PEP 8 举例:
    一些空格的处理、空行的处理,import 的顺序还需要微调

    可以结合 PyCharm 或者 VSCode 的 lint 插件,例如 pylance 、pylint 等,继续微调
    IwfWcf
        18
    IwfWcf  
       110 天前
    你可以直接拿去让 AI 给你做 Code Review 啊……
    8355
        19
    8355  
       110 天前
    注释过多了,python 代码可读性已经很好了,可以适当删减。
    9136347
        20
    9136347  
       110 天前
    不要注释,如果你有什么独特的思想,自己找个笔记单独记录就行。
    winterbells
        21
    winterbells  
       110 天前
    @collery 我上家组长就是这么合并 git 的,一开始让我提交一个 commit 我还以为是为了 commit 整洁,所以最后都 squash 一下。后来才发现她是对照着 commit 修改 master 分支
    simpleman
        22
    simpleman  
       110 天前
    干净整洁的代码, 看着很舒服.
    juzisang
        23
    juzisang  
       110 天前
    注释多到有碍阅读了,没必要每行一个注释...
    duck2u
        24
    duck2u  
       110 天前
    考个 589 ,学个机算计。
    SWALLOWW
        25
    SWALLOWW  
       110 天前
    @wxw752 我是从按键精灵刷跑跑卡丁车冠军杯开始的
    yph007595
        26
    yph007595  
       110 天前
    @haimianbihdata #2 我大学还做过用 3.5 寸软盘去机房拷贝 office 快捷方式的事情。。。
    KongLiu
        27
    KongLiu  
       110 天前
    if img_type:
    return True # 是有效的图片 URL
    else:
    return False # 不是图片文件
    为什么不直接 return img_type
    daishuge
        28
    daishuge  
    OP
       110 天前
    @haimianbihdata 哈哈,只是在 github 网页上新建了个文件把代码放进去展示啦
    daishuge
        29
    daishuge  
    OP
       110 天前
    @PingAn66 谢谢!不过我最多只到一本...
    daishuge
        30
    daishuge  
    OP
       110 天前
    @artiga033 https://github.com/daishuge/debug_gpt 本人的一个比较差劲的多文件项目,不过一年前写的水平也差点
    daishuge
        31
    daishuge  
    OP
       110 天前
    @PingAn66 谢谢!
    daishuge
        32
    daishuge  
    OP
       110 天前
    @Anarchy 啊有嘛?我这是从环境变量读取的
    daishuge
        33
    daishuge  
    OP
       110 天前
    @iOCZS !!!∑(゚Д゚ノ)ノ
    daishuge
        34
    daishuge  
    OP
       110 天前
    @Cyron 谢谢!
    daishuge
        35
    daishuge  
    OP
       110 天前
    @KongLiu 好的!这就改,谢谢!
    wayneshen
        36
    wayneshen  
       110 天前   ❤️ 1
    api key 不要上传
    EmbraceQWQ
        37
    EmbraceQWQ  
       110 天前   ❤️ 1
    有兴趣折腾是好事,不过代码来说还是有细节待优化,你都会用 GPT 了,让它给你优化一下代码。加油,希望你坚持下去,千万不要被学业或者未来的坎坷给弄丢了。码农确实是自嘲,但是每个敲代码的其实都是个工程师。
    vsitebon
        38
    vsitebon  
       110 天前   ❤️ 1
    愿意折腾就行,学业为重,编程暂时作为兴趣更好。除非要打竞赛
    lxqxqxq
        39
    lxqxqxq  
       110 天前
    @haimianbihdata #2 最近入职的 211 大三实习生,我在跟他在讲 git, 他跟我扯 github
    ukpkmk
        40
    ukpkmk  
       110 天前   ❤️ 1
    非要给你挑刺的话, 注释我感觉最好是写在对应代码的上一行,而不是行尾
    daishuge
        41
    daishuge  
    OP
       110 天前 via Android
    @ukpkmk 嗯,收到,谢谢!
    daishuge
        42
    daishuge  
    OP
       110 天前 via Android
    @lxqxqxq hhhhhhh
    daishuge
        43
    daishuge  
    OP
       110 天前 via Android
    @ukpkmk 是不是因为可以看上去写的代码行数多一些(
    ukpkmk
        44
    ukpkmk  
       110 天前   ❤️ 1
    @daishuge 哈哈 不全是, 在 idea 里会有一条竖线,如果想让代码可阅读性如果比较好的话, 不建议单行代码长度超过这条线, 如果代码已经够长了, 再加上注释,有可能会被挤到外面,会让读代码人看不到你写的注释.

    ![20240812-160813.jpeg]( https://pic.imge.cc/2024/08/12/66b9c3d2805b2.jpeg)
    lingeo
        45
    lingeo  
       110 天前   ❤️ 1
    @artiga033 老哥说的合理,大的项目工程能管理好,那才是真水平,很多项目都是开始几个代码文件很规范,后面就是能跑就行。👍
    imnpc
        46
    imnpc  
       110 天前   ❤️ 1
    作为多年程序员看来 OP 写的代码很规范 注释也比较多 对于积累经验很重要
    多学多练 不要觉得自己是新人就觉得自己不行 很多科班毕业的写的代码都不一定比你好
    写代码一方面锻炼自己的逻辑思维能力 一方面去强化自己英语单词的词汇量和使用率
    中文/英文注释 后面建议都一起练习下
    最重要的是 写代码有很好的成就感 看着自己写完的代码 编译运行以后得成果 很有成就感
    建议呢 从简单的开始 慢慢练习 一般走的练习路线 个人博客 留言板 小商城
    monkeyk
        47
    monkeyk  
       110 天前   ❤️ 2
    我的先关注起你,等以后毕业了来我们公司;有潜力
    crac
        48
    crac  
       110 天前
    @daishugedef
    fake_api(query, max, tem):
    openai.api_key = "fk-FCHVDJh1X-2HeS24Yla_Ejg03qJBdWaDOd-Jzy3PKTk"
    #openai.api_key = "fk-FNIMfMbv4rllIcPywvu_qsgfIbvyjcmtsfcxppX7hJU"
    openai.api_base = "https://ai.fakeopen.com/v1/"

    这是什么?
    woctordho
        49
    woctordho  
       110 天前 via Android
    学会用 ruff 之类的自动检查工具,不一定要让人类帮你检查代码规范
    daishuge
        50
    daishuge  
    OP
       110 天前 via Android
    @imnpc 谢谢!
    Mark24
        51
    Mark24  
       110 天前
    好卷。
    不必太着急,以后有的时间打工,要打到 65 岁。 :D
    daishuge
        52
    daishuge  
    OP
       110 天前 via Android
    @crac 这是之前写的啦,是 GPT api 的中转
    daishuge
        53
    daishuge  
    OP
       110 天前 via Android
    @Mark24 Σ(゚Д゚;≡;゚д゚)
    knightgao2
        54
    knightgao2  
       110 天前   ❤️ 1
    学业为主吧,工作时间还长,大学再卷也完全来的及,哪怕高考结束完刷算法参加比赛也来得及的
    ihainan
        55
    ihainan  
       110 天前   ❤️ 1
    准高一能写出这样的代码还会用 Git 我觉得已经领先很多同龄人了,我高一的时候还只会 Turbo Pascal 写点简单的代码。
    yb2313
        56
    yb2313  
       110 天前   ❤️ 1
    代码格式用 ruff 解决就行了, 干净又卫生啊
    gongquanlin
        57
    gongquanlin  
       110 天前
    @wxw752 哈哈我从按键精灵搞天龙八部脚本开始的,哈哈
    gongquanlin
        58
    gongquanlin  
       110 天前
    这注释已经能超过一些在职的码农了🤣
    现在有时间还是学业为重,
    考上个好大学去科班学习修炼,比自己闭门造车提升快多了
    lyxxxh2
        59
    lyxxxh2  
       110 天前
    挺不错的。
    代码也有段落感,比一部分实习生还好。
    格式方面,用 black 就行,不用浪费心智。


    1. return 不用接 else,无效 else

    2. 建议封装成 class,可读性更强。
    Class xx:
    def __init__:
    self.client = 'xxx'
    def run():
    self.init_params()
    self.check_image()
    self.add_input
    self.xxx

    3. input 可以换成 argparse,输一次就行。


    我刚搬砖时的代码:
    $file=$request->file('pic');
    $ext =$file->getClientOriginalExtension();//获取文件后缀
    $ext=strtoupper($ext);
    if($ext=='JPEG'||$ext=='JPG'||$ext=='PNG') {
    //生成随机文件名
    $filename =date("m/d/s").str_random(15).'.'.$ext;
    ....
    diagnostics
        60
    diagnostics  
       110 天前
    好好学习,这个阶段能写出代码来就比别人强了。
    不需要太在意规范,需要在意的是学习,不然你代码再强也是牛马
    Dongxiaohao
        61
    Dongxiaohao  
       110 天前   ❤️ 3
    @wxw752 #3 笑死了,11 年小学六年级暑假闲的没吊事下了个易语言,照着敲了个盗号程序(后来才知道是 smtp 发邮件,发件箱和邮箱授权码直接写到程序里了...)署名 QQ 挂机升级,发到各大论坛什么猴岛,散人小嘀咕,ms1018 。。。没两天就收到了不少邮件,其中不乏一些可以登上去的,不过那会拿了一堆号也不知道干什么,挑了几个倒霉蛋上号把人家好友清空了 ,以至于后来我上这种来路不明的工具,都会瞎搓一段账号密码试试可不可以登上去。。。
    vipfts
        62
    vipfts  
       110 天前
    江山代有人才出, 一代新人换旧人
    yb2313
        63
    yb2313  
       110 天前
    @iOCZS 有钱人不请本科生的, 至少也得是名校研究生
    programdogs251
        64
    programdogs251  
       110 天前   ❤️ 1
    代码不重要,写的在好看,假如依旧是底层码农,真对不起你高一就开始写代码。这份积极

    给你 2 个路线参考下:
    1.杨值麟 (顶尖的学历,完美的工作履历,搞尖端方向的研究,老外称这种为研究 yuan )

    2.彭 zhi 辉 (动手能力强,能把所学融入到实际,如机械 bi ,自动行驶自行车,工程能力强)


    以上 2 类人,都是不据于代码写的如何,也不 care 你 api 调用的 6 不 6 ,代码设计模式好不好。
    starlion
        65
    starlion  
       110 天前
    现在的高中生好厉害了👍
    lostwolfkf
        66
    lostwolfkf  
       110 天前
    虽然不错,但如果要当成以后的工作的话,建议考公,现在准备领先好多年😅
    ccmark
        67
    ccmark  
       110 天前
    注释尽量锻炼着写英文
    sampeng
        68
    sampeng  
       110 天前
    高中生。。。。emmm 。没用
    leegradyllljjjj
        69
    leegradyllljjjj  
       110 天前 via iPhone   ❤️ 5
    @jimliang 工作几年后发现,文档 单元测试 性能优化 硬上各种框架花活儿没啥鸟用,满足需求最短时间交付上线才是王道
    zhanglintc
        70
    zhanglintc  
       110 天前
    我读成了“准备一生写的代码”,吓我一跳,啥代码能写一生?!!
    fenddddddda
        71
    fenddddddda  
       110 天前
    写代码基于程序员,就像厨师会炒菜一样。 会炒菜和有好的饭店不是一个事... 不过菜炒的好确实能找到一个岗位...
    DefoliationM
        72
    DefoliationM  
       110 天前 via Android
    牛的,我初中的时候还只会用 mrp 里的类 c 语言。
    chesha1
        73
    chesha1  
       110 天前
    高中生没必要讲究这些,多研究研究 OI ,争取保送个好大学,大学里可以慢慢研究
    xcsoft
        74
    xcsoft  
       110 天前
    我高中的时候 还在写 php
    GoGoFat
        75
    GoGoFat  
       110 天前
    有一说一,这个代码比我公司同济本科毕业生写的舒服多了。
    yjxjn
        76
    yjxjn  
       110 天前   ❤️ 2
    代码写的挺好的。
    但是作为一名 985 毕业的程序员,我想说考个好大学比提前会编程重要太多。
    目前已经不是 20 年前的情况了,哪怕高中毕业,只要编码能力不错学习能力强都能找一份不错的工作。
    好好备战高考吧!去干别的行业,将编程融入进去,可以降维打击。
    dcmi2021
        77
    dcmi2021  
       110 天前
    我的学历是 211 硕士,代码和你写的差不多,但最重要的是考个 985 或者 211 学校,这样才有敲门砖能够去更高的地方写代码&生活
    iOCZS
        78
    iOCZS  
       110 天前
    @yb2313 研究生没用的,在读名校或刚毕业不久的才好使
    yb2313
        79
    yb2313  
       110 天前
    @iOCZS #78 这行也是很卷的, 我说的是名校海归,毕业就选择专门给富人小孩做辅导的,一年大几十万,职场压力还比较小, 做久了在圈子内还有口碑不用担心失业
    yb2313
        80
    yb2313  
       110 天前
    @iOCZS #78 你说的那种在读的都不是真正的有钱人请的, 顶多是一些鸡娃家长请家教, 我说的是全职辅导那种
    EndlessMemory
        81
    EndlessMemory  
       110 天前
    可以了
    OceanWaves
        82
    OceanWaves  
       110 天前
    研究这些玩玩可以,实际作用不大,考个好大学,英语达到雅思 8 炸水平,这些比研究这个收益大很多
    zeni123
        83
    zeni123  
       109 天前
    考个好大学。 高中可以搞信息学,搞别的可以但是以你的水平已经意义不大了。
    pf94
        84
    pf94  
       109 天前   ❤️ 1
    这个代码在我这里是不合格的,从上往下说

    1. import 顺序问题,前面已经有人说了;其他还有空格等格式问题下面就不提了
    2. 30-52 行,无意义的字典定义,并且缩进有问题
    3. 初始化全局变量,这个设计问题很大,导致大部分函数有副作用
    4. get_information:第一个带副作用的函数,58 、60-63 行全角半角字符混用(同样的问题后面不提了)
    5. 85 行:注释风格不统一,58 行的在函数定义前一行,参数空格问题
    6. 115 行:注释错误,并不能 catch 不是图片的情况,因为 try 里面非图片情况没有报错而是直接返回 False
    7. 139 行:经典整个 if 作为一个函数,没有处理 else 情况,if message[history_id]["history_content"][-1]["role"] != "user": ...可以让整个函数少一层缩进
    8. 177 行:意义不明的变量命名
    9. 181 行:pic_url 命名风格不统一,information, history 等都是整个单词,省略 picture 毫无意义
    10. 189 行:循环外使用循环内定义的变量

    中等问题是代码风格不统一,大问题是大量使用副作用函数
    建议加上 type hint ,多用 black 和 mypy 检查
    bugmaker233
        85
    bugmaker233  
       109 天前
    脚本语言还有代码规范吗,想咋写咋写,那些给你建议的也不一定符合你
    3country
        86
    3country  
       109 天前
    有这心思不如高考提上 50 分,金学历比“编程能力强”这个铁锄头强太多
    zhangyp7536
        87
    zhangyp7536  
       109 天前
    我高一的时候还在看 《 30 天从零到精通 C 语言》
    netizenHan
        88
    netizenHan  
       109 天前
    高一都没开始就说只能到一本了?就是班级倒数努力三年也能考好大学
    hanssx
        89
    hanssx  
       109 天前
    建议学学 C ,看看计算机底层的一些东西;对数学感兴趣,可以看看算法。

    代码只是工具,现在让 AI 帮你写代码就差不多了。
    exiledkingcc
        90
    exiledkingcc  
       109 天前
    建议用上工具,包括但不限于 ruff black mypy 。
    这些工具都可以帮助你写出更好的代码。
    linyichang
        91
    linyichang  
       109 天前
    🙋
    linyichang
        92
    linyichang  
       109 天前
    linyichang
        93
    linyichang  
       109 天前
    @monkeyk 🙋
    xinghusp
        94
    xinghusp  
       109 天前   ❤️ 2
    首先还是表扬一下,准大一能有这份能力已经难能可贵了。代码前面的大佬已经说得差不多了,我就不重复讲了,
    作为一名大学的计算机老师,我谈谈其他方面的事情吧,希望能对你的计算机学习之路有点启发。

    记住,计算机编程,实际上是对你所掌握的各种各样的知识(不仅仅只是计算机)的一个综合运用。

    为什么这么说呢?因为计算机本质上就是个“超大号”的计算器。它可以在一秒钟内做出数以亿计的计算题。而这个计算器,需要程序员控制它,让它以特定的顺序按部就班的进行计算。

    因此,程序员的工作,实际上就是将各种各样的需求,抽象分离成一个个的计算题,然后让计算机以一定的规则进行计算,最后把结果告诉我们。

    举个栗子,一个乒乓球从桌子上掉落到地面。在现实生活中,显然我们可以很轻易的观察到如下现象:球落下会有个加速的过程;碰撞到地面时,会被弹起;由于存在能量损耗,每次弹起的高度会逐渐减小……现在,假如你要在计算机里模拟这样的一个场景,你是不是得知道,下落时的加速度如何计算,碰撞时的动能损失如何计算,甚至在精确一些,不同的表面材质对各种计算过程的影响有哪些……

    你看,一个简单的生活小现象,在计算机里要实现起来,你得了解物理、数学的相关学科知识;而这一些知识,很多时候并不会有一门专门的课程来教你,而是需要你在日常的学习中,把每一个看起来枯燥乏味的知识融会贯通,真正理解他的本质,日后的某一天,你在遇到问题的时候,自然而然的就会想到解决方案了,这才是一个程序员最为核心的技能。

    所以,针对现阶段的你,我有几点小小的建议供你参考:
    1 、保持对计算机的兴趣。兴趣是最好的老师,无所谓你感兴趣计算机的啥,只要你能一直保持这样的兴趣,你就会一直有动力折腾下去。(想当年为了搞到些“生理资源”,自个儿努力把计算机网络学得个明明白白的)
    2 、学好基础学科。数学、物理、化学、生物,这些都是日后能帮你解决问题的学科。另外,英语也一定要学好,很多的资料,尤其是第一手资料,都是英语的,学好英语可以帮助你快人一步。
    3 、考个好大学。前面有大佬也说到了这一点,好学校的教育资源,远远比差的学校要好得多,包括师资力量,你周围人的见识,甚至于学校机房的电脑。所以,这件事情,应当是你现阶段最重要的,毕竟现在已经不是那个“酒香不怕巷子深”的年代了,有一个好的起点,日后绝对可以事半功倍。
    4 、如果你还有时间的话,我推荐你可以在 Coursera 上学 Nand2Tetris 这门课程。这门课程,引导你从 0-1 构建一台现代的计算机,如果你能好好学完这门课,你对计算机的本质会有一个全面而深刻的理解,对你日后的计算机成长之路会大有脾益。

    就先说这么多吧~
    Cheivin
        95
    Cheivin  
       109 天前
    @wxw752 #3 万挂海+和 52pojie 上面搞易语言敲 DNF 外挂,死去的回忆开始攻击我
    Anita720
        96
    Anita720  
       109 天前
    @xinghusp 他是准高一,目前是初三,不是准大一
    huoshanhui
        97
    huoshanhui  
       109 天前
    动手能力强。👍🏻

    其他不重要。
    duron600
        98
    duron600  
       109 天前
    就提个醒,不要被那种“代码写得再好也没用”的人误了终身。这类人应该就没写出过能看的代码。
    karnaugh
        99
    karnaugh  
       109 天前
    工程化个人建议:

    项目的文件摆放,你可以当做是另一个抽象的 UI 界面,相比于给用户看的 ui 界面,这是真正给开发者看的东西

    如果我做的话,我会选择最外层只放 入口文件 和 readme.md ,其他的收入 src 中,然后在区分 常量 constant 、工具 util 、页面 view 、插件 plugin 等等

    不过不弄也没事,纯属个人兴趣爱好,又不是运行不起来(狗头
    WingXi
        100
    WingXi  
       109 天前
    第一步,先把功能按照需要给实现了。

    第二部,应该参考 官方 pep8 的文档,把代码里面的风格,注释等的内容进行修改,保证代码符合官方规范
    1  2  
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1519 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 17:17 · PVG 01:17 · LAX 09:17 · JFK 12:17
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.