Rails with Oracle Sample

1. 下载oracle相关的开发文件和sdk: 这里要注意,选择 对应的平台和CPU类型.例如, for Linux-x86-64 就是当前主流cpu(64位), 以及 Linux操作系统. 2. 进来之后,会看到这个页面, 记得要先选择"Accept" (在页面上方位置), 接受条款. 然后点击" ...sdk " 和 "... basic" 两个zip文件. 下载时要记得注册Oracle账号. 否则无法下载. 3. 解压缩 zip 文件, 可以看到文件都解压缩到文件夹: instantclient_12_2  下了, 然后建立 soft link: (这句话很重要)     $ ln -s libclntsh.so.12.1 libclntsh.so   ( so 文件后缀是linux的, 如果在mac下,就是 dylib ) 同时,在上面的页面, 要下载 xxx-sql-plus 文件. 也一样解压缩即可. 上面3个文件解压缩之后, 文件都存在与 同一个文件夹下面,例如: /workspace/coding_tools/instantclient_12_2 drwxrwxr-x 3 siwei siwei 4096 5月 25 18:09 . drwxrwxr-x 12 siwei siwei ...

关于高可用的系统

在《这多年来我一直在钻研的技术》这篇文章中,我讲述了一下,我这么多年来一直在关注的技术领域,其中我多次提到了工业级的软件,我还以为有很多人会问我怎么定义工业级?以及一个高可用性的软件系统应该要怎么干出来?这样我也可以顺理成章的写下这篇文章,但是没有人问,那么,我只好厚颜无耻的自己写下这篇文章了。哈哈。 另外,我在一些讨论高可用系统的地方看到大家只讨论各个公司的技术方案,其实,高可用的系统并不简单的是技术方案,一个高可用的系统其实还包括很多别的东西,所以,我觉得大家对高可用的系统了解的还不全面,为了让大家的认识更全面,所以,我写下这篇文章。 理解高可用系统 首先,我们需要理解什么是高可用,英文叫High Availability(Wikipedia词条),基本上来说,就是要让我们的计算环境(包括软硬件)做到full-time的可用性。在设计上一般来说,需要做好如下的设计: 对软硬件的冗余,以消除单点故障。任何系统都会...

简明 VIM 入门

vim的学习曲线相当的大(参看各种文本编辑器的学习曲线),所以,如果你一开始看到的是一大堆VIM的命令分类,你一定会对这个编辑器失去兴趣的。下面的文章翻译自《Learn Vim Progressively》,我觉得这是给新手最好的VIM的升级教程了,没有列举所有的命令,只是列举了那些最有用的命令。非常不错。 ——————————正文开始—————————— 你想以最快的速度学习人类史上最好的文本编辑器VIM吗?你先得懂得如何在VIM幸存下来,然后一点一点地学习各种戏法。 Vim the Six Billion Dollar editor Better, Stronger, Faster. 学习 vim 并且其会成为你最后一个使用的文本编辑器。没有比这个更好的文本编辑器了,非常地难学,但是却不可思议地好用。 我建议下面这四个步骤: 存活 感觉良好 觉得更好,更强,更快 使用VIM的超能力 当你走完这篇文章,你会成为一个vim的 superstar。 在开始学习以前,我需要给你一些警告: 学习vim在...

怎么招聘程序员

很早以前就想写一篇和面试相关的文章了,今天在网络上看到一篇关于如何去面试程序员的英文文章,发现其中有很多和我共鸣的东西,所以仿照其标题通过自己的经历写下了这篇文章。 工作这么多年来,即被面试过,也面试过他人,对于程序员的面试,经历过很不错的面试,很专业的面试,也经历过一些BT和令人不爽的面试,我个人觉得一个好的面试,面试官是很重要的,所以,本文想从“面试官”的角度来阐述一下。于是,有了下面这样一篇的文章,希望本文对你的职场经历有用,特别是那些正在招聘和面试程序员的朋友,我觉得这篇文章会对大家有很多启示。此外,做为被面试的人,你可以看看本站的《别的程序员是怎么读你的简历的》《程序员需要具备的基本技能》《优秀程序员的十个习惯》其它一些和程序员相关的文章。 对于招聘方来说,在招聘程序员的时候,我估计面试应聘者时,最主要想知道的是下面三件事: 这个程序员的是否够聪明? 这个程序员能否把事...

Textmate rmate edit remote linux files

