10月2日 求职指南 0rid

10月2日 求职指南 0rid

0

1.招聘标准:能够独立的开发功能,善于搜索。 & 有独立的自己完成的作品,至少 2 个以上 。

  1. 多半靠谱的公司,会考这一些
  • 实做一个基本的功能
  • Model 如何设计关连性
  • 如何设计 Controller
  • 如何设计 model method
  • Helper / Partial 怎么用
  • 如何用 gem 完成一个功能
  • HTML / CSS 基本属性
  • 基本的 Ruby 常识
  • 如何设计 API 端点(3/20 会教,有一些公司是移动公司,需要 Rails Developer 开发 API)
  • 如何写简单的测试(3/27 会教)
  • 你当初是如何独立解决你所面对的技术问题的

3.面试的策略

1)先找不是前几志愿的公司练手。

2)请考官当场教你的好处。

3)在面试之前,研究对方的技术部落格

4)在面试之前,研究他们的产品架构

5)在面试之中,尽量保持诚实。

4.如何进阶学习

1)论坛

2)知识点讲解网站 + gem 讲解

3)实作12个项目

5.笔试题,额,没看,准备打印出来,反复朗读。

  1. romote 形态工作机会,很屌,高薪资,工作时间和地点还格外地自由,但是这是大牛的水准。我的目标是10年后,具备这样的水准能够应征romote的工作。
  2. 如何进阶成为资深工程师。

1)3-4个中型专案

2)演说与社交能力

r

i

d

CHAPTER 3 The Goals That Keep You Moving Forward 第三讲(23min)

CHAPTER 3 The Goals That Keep You Moving Forward 第三讲(23min)

0

1.

当你追求的是get better 的目标时,你会更容易出色地完成困难的工作。

原因是:你在完成任务的过程中,更注重自己是否得到提高,哪里还做得不够好。即便你会在一开始表现得不那么好,但越到后面,你的进步就越大。

2.这节其实是上一节(Dealing with Difficulty)的具体举例说明

r

In fact, get-better goals didn’t actually lead to higher grades on the very first exam—their benefit was felt in subsequent exams, when the students who held them were more likely to keep up or even increase their efforts and stay motivated.

@持续的付出才会让自己越来越棒,关键就在于“focus on developing my abilities and acquiring new ones.”

i

Persistence and the Pre-med

in the “real world” outside the college classroom, people who pursue getting-better goals are in fact better at getting the difficult jobs done.

1)They agreed with statements such as “In school I am focused on demonstrating my intellectual ability.” Other students told us that they also cared a lot about learning and developing, endorsing a statement such as “I strive to constantly learn and improve in my courses” and “In my classes I focus on developing my abilities and acquiring new ones。

In fact, get-better goals didn’t actually lead to higher grades on the very first exam—their benefit was felt in subsequent exams, when the students who held them were more likely to keep up or even increase their efforts and stay motivated.

2)“At the beginning of the observation period, the salespersons were asked to fill out surveys indicating whether they were primarily performance-goal (be-good) focused (“I very much want my coworkers to consider me good at selling”) or mastery-goal (get-better) focused (“Learning how to be a better salesperson is of fundamental importance to me”) with respect to their jobs.

As a result, the stronger their focus on getting better, the more units they sold.

d

1.文章中的观点和李笑来老师得到专栏上”最少必要知识“这篇文章的内容非常像,李老师的观点也是如果你想快速地学会一门技能,需要专注于改进和用。

原话如下:

  (<u>有的人学了很久都没有入门,有的人掌握最少必要知识后,不仅迅速入门,还要迅速展开行动…而这之中又有些人注意力高度集中,只在意自己的改进,不在意别人的看法,所以他们的长期被他们的专注与行动缩短了许多许多,于是他们相当于“相对于大多是,更为迅猛地达到了成功的里程碑”,这有什么好奇怪的吗?</u>

2.学习编程时,要专注于哪里做得不好需要提高。

9月24日至月10月1日 周复盘

最有用的工具

1.to do list

  1. 自评表

评价自己今天表现是否好,其实可以用自己的三个核心标准:

1)一天中有没有做和编程相关的事情(+20分)或者一天中有没有在早上做和编程相关的事情(+30分)。

2)一天是否只刷了一次微信,且是在晚上(+30分)。

