0%

说起银行贷款,我们绝大多数人应该都用过这个业务。比如,我们上大学,不少人办理过国家助学贷款。看这个贷款名字,好像跟银行没什么关系。但其实办理过这个贷款的同学都知道,这个贷款是我们跟银行产生的一个借贷关系。我们需要跟银行签订贷款合同,毕业后还款也是向银行还款。只不过因为是助学性质,国家会有一定的优惠贴息。再比如,我们买房,现在房价很高,对于一个主要靠自己的收入作为买房资金来源的同学,不贷款几乎不可能。不管是商业贷款还是公积金贷款,这里面都是银行在提供贷款业务。对于个人经营需要,企业发展需要,银行贷款就更是少不了了。

阅读全文 »

在当下很多的应用场景中,我们常常会想要应用具有一定的灵活性,以便我们可以在线调整计算逻辑,而不需要重新发布应用。这可能也可以称为以极限的速度发布软件的方式。

AB测试可以说解决了一部分这样的需求,使得我们可以在线的针对部分用户改变应用的行为。但AB测试需要我们预先定义并实现两套逻辑,然后通过线上配置来应用不同的逻辑。显然,在可自定义的程度上,AB测试是非常弱的。如果我们想要更大规模的调整应用的逻辑,AB测试就不够了。

阅读全文 »

一个项目越复杂,架构的作用就越显得重要。这就跟收拾家里面的东西一样,如果我们只有为数不多的几件物品,即便我们随意摆放,也不会妨碍我们找到想要的东西。但是随着购置的物品越来越多,如果不设置一套摆放规则,那么想找到东西就可能会花费大量的时间,效率低下。在我看来,架构就像这样一套摆放东西的规则。规则设置得好,屋子里面的东西将摆放得井井有条,我们的生活不仅将更高效也将更舒适顺心。

在最近的一个项目上,我们和客户一起建设了一个机器学习平台。对于某一个机器学习项目,最重要的四个部分是特征处理,模型探索,模型训练与模型推理。构建一个平台的目的是将这四个部分中通用的能力沉淀下来。一个成功的平台可以为新的机器学习项目提供基础设施,让项目快速起步,还可以使得项目组更专注在模型优化上而提升模型迭代效率。

阅读全文 »

进门,双手帮你脱下外套,挂起。洗发师双手提起一件深色防水的丝质套衫,你伸手,换上。拿起腰带,穿过你的腰,两圈,拉扯一次,拉扯两次,系紧。抹平套衫肩部,拉住袖口,拉扯一次,拉扯两次,展平。拉住套衫底部,拉扯一次,拉扯两次,拉齐。

将你带到洗头处,你看到一个用于平躺的台面,台面上深色皮质的垫子分为两部分,前面部分可拆卸,上放一块叠起来的深蓝色毛巾,毛巾上面是一朵颜色鲜艳的大荷花。在台面前部放有一个与垫子同样深色皮质的单人凳。

洗发师伸开右手,将你迎向凳子坐下。介绍洗头服务:我是37号洗发师为您服务,本次洗发50分钟,请您稍坐,我去准备毛巾和其他用品。

阅读全文 »

TDD有很多好处,但是广大程序员却总是难以接受。即便在我们ThoughtWorks,有着非常浓厚的TDD氛围的公司里,接受起来也依然不是一件简单的事情。我曾经见过一些在我们公司工作过一年甚至两年的同事,对TDD的理解都还停留在比较粗浅的认识上,平时的实践也难以跟上。

阅读全文 »

又到小米发布会了,这次发布会将从发布评论的人里面选人,每分钟送一台小米手机。
于是写了几行代码自动发评论,省去了手工的麻烦。娱乐一下,碰个运气。

直播地址:https://hd.mi.com/x/12041b/index.html?client_id=180100041086&masid=17409.0195

代码如下:

1
2
3
4
5
6
7
8
9
10
11
// 随机选择一个当前评论列表里面的评论
var r = () => Math.floor((Math.random() * $('.livechat-list-wrapper .list li').length))
// 提取选中的评论的内容
var text = () => $($('.livechat-list-wrapper .list li')[r()]).find('.content').text()
// 使用选中的内容自动发评论
var c = () => {$('#J_chatContent').val(text());$('#J_sendChatBtn').attr('class', 'btn active');$('#J_sendChatBtn').click();}
// 生成随机的间隔时间
var rtime = () => Math.floor(Math.random() * 15000 + 5000)
// 设置一个计时器定时发评论
var st = () => stt = setTimeout(() => {c(); st()}, rtime())
st();

以上代码粘贴到控制台执行就可以了。

Local Openshift Cluster Installation Guide

Preparation

Hosts

  • 1 control host, 1 master and 3 nodes
  • centos 7

Install packages on control host

  • Run yum install -y python2-passlib httpd-tools
阅读全文 »

Target

  • A simple nodejs application
  • Add mongodb to the application
  • CI/CD for the application
  • Logging, Monitoring, Debugging

A simple nodejs application

Introduction

In this section, We are going to create a nodejs project with mongodb in OpenShift. We assume that you have done all the preparation work listed in the invitation email of this workshop. And there’re some additional steps to get yourself ready.

阅读全文 »

AWS Openshift Cluster Installation Guide

The main reference is here: https://github.com/openshift/openshift-ansible-contrib/tree/master/reference-architecture/aws-ansible

Create

1
2
3
4
./ose-on-aws.py --region=us-east-2 --keypair=lgm-oc \
--public-hosted-zone=oc-tw.net --deployment-type=origin --ami=ami-cfdafaaa \
--github-client-secret=YOUR_SECRET --github-organization=xx \
--github-client-id=YOUR_ID
阅读全文 »