我的2022年终总结

看了一下2021年的总结,然后着手回顾总结2022年。2021年底的时候,网络上还在到处调侃马云内部讲话中提到的「福报」,2022年的年底,想要在公司完成996强度的办公,可能对大多数人来讲都有些困难。

是的,因为疫情影响,这一年可能是近三年来在家办公最长的一年,在单位办公最少的一年。上半年差不多有2个月在家办公,11月份之后,又要差不多有2个月,而最近的这一次居家办公,对大多数人来说绝对是终生难忘。一方面可能要顶着奥密克戎的猛烈攻击,一方面还要完成单位的工作,还要时时刻刻关注家里一家老小的身体状况,一个字「难」。

千难万难,生活还要继续,每个人首先应该做自己健康的责任人,防护好自己、照顾好家人,才能取得未来持续努力的精力。

撸的代码

2022年结束还有两周,这一年基本上实现了年初期望每周都有提交的希望,不管是博客内容的写作,还是小工具的开发完善。忙的时候提交可能少一些,闲暇时间多的时候提交就多一些,要明白这些都是工作8小时以外的成绩。

未来一年,希望能够在一些小而有趣的项目,能够帮助到更多有同样需求的人。同时希望自己能在效率和质量方面都能有所提升。

读的书

  • 江青传
  • Python 金融大数据风控建模实战
  • 白鹿原
  • 经典刀剑鉴赏指南
  • 建国方略-孙中山
  • 彭德怀自述
  • 中国通史-傅乐成
  • 公众号运营实战手册
  • 科技报国-白春礼
  • Docker 技术入门与实践
  • Think in Java 第四版

2022年读完了11本书,相比2021年少了不少。值得一提的是终于啃完了大部头的《Think in Java》,看到后面越发觉得里面的翻译有很多问题,随着 Java 大版本不断飞跃,可能需要出现一本新的经典了。

希望自己在2023年能够更有效利用边角时间,不去刷一些无谓的的社交媒体,专注于有深度的阅读。

跑过的路

这一年跑步的里程比原来计划的多了很多,因为加入了单位的跑团,从9月份之后里程开始狂涨。看着自己的BMI不断下降,洗澡的时候摸着瘪瘪的肚子还是非常开心的。

特别是今年的成绩不断刷新,突破了自从使用咕咚开始记录成绩以来的各项记录,可以说是跑步状态最好的一年。我觉得每个人都应该找到一项自己喜欢的运动并坚持下去,跑步是一项成本非常低的运动,同时整体效果又非常好。2023年,继续坚持下去!

本文转载于网络 如有侵权请联系删除

