2023-06-14

18 篇热帖

1. 应试教育把人都学傻了。

虽然不是全局否定应试教育,但是工作了几年发现新进来的人越来越不行。

不行的体现: 1.19 年进来的人能发现问题,但是他们不能主动探索根源。 2.19 年进来的人不太能主动搜文档,而是希望别人讲。 3.19 年进来的人别人主动讲的时候,会说哦我知道了,但是实际上根本没明白,尤其是多次确认你真的明白吗,他们还是一口咬定明白,但是最后发现根本没明白 4.19 年进来的人可以与他们进行比较好的互动,他们会表达自己的兴趣爱好,甚至是一些对于当前发生的事情自己的看法

然后就是 21 年进来的人 1.21 年进来的人学历很高(清北研究生毕业) 2.21 年进来的人不能发现问题,哪怕最简单的 diff 都懒得做 3.21 年进来的人对工作内容完全没有兴趣,所以文档什么的根本不会看,但是希望别人讲 4.21 年进来的人在别人讲的时候完全不放在心上。几乎就是左耳进右耳出。 4.21 年进来的人几乎没有办法和他们产生太多互动,他们表述自己没有什么兴趣爱好,对于当前发生的一些事情甚至不了解

今天突然在 v2 上面看到有人认为就业形势不好,觉得要大学缩招才是解决办法。 我在想难道不是鼓励创业,鼓励创新才是解决办法吗?

我在想到底是什么出了问题,和我年轻时候相比,现在的新人的成长环境应该能接触到更多的东西,更多的资讯,可以尝试的东西更多。 但是反观,实际上却更加缺乏了观察发现思考的能力,甚至很多时候不想,不希望去了解。

2. 大学本科是否应该缩招?

一方面年轻劳动力不足。一方面大学生毕业找不到工作。大环境确实不行。但我们的教育体制也有很严重的问题。

除了一些学风还不错的大学,许多大学生大学四年下来就是在吃喝玩乐,把学校当做大型 KTV 了。当然,学校的老师教学也是很严重的问题。

还有一些收费昂贵的民办二本(以前的三本),更是既教不了什么也学不了什么。就这样的教学模式,居然持续了这么多年。而且最近十多年来居然一直在扩招。学生表演上学,老师表演上课。

不如缩招一半。其余考不上的都去进厂。那些没有学习能力的也不用那么挣扎了。

3. 过了 MFI 认证的 the Apple Find My network 产品,活动价格 29
链接:
https://item.taobao.com/item.htm?&id=682774174482

说明:
第三方认证产品一般没有 UWB ,UWB 主要作用是近场指向性,第三方是通过一个蜂鸣器实现的,蓝牙链接上,可以控制其发出声音。
4. 父母诉讼离婚,我真的不知道该怎么办了

内容

父母结婚多年以来,几乎天天吵架,父亲也动手打过母亲大概三四次吧,总是因为一点生活小事琐事就争吵,搞得人尽皆知,现在他们离婚,每个人都给我打过电话,但他们俩人对我说的内容根本就合不起来,我不知道该相信谁,希望各位能帮我看看,我是真的没办法了。感激不尽

起诉诉求

一处平房,马上要拆迁了,一处商铺,一辆车,我妈要求固定资产平分,我爸是不想给,因为这些年,商铺是我爸还的贷款,之前断过一段时间,听他的意思貌似是上征信了,我妈也不掏钱(这是我爸告诉我的),车也是我爸买的,不过车主名字是我妈(因为我妈一直闹,怕他往外借)

母亲性格