1. enable textmate rmate 2. Install ruby rmate gem(assume you have ruby env setup) [ruby]gem intall rmate[/ruby] 3. SSH remote linux [code] ssh -R 52698:localhost:52698 XXX@wilsoncai.com [/code] 4. rmate open file in remote terminal [code 1="rmate" 2="file" 3="[/code" language=">"][/code]

Use localtunnelling to share a web service on your local development machine without messing with DNS and firewall settings

Localtunnel will assign you a unique publicly accessible url that will proxy all requests to your locally running webserver. it's really helpful when we doing some testing like third-party login like QQ login, weibo login etc, as they need an call back server to send back response. Steps: 1. Install Node JS brew install node 2. Install Localtunnel npm install -g localtunnel 3. Start Localtunnel Client, run following command in shell lt --port 3000 will get mapping address caseysdeMacBook-Air:~ casey$ lt --port 3000 your url is: https://gtxzozgorw.localtunnel.me

Ruby代码块

Ruby代码块可以通过yield方法传递给被调用的方法 [ruby lang="ruby"]require 'book' require 'booklist' booklist = BookList.new() b1 = Book.new("iPod","123") b2 = Book.new("How Objects Work","2") booklist.add(b1) booklist[1]=b2 print booklist[0].title, "\n" print booklist[1].title, "\n" booklist.each{|book| print book.title, "\n" } booklist.print2{|x, y| print x,"\n" print y,"\n" } booklist.each_title{|title| print title,"\n" } author_regexp = /2/ booklist.each{|book| if author_regexp =~ book.author print "book.title: ",book.title, "\n" end } booklist.find_by_author(/2/){|book| print book.title, &q...

Ruby发送163邮件到gmail

[ruby lang="ruby"]require 'net/smtp' msg = [ "Subject: Test\n", "\n", "Now is the time\n" ] Net::SMTP.start( 'smtp.163.com', 25, "163.com", "caiwenhn2008@163.com", "******", :login ) do |smtp| smtp.sendmail( msg, 'caiwenhn2008@163.com', 'caiwenhn2008@gmail.com' ) end server 163 smtp服务器域名 port 163 smtp服务器端口 domain 163 email服务器域,就是@符号后面的字符串 acct 163邮箱用户名 passwd 163邮箱密码 authtype 邮件发送验证方式,163是密码验证 msg message主题和内容 from 从哪个邮件帐号发送 to 发送到哪个邮件帐号,我这里发送到我的gmail邮箱[/ruby]

TextMate常见快捷键

[java] cmd + option + L 显示行号 cmd + F 页面搜索文字 cmd + shift + F 项目搜索文字 cmd + G 下一个搜索文字 cmd + shift + G 上一个搜索文字 cmd + option + F 替换一个 cmd + ctrl + F 全部替换 cmd + S 保存 cmd + option + S 全部保存 cmd + shift + S 另存为。。。。 cmd + shift + -> 选中光标右面的内容 cmd + shift + <- 选中光标左面的内容 cmd + shift + L 选取一行信息 cmd + L 定位到某一行 cmd + option + -> textmate项目中右面的标签 cmd + option + <- textmate项目中左面的标签 cmd + 数字 选择某个标签 cmd + -> 光标回到行尾 cmd + <- 光标回到行首 cmd + ^ 光标回到页首 cmd + 下箭头 光标回到页尾 cmd + / 注释一行 cmd + z 返回前一个内容 cmd + ] 增加缩进 cmd + [ 减少缩进 cmd + T 打开项目下的文件 cmd + O 打开项目 cmd + N 新建文件 cmd + W ...

Rails实现markdown和代码高亮

安装GEM Markdown是时下很流行的一种标记语言。 可以很简便的生成html代码,github的README就是用这种形式显示再代码目录的下面。 Ruby/Rails借助繁多的Gem,可以迅速的就做好markdown的支持,顺道包含对代码高亮的支持。 Gem太多,实现方法也太多。 下面就介绍一种比较迅速开发的办法。用了redcarpet和CodeRay两个Gem。 [ruby lang="ruby"]gem 'redcarpet' gem 'coderay'[/ruby] 打开app/helper/application_helper.rb, 添加下列代码。 [ruby lang="ruby"] def markdown(text) options = { :autolink => true, :space_after_headers => true, :fenced_code_blocks => true, :no_intra_emphasis => true, :hard_wrap => true, :strikethrough =>true } markdown = Redcarpet::Markdown.new(HTMLwithCodeRay,options) markdown.render(h(text)).html_safe end...