3)一天中是否只在晚上看娱乐视频,而且看娱乐视频时在跑步机上快走(+30分)。

打分事项

1)

2)

3)

得分

最棒的概念

1.共同成长。

@发现自己1个多月都在8:00以后起床了,所以组建了早起群,通过每天早上朗读一段能够激励自己的文字来打卡。

最大的坑

昨天的这个时间利用率有些夸张,宝宝被吓到了。晚上又搞那么晚才睡。估计是自制力被耗光后,无法控制自己的表现。

思考: 自控力被榨干时,怎么破?

9月29日 0rid 求职指南

9月29日 0rid 求职指南

0

1.应聘ruby on rails 的工作:

1)作品

2)技术总结

1.简历怎么准备

1)突出重要信息

2)省略不重要的信息

3)简历套路:

一句话形容自己;

200子自我介绍;

2-3段介绍过去2年在做什么;

为什么想要应征这份工作;

自己对这份职缺的竞争优势;

联络资讯。

r

1.低峰:全栈营结束后,自己就没有新的作品和新的技术总结的文章。

  1. 这个简历模版的套路和我以前遇到过的完全不一样,感觉按这个套路走,挺容易把人写得牛逼的。

i

1.如果要找编程相关的工作,从现在开始得开始打磨自己的作品了。

  1. 模范简历中,有一个部分是别人对我的评价,所以这部分可以注意收集着了。另外模范简历中树立了一个很好的版样,即他搭建了一个网站,网站里有他的简历 + 博客 + 作品集。

d

1.2个星期一个的作品,不断地找到实际需求,并且把实际需求用作品来解决。

  1. 用简历模版写一份简历,并且交给朱师兄改。
  2. 打造一个完整的自我介绍网站,方便以后找工作,或者让别人认识我。(如果有人问我是干什么的,就给个链接,让他自己看。)现在需要介绍自己的场合越来越多,值得做这么一件事。)

9月28日 orid rails 代码重构

9月28日 orid rails 代码重构

067min

1.好的代码的特点: 易读, 维护性,可测性。

  1. 放在 Controller 的代码一般来说比较难进行重用(re-use)和单元测试,可读性也较差,我们希望将更多代码放在 Model 里面。
  2. 使用Model scope 简化controller的代码。
  3. 有关联的权限检查 scope access
  4. 使用 Model 虚拟属性
  5. 使用 Model 回呼(callback)
  6. 将逻辑放到 Model
  7. 在 Model 中有一些高度相关的代码,希望能够更清楚他们是一起的,或是希望能在不同 Model 中也能重复使用。
  8. 关于 View,最重要的守则就是在 template 中绝对没有商务逻辑。
  9. 将代码重构到 Model
  10. 果跟 HTML 画面显示无关,跟商务逻辑有关,则放到 Model 里面。如果跟 HTML 画面显示有关,则适合放在 Helper 里面。
  11. Helper 是 Ruby 代码,里面不适合放太多的 HTML。如果你有一整段的 HTML 代码想要抽取出来,应该用 Partial 样板。
  12. 将 @post 传入这个 partial,这样在这个 partial 里面,就会变成区域变量 post。这个好处是可以增加这个 partial 的可重复使用性,也比较清楚要传这些变量才能使用。
  13. 这些 Helper 档案跟 Controller 并没有对应的关系,所有 Helper 档案里面宣告的方法都是通用的,不会因为放在哪一个 Helper 档案而有差异。因此我们可以重新编排整理。

r

高峰:以前学习rails101 + jdstore时,教材都会讲一些重构的知识,所以现在学起来,感觉比较容易读懂。

i

1.controller的代码越少越好,所以主要会把一些代码重构到model里。主要方法如下:

1)model scope

2)将逻辑放到 model

1.view的代码,如果是和逻辑有关酒会重构到model里。如果是和显示画面有关就会重构到helper里。

  1. 不管存在helper的哪个代码里,都可以通用。

d

1.Rails 101 + jdstore 可以加上代码重构的课程。

  1. 求职课程的学习。

9月27日 0rid ​

9月27日 0rid

0

r

i