爱发脾气,爱干净,喜欢把钱拿在自己手里,强势。
比如:会因为我爸在房屋踩了几个脚印而吵架
会因为我爸吃完饭没把桌子收拾干净而吵架
会因为我爸每年剩不下钱而吵架(具体为什么没剩请往下看)
会因为我爸接她的话不满意而吵架
会因为我爸放假睡觉不帮他收拾而吵架,也就是所谓的眼里没活(厂长,一个月只有两天假)
会因为我爸几点说要请吃饭但晚了几个小时而生气吵架
会因为我爸不交电费而吵架
总而言之,在我看来这都是生活中在小不能小的事情,但我妈总能找各种理由来吵架,有的时候我也不知道她为什么生气
她爱拍抖音,我记得有一次,我和她吵起来了,一生气删了她俩视频,结果我妈气的直接把手机摔了,并让我给她找回来,说就这么点爱好,我也是第一次见到这样的母亲,容易过激。
花钱的地方就是负责日常家庭开销,以及我的生活费,我记得的唯一大的开销就是,我父亲骑电动碰了一个老头拿了 3 万还是 5 万来着,我爸拿了两万三万;因为拆迁所以盖另一个院子拿了 9 万,我爸拿了 4 万。现在在对外出租,房租都是我妈收。
我爸是一年 10 万,总说我爸不剩钱,说是外面有小三,但没有证据。
因为在家里有点小生意,也是我爸弄起来的,所以我妈平常很清闲,相当于呆着一年就挣七万吧。

父亲的性格

我妈总说吵架爱翻旧账,结婚初期动手打人,为家庭考虑大局,想的长远,吵起来不依不饶,除了动手最严重的时候是砸电视,砸玻璃,不会哄女人,爱和朋友吃饭喝酒,抗压能力强,在家里话比较少,算是沉孔寡言吧,我感觉是不敢说话了。
在我有记忆的时候,家里的大事一直是我爸花钱,比如房子盖东配房,商铺,汽车,我培训的学费,上私立学校的学费,以及在家弄点小生意的各种机器的费用,
和我爸沟通少,能想到的就这些

母亲对我说的

首先在两周前跟我说他们要去民政局离婚了,但是没离成,说是我把不想把房产平分,让我妈去起诉吧,再然后就是各种说我爸的不好,说在我妈不在的时候对我小姨和大姨有非分之想?(说实话这个我是不信),还总说对不起我,要不是为了我早离婚了,这段时间总是对我哭,说为什么这么苦,我本来就心软,然后就让我录了段视频,证明的是那处平方是他们的共同财产。还说离婚以后不会再婚了,房产的钱都是留给我的。

父亲对我说的

我爸将结婚到现在所有的过往以及大的花销都说了一遍,然后说去民政局离婚是因为我妈的身份呢证号码和结婚证上不一样。其他的目的就是为了让我知道他们要离婚了,说是不想让我知道的,怕对我有影响,他说告诉我的目的就是想知道我是什么看法,如果我怪他们,那他说俩人都净身出户,所有钱和房产都给我过到我名下;如果我不怪他们,那我爸就要尽全力争共同财产,也就是想尽各种办法利益最大化。

我的想法

至于协议离婚的时候他们俩说的完全不一样,我不知道该信谁的,至于其他的也是各有各的理,我已经不知道该怎怎么办了,究竟是为了自己的利益怪他们(这里对于我妈来讲,如果都打给我,她肯定会哭着找我要的,不要就会说我不孝顺,没良心,白养你这么大),还是说让他们自己看着来吧,毕竟这么多年我是想让他们离婚的。
5. 中药熬制是如何控制变量?
物理、化学、生物实验都有一个关键要素就是对照组与控制变量。在中药熬制方面,医生是如何保证患者取药回家熬制时的火候与水量对药材的影响?

现在一些医院还专业些了,是直接用一包包塑封的药材,都标注了多少克,但是很多医院并不提供熬药服务,都是选择让患者自行回家用砂锅熬制。

难道中药有很大的容差范围?
6. 是时候该换掉你的 axios 了

axios 是一个基于 Promise 的 HTTP 客户端,每周的 npm 下载量 4000W+,如果回到在 10 年前,promise 式的请求工具是一个很大的创新,它解决了请求繁琐的问题,在那个性能要求不那么高的年代可谓是一骑绝尘。但随着时间的推移,Axios 在开发效率和性能方面开始有所落后,现在都已经是 2023 年了,面对日益复杂的需求,我们需要的是一款更具创新性和领先性的请求工具,而 promise 式的请求工具只能被称为传统了,如果你想保持在快速发展的前沿,那么请继续阅读。

首先我想声明的是,我确实不是标题党,接下来我将通过暴露随着时间的推移,axios 在一些方面表现的力不从心,并推荐一个新的,相比 axios 更具现代化和创新性的请求工具给你,它就是 轻量级的请求策略库 alova

接下来我们看看 Promise 式请求工具的弱点( axios )

