Csy Blog

正确的开始,微小的长进,然后持续。祝我们有一万次微小的闪耀。

AI for Data,Data for AI

在人工智能浪潮席卷各行各业的今天,数据已成为驱动业务增长与创新的核心燃料。然而,海量、异构的数据如何被高效地获取、加工并转化为直接赋能业务的智能应用,是众多企业面临的共同挑战。最近了解到一个「AI数据中台」的项目,它致力于解决这一问题。AI数据中台是提供行业数据、数据生产、数据应用三种能力的平台。让数据的获取和应用变得简单,助力AI业务发展和创新,释放数据的完整价值。 行业数据 打造多模...

个人使用说明书

一、什么是个人使用说明书 当我们参加新活动、玩新游戏、用新工具都会先了解时间、内容等基础信息。那么,针对“人”这么一个复杂的“产品”,我们是不是可以做一份个人使用说明书,让同事、新朋友刚认识时就知道如何与我们高效协作,愉快相处? 二、个人说明书有什么用 1. 促成更有效的协作 不需要花几个月的时间去揣摩对方的喜好、优势和弱点,就可以快速了解你能怎么帮助到对方,以及对方可以怎么帮助到你,...

原来一个“W改万”,也能改变用户的行为

收录跨端应用用户真实的交互反馈

引言 在长期的产品实践中,我们难免遇到过这样的情况——花了很多心思去做一个功能,结果上线后几乎没有收益。这些“无效需求”的出现,往往并非执行问题,而是对产品阶段、用户行为与交互反馈理解不足。 那么我们如何在需求初期就尽量改善或避免无效需求呢?首先需要了解产品当前的背景,然后需要日常在一次次需求中,拿到用户反馈,建立认知。在产研评审的时候才能有更有依据的判断什么功能是需要协商调整的。这篇文章...

应该如何成长?

摘录自其他来源

余华老师的一段话 「十八岁出门远行,终究要和这个世界交手,哪怕摔得鼻青脸肿。 夜深人静时,把心从胸口逃出来,自己缝缝补补,再睡一觉,第二天又是信心百倍。 没人问也没关系,不如人也别怕。 试着安静下来,心可以睡,手不能停。」 内网看到的一段话 “很多同学会问‘我应该如何成长?’去年 11 月聊过这个话题,当时的核心是‘敢于接触和学习新事物/技术’。这次想聊的是‘实践锻炼能力‘,道理...

聊一聊前端自动化测试

前言 我们平时会遇到的问题一般是“页面怎么打不开了?”,“点了怎么没反应?”,“为什么没有传这个参数?”,“这个页面的样式怎么没有了?”,这类白屏、操作不可达、提交错误参数、错误渲染等问题有没有办法自动去检测呢? 自动化测试的好处 自动化测试有很多好处,测试最重要的自然是提升代码质量。对于大的项目,有时候需求变更后自测用时比开发用时还要久。尤其是维护长期迭代的业务,开发不太可能在每次修...

深入理解混合对象“类”和原型

1. 混合对象“类” javascript中类和其他语言中的类完全不同。传统面向类的语言中父类和子类、子类和实例之间其实是复制操作,但是在javascript中并没有复制,对象之间是通过内部的 [[Prototype]] 链委托关联的,这样一个对象就可以通过委托访问另一个对象的属性和函数。 多态看起来像是从子类引用父类,但是本质上就是引用。继承的本质是重写原型对象,代之以一个新类型的实例。...

Node.js 12的改变

前言 Node.js 12 2019年10月开始就要进入长期支持版本了,前几天看了Node12的改变,这里做个简单的记录。 更方便地排查问题 堆内存dump 之前一篇博客提到的排查内存泄漏很麻烦的步骤,比如要在生产环境安装额外的模块heapdump。现在,在Node12都做了优化,直接集成了这个功能:smile:。 堆转储功能 Node 12提供了生成堆转储的功能,从而可以更轻松地...

前端存储之IndexedDB

前言 - 前端存储 Cookie 存储空间只有4k,存储时间有限制,每次请求都会带上Cookie,而且最重要的是,Cookie设计之初就不是就是让我们前端存数据用,而是为了让网站验证用户身份用的。 Web Storage 存储空间有5M大小,有永久存储的localStorage和会话期间存储的sessionStorage。对比Cookie优势很明显,但现在web不断发展,5M对于一些...

记录一次 Node.js 应用内存泄露

前言 内存泄漏对于前端的影响通常都是发生在客户端上,而且基本上现代浏览器也会做好保护机制,一般自行刷新之后都会解决。但是,一旦后端内存泄漏造成宕机之后,久而久之整个服务器都会受影响,甚至瘫痪。虽然可以用pm2设置一个内存值上限,超过自动重启,但是知道有问题却一直未解决的感觉太难受了。还是要找到问题的根源,为什么会发生内存泄露?哪个变量发生了内存泄露? 一、什么是内存泄露 1、内存的生命...

Koa洋葱模型与面向切面编程(AOP)

前言 - 什么是AOP AOP又叫面向切面编程,是一种非侵入式扩充对象、方法和函数行为的技术。什么是非侵入式呢?侵入式是需要知道框架中的代码,与框架代码紧密结合在一起。非侵入式是可以自由选择和组装各个功能模块,没有过多的依赖。有很多方式可以增加和合并方法,例如继承、组合、委托。通过AOP可以从“外部”去增加一些行为,在很多情况下,AOP比其他方式更灵活、更少侵入。简而言之,AOP就是在现有...