相关文章

  • 【Linux从青铜到王者】第一篇:Linux常见指令

    大家好,又见面了,我是你们的朋友全栈君。系列文章目录文章目录系列文章目录前言一、Linux是什么二、Linux下基本指令1.ls指令2.pwd指令3.cd指令4.touch指令5.mkdir指令6.rmdir指令7.rm指令8.man指令9.echo指令10.cp指令11.mv指令12.cat指令13.tac指令14.more指令15.less指令16.head指令17.tail指令18.时间相关的指令1.data指令19.cal指令20.find指令21.grep指令22.which&&whoami指令23.zip/unzip指令24.tar指令25.bc指令26.uname-r指令27.重要的几个热键28.关机29.扩展命令30.shell命令以及运行原理总结前言一、Linux是什么Linux是一种自由和开放源代码的类UNIX操作系统,该操作系统的内核由林纳斯托瓦兹在1991年首次发布,之后,在加上用户空间的应用程序之后,就成为了Linux操作系统。严格来讲,Linux只是操作系统内核本身,但通常采用“Linux内核”来表达该意思。而Linux则常用来指基于Linu

  • Intellij IDEA 在查看 GitHub PR 的时候提示不能载入 data 错误

    在通过IntellijIDEA查看可用的PR的时候,你可能会遇到下面的错误:Can'tloaddatafromGitHub [Althoughyouappeartohavethecorrectauthorizationcredentials,the`cwiki-us-spring`organizationhasenabledOAuthAppaccessrestrictions,meaningthatdataaccesstothird-partiesislimited.Formoreinformationontheserestrictions,includinghowtowhitelistthisapp,visithttps://docs.github.com/articles/restricting-access-to-your-organization-s-data/].复制提示的错误信息如上。上面的提示内容是因为你的仓库的限制,导致你没有办法查看特定的仓库的PR。原因和解决办法这个问题的原因是因为仓库的限制导致你没有办法通过IntellijIDEA来查看。你可以通过设置你

  • python开发实例之python使用Websocket库开发简单聊天工具实例详解(python+Websocket+JS)

    最近又回顾了下Websocket,发现已经忘的七七八八了。于是用js写了客户端,用python写了服务端,来复习一下这方面的知识。先看一下python简单聊天工具最终效果一个客户端连上服务的并发送消息另一个客户端连上服务的并发送消息服务的收到客户端的全部消息并返回消息一个客户端掉线并不影响其它socket连接列取全部连接客户端对象和当前发消息的客户端对象先安装websocketspipinstallwebsockets python简单聊天工具实例源码Python聊天工具服务端#!-*-coding:utf-8-*- """ Info:Websocket的使用示例 """ importasyncio importwebsockets websocket_users=set() #检测客户端权限,用户名密码通过才能退出循环 asyncdefcheck_user_permit(websocket): print("newwebsocket_users:",websocket) websocket_user

  • DeepWalk:图网络与NLP的巧妙融合

    最近这段时间一直在做图网络相关,也差不多收尾了,有空整体复盘了下,大致以下几个主题,不过没整理完全哈哈顺手再安利几份资料吧,斯坦福的CS224W课程清华大学唐杰老师的很多分享,在之前文章中清华大学thunlp/GNNPapers一些大佬们的新书:《GraphRepresentationLearning》、《DeepLearningonGraphs》等等ok,回到正题,今天要介绍的这篇是『GraphEmbedding』系列第一篇,十分经典论文:DeepWalk:OnlineLearningofSocialRepresentations代码:https://github.com/phanein/deepwalkenjoy~TL;DRDeepWalk是首次将深度学习技术(无监督学习)引入到网络分析(networkanalysis)中的工作,它的输入是一个图,最终目标就是获得网络图中每个结点的向量表示\mathbf{X}_{e}\in\mathbb{R}^{|V|\timesd}。毕竟万物皆可向量,得到向量之后能做的事情就非常多了。如下所示是论文中给出的Karatenetwork例子。先验知识

  • 漫画:经典鹅厂面试题(2Sum,3Sum,4Sum)

    今天是小浩算法“365刷题计划”第77天。讲解一道经典鹅厂面试题,有一定难度。 建议先回顾一下该题简化版,二数之和:01PART三数之和该题为二数之和的进阶版本,当然还有一个进阶版本为四数之和。我们将会一一进行分析!第15题:给你一个包含n个整数的数组nums,判断nums中是否存在三个元素a,b,c,使得a+b+c=0?请你找出所有满足条件且不重复的三元组。注意:答案中不可以包含重复的三元组。示例:给定数组nums=[-1,0,1,2,-1,-4],满足要求的三元组集合为:[[-1,0,1],[-1,-1,2]]02PART题目分析本题的暴力题解可以仿照二数之和,直接三层遍历,取和为0的三元组,并记录下来,最后再去重。但是作为一个有智慧的人,我们不能这么去做。因为我们的目标是找数,当然使用指针的方式最简单。假若我们的数组为:[-1,0,1,2,-1,-4]复制求解过程如下:首先我们先把数组排个序(原因一会儿说),排完序长这样:因为我们要同时找三个数,所以采取固定一个数,同时用双指针来查找另外两个数的方式。所以初始化时,我们选择固定第一个元素(当然,这一轮走完了,这个蓝框框我们就要也往

  • python3:面向对象(多态和继承、方

    1、多态同一个方法在不同的类中最终呈现出不同的效果,即为多态。classTriangle: def__init__(self,width,height): self.width=width self.height=height defgetArea(self): area=self.width*self.height/2 returnarea classSquare: def__init__(self,size): self.size=size defgetArea(self):#同一个方法在不同的类中最终呈现出不同的效果,即为多态 area=self.size*self.size returnarea a=Triangle(5,5) print(a.getArea()) b=Square(5) print(b.getArea())复制执行效果如下:2、继承(1)子类可以继承父类所有的公有属性和公有方法:classFather: money=1000000 defdrive(self): print('Icandriveacar!') classSon

  • 干货|Python 获取网易云音乐热门评论

    作者:lyrichu最近在研究文本挖掘相关的内容,所谓巧妇难为无米之炊,要想进行文本分析,首先得到有文本吧。获取文本的方式有很多,比如从网上下载现成的文本文档,或者通过第三方提供的API进行获取数据。但是有的时候我们想要的数据并不能直接获取,因为并不提供直接的下载渠道或者API供我们获取数据。那么这个时候该怎么办呢?有一种比较好的办法是通过网络爬虫,即编写计算机程序伪装成用户去获得想要的数据。利用计算机的高效,我们可以轻松快速地获取数据。那么该如何写一个爬虫呢?有很多种语言都可以写爬虫,比如Java,php,python等,我个人比较喜欢使用python。因为python不仅有着内置的功能强大的网络库,还有诸多优秀的第三方库,别人直接造好了轮子,我们直接拿过来用就可以了,这为写爬虫带来了极大的方便。不夸张地说,使用不到10行python代码其实就可以写一个小小的爬虫,而使用其他的语言可以要多写很多代码,简洁易懂正是python的巨大的优势。好了废话不多说,进入今天的正题。最近几年网易云音乐火了起来,我自己就是网易云音乐的用户,用了几年了。以前用的是QQ音乐和酷狗,通过我自己的亲身经历来

  • 入门Salt - 基本安装和设置

    原文地址:https://www.linode.com/docs/applications/configuration-management/getting-started-with-salt-basic-installation-and-setup/使用Linode更新于2018.03.23周五贡献于GitHub报告问题|查看文件|编辑文件Salt是一个基于Python的配置管理平台,旨在从单个主服务器控制许多从服务器(用Salt的术语叫Minions)。本指南将指导您配置SaltMaster和Minion,并支持任何linux发行版。准备工作您将需要至少两个Linode:一个将作为SaltMaster服务端,另一个将作为SaltMinions客户端。设置每个Linode的主机名。主机名将用于标识以命名来明确Salt中的每个Linode(例如master,minion1,minion2等)。如果您的Linode都设置在同一数据中心,我们建议您为每个系统都配置专用IP地址。使用SaltBootstrap安装SaltBootstrap是一个配置脚本,它可以自动检测正在运行的操作系统,然后

  • 简谈RGW的index shard计算

    在RGW里面每个存储到rados的Object都需要先计算出对应元数据存储的shardnumber,之后再将元数据信息更新到shardnumber对应的Object里面。代码如下所示intRGWRados::get_bucket_index_object(conststring&bucket_oid_base,conststring&obj_key, uint32_tnum_shards,RGWBucketInfo::BIShardsHashTypehash_type,string*bucket_obj,int*shard_id) { intr=0; switch(hash_type){ caseRGWBucketInfo::MOD: if(!num_shards){ //Bydefaultwithnosharding,weusethebucketoidasitself (*bucket_obj)=bucket_oid_base; if(shard_id){ *shard_id=-1; } }else{uint32_tsid=ceph_str_hash_linux(ob

  • 腾讯云云服务器查询实例机型列表api接口

    1.接口描述接口请求域名:cvm.tencentcloudapi.com。 本接口(DescribeInstanceTypeConfigs)用于查询实例机型配置。 可以根据zone、instance-family来查询实例机型配置。过滤条件详见过滤器Filter。 如果参数为空,返回指定地域的所有实例机型配置。 默认接口请求频率限制:40次/秒。 APIExplorer提供了在线调用、签名验证、SDK代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成SDK调用示例。 2.输入参数以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见公共请求参数。 参数名称 必选 类型 描述 Action 是 String 公共参数,本接口取值:DescribeInstanceTypeConfigs。 Version 是 String 公共参数,本接口取值:2017-03-12。 Region 是 String 公共参数,详见产品支持的地域列表。 Filters.N 否 ArrayofFilter zone按照【

  • solidworks怎么在圆柱体上添加文字

    https://mp.weixin.qq.com/s/vw79w_jqfwtAjH_MDO04tA solidworks怎么在圆柱体上添加文字 周站长 CAD自学网 2022-03-0812:30 收录于话题 #solidworks26个 #包覆1个 推荐教程: 1、solidwork2016教程:点击查看 2、solidwork2018教程:点击查看 3、solidwork2019教程:点击查看 4、solidwork运动仿真教程:点击查看 5、solidworks2020钣金教程:点击学习 6、solidworks2021全套教程:点击学习   平常的话大部分都是在平面上添加文字,那么在圆柱体上怎么添加文字呢? 这里需要用到一个特征——包覆 首先前视基准面绘制草图,拉伸成圆柱形状。 在上视基准面绘制草图,先绘制一根中心线(直线选项-选择中心线),位置依自己而定。 然后添加文字:草图-文字(有一个A的样式)-效果如下图所示。曲线选择之前绘制的中心线,文字输入自己想输入的文字,这里字体不要选择文档字体,把那个√去掉,点击字体就可以更改了。 &

  • 餐厅点餐系统需求分析

    点餐系统需求分析 背景说明: 在现代社会中,餐饮业是一个永远不会衰败的行业,当由于受到空间大小影响,盈利几乎不会有太大提高,想要增加更多盈利就必须提高服务效率,同时带动消费效率的提高,这时就需要考虑一个方便快捷的服务方式来提升竞争力。 设计目的: 设计本餐馆点餐系统的主要目的是使整个点餐过程信息化,让餐馆能够高效的为顾客服务。餐馆点餐系统结合点菜工作的特点, 利用网络的有效传播性,提高点餐工作效率,减少点餐时间,尽快生成点菜单,为前来消费的顾客提供及时而丰富的菜谱信息,在帮助顾客选择美味佳肴的同时也为餐馆的规范化和信息化管理打坚实的基础。   1.用户需求         1.1业务需求           1. 将传统人工点餐转换为餐厅点餐系统,可以为顾客提供以下服务:作为选择,浏览菜单,自助点餐,查询订单,自助结帐等。      &nb

  • ubuntu所有php扩展php-7.0扩展列表

    sudoapt-getinstallphp7.0-bcmath  sudoapt-getinstallphp7.0-bz2  sudoapt-getinstallphp7.0-calendar  sudoapt-getinstallphp7.0-ctype  sudoapt-getinstallphp7.0-curl  sudoapt-getinstallphp7.0-dom  sudoapt-getinstallphp7.0-enchant  sudoapt-getinstallphp7.0-exif  sudoapt-getinstallphp7.0-fileinfo  sudoapt-getinstallphp7.0-ftp  sudoapt-getinstallphp7.0-gd  sudoapt-getinstallphp7.0-gettext  sudoapt-getinstallphp7.0-gmp  sudoapt-getinstallphp

  • 电商零售数仓建模之平台01:平台业务模型

    ​一、前言 数仓建模的成熟度在金融领域,尤其是银行、保险和证券行业得益于传统数据仓库服务厂商的推动,具有非常好的最佳实践,但是在互联网领域却从未形成真正的标准和规范。本文基于汽车电商零售领域的实践总结和沉淀而来,作为随笔,发布与此,共享给大家。 二、工作流程 数仓模型设计的工作流程,基于场景不同略有差异,Kimball维度建模工具箱中提到了四步骤建模法:活动选择、定义粒度、确定维度、确定指标,适合的是特定场景和特定业务活动的建模,并不适用开放型的场景和系统性的数仓建设。以下工作流程是改进之后的,自顶向下的数仓建模工作流程。具体的工作流程如下图所示: ​ 该工作流程共分为是个步骤: 1.业务建模:识别业务活动和业务对象等核心业务要素,包括业务规则和业务逻辑等; 2.总线矩阵:建立业务主题的总线矩阵模型,输出上一环节识别出的业务活动的分析维度和度量指标,同时识别出公共维度; 3.定义粒度:选择总线矩阵中的某一个业务活动进行数据聚合粒度的确认,包括识别聚合的维度和基于该维度的聚合粒度。 4.数据建模:基于前面步骤确定的业务活动+分析维度+度量指标+聚合粒度,进行维度表和事实表的设计,并输出。

  • iOS开发UI篇—CAlayer(自定义layer)

    iOS开发UI篇—CAlayer(自定义layer) 一、第一种方式 1.简单说明 以前想要在view中画东西,需要自定义view,创建一个类与之关联,让这个类继承自UIView,然后重写它的DrawRect:方法,然后在该方法中画图。 绘制图形的步骤: (1)获取上下文 (2)绘制图形 (3)渲染图形   如果在layer上画东西,与上面的过程类似。 代码示例: 新建一个类,让该类继承自CALayer YYMylayer.m文件 1// 2//YYMylayer.m 3//05-自定义layer(1) 4// 5//Createdbyappleon14-6-21. 6//Copyright(c)2014年itcase.Allrightsreserved. 7// 8 9#import"YYMylayer.h" 10 11@implementationYYMylayer 12//重写该方法,在该方法内绘制图形 13-(void)drawInContext:(CGContextRef)ctx 14{ 15//1.绘制图形 16//画一个圆 17CGContextAddE

  • HTML>>网站表单实例

    <!doctypehtml><html><head><metacharset="utf-8"><title>无标题文档</title><styletype="text/css">*{margin:0;padding:0;}body{font-family:Arial,Helvetica,sans-serif,"微软雅黑";font-size:14px;}input{border:0;} .bg0{background:url(back.jpg)no-repeat;width:1000px;height:670px;}.bg0.red0{color:#F00;}.bg0form{width:500px;height:550px;margin:auto;padding-top:30px;}h1{font-size:20px;color:#C6F;font-weight:bold;text-align:center;padding-right:100px;}.bg0p{margin-top:30px;}.bg

  • CODEVS-新斯诺克

    原题地址:新斯诺克 题目描述Description 斯诺克又称英式台球,是一种流行的台球运动。在球桌上,台面四角以及两长边中心位置各有一个球洞,使用的球分别为1个白球,15个红球和6个彩球(黄、绿、棕、蓝、粉红、黑)共22个球。 击球顺序为一个红球、一个彩球直到红球全部落袋,然后以黄、绿、棕、蓝、粉红、黑的顺序逐个击球,最后以得分高者为胜。斯诺克的魅力还在于可以打防守球,可以制造一些障碍球使对方无法击打目标球而被扣分。正是因为这样,斯诺克是一项充满神奇的运动。 现在考虑这样一种新斯诺克,设母球(母球即是白球,用于击打其他球)的标号为M,台面上有N个红球排成一排,每一个红球都有一个标号,他们的标号代表了他们的分数。 现在用母球击打这些红球,一杆击打,如果母球接触到红球,就称为“K到红球”。我们假设,一次可以击打任意多相邻连续的红球,也可以只击打一个球。并且红球既不会落袋,也不会相互发生碰撞,而只是停留在原处。每次击打时候,要想“K到红球”,至少要击打一个红球,如果想一次击打多个红球,那么击打的红球必须是依次连续排列的。如果一次“K到红球”所有红球的标号之和的平均数大于母球的标号M,就

  • hashSet存储不同值的原理

    hashSet存储不同值的原理 hash函数 把任意长度的输入(又叫做预映射pre-image)通过散列算法变换成固定长度的输出,该输出就是散列值,是一种压缩映射。 或者说一种将任意长度的消息压缩到某一固定长度的消息摘要的函数。 HashCode HashCode是Object的一个方法,hashCode方法返回一个hashcode值,且这个方法是为了更好的支持hash表,比如String,Set,HashTable、HashMap等; 我们知道hashset是一个单列,无序的,不能重复的集合,同时它的数据结构是数组+链表/红黑树 进入正题:hashset存储不同值的原理? 在hashset中存储值,他会用hashcode和equals方法来确定元素是否存在。 它的过程: 首先他会判断该对象的hash值在hashset集合中是否存在(自定义对象要自己实现hashcode方法和equals方法,String等已经实现不需要自己再实现),如果不存在则存入集合(这个时候就用到它的数据结构了,数组!!!其实存入的就是数组),如果存在相同的hash值,则判断equals方法,

  • Python sklearn拆分训练集、测试集及预测导出评分 决策树

        机器学习入门  (注:无基础可快速入门,想提高准确率还得多下功夫,文中各名词不做过多解释) Python语言、pandas包、sklearn包  建议在Jupyter环境操作 操作步骤 1.pandas包加载给机器学习训练的表格   依照机器学习领域的习惯,我们把特征叫做X,目标叫做y,通常一列数据最后一列作为目标列 2.映射数据列为整型(Python做决策树需要整型或者实数) 3.拆分训练集、测试集 4.sklearn创建训练模型、测试模型准确率等 5.预测结果导出 算法 1.PCA算法2.LDA算法3.线性回归4.逻辑回归5.朴素贝叶斯6.决策树7.SVM8.神经网络9.KNN算法 importpandasaspd importmatplotlib.pyplotasplt X=pd.read_csv('x_train.csv') X=X.drop('target',axis=1) y=df.target #print(X.shape,y.head(10),y.shape,y.head(10)) #处理转换为整型(存在优化空间)

  • 1750 加法表达式

    题目描述 Description 加法表达式的计算. 为简单起见,题中的整数均为0-999之间,结果也不超过999. 输入描述 InputDescription 共一行,由+号和0-999之间的整数组成的表达式(表达式中不超过100个字符) 每个整数前面可能有(不超过10个)若干个加号(+号) 输出描述 OutputDescription 共一行:“输入表达式”=计算结果   样例输入 SampleInput 1+1 +1+2 +++1+5 +++++1+++3+++2+5++1+1 样例输出 SampleOutput 1+1=2 +1+2=3 +++1+5=6 +++++1+++3+++2+5++1+1=13 代码: /* 简单的模拟 */ #include<cstdio> #include<cstring> usingnamespacestd; chars[101]; intans,l; intmain() { inti,j; while(scanf("%s",&

  • 字典

    一.字典dict的特点: 1.字典是无序的; 2.字典可以使⽤key-value的⽅式来存储数据 二.字典的定义: dict1=dict() dict2={}复制 三.字典的常见使用方法: 1.查看字典的使用方法:dir() dict1={"name":"tang","age":20,"city":"西安"} print(dir(dict1))复制 输出: ['__class__','__class_getitem__','__contains__','__delattr__','__delitem__','__dir__','__doc__','__eq__','__format__','__ge__','__getattribute__','__getitem__','__gt__','__hash__','__init__','__init_subclass__','__ior__','__iter__','__le__','__len__','__lt__','__ne__','__new__','__or__','__reduce__','__reduce_ex_

相关推荐

推荐阅读