1. 与 React 、Vue 等框架割裂

现在,React 、Vue 等前端 UI 框架对于前端来说几乎是不可缺少的,axios 无法和这些框架的状态深度绑定,需要开发者自行维护它们,导致开发效率较低。

2. 在性能方面毫无作为

2023 年了,相比 10 年前的应用已经复杂了不知几个数量级,在请求方面要求也越来越高,来保证页面性能的要求,axios 在这方面毫无作为,例如在频繁地重复请求、同时发起多个相同请求等场景。

3. 臃肿的体积

根据 bundlephobia 显示,axios 的体积在压缩状态下有 11+kb ,不信的话,你可以点此去查看

4. 响应数据的 Ts 类型定义混乱

在使用 axios 时,你可能经常会这样写:

// 创建一个 axios 实例
const inst = axios.create({
  baseURL: 'https://example.com/'
})

// 在响应拦截器中返回 data
inst.interceptors.response.use(response => {
  if (response.status === 200) {
    return response.data
  }
  throw new Error(response.status)
})

interface Resp {
  id: number
}
inst.get<Resp>('/xxx').then(result => {
  // result 的类型总是为 axios.AxiosResponse<Resp>
  data.data
})

不知道是 axios 故意为之还是忽略了,以上的发起的 GET 请求中,响应数据result的类型总是axios.AxiosResponse<Resp>的,但其实我们在响应拦截器中已经将response.data返回了,这导致响应数据类型混乱而被困扰。

在 alova 中是如何解决的呢?

alova 作为一个更加现代化,更加适应复杂应用的请求方案,也给出了它更加优雅的解决方案。同时为了降低给的学习成本,也保持了和 axios 相似的 api 设计,看起来就很熟悉有木有。

alova 读作“阿洛娃”,虽然和 axios 一样都是以 a 开头,以下两个名称需要注意区分哦!

与 UI 框架深度融合,自动管理请求相关数据

假设我们需要发起一个基本的数据获取请求,以 vue 为例,直接上对比代码。

axios

<template>
  <div v-if="loading">Loading...</div>
  <div v-else-if="error" class="error">
    {{ error.message }}
  </div>
  <div v-else>{{ data }}</div>
</template>

<script setup>
import axios from 'axios';
import { ref, onMounted } from 'vue';

const loading = ref(false);
const error = ref(null);
const data = ref(null);

const requestData = () => {
  loading.value = true;
  axios.get('http://xxx/index').then(result => {
    data.value = result;
  }).catch(e => {
    error.value = e;
  }).finally(() => {
    loading.value = false;
  });
}
onMounted(requestData);
</script>

alova

<template>
  <div v-if="loading">Loading...</div>
  <div v-else-if="error" class="error">
    {{ error.message }}
  </div>
  <div v-else>{{ data }}</div>
</template>

<script setup>
import { createAlova } from 'alova';

const pageData = createAlova({ baseURL: 'http://xxx' }).Get('/index');
const { loading, data, error } = useRequest(pageData);
</script>

在 axios 中需要自己创建对应的请求状态并自行维护,而 alova 却帮你接管了这项工作

开箱即用的高性能功能

传统 Promise 式的请求工具主要定位于通过 Promise 的方式简化请求,而提高性能可能是它们最不会考虑的一点,但作为请求策略库的 alova 中却着重突出这一点,在 alova 中默认开启了内存缓存和请求共享,这两项可以极大地提高请求性能,提升用户体验的同时还能降低服务端压力,让我们来一一了解下它们吧。

内存缓存

内存模式就是在请求响应后将响应数据保存在本地内存中,当下次再发起相同请求时就会使用缓存数据,而不会再次发送请求,试想一下,当你在实现一个列表页,点击列表项可以进入详情页查看数据,你会想到用户可能会频繁在列表中点击查看详情,当详情数据没有变化时,如果每一次进入详情页都要请求一次未免也太浪费了,而且每次还需要用户等待加载。在 alova 中你可以默认享受到这样的待遇,以下展示下效果

screenshots.gif

请求共享