1.昨天晚上11:00-12:30,胡乱地看电影,直接导致1:00-1:30才睡着。 => 今天早上10:00起床。 =>10:00-11:30在床上琢磨理财的事情。

   结果:早上没有学习编程。

  结论: 晚上不在11:30以前睡觉 => 第二天早上会废掉。

  原因分析: 早上没有一定要做的事情或者早上安排的任务不太想做。 => 晚上睡觉不积极。

 现阶段,编程的任务是:把教程全部复制一遍。这个任务,让自己没啥动力。

 解决方法:

 a. 7:15-8:15, 看Nic 视频 或者xdite视频

b. 8:30-11:00, 复制教程,中间休息15min。

c. 11:30-12:00, 读英语或看文章。

d

9月26日 0rid rails 网站效能

9月26日 0rid rails 网站效能

0

一 编程:125min

rails 网站效能

1.网站效能基础概念

后端效能:指的是当网站服务器接收到一个 HTTP Request 时,需要花多少时间去处理。

网络传输: 这是光速和光纤的物理限制,因此我们都会希望把服务器放的离主要用户群比较近。

前端效能: 浏览器运行代码(HTML/CSS/Javascript)渲染出画面的时间,这个时间称之为网页加载时间(Page Load Time)。

提速的大方向: 前端效能的 Page Load Time 的是几秒等级,透过一些前端效能最佳化技巧,我们可以做到从 3.5s 降到 1.5s,这对用户感受会比较明显,差了 2 秒,比改进后端更有效益。

1.前端效能分析

Chrome 除错器提供了详尽的报表,最基本我们可以观察 Network,其中的 Load 就是 Page Load Time 页面加载时间;

Chrome 也提供了进阶的 Performance 详细报告,包括解析 HTML、CSS、JavaScript 各花了多少时间,等会也会介绍如何使用;

线上分析工具 PageSpeed Insights;

1.减少 Requests 数量和大小

每一次的 HTTP Request 都需要耗费时间,因此减少 Requests 的请求数量,以及减少这些档案的大小,就是一个最佳化的方向。

在部署上 Production 环境时,Asset Pipeline 会执行 rake assets:precompile 将 CSS 和 Javascript 进行合并压缩。

1.HTTP 最佳化

http 压缩

http 缓存

http/2

1.关键渲染路径

关键就在思考首次渲染页面时,只加载必要的 CSS,以及延后 JavaScript 加载。

Javascript 加载最佳化的方法

1.cdn

前面我们提到服务器如果离用户比较近,网络传输的时间就会比较快。不过如果用户散布是世界各地的话,那么服务器放哪里都会有人距离比较远。这种情况怎么办呢?

这时候我们就会使用 CDN (Content delivery network) 这种服务来加速静态档案的下载。

Part 3: 后端效能

1.后端效能分析:安装第三方效能分析服务

   对后端来说,一个方向是提供 Rails 和 Ruby 代码的效能,一个方向是提供数据库方面的效能。

1.避免 N+1 SQL 查询 & 解决方法

  1. ActiveRecord 优化技巧

避免 .all 查询

find_each 技巧

预加载(Preload)概念(我们尽可能合并 SQL 查询一次捞出,然后再用数组方法 select 过滤出需要的结果。)

count 和 size 方法

避免重复 SQL 查询

pluck 技巧

1.后端缓存和延展性(Scalability)

垂直扩展:升级服务器,例如用更快的 CPU、用大的硬盘、用多的内存

水平扩展:增加(租用)更多服务器

1.数据库 SQL 优化

如果你把数据从数据库都取出用 Ruby 来计算的话,效能会非常差。你需要利用 SQL 来让数据库引擎来做内部运算,效能才会快。

1.计数缓存 (Counter Cache)

读取的频率 v.s. 更新缓存数据的成本

1.改进 Render Partial 的效能

情境是当同一个 partial 需要不断 render 时,可以改用 collection 的写法,效能会更好。

为什么这种用法会比较快呢?本来的写法 Rails 需要针对每个 partial 都做一次编译处理,新的写法 Rails 知道这些 partial 原来是同一个 partial,因此只需要编译处理一次。

1.数据库索引

以下的字段都必须记得加上索引:

  • 外部键(Foreign key)
  • 会被排序的字段(被放在order方法中)
  • 会被查询的字段(被放在where方法中)
  • 会被group的字段(被放在group方法中)