你可能遇到过这种情况,当一个请求发出但还未响应时,又发起了相同请求,就造成了请求浪费,或者重复提交问题,例如以下三种场景:

  1. 一个组件在创建时会获取初始化数据,当一个页面同时渲染多个此组件时,将会同时发出多次相同请求;
  2. 提交按钮未被禁用,用户点击了多次提交按钮;
  3. 当预加载还未完成时进入了预加载页面,将会发起多次相同请求;

共享请求就是用来解决这些问题的,它是通过复用请求的方式来实现的,由于这种案例无法直观展示,就不展示了,有兴趣的小伙伴可以自行体验体验。

除此以外,自称是请求策略库的 alova 还提供了特定场景下的请求策略,我们将在下文中介绍,有兴趣的小伙伴请继续往下看。

轻量级的体积

压缩状态下的 alova 只有 4kb+,只有 axios 的 30%+,不信的话,你可以点此去查看

更加直观的响应数据 TS 类型

在 axios 中,你想要定义响应数据的类型真是会让人感到困惑,如果你是个 Typescript 的重度用户,alova 可以给你提供完整的类型体验,当你在请求处定义响应数据时的类型后,你可以在多处享受到它,会让你感觉很清晰,我们来看看。

interface Resp {
  id: number
}
const pageData = createAlova({ baseURL: 'http://xxx' }).Get<Resp>('/index');
const {
  data,  // data 的类型为 Resp
  loading, error, onSuccess, send
} = useRequest(pageData);
onSuccess(event => {
  // 在成功回调中获取响应数据时,event.data 的值类型也是 Resp
  console.log(event.data);
});

const handleClick = async () => {
  // send 函数可以手动再次发送请求,它将可以接收到响应数据,它的值类型还是 Resp
  const data = await send();
}

至此,相比传统的 Promise 式请求库,你可能已经初步了解了 alova 的厉害。

但... 它的特性还远不止于此!

alova 的其他特性

多 UI 框架同时支持

alova 同时支持 react 、vue 、svelte ,无论你使用哪种 UI 框架,它都能满足你。

与 axios 相似的 api 设计,用起来更简单熟悉

alova 的请求信息构造几乎和 axios 相同,我们来对比一下它们的 GET 和 POST 请求。

GET 请求

// axios
axios.get('/index', {
  // 设置请求头
  headers: {
    'Content-Type': 'application/json;charset=UTF-8'
  },
  // params 参数
  params: {
    userId: 1
  }
});

// alova
const todoListGetter = alovaInstance.Get('/index', {
  // 设置请求头
  headers: {
    'Content-Type': 'application/json;charset=UTF-8'
  },
  // params 参数
  params: {
    userId: 1
  }
});

POST 请求

// axios
axios.post('/login', {
  username: 'xxx',
  password: 'ppp'
}, {
  // 设置请求头
  headers: {
    'Content-Type': 'application/json;charset=UTF-8'
  },
  // params 参数
  params: {
    userId: 1
  }
});

// alova
const loginPoster = alovaInstance.Post('/login', {
  username: 'xxx',
  password: 'ppp'
}, {
  // 设置请求头
  headers: {
    'Content-Type': 'application/json;charset=UTF-8'
  },
  // params 参数
  params: {
    userId: 1
  }
});

(请求策略)高性能分页请求策略

自动维护分页相关数据和状态,并提供了常用的分页数据操作能力,据官方介绍,可以让列表页流畅性提高 300%,编码难度降低 50%,以下是官方提供的示例,有兴趣的同学可以去看看。

分页列表示例

下拉加载示例

(请求策略)无感数据交互

这个在我看来,这个无感数据交互请求策略可谓是一大创举,我把它理解为更加可靠的乐观更新,官网是这样解释的:

无感数据交互是指用户在与应用进行交互时,无需等待即可立即展示相关内容,或者提交信息时也无需等待即可展示操作结果,就像和本地数据交互一样,从而大幅提升应用的流畅性,它让用户感知不到数据传输带来的卡顿。可以更高限度地降低网络波动带来的问题,你的应用在高延迟网络甚至是断网状态下依然可用。

在我的体验过程中,即使在弱网状态下,也可以让我感受到一种毫无延迟带来的顺畅感,你也来感受下吧。

screenshots.gif

据我了解,它使用以下技术:

  1. 持久化的请求队列来保证请求的安全性和串联性;
  2. 请求重试策略机制,来保证请求的顺利完成;
  3. 虚拟响应数据(一个创新的概念),来作为未响应时的数据占位,以便在响应后定位它并替换为实际数据。

关于无感数据交互更具体的可以在官网了解哦

数据预拉取

通过拉取数据的方式预先加载好数据并缓存在本地,当真正用到这部分数据时就可以命中缓存并直接显示数据,这种方式也极大地提升了用户体验。

写在最后

总之,alova 作为一个新生代的请求工具,具有很大的潜力,你也想试用的话,可以点击以下链接去了解。

alova 官网

alova 的 Github 地址

写作不易,看都看到这了,不如帮我点个免费的爱心吧!!!感谢你的喜欢

7. 想找个男朋友,在深圳工作的
好想谈恋爱啊,不晓得在这能不能找到男朋友,在这反正也没人认识我,还是斗胆发一下吧哈哈哈~
8. 来衣复制:新的商机

昨天突然想到,自己有件衣服挺好看的,但是价格比较贵,假如有人能提供这样一种服务:

给商家一件自己的衣服,商家一比一复制,甚至衣物材料都一样,但是价格却很划算,应该有点市场吧。

这肯定与直接定制衣服不太一样。

9. 哪些机场按量付费比较稳定的

用不了大流量,想找个按量的

10. 头条:国家发改委通报中职、高职毕业生就业率超 95%和 90%
11. 猛然发现, Linux 这些年进步迅速啊。Windows 的原有市场在慢慢被蚕食。。

windows 要面对的对手不止 linux.而是各大平台,移动平台,苹果平台等等

1.首先,随着移动平台的发展,各种银联登录,转账都迁移到移动平台上了,十几年前想在 linux 上淘宝上买个东西都难的要命。 早期不管是银联,还是淘宝,还是政务平台,很多各大网站,只支持 IE 浏览器+ActiveX 插件。linux+火狐浏览器的组合根本无法撼动行业格局。 现在呢,任何业务要是没有手机 app 和支持 html5 的页面基本不可能。。哈哈,没想微软这套组合最终被手机平台干掉了 很多老的政府平台也在积极改革迁移到移动平台和 html5

2.现在越来越多的企业管理方案要支持多平台,最少要支持 mac os 和 windows ,各种终端管理,SSL VPN 客户端等等,不在只支持 windows 平台。即使是国外公司用的最多微软 365 整体企业安全管理服务及解决方案也要支持 windows 和 mac os,最新的 aad 云上域控都开始支持 linux 终端管理了(目前已经在使用阶段,我看页面上已经可以操作了)。国内公司大多不用微软这套企业管理方案,所以很多人不知道。

3.以前主流游戏基本上支持 windows.现在很多游戏都支持多平台了,比如 mac os ,手机平台, steam 作为世界上最大的游戏平台,它一直在致力推送各大厂家的 3A 游戏支持多平台,现在有很多游戏原生就支持 linux 平台。。。 vlukan 图形技术和各大游戏引擎的快速发展让很多游戏,加快了向多个平台迁移和开发。DirectX 12 不再是唯一选择 N 卡和 AMD 的显卡闭源驱动在 linux 上同步更新速度越来越快(新显卡上市,不到几个月,linux 版驱动就会有)。支持的 linux 发行版本也越来越多,兼容性也原来越好。 目前 steam 的 top 前 100 的游戏,至少有 70%以上可以支持在 linux 平台上运行(虽然有些游戏在 linux 上优化的不好,执行效率偏低),但慢慢在进步。

家用的游戏串流越来越靠谱~

4.现在随着自媒体的流行,大家视频剪辑的习惯也在慢慢改变,现在更多 UP 主采用了苹果的平台+Final Cut Pro ,抖音之类的流行,让更多的用户采用移动平台编辑视频.windows+Adobe Premiere Pro 的组合不再是首选

十几年前,我为了学习 linux,逼着自己在笔记本上安装原生 linux ( ubuntu 6.06 lts ),用了 2 年之久。一堆问题。 现在,我刚买了 thinkbook 14+,安装了 Manjaro ,基本没遇到什么硬件兼容问题。这十几年,linux 真的是发展太迅速了。 以后真的不见得是 windows 一家独大的情况了,移动平台,mac os ,linux 在蚕食它原有的市场。