,作为搜寻条件的字段如果没有加索引,SQL 查询的时候就会一笔笔检查资料表中的所有资料,当资料一多的时候相差的效能就十分巨大,没索引是 O(N),有索引是 O(logN)。

总结:

1.前端效能 vs 后端效能, 前端效能的优化更重要,因为前端效能的效果会更明显。
2.前端效能:

   减少request 的数量和大小(production环境,css和javascript合并压缩)

   http 最佳化(http/2, 缓存,http压缩 )

  关键渲染路径(使用最短的时间可以看到浏览的画面)

 Cdn (把图片保存在离用户最近的网站上)

1.后端效能:

  避免 n+1 sql 查询

  Active record 优化技巧, 避免使用find.all,each.all, 预加载概念( 我们尽可能合并 SQL 查询一次捞出,然后再用数组方法 select 过滤出需要的结果。), 避免重复查询, count和size的区别, plunk(直接拿需要的数据)

  数据库sql优化(把数据从数据库取出并用ruby算,太慢了)

 计数缓存(高频率使用的数据)

 改进render partial 的效能(避免重复使用render 查询)

  数据库索引(数据量很大的时候,如果不加上索引,查询就会变得非常困难。外健的栏位需要加索引)

  后端缓存和延展性(水平和竖直方向。)      

r

i

1.必须笃信,今天的自己可以通过做正确的事,而让自己的明天变得更好。

  1. 编程和英语,一定是未来世界必须掌握的2个技能,加油。

d

1.2017年12月31日之前,通过自己的积累,找到英语专业的兼职。

  1. 2018年12月31日之前,通过自己的积累,找到编程方面的全职工作。

9月25日 0rid

9月25日 0rid

0

读书:1.5小时

1.听书 《翻转课堂》30min

  1. 听书 《每天最重要的2小时》45min
  2. 读书 《通往财富自由之路》15min

r

医院90%的收费员,已经被机器替代。人工智能已经在很大程度上影响并且改变了我们的生活。

i

晚上睡觉前40min看iPad,确实不是一个理智的行为。因为这样会导致睡觉时拖延。

d

9月24日 0rid rails 安全

9月24日 0rid rails 安全

0

1.编程:122min

1)复制粘贴rails 安全网站 52min(预习)

2)解bug + 讲解 70min

1.反思:

1)周复盘:32min+ 30min +30min

1.英语:100min

R

I

1.制定过于模糊的目标,就等于,还没有开始就放弃了。

D

早起群为什么可以帮助你早起?

早起群为什么可以帮助你早起?

写在前面

为了咱们的早起群,能够更好地帮助大家365天中有300天以上都能早起,于是我就决定写下这篇文章。和大家仔细聊聊,早起群群规核心的原理,让大家在了解原理后,可以更好地利用群规来帮助自己达成早起的目标。

群规1

每天打卡:早上7:00以前,在群里朗读一段或一句,能够激励自己的文字后,视为完成打卡。

1.很重视早上到底要读哪句话,所以会在睡前15min翻翻书,或者翻番笔记,找到自己最想读的东西。

=> 我们往往会在一天中的某一个时刻“幡然悔悟,励志变得更好”,却又在一天中的绝大时候,忘记了自己有这样的期待和诺言。所以希望这种方式可以更好地提醒我们,我们期待变成一个更优秀的人。

​ 总结:我相信,早起读的内容会很大程度上可以激励我们那一天有更好的表现。

2.睡前翻15min书,找找自己第二天要读的内容。这一行为,会让我们暂时告别杀时间,玩手贱的状态。 => 让我们可以早睡。

​ 总结:早睡是早起的大前提。

群规2

超过7:00没有打的小伙伴,需要在接下来的24小时,发一个总额为5元钱,个数为5个的红包。

1.一个人,很容易放弃。但一群人 + 惩罚规则,就不容易放弃。
2.理解人性,宽容和理解所有人偶尔的晚起。所以罚款只罚5元,一杯酸奶钱。

​ 总结:5元的红包使你绝大多数地时候一定会早起,偶尔犯懒也不会有“负罪感”和“内疚感”。

独家分享

这篇文章的最后,就和大家分享一下,我是如何筛选第二天要读的文字的。

1.读过的书中,画线的句子。

把时间当作朋友的画线句子:

2.自己摘抄和整理的好句子。


3.自己总结好的概念或者方法。