12. 诊所看不起小病

这两天嗓子肿了,就去附近的诊所看了下,医生建议我立马挂吊水,肿的厉害,吞咽很疼。我说还的上班(伤不起),先开些便宜的药吃吃。然后结算时 110 元,用的医保。 如下:

  1. 头孢克洛胶囊,42 元
  2. 甘桔清咽颗粒,53 元
  3. 其他费用 15 元(估计是问诊费用)

总费用 110 元.

这个要是挂吊水,一天一次,得三天。

这两个药,淘宝我扫了一下码,合起来不到 40 元,想问一下,诊所看病,就是这个费用水平吗? 要是挂吊水,去大医院还是诊所。

13. 云上贵州 iCloud 高级数据保护靠谱吗?
苹果全家桶+icloud 重度用户,看了下面的文章有点担心隐私问题,求专业意见,有必要转到美区服务器吗?

https://14th.day/posts/%E6%B5%85%E8%B0%88icloud-%E9%AB%98%E7%BA%A7%E6%95%B0%E6%8D%AE%E4%BF%9D%E6%8A%A4/
14. 能否建立一个的 AI 训练众包平台

已经有很多人讨论过这个点子了,就像挖矿一样;能否建立一个的 AI 训练众包平台;家里有显卡的小伙伴可以把闲置的设备租出去赚取收益;而没有强力计算设备的用户无需花费大量资金购买设备, 只需登录平台,提交任务即可进行 AI 训练;

之前的技术瓶颈在于几乎不可能将大规模的 AI 训练拆分成一个个分布式的小任务,因为数据量庞大,并行交换要求高速的带宽等等;但是目前像 Stable Diffusion 这样的图像处理任务,一旦部署了稳定和标准化的模型,是可以将任务拆分为极小的数据单位的;这样技术上就能将一个个任务分配给某一台个人 PC 去处理;

我拍脑袋想了一下,建立这样一个平台的难点在于反作弊和计算量评估;这两点应该都有合适的解决方案;

  • 反作弊可以参考挖矿的算法,为每个客户端生成一对 公 /私钥, 服务端下发每个计算任务时,采用私钥加密;客户端上传每个计算任务时,采用公钥加密;

  • 计算量评估先期可以采用服务端评估的方法;后期可以通过下发任务给配置类似的客户端,采用同一个客户端并行执行同一任务,然后比较计算时间,来建立一个靠谱的计算量评估机制

  • 最后是防止滥用和羊毛党,可以采用信用评分,对于完成任务优秀的客户端打高分,给它分配更多更高收益的任务,从经济系统上进行激励;

我搜了一下,目前这个点子的相关项目不是很多,都在起步阶段,我觉得挺有前景的;

大家讨论一下,这个项目在 技术 /商业 /可行性 上有哪里漏洞?

我在 github 上建立一个一下项目,有兴趣的小伙伴可以去讨论下:

https://github.com/aitobox

15. 像华为阿里这种公司,明明是靠普通学历的员工起家的,为何越来越要求学历了
这种公司招人的要求是越来越高,但产出反而越来越平庸,公司招人无脑卷学历真的是好事嘛?
16. 废弃的小米 8 手机,能用来干啥?

几年前的小米 8 ,屏幕摔坏了,无法显示,一直没修。能拿来干点啥?关键是屏幕坏了,想操作也不好操作了。

17. go 编译的 windows 文件报毒,是哪儿出问题了?

编译一个 windows 可执行文件

docker run --rm -v $(pwd):/go/src -it golang /bin/bash
go version
mkdir -p hasvir
cd hasvir
echo "package main" > main.go
echo "func main(){}" >> main.go
go mod init
GOOS=windows go build
md5sum hasvir.exe

go 的版本是 1.20.5 。
把 hasvir.exe 提交到 https://www.virustotal.com 扫描,扫描出一大堆病毒。

我看不出操作和代码有什么问题,是从什么地方感染病毒的呢?是哪儿出问题了?

18. Java Go Node 哪种语言最适合做物联网平台开发
设备量:10W 台同时在线,同时收发
对接方式:mqtt,tcp ,websocket (设备种类较多,每种设备不同的对接协议)
公司背景:中型企业,toB,本公司说了算,出现 bug 也没事