1. 3n should be 3*n (forget the multiplication)
2. The array index is out of range.
3. Forget to stop reading a file when it ends.
4. When counting the number of lines of a file, do not forget to use "read (unit,'(a120)')" to include the blank line too.
5. Recognize different types of variables and DO NOT use them with mistakes.
Monday, June 30, 2014
Friday, June 27, 2014
shell script - learning note 2
shell can return value (0: succeed, non-0: fail)
expr 1 + 3 # show 4, because of with space
echo $? $ will show 0
expr 1+ 3 #show syntax error
echo $? $ will show non-0, here 2 in fact.
read: almost same as Fortran.
Example:
echo "Your first name please:"
read fname
echo "Hello $fname, Lets be friend!"
Wildcard (shorthand) 未知数,通配符
* means
any string or group of characters.? means any single character.
[xxx] Matches any one of the enclosed characters.
two command or more in one line
Example: data;who;cal
Some useful command:
tail file # print last 10 lines of the file.
diamond (i.e. <>)symbol
Example: sort < sname > sorted_names
Pipe: a way to connect the output of one program to the input of another program without any temporary file.
Example: who | sort
ls -l | wl -l
Loop
Bash supports: for loop and while loop
Example:
for (( i = 0 ; i <= 5; i++ )) # WATCH OUT THE DOUBLE PARENTHESIS. There is no reason, you have to use it this way.
do
echo "Welcome $i times"
done
shell script leanring - note1
Because computers only understand the language of 0 and 1, which is called binary language.
What is Shell?
So Shell is a language interpreter that executes commands read from the standard input device (keyboard) or from a file. It reads your command, interpret and transfer your command to kernal in Linux.
What is Kernel?
Kernel decides who will use this resource, for how long and when. It runs your command or programs (or execute binary files).
$ is important in Bash shell.
Example: $HOME, $n. Only $ + variable can work.
User defined variables
Example: n=10
atring=hello
Rules for naming variables:
1. Variable name must begin with Alphanumeric character or underscore character (_), followed by one or more Alphanumeric character.
2. DON'T put spaces on either side of the equal sign when assigning value to variable. THIS IS IMPORTANT since you can easily forget it.
3. Variables are case-sensitive, e.g. N /=n
4. DO NOT use *, or ?
Math operation in Shell
1. expr op1 math-operator op2## WATCH THE SPACE BETWEEN OPERATOR.
2. echo `expr 5 + 6` # will show 11. Watch the punctuation is not quote.
Double quote, single quote and back quote.
echo "today is date" # output: today is date
echo "today is `date`" #output: today is Fri Jun 27 13:40:19 PDT 2014
echo 'today is `date`' #output: today is `date`
What is Shell?
So Shell is a language interpreter that executes commands read from the standard input device (keyboard) or from a file. It reads your command, interpret and transfer your command to kernal in Linux.
What is Kernel?
Kernel decides who will use this resource, for how long and when. It runs your command or programs (or execute binary files).
$ is important in Bash shell.
Example: $HOME, $n. Only $ + variable can work.
User defined variables
Example: n=10
atring=hello
Rules for naming variables:
1. Variable name must begin with Alphanumeric character or underscore character (_), followed by one or more Alphanumeric character.
2. DON'T put spaces on either side of the equal sign when assigning value to variable. THIS IS IMPORTANT since you can easily forget it.
3. Variables are case-sensitive, e.g. N /=n
4. DO NOT use *, or ?
Math operation in Shell
1. expr op1 math-operator op2## WATCH THE SPACE BETWEEN OPERATOR.
2. echo `expr 5 + 6` # will show 11. Watch the punctuation is not quote.
Double quote, single quote and back quote.
echo "today is date" # output: today is date
echo "today is `date`" #output: today is Fri Jun 27 13:40:19 PDT 2014
echo 'today is `date`' #output: today is `date`
Thursday, June 26, 2014
fortran learning note-5- some frequen error messages
use -g to make debugging.
Segmentation fault: often related to a memory issue (e.g.out of array size or stacksize.)
Stacksize: it consists of a limited amount of address space, often determined at the start of the program. The size of the stack depends on the programming language, machine architecture, multi-threading, and amount of available memory.
A process: in the simplest terms, is an executing program.
A thread: the basic unit to which the operating system allocates processor time. A thread can execute any part of the process code, including parts currently being executed by another thread.
A thread pool: a collection of worker threads that efficiently execute asynchronous callbacks on behalf of the application. The thread pool is primarily used to reduce the number of application threads and provide management of the worker threads.
A fiber: a unit of execution that must be manually scheduled by the application. Fibers run in the context of the threads that schedule them.
Segmentation fault: often related to a memory issue (e.g.out of array size or stacksize.)
Stacksize: it consists of a limited amount of address space, often determined at the start of the program. The size of the stack depends on the programming language, machine architecture, multi-threading, and amount of available memory.
A process: in the simplest terms, is an executing program.
A thread: the basic unit to which the operating system allocates processor time. A thread can execute any part of the process code, including parts currently being executed by another thread.
A thread pool: a collection of worker threads that efficiently execute asynchronous callbacks on behalf of the application. The thread pool is primarily used to reduce the number of application threads and provide management of the worker threads.
A fiber: a unit of execution that must be manually scheduled by the application. Fibers run in the context of the threads that schedule them.
Monday, June 23, 2014
fotran learning notes 4--subroutine and function
Differences: the function is relative simple and just return one value.
Subroutine will return all values in its variable list or may just operate something without input parameters. In addition, you have to call it.
function example
________________________________________________
program fn1
implicit none
real:: a,b,c,bigroot ! ! Program to demonstrate the use of a FUNCTION subprogram !
write(6,10) !! write out on screen
read(5,*) a, b, c !! read from keyboard??
write(6,20) bigroot(a, b, c)
10 format(' Enter the coefficients a, b, c '/)
20 format(' The larger root is ',F12.6)
end program fn1
! ! End of main program
function bigroot(a, b, c)
implicit none
real:: bigroot, a, b, c, test, root1, root2
! ! Function to find largest root of a quadratic
! If no real roots then function returns value -9.0E35
test = b*b - 4.0*a*c
if(test.ge.0.0) then
root1 = (-b + sqrt(test)) / (2.0 * a)
root2 = (-b - sqrt(test)) / (2.0 * a)
if(root2.gt.root1) then
bigroot = root2
else
bigroot = root1
end if
else
bigroot = -9.0e35
end if
return
end function bigroot
subroutine
----------------------------------------------------------------------------------------
program subrout1
implicit none
real:: a,b,c,root1,root2
logical:: realroots
write(*,10)
read(*,*) a,b,c
call solvit(a,b,c,root1,root2,realroots)
if (realroots) then
write(*,20) root1,root2
else
write(*,*) 'Sorry, there are no real roots'
endif
!
10 format('Enter 3 coefficients')
20 format('The roots are',2f12.6)
stop
end program
!subroutine solvit
subroutine solvit(a,b,c,root1,root2,realroots)
implicit none
real::a,b,c,root1,root2,test
logical::realroots
test=b**2 - 4*a*c
if(test>=0.0) then
root1 = (-b + sqrt(test))/(2.0*a)
root2 = (-b - sqrt(test))/(2.0*a)
realroots = .true.
else
realroots = .false.
end if
return
end
Subroutine will return all values in its variable list or may just operate something without input parameters. In addition, you have to call it.
function example
________________________________________________
program fn1
implicit none
real:: a,b,c,bigroot ! ! Program to demonstrate the use of a FUNCTION subprogram !
write(6,10) !! write out on screen
read(5,*) a, b, c !! read from keyboard??
write(6,20) bigroot(a, b, c)
10 format(' Enter the coefficients a, b, c '/)
20 format(' The larger root is ',F12.6)
end program fn1
! ! End of main program
function bigroot(a, b, c)
implicit none
real:: bigroot, a, b, c, test, root1, root2
! ! Function to find largest root of a quadratic
! If no real roots then function returns value -9.0E35
test = b*b - 4.0*a*c
if(test.ge.0.0) then
root1 = (-b + sqrt(test)) / (2.0 * a)
root2 = (-b - sqrt(test)) / (2.0 * a)
if(root2.gt.root1) then
bigroot = root2
else
bigroot = root1
end if
else
bigroot = -9.0e35
end if
return
end function bigroot
subroutine
----------------------------------------------------------------------------------------
program subrout1
implicit none
real:: a,b,c,root1,root2
logical:: realroots
write(*,10)
read(*,*) a,b,c
call solvit(a,b,c,root1,root2,realroots)
if (realroots) then
write(*,20) root1,root2
else
write(*,*) 'Sorry, there are no real roots'
endif
!
10 format('Enter 3 coefficients')
20 format('The roots are',2f12.6)
stop
end program
!subroutine solvit
subroutine solvit(a,b,c,root1,root2,realroots)
implicit none
real::a,b,c,root1,root2,test
logical::realroots
test=b**2 - 4*a*c
if(test>=0.0) then
root1 = (-b + sqrt(test))/(2.0*a)
root2 = (-b - sqrt(test))/(2.0*a)
realroots = .true.
else
realroots = .false.
end if
return
end
Friday, June 20, 2014
[转载]FORTRAN 中的goto/exit/cycle用法
Note: I do not know authors.
1,goto
goto 在Fortran77中就流传下来了,它提供一个任意跳跃到所赋值行代码的位置,如果是在一个do 循环中如
do 30 i=1,N
if(……) goto 30
30 continue
上语句的意思就是如果符合if里的条件,则会进行下一次循环。
2,pause
pause的功能就能跟它的字面意思相同,程序执行到pause 时,会暂停执行,直到用户按下Enter键才会继续执行。
3. continue
continue这个命令没有实际的用途,它的功能就是 继续向下执行程序
4,stop
它可用来结束程序执行。
5,cycle
cycle命令可由略过循环的程序模块中,在cycle命令后面的所有程序代码,直接跳回循环的开头来进行下一次循环。
如
do floor=1,dest
if(floor==4) cycle
write(*,*) floor
end do
执行结果如下
1
2
3
5
6
6 exit
exit的功能是可以直接跳出一个正在进行的循环,不论是do 循环还是do while 循环。
1,goto
goto 在Fortran77中就流传下来了,它提供一个任意跳跃到所赋值行代码的位置,如果是在一个do 循环中如
do 30 i=1,N
if(……) goto 30
30 continue
上语句的意思就是如果符合if里的条件,则会进行下一次循环。
2,pause
pause的功能就能跟它的字面意思相同,程序执行到pause 时,会暂停执行,直到用户按下Enter键才会继续执行。
3. continue
continue这个命令没有实际的用途,它的功能就是 继续向下执行程序
4,stop
它可用来结束程序执行。
5,cycle
cycle命令可由略过循环的程序模块中,在cycle命令后面的所有程序代码,直接跳回循环的开头来进行下一次循环。
如
do floor=1,dest
if(floor==4) cycle
write(*,*) floor
end do
执行结果如下
1
2
3
5
6
6 exit
exit的功能是可以直接跳出一个正在进行的循环,不论是do 循环还是do while 循环。
Wednesday, June 18, 2014
fortran learning notes-3 file related operations
how to communicate with PC to open and operate files.
program test
implicit none
integer :: i
open(10, file=’cubes.dat’) ! 10 is the unit number of a file
do i=1,100
write(10,1) i, i*i, i**3
end do
close(10) ! do not forget to close it.
1 format(i4,i6,i8) ! see below for format explaination
For example, to read one 2-digit integer followed by two 8-digit integers, you could use the format statement:
10 format(i2,2i8)
2. open and read a file.
Codes in one example
open(unit=11,file="ch3oh-o2.xyz",status="old",action="read")
do i =1, np
read(11,*) atomsymbol(i),coordx(i),coordy(i),coordz(i)
end do
close(11)
- open and write a file
program test
implicit none
integer :: i
open(10, file=’cubes.dat’) ! 10 is the unit number of a file
do i=1,100
write(10,1) i, i*i, i**3
end do
close(10) ! do not forget to close it.
1 format(i4,i6,i8) ! see below for format explaination
For example, to read one 2-digit integer followed by two 8-digit integers, you could use the format statement:
10 format(i2,2i8)
2. open and read a file.
Codes in one example
open(unit=11,file="ch3oh-o2.xyz",status="old",action="read")
do i =1, np
read(11,*) atomsymbol(i),coordx(i),coordy(i),coordz(i)
end do
close(11)
Tuesday, June 17, 2014
fortran learning notes-2-write and read
06/17/2014
WRITE
-----------------------------------------------------------------------------
example 1:
! convert a integer to a string.
program test
Integer:: I
Character(len=10):: str
I = 9999
Write( str, '(I10)' ) I
print *, str
End
PRINT
---------------------------------------------------------------------------
WRITE
-----------------------------------------------------------------------------
example 1:
! convert a integer to a string.
program test
Integer:: I
Character(len=10):: str
I = 9999
Write( str, '(I10)' ) I
print *, str
End
---------------------------------------------------------------------------
Monday, June 16, 2014
fortran-learning notes-1
1. BasicsFortran language key internal words.
PROGRAM: to start a program
End: end a program
integer, real, complex, logical, character, open, read, write, print, and, for, do, continue, ALLOCATABLE, dimension, etc.
2. Punctuation
First, in Fortran you do not need any punctuation after each sentence.
!: followed by comments.
3. Symbols
> means more than.
& is used to connect two sentences in continuous lines.
*: multiply
+: adding
-: minus
PROGRAM: to start a program
End: end a program
integer, real, complex, logical, character, open, read, write, print, and, for, do, continue, ALLOCATABLE, dimension, etc.
2. Punctuation
First, in Fortran you do not need any punctuation after each sentence.
!: followed by comments.
': single quote.
": double quote.
: is used to operate the string (stringa(1:4)) or specify the elements in an array : array(3:8)
( ): parenthesis. Quite useful.
Examples:
: means the numbers of sentences. :4
; means multiple sentences together.
, means comma. It separate the type name or type values. or objects must be separated by commas in one sentence. Example:
WRITE (*,*) "Hello World", variablename, "More text", anothervariable
.
?
:: means a double colon which is used to declaim a type (integer, real, character)
< means more than.
*: multiply
+: adding
-: minus
/: division.
// means string operator. stringb//stringa=stringbstringa**: power (3**2: 3 to the power of 2)
space: multiple spaces are equal to one space in Fortran.
= means equal sign
_ means a underscore, which can be used to make a name.
$:
%:
4. Fortran variable types
character example:
CHARACTER(LEN=4), PARAMETER :: Name = 'Smith'
CHARACTER(LEN=*), PARAMETER :: Name = 'Smith'
real example:
REAL :: Offset = 0.1, Length = 10.0, tolerance = 1.E-7
how to learn a computer language-in Chinese
发信人: amrita (Amrita), 信区: CS
标 题: 非专业人士转行CS成功经验分享
发信站: BBS 未名空间站 (Sat Oct 12 02:32:18 2013, 美东)
看到很多朋友讨论转行的事情,问题集中在'我是非专业,能不能转,怎么转,学什么'上.
作为一个成功转行的人,我来分享一下个人的经验,希望对大家有所帮助.
先说下个人情况:
[起点]高考失利,被国内三本降分录取,服从分配到农学专业.
[终点]微软SDE.
这里向大家传递的第一个信息是--起点这么低的人都能转,这些硕士博士、腿
肚子都比我脑瓜子聪明的人,怎么就不能转?要有信心,要有勇气!
下面分享一些转行过程中的关键点(正向能量)、痛苦(从中学到了什么)和弯路(你
应该避开).
[关键点1]你不必多喜欢计算机,但至少不能讨厌,不然它不能吸引你反而互相排斥,学什
么都学不进去的.
[关键点2]正确的计算机操作,
很多人笑了.但你问问计算机玩的好的人,正确的指法和飞
一样的操作给他们带来了多少好处.
[关键点3]清楚的语言表达能力(女生有这方面的天赋).
现在的程序大多是面向对象编
程,写程序基本上跟聊天一样.语言能力好的人思路清晰,用词准确,组织有条件,程序的
要求是一样的.如果你未来成为软件工程师,看到一堆胡言乱语般的代码,不信你找写代
码的人聊聊天,他说话肯定也那样.而且你想,汉语或者英语这么复杂的语言你都能说好,
词汇量不超过100个的编程语言哪有学不好的道理??
[关键点4]一个入门语言.
建议C系语言,C/Java/C++/C#/JavaScript/Objective-C都是这
一系的,好处是个会了别的看着眼熟(尽管还是有些不一样的地方),而且语言排名里C
和Java不分伯仲, C++/Objective-C一直在争季军,C#在老五老六的地方呆好些年了...
不用多说了吧?C系霸占前五名,占就业市场的80%以上.如果你感觉C系语言看着不舒服
(相信我,每个人都有自己用着最舒服的语言,不见得你老婆/老公喜欢的语言你就一定
喜欢)你也可以试试Smalltalk系的语言,这系的语言动态语言居多,在排行榜上上升势
头强劲,多与Linux的文化有些渊源(跟BASH看起来像),Ruby/PHP/Python算是这系的(
PHP也有C系的血统,但个人感觉更Smalltalk一些).我走了[弯路], 是从VB开始的,又学
的DELPHI,原因很简单,一开始的时候对C系水土不服.后来喜欢上了C#才转过来的.之所
以能转,是因为VB.NET/DELPHI和C#/Java在面向对象方面的语法几乎一模一样.[信息]说
学通一门语言后再学另一门会很快,这是真的,一定要相信.后面还会说到.
[关键点5]入门语言怎么学?
几个要点:
(1)关键字里最重要的一批要都弄懂,会写实例.汉语有20000多常用词汇,你看看本文
一共才用了几个?编程语言也是这样,不到100个关键字里,四五十个会用来应付80%的
日常工作.
(2)类库和函数库,光会语言大体上是没有生产力的,会了类库才算有点生产力了,至少
跟着别人能干活了.学类库是个积累的过程,第一部分知识来源于你看书,第二部分来源
你实验和工作中的需求(google和stackoverflow会教给你很多)第三部分是你去查类
库文档,MSDN和Java JDK文档都是这类的
(3)语言和类库重叠的部分,有些语言自己带一些库, C++/Ruby/PHP/Python等,
这块书里讲的少,实践用的还挺多,只能靠写代码的时候积累和看文档了.
(4)工具,特别是开发环境(IDE),最好有个师傅带带你.
(5)业界框架,前面说过类库,而框架是用类库里的类'堆'起来的,结构良好的,有一定
功能的组件集合.Java里的Spring,Hibernate什么的, .NET里的Entity Framework,
Enterprise Library等, PHP的Zend framework等...这个学习的时候不一定需要精通,
但你要知道原理,能写一两个小程序.目的是有人带着你的时候你能干活.一切为生产力
服务(话说生产力就是钱啊!)
[关键点6]入门语言学到什么程度?
你知道什么叫中译英吧?就是把中文译成英语.你试试能不能做到'中译Java'或者'中译
C#'. 也就是用面向对象的语法把你要说的意思表达出来.
[关键点7]如何快速学习?
不管你学哪门语言,快速从UI到Database打通都是一个好办法. 无论是你学Java也好,C#
也好,找个朋友,花上半天工夫, 带着你写一两个程序, 这个程序有UI(Web/桌面/手机),
有服务层, 用到框架, 读写数据库. 这样你就知道数据从
哪儿来,到哪儿去, 怎么由db里的条目变成对象,怎样在ui上表达...
[关键点7]一定要边学边练.
一定要相信我,坐在那里看计算机的书看多少个小时都白扔. 看一个例子,写一个例子,
写完之后立刻一步步debug(无论它有没有bug),这是最快的学习方法. 特别是debug能
力. 因为你工作后的第一个任务90%的可能是给前辈修bug.
[弯路]我这点一开始做的非常差,我一开始属于学院派的,语言说起来头头是道,上手能
力不行,经常被刚毕业的小弟bs
[关键点8]说哪 儿了...想不起来了.哦对了,有空的时候把你学到的东西讲给别人听(
包括帮助比你还新的初学者),讲通了,包你一辈子不忘.我最初转行的时候被赶鸭子上
架边自学边给中学生讲计算机知识和编程基础, 一不小心学的还挺扎实.
[关键点9]读代码.
网上有很多开源代码,拿来读.能读懂多少就读多少,哪怕是一个片断. 这是让你'练胆',
就是见了大规模的程序不胆怯. 无论你未来进MS还是Amazon,他们的程序规模相当大.
经过练胆的过程, 你一上手就不怕, 效率自然就上来了. 还有一点就是, 开源代码一般
质量都不错, 你可以从中培养编程语言的'语感'(跟英语的语感一个道理),未来工作
中可以翻过头来参考(但不能直接抄哦!)也能分清工作中别人的代码什么是好的,什
么是不好的.
[关键点10]你得有好朋友带,你得有好朋友带,你得有好朋友带,你得有好朋友带...
[关键点11]像学佛从皈依到成佛有个次第一样,学编程也一样. 大致是这样一个次第:
语言-库->框架->模式->架构,不用学到模式级别你就已经能工作了.
[关键点12]算法有多重要?如果你的工作岗位跟写算法相关,那就很重要了,但大多数工
作岗位上面向对象的设计思想要比算法设计思想更重要. 甚至好的面向对象设计能够简
化复杂的、面向过程思想的算法.
[关键点13]算法有多重要?我写重复了?没有!这次是说面试.很多公司面试的时候很
看重算法,但工作起来用的并不多.何解?那是考你的基础扎实不扎实,脑子灵活不灵活.
据我估计, 50%的题集中在string和一维向量的操作; 35%集中在tree的操作; 剩下15
%考考深/广度优先的图顶天了.
[关键点14]要有内应, 也就是有人推荐. 一定一定一定. 推荐你的人能告诉你大约考什
么题, 工作是什么, 可以让你先试试他们正在做的工作. 佛国人在这点上做的比我们强
,我们要学习. 别忘了,推荐你的人、帮助过你的人,你要感恩.
[关键点15]要不要做qa或者tester先?其实也是不错的选择.因为大部分tester和qa也
不是纯手动的了,也要写代码,了解产品.这是整个软件生存周期中的一部分,而且相对容
易上手.
[关键点16]大公司还是小公司?这不是一个非黑即白的问题.两个都面着,能进哪个进哪
个.但,切记切记切记!要跟进一个有质量文化的组,这个组里有人愿意带你,你的工作可
以有压力,但不能不开心, 你的领导可以批评你,但不能整你.对了,还有一类公司叫外包
公司,可以把外包公司当作进大公司的跳板.
[关键点17]关于教材.
(1)书,买前先借,因为你不知道哪本书你看着最舒服.花了银子
买回来看着不舒服太浪费.
(2)视频, youtube上几乎每种技术都有免费的教程. 我的感觉,初学一个技术(特别
是框架)的时候,youtube对我的帮助比google还大.
(3)课程, 没必要参加面对面的培训. 我花$299在pluralsight上注册了个全年,学的
很爽. 类似的网站还有不少,都不贵. 国内也有很多网上的免费课, 可惜比较水.而且对
英语工作环境没什么帮助.
[关键点18]关于方向.
大体而言,写程序有三个发展方向:UI层, 服务层(业务逻辑层)和数据库(需要学几
种SQL语言).不建议以UI层为入门,因为这一层的技术杂,变化快,模式和框架最多.可以
尝试由服务层或数据库层入门. 这两层的技术相对稳定, 框架和
模式也都很经典, 特别是服务层, 它是传统意义'编程'在现代的延伸.回想一下,女孩搞
数据库的也不少.我的数据库老师,还有后来遇到的一些女同事, 好多都是搞数据库和BI
的. 搞UI开发的女生是最少的(个人经验)
推荐几个online course网站,适合想转行人士:
http://www.codecademy.com/
https://www.coursera.org/
http://code.org/
https://www.udacity.com/
https://www.edx.org/
标 题: 非专业人士转行CS成功经验分享
发信站: BBS 未名空间站 (Sat Oct 12 02:32:18 2013, 美东)
看到很多朋友讨论转行的事情,问题集中在'我是非专业,能不能转,怎么转,学什么'上.
作为一个成功转行的人,我来分享一下个人的经验,希望对大家有所帮助.
先说下个人情况:
[起点]高考失利,被国内三本降分录取,服从分配到农学专业.
[终点]微软SDE.
这里向大家传递的第一个信息是--起点这么低的人都能转,这些硕士博士、腿
肚子都比我脑瓜子聪明的人,怎么就不能转?要有信心,要有勇气!
下面分享一些转行过程中的关键点(正向能量)、痛苦(从中学到了什么)和弯路(你
应该避开).
[关键点1]你不必多喜欢计算机,但至少不能讨厌,不然它不能吸引你反而互相排斥,学什
么都学不进去的.
[关键点2]正确的计算机操作,
很多人笑了.但你问问计算机玩的好的人,正确的指法和飞
一样的操作给他们带来了多少好处.
[关键点3]清楚的语言表达能力(女生有这方面的天赋).
现在的程序大多是面向对象编
程,写程序基本上跟聊天一样.语言能力好的人思路清晰,用词准确,组织有条件,程序的
要求是一样的.如果你未来成为软件工程师,看到一堆胡言乱语般的代码,不信你找写代
码的人聊聊天,他说话肯定也那样.而且你想,汉语或者英语这么复杂的语言你都能说好,
词汇量不超过100个的编程语言哪有学不好的道理??
[关键点4]一个入门语言.
建议C系语言,C/Java/C++/C#/JavaScript/Objective-C都是这
一系的,好处是个会了别的看着眼熟(尽管还是有些不一样的地方),而且语言排名里C
和Java不分伯仲, C++/Objective-C一直在争季军,C#在老五老六的地方呆好些年了...
不用多说了吧?C系霸占前五名,占就业市场的80%以上.如果你感觉C系语言看着不舒服
(相信我,每个人都有自己用着最舒服的语言,不见得你老婆/老公喜欢的语言你就一定
喜欢)你也可以试试Smalltalk系的语言,这系的语言动态语言居多,在排行榜上上升势
头强劲,多与Linux的文化有些渊源(跟BASH看起来像),Ruby/PHP/Python算是这系的(
PHP也有C系的血统,但个人感觉更Smalltalk一些).我走了[弯路], 是从VB开始的,又学
的DELPHI,原因很简单,一开始的时候对C系水土不服.后来喜欢上了C#才转过来的.之所
以能转,是因为VB.NET/DELPHI和C#/Java在面向对象方面的语法几乎一模一样.[信息]说
学通一门语言后再学另一门会很快,这是真的,一定要相信.后面还会说到.
[关键点5]入门语言怎么学?
几个要点:
(1)关键字里最重要的一批要都弄懂,会写实例.汉语有20000多常用词汇,你看看本文
一共才用了几个?编程语言也是这样,不到100个关键字里,四五十个会用来应付80%的
日常工作.
(2)类库和函数库,光会语言大体上是没有生产力的,会了类库才算有点生产力了,至少
跟着别人能干活了.学类库是个积累的过程,第一部分知识来源于你看书,第二部分来源
你实验和工作中的需求(google和stackoverflow会教给你很多)第三部分是你去查类
库文档,MSDN和Java JDK文档都是这类的
(3)语言和类库重叠的部分,有些语言自己带一些库, C++/Ruby/PHP/Python等,
这块书里讲的少,实践用的还挺多,只能靠写代码的时候积累和看文档了.
(4)工具,特别是开发环境(IDE),最好有个师傅带带你.
(5)业界框架,前面说过类库,而框架是用类库里的类'堆'起来的,结构良好的,有一定
功能的组件集合.Java里的Spring,Hibernate什么的, .NET里的Entity Framework,
Enterprise Library等, PHP的Zend framework等...这个学习的时候不一定需要精通,
但你要知道原理,能写一两个小程序.目的是有人带着你的时候你能干活.一切为生产力
服务(话说生产力就是钱啊!)
[关键点6]入门语言学到什么程度?
你知道什么叫中译英吧?就是把中文译成英语.你试试能不能做到'中译Java'或者'中译
C#'. 也就是用面向对象的语法把你要说的意思表达出来.
[关键点7]如何快速学习?
不管你学哪门语言,快速从UI到Database打通都是一个好办法. 无论是你学Java也好,C#
也好,找个朋友,花上半天工夫, 带着你写一两个程序, 这个程序有UI(Web/桌面/手机),
有服务层, 用到框架, 读写数据库. 这样你就知道数据从
哪儿来,到哪儿去, 怎么由db里的条目变成对象,怎样在ui上表达...
[关键点7]一定要边学边练.
一定要相信我,坐在那里看计算机的书看多少个小时都白扔. 看一个例子,写一个例子,
写完之后立刻一步步debug(无论它有没有bug),这是最快的学习方法. 特别是debug能
力. 因为你工作后的第一个任务90%的可能是给前辈修bug.
[弯路]我这点一开始做的非常差,我一开始属于学院派的,语言说起来头头是道,上手能
力不行,经常被刚毕业的小弟bs
[关键点8]说哪 儿了...想不起来了.哦对了,有空的时候把你学到的东西讲给别人听(
包括帮助比你还新的初学者),讲通了,包你一辈子不忘.我最初转行的时候被赶鸭子上
架边自学边给中学生讲计算机知识和编程基础, 一不小心学的还挺扎实.
[关键点9]读代码.
网上有很多开源代码,拿来读.能读懂多少就读多少,哪怕是一个片断. 这是让你'练胆',
就是见了大规模的程序不胆怯. 无论你未来进MS还是Amazon,他们的程序规模相当大.
经过练胆的过程, 你一上手就不怕, 效率自然就上来了. 还有一点就是, 开源代码一般
质量都不错, 你可以从中培养编程语言的'语感'(跟英语的语感一个道理),未来工作
中可以翻过头来参考(但不能直接抄哦!)也能分清工作中别人的代码什么是好的,什
么是不好的.
[关键点10]你得有好朋友带,你得有好朋友带,你得有好朋友带,你得有好朋友带...
[关键点11]像学佛从皈依到成佛有个次第一样,学编程也一样. 大致是这样一个次第:
语言-库->框架->模式->架构,不用学到模式级别你就已经能工作了.
[关键点12]算法有多重要?如果你的工作岗位跟写算法相关,那就很重要了,但大多数工
作岗位上面向对象的设计思想要比算法设计思想更重要. 甚至好的面向对象设计能够简
化复杂的、面向过程思想的算法.
[关键点13]算法有多重要?我写重复了?没有!这次是说面试.很多公司面试的时候很
看重算法,但工作起来用的并不多.何解?那是考你的基础扎实不扎实,脑子灵活不灵活.
据我估计, 50%的题集中在string和一维向量的操作; 35%集中在tree的操作; 剩下15
%考考深/广度优先的图顶天了.
[关键点14]要有内应, 也就是有人推荐. 一定一定一定. 推荐你的人能告诉你大约考什
么题, 工作是什么, 可以让你先试试他们正在做的工作. 佛国人在这点上做的比我们强
,我们要学习. 别忘了,推荐你的人、帮助过你的人,你要感恩.
[关键点15]要不要做qa或者tester先?其实也是不错的选择.因为大部分tester和qa也
不是纯手动的了,也要写代码,了解产品.这是整个软件生存周期中的一部分,而且相对容
易上手.
[关键点16]大公司还是小公司?这不是一个非黑即白的问题.两个都面着,能进哪个进哪
个.但,切记切记切记!要跟进一个有质量文化的组,这个组里有人愿意带你,你的工作可
以有压力,但不能不开心, 你的领导可以批评你,但不能整你.对了,还有一类公司叫外包
公司,可以把外包公司当作进大公司的跳板.
[关键点17]关于教材.
(1)书,买前先借,因为你不知道哪本书你看着最舒服.花了银子
买回来看着不舒服太浪费.
(2)视频, youtube上几乎每种技术都有免费的教程. 我的感觉,初学一个技术(特别
是框架)的时候,youtube对我的帮助比google还大.
(3)课程, 没必要参加面对面的培训. 我花$299在pluralsight上注册了个全年,学的
很爽. 类似的网站还有不少,都不贵. 国内也有很多网上的免费课, 可惜比较水.而且对
英语工作环境没什么帮助.
[关键点18]关于方向.
大体而言,写程序有三个发展方向:UI层, 服务层(业务逻辑层)和数据库(需要学几
种SQL语言).不建议以UI层为入门,因为这一层的技术杂,变化快,模式和框架最多.可以
尝试由服务层或数据库层入门. 这两层的技术相对稳定, 框架和
模式也都很经典, 特别是服务层, 它是传统意义'编程'在现代的延伸.回想一下,女孩搞
数据库的也不少.我的数据库老师,还有后来遇到的一些女同事, 好多都是搞数据库和BI
的. 搞UI开发的女生是最少的(个人经验)
推荐几个online course网站,适合想转行人士:
http://www.codecademy.com/
https://www.coursera.org/
http://code.org/
https://www.udacity.com/
https://www.edx.org/
Sunday, June 15, 2014
to see a doctor in US: some frequently used sentences
Not written by me. I do not know who is the author.
1、一般病情
He feels headache, nausea and vomiting.
他觉得头痛、恶心和想吐。
He is under the weather.
他不舒服,生病了。
He began to feel unusually tired.
他感到反常的疲倦?
He feels light-headed.
他觉得头晕。
She has been shut-in for a few days.
她生病在家几天了。
Her head is pounding.
她头痛。
His symptoms include loss of appetite, weight loss, excessive fatigue, fever and chills.
他的症状有食欲和体重减轻、非常疲倦、发烧和发冷。
He feels exhausted or fatigued most of the time.
他大部份时间都觉得非常疲倦。
He has been lacking in energy for some time.
他感到虚弱有段时间了。
He feels drowsy, dizzy and nauseated.
他觉得昏昏欲睡,头晕目眩和想吐。
He feels as though everything around him is spinning.
他感到周围的东西都在打转。
He has noticed some loss of hearing.
他发觉耞力差些。
She has some pains and itching around her eyes.
她眼睛四周又痛又痒。
2、伤风感冒
He has been coughing up rusty or greenish-yellow phlegm.
他咳嗽带有绿黄色的痰。
His eyes feel itchy and he has been sneezing.
他眼睛发痒,而且一直在打喷嚏。
He has a fever, aching muscles and hacking cough.
他有发烧,筋骨酸痛和常常咳嗽。 hacking = constant。
He coughed with sputum and feeling of malaise.
他咳嗽有浓痰,而且觉得很虚弱。 malaise = debility。
He gets a cold with a deep hacking cough.
他伤风咳嗽。
He has a headache, aching bones and joints.
他头痛,骨头、关节也痛。
He has a persistent cough.
他不停地在咳。
He has bouts of uncontrollable coughing.
他一阵阵的咳嗽,难以控制。
He has hoarse and has lost his voice sometimes.
他声音嘶哑,有时失声。
He has a sore throat and a stuffy nose.
他嗓子疼痛而且鼻子不通。
His breathing is harsh and wheezy.
他呼吸时,有气喘似的呼哧呼哧作响。
He has a stabbing pain that comes on suddenly in one or both temples.
有时突然间太阳穴刺痛。
He has a runny nose, sneezing or a scratchy throat.
他流鼻水,打喷嚏和喉咙沙哑。
3、女性疾病
She has noticed one lump in her breast.
她发觉乳房有个肿块。
There is a hard, swollen lump on her right breast.
她右乳房有肿块。
Her left breast is painful and swollen.
她左乳房疼痛且肿大。
She has heavy bleeding with her periods.
她月经来的很多。
Her vaginal discharge is white or greenish-yellow and unpleasant smelling.
她阴道分泌物带白色或绿黄色,而且气味不好。
She has noticed occasional spotting of blood between periods.
在月经来的前后,她有时也发觉有滴滴达达的流血。
She has some bleeding after intercourse.
性交后有出血。
She feels some vaginal itching.
她感到阴部发痒。
She has painful periods and abnormal vaginal discharge.
她月经来时疼痛,而且阴道有不正常的分泌物。
4 手脚毛病
His both hands and feet ache all over.
他两手两脚都很酸痛。
He has pain on the sole of his feet.
他脚底很痛。
There is a wart-like lump on the sole of right foot.
我右脚底有个像肉疣般的硬块。
His ankles look puffy and they pit when he presses them with his finger.
他的足踝好象肿了,用手按,就有小坑痕。 pit = small dent form 句里的 they 和 them 都是指 ankles。
The pain in his left foot is accompanied by redness and swelling.
左脚酸痛,并有红肿。
The joints near his fingernails and knuckles look swollen.
指头和指节旁边的关节,似乎有肿大。
He has numbness and tingling in his hands and fingers.
他的手和指头感到麻木和刺痛。
His legs become painful following strenuous exercise.
激烈运动后,他的腿就痛。
His knee is misshapen or unable to move.
他的膝盖有点畸形,也不能动。
There are some swellings in his armpit.
他的腋窝肿大。
He is troubled with painful muscles and joints.
他的筋骨和关节都痛。
She is troubled by the pains in the back and shoulders.
她的后背和肩膀都痛。
His knee has been bothering him for some time.
他的膝盖不舒服,已有一段时间了。
5、睡眠不好
He is sleeping poorly.
他睡不好
He has difficulty in sleeping, inability to concentrate.
他不易入睡,也难集中精神。
It is usually hard for her to fall asleep when she goes to bed at night.
她晚上就寝,很难入睡。
He wakes during the night or early morning and finds it difficult to fall asleep again.
他晚间或清早醒来后,再也不能入睡。
He has nightmares occasionally.
他有时做噩梦。
6、男性疾病
He urinates more frequently than usual.
他小便比平时多。
He has difficulty controlling his bladder.
他很难控制小便。bladder 是膀胱。
There are some lumps on his testicles.
他的睪丸有些硬块。
He has had burning or pain when he urinates.
他小便时感到发_C和疼痛。
He is passing less urine than usual.
他小便比平时少。
He has had painless swelling in his scrotum.
他的***有不痛的肿大。
He feels lack of interest in sex.
他自觉对性的兴趣大减。
He has difficulty starting his urine flow.
他小便不畅通。
His urine stream is very weak and slow.
他小便流动得很慢很弱。
He dribbles a little urine after he has finished urinating.
他小便后,还会有少量零星地滴下。
He has had some discharge from his penis.
他的阴茎排出一些流脓。
His urine is cloudy and it smells strong.
他的小便混浊,而且气味不好。
He has a dull heavy ache in the crotch.
他的胯部感到隐痛。
He has a small leakage of urine when he coughs or sneezes.
他咳嗽或打喷嚏时,会有点泄尿。
He has trouble urinating.
他小便有困难。
7、呼吸方面
His breathing has become increasingly difficult.
他呼吸越来越困难。
He has to breathe through his mouth.
他要用口呼吸。
He is short of breath, even when he has not been exercising, he is breathless.
他喘气;即使不运动,他也是上气不接下气。
His cough is more like wheezing.
他的咳嗽有呼哧呼哧的响声。
His cough is dry, producing no phlegm.
他是干咳,没有痰。
He has coughed up blood.
他咳嗽有血。
His nose stuffed up when he had a cold.
他感冒时鼻子就不通。
He coughs up a lot of phlegm thick spit on most days.
他多半时间咳出浓浓的痰。
He has a feeling of tightness in the chest or a feeling that he is suffocating.
他胸部觉得闷闷的,好象透不过气来。
8、口腔毛病
He has pain in his teeth or jaw.
他的牙齿和下巴疼痛。
He has some problems with his teeth.
他牙齿有问题。
The tooth hurts only when he bites down on it.
他咬东西时,牙齿就痛。动词时态:hurt,hurt, hurt,bite,bit,bit。
His gums are red and swollen.
他的牙床红肿。
His tongue is red and sore all over.
他的舌头到处红和痛。
His breath smells bad and he has a foul taste in his mouth.
他口里有怪味。
His gums do bleed.
他牙床有出血。
He has some sore swellings on his gum or jaw.
他的牙床和下巴肿痛。
He has sore places on or around the lip.
他的嘴唇和周围都很痛。
There are cracks at the corners of his mouth.
他的嘴巴角落破了。
There are some discolored areas inside on his tongue.
他舌头里边有些地方颜色怪怪的。
9、肠胃毛病
He has a bloated, uncomfortable feeling after meal.
他饭后肚子觉得胀胀的,很不舒服。
或 He feels bloated after eating.
He has bouts of abdominal pain.
他有一阵阵的肚痛。
He feels bloated in his abdominal area.
他感到肚子胀胀的。注:胀胀的,像「puff up」,但不是真正的肿「swell up」。
The pain is mainly in the lower upper right part of the abdomen.
痛是在肚子下半部。
He has nausea and vomiting.
他有恶心和呕吐。
It is difficult or painful for him to swallow.
他吞下食物时会痛。
He has passed more gas than usual.
他放…比平常多。
He has been constipated for a few days.
他便秘了好几天。
He suffers pains when he moves his bowels.
他大便时很痛。
He has some bleeding from his rectum.
他的***出血。
He has noticed some blood in his bowel movements.
他发觉大便时有些血。
His bowel movements are pale, greasy and foul smelling.
他大便呈灰白色,含油脂的恶臭。 或
His bowel movements are grey or black in color.
他的大便呈灰白色。
He has trouble with diarrhea.
他拉肚子。
10、血压等等
His blood pressure is really up.
他的血压很高。
He has noticed frequent urination, increased thirst and unexpected tireness.
他发觉常常小便,非常口渴和更加疲倦。
It is a chest pain that gets worse when he bends over or lies down.
他弯腰或躺下时,胸部更痛。
He has noticed excessive sweating and unexplained tireness.
他体会到过度的出汗和难以解释的疲倦。
He has a sharp pain in one area of his spine.
他的脊椎某部位刺痛。
He has pain in other joints including hip, knee and ankle.
其它关节疼痛包括臀部、膝盖和脚踝。
His eyes seem to be bulging.
他的眼睛觉得有点肿胀。
He has double vision.
他的视线有双重影子。
He feels there is a film over his eyes.
他觉得眼里有种薄膜似的东西,挡住视线。
His vision in the right eye blurred.
他右眼视线模糊不清。
He has had some earaches lately.
他近来耳朵有点痛。
He has a repeated buzzing or other noises in his ears.
他耳朵常有嗡嗡的声音。
1、一般病情
He feels headache, nausea and vomiting.
他觉得头痛、恶心和想吐。
He is under the weather.
他不舒服,生病了。
He began to feel unusually tired.
他感到反常的疲倦?
He feels light-headed.
他觉得头晕。
She has been shut-in for a few days.
她生病在家几天了。
Her head is pounding.
她头痛。
His symptoms include loss of appetite, weight loss, excessive fatigue, fever and chills.
他的症状有食欲和体重减轻、非常疲倦、发烧和发冷。
He feels exhausted or fatigued most of the time.
他大部份时间都觉得非常疲倦。
He has been lacking in energy for some time.
他感到虚弱有段时间了。
He feels drowsy, dizzy and nauseated.
他觉得昏昏欲睡,头晕目眩和想吐。
He feels as though everything around him is spinning.
他感到周围的东西都在打转。
He has noticed some loss of hearing.
他发觉耞力差些。
She has some pains and itching around her eyes.
她眼睛四周又痛又痒。
2、伤风感冒
He has been coughing up rusty or greenish-yellow phlegm.
他咳嗽带有绿黄色的痰。
His eyes feel itchy and he has been sneezing.
他眼睛发痒,而且一直在打喷嚏。
He has a fever, aching muscles and hacking cough.
他有发烧,筋骨酸痛和常常咳嗽。 hacking = constant。
He coughed with sputum and feeling of malaise.
他咳嗽有浓痰,而且觉得很虚弱。 malaise = debility。
He gets a cold with a deep hacking cough.
他伤风咳嗽。
He has a headache, aching bones and joints.
他头痛,骨头、关节也痛。
He has a persistent cough.
他不停地在咳。
He has bouts of uncontrollable coughing.
他一阵阵的咳嗽,难以控制。
He has hoarse and has lost his voice sometimes.
他声音嘶哑,有时失声。
He has a sore throat and a stuffy nose.
他嗓子疼痛而且鼻子不通。
His breathing is harsh and wheezy.
他呼吸时,有气喘似的呼哧呼哧作响。
He has a stabbing pain that comes on suddenly in one or both temples.
有时突然间太阳穴刺痛。
He has a runny nose, sneezing or a scratchy throat.
他流鼻水,打喷嚏和喉咙沙哑。
3、女性疾病
She has noticed one lump in her breast.
她发觉乳房有个肿块。
There is a hard, swollen lump on her right breast.
她右乳房有肿块。
Her left breast is painful and swollen.
她左乳房疼痛且肿大。
She has heavy bleeding with her periods.
她月经来的很多。
Her vaginal discharge is white or greenish-yellow and unpleasant smelling.
她阴道分泌物带白色或绿黄色,而且气味不好。
She has noticed occasional spotting of blood between periods.
在月经来的前后,她有时也发觉有滴滴达达的流血。
She has some bleeding after intercourse.
性交后有出血。
She feels some vaginal itching.
她感到阴部发痒。
She has painful periods and abnormal vaginal discharge.
她月经来时疼痛,而且阴道有不正常的分泌物。
4 手脚毛病
His both hands and feet ache all over.
他两手两脚都很酸痛。
He has pain on the sole of his feet.
他脚底很痛。
There is a wart-like lump on the sole of right foot.
我右脚底有个像肉疣般的硬块。
His ankles look puffy and they pit when he presses them with his finger.
他的足踝好象肿了,用手按,就有小坑痕。 pit = small dent form 句里的 they 和 them 都是指 ankles。
The pain in his left foot is accompanied by redness and swelling.
左脚酸痛,并有红肿。
The joints near his fingernails and knuckles look swollen.
指头和指节旁边的关节,似乎有肿大。
He has numbness and tingling in his hands and fingers.
他的手和指头感到麻木和刺痛。
His legs become painful following strenuous exercise.
激烈运动后,他的腿就痛。
His knee is misshapen or unable to move.
他的膝盖有点畸形,也不能动。
There are some swellings in his armpit.
他的腋窝肿大。
He is troubled with painful muscles and joints.
他的筋骨和关节都痛。
She is troubled by the pains in the back and shoulders.
她的后背和肩膀都痛。
His knee has been bothering him for some time.
他的膝盖不舒服,已有一段时间了。
5、睡眠不好
He is sleeping poorly.
他睡不好
He has difficulty in sleeping, inability to concentrate.
他不易入睡,也难集中精神。
It is usually hard for her to fall asleep when she goes to bed at night.
她晚上就寝,很难入睡。
He wakes during the night or early morning and finds it difficult to fall asleep again.
他晚间或清早醒来后,再也不能入睡。
He has nightmares occasionally.
他有时做噩梦。
6、男性疾病
He urinates more frequently than usual.
他小便比平时多。
He has difficulty controlling his bladder.
他很难控制小便。bladder 是膀胱。
There are some lumps on his testicles.
他的睪丸有些硬块。
He has had burning or pain when he urinates.
他小便时感到发_C和疼痛。
He is passing less urine than usual.
他小便比平时少。
He has had painless swelling in his scrotum.
他的***有不痛的肿大。
He feels lack of interest in sex.
他自觉对性的兴趣大减。
He has difficulty starting his urine flow.
他小便不畅通。
His urine stream is very weak and slow.
他小便流动得很慢很弱。
He dribbles a little urine after he has finished urinating.
他小便后,还会有少量零星地滴下。
He has had some discharge from his penis.
他的阴茎排出一些流脓。
His urine is cloudy and it smells strong.
他的小便混浊,而且气味不好。
He has a dull heavy ache in the crotch.
他的胯部感到隐痛。
He has a small leakage of urine when he coughs or sneezes.
他咳嗽或打喷嚏时,会有点泄尿。
He has trouble urinating.
他小便有困难。
7、呼吸方面
His breathing has become increasingly difficult.
他呼吸越来越困难。
He has to breathe through his mouth.
他要用口呼吸。
He is short of breath, even when he has not been exercising, he is breathless.
他喘气;即使不运动,他也是上气不接下气。
His cough is more like wheezing.
他的咳嗽有呼哧呼哧的响声。
His cough is dry, producing no phlegm.
他是干咳,没有痰。
He has coughed up blood.
他咳嗽有血。
His nose stuffed up when he had a cold.
他感冒时鼻子就不通。
He coughs up a lot of phlegm thick spit on most days.
他多半时间咳出浓浓的痰。
He has a feeling of tightness in the chest or a feeling that he is suffocating.
他胸部觉得闷闷的,好象透不过气来。
8、口腔毛病
He has pain in his teeth or jaw.
他的牙齿和下巴疼痛。
He has some problems with his teeth.
他牙齿有问题。
The tooth hurts only when he bites down on it.
他咬东西时,牙齿就痛。动词时态:hurt,hurt, hurt,bite,bit,bit。
His gums are red and swollen.
他的牙床红肿。
His tongue is red and sore all over.
他的舌头到处红和痛。
His breath smells bad and he has a foul taste in his mouth.
他口里有怪味。
His gums do bleed.
他牙床有出血。
He has some sore swellings on his gum or jaw.
他的牙床和下巴肿痛。
He has sore places on or around the lip.
他的嘴唇和周围都很痛。
There are cracks at the corners of his mouth.
他的嘴巴角落破了。
There are some discolored areas inside on his tongue.
他舌头里边有些地方颜色怪怪的。
9、肠胃毛病
He has a bloated, uncomfortable feeling after meal.
他饭后肚子觉得胀胀的,很不舒服。
或 He feels bloated after eating.
He has bouts of abdominal pain.
他有一阵阵的肚痛。
He feels bloated in his abdominal area.
他感到肚子胀胀的。注:胀胀的,像「puff up」,但不是真正的肿「swell up」。
The pain is mainly in the lower upper right part of the abdomen.
痛是在肚子下半部。
He has nausea and vomiting.
他有恶心和呕吐。
It is difficult or painful for him to swallow.
他吞下食物时会痛。
He has passed more gas than usual.
他放…比平常多。
He has been constipated for a few days.
他便秘了好几天。
He suffers pains when he moves his bowels.
他大便时很痛。
He has some bleeding from his rectum.
他的***出血。
He has noticed some blood in his bowel movements.
他发觉大便时有些血。
His bowel movements are pale, greasy and foul smelling.
他大便呈灰白色,含油脂的恶臭。 或
His bowel movements are grey or black in color.
他的大便呈灰白色。
He has trouble with diarrhea.
他拉肚子。
10、血压等等
His blood pressure is really up.
他的血压很高。
He has noticed frequent urination, increased thirst and unexpected tireness.
他发觉常常小便,非常口渴和更加疲倦。
It is a chest pain that gets worse when he bends over or lies down.
他弯腰或躺下时,胸部更痛。
He has noticed excessive sweating and unexplained tireness.
他体会到过度的出汗和难以解释的疲倦。
He has a sharp pain in one area of his spine.
他的脊椎某部位刺痛。
He has pain in other joints including hip, knee and ankle.
其它关节疼痛包括臀部、膝盖和脚踝。
His eyes seem to be bulging.
他的眼睛觉得有点肿胀。
He has double vision.
他的视线有双重影子。
He feels there is a film over his eyes.
他觉得眼里有种薄膜似的东西,挡住视线。
His vision in the right eye blurred.
他右眼视线模糊不清。
He has had some earaches lately.
他近来耳朵有点痛。
He has a repeated buzzing or other noises in his ears.
他耳朵常有嗡嗡的声音。
Tuesday, June 10, 2014
如何提高英文的科研写作能力-by 施一公
如何提高英文的科研写作能力
http://ee.hnu.cn/eeold/php/info/detail.php?id=19001
施一公
作为一个科研工作者,在国际学术期刊上发表科研论文是与同行交流、取得国
际影响的必经之路。有些国内的科学家,实验做得很漂亮,但常常苦恼于论文的写作力
不从心,成为国际交流的一大障碍。本文从博主的亲身体验出发,给博士生、博士后、
以及年轻的PI提供一个借鉴。文章最后做简短总结。
我大学时的同班同学都知道,那时我的英语不算好(英语四级考试仅为“良”),
写作尤其糟糕。初到美国之时,对英文环境适应得很差,读一篇JBC的文章要五、六个
小时,还常常不理解其中一些关键词句的意思,心里压力极大。
很幸运,我在约翰霍普金斯大学(Johns Hopkins University)攻读博士学位时,
1991年4月遇到了学兄和启蒙老师John Desjarlais。听了我的苦恼后,John告诉我,“
Spend 45 minutes every day reading Washington Post, and you will be cruising
with your written English in two years”(每天花45分钟读《华盛顿邮报》,两年
后你的写作能力会得心应手)。这条建议正合我意 - 我原本就对新闻感兴趣!于是,我
每天上午安排完第一批实验后,都会在十点左右花一小时的时间阅读《华盛顿邮报》,
主要看A版(新闻版)。刚开始,我一个小时只能读两、三个短消息或一个长篇报道,中
间还不得不经常查字典看生词。但不知不觉间,我的阅读能力明显提高,1992年老布什
与克林顿竞选总统,我跟踪新闻,常常一个小时能读上几个版面的消息或四、五个长篇
报道,有时还把刚看到的新闻绘声绘色地讲给师兄师姐听。
阅读直接提升了我的英文写作能力。看完一些新闻后,我常常产生动笔写自己感想
的冲动。92年巴塞罗那奥运会,中国游泳队取得了四金五银的好成绩,美国主要媒体纷
纷指责这是中国运动员服用违禁药物,但没有任何检测的证据,完全凭美国运动员的感
觉。此事让我很气愤,我生平第一次给《华盛顿邮报》和《巴尔的摩太阳报》(The
Baltimore Sun)各写了一封信,评论报道的不公平。没想到两天后《巴尔的摩太阳报
》居然原封不动的把我的信刊登在“读者来信”栏目,同事祝贺,我也洋洋得意。受到
此事鼓励,我在此后三年多的日子里,常常动笔,有些文章发表在报刊上(大部分投稿
石沉大海),也曾代表中国留学生写信向校方争取过中国学生的利益。有时还有意外的
惊喜。95年的一天,一位朋友打电话告诉我:今天出版的《巴尔的摩太阳报》上有我的
评论文章!我急匆匆赶到街头买来5份报纸,果然,在A版的倒数第二页,以15x15厘米
的篇幅发表了我一个多星期前寄给报社、本以为不会发表的一篇抨击吴宏达的文章。
以上是简述我个人英文写作提升的一段过程。但是,科研论文不同于读者来信,有
其专业特点、甚至是固定格式。1994年,我第一次完整地写科研论文,感觉很差。好不
容易写完的文章,连我自己都不愿意读第二遍;勉强修改之后,交给了老板Jeremy
Berg。他拖了三周没看我的文章,我实在忍不住了、去催他,上午9点,Jeremy告诉我
:今天看!11点,我去他办公室催,秘书拦住我,说Jeremy正在办理重要事务,两点前
不得打扰。我心里惴惴,不知Jeremy在干什么。下午一点半,Jeremy急匆匆过来找我,
拿了一叠纸, “This is the draft. Please let me know what you think. We can
aim for a Science report.”(这是初稿,你看看如何,我们可以试试《科学》)我
仔细一看,天啊!一共7页,四个多小时Jeremy已经把文章的整体写完了,只是缺少
Method和 references。让我郁闷的是,他根本没有用我的初稿。
【其实,写文章贵在一气呵成。我也沿袭了Jeremy的风格。2006年10月,在我们处
于劣势的激烈竞争中,有两个课题面临被 scoop的危险,我曾经两次、一晚上赶一篇文
章。10月15日,傍晚8点左右开始写、通宵,第二天早晨10点完成一篇按照《细胞》杂
志格式的论文,包括abstract, introduction, results, discussion,仔细阅读一遍后
于下午4点半完成网上投稿。这篇文章最终发表在12月份《自然》的子刊《结构与分子
生物学》上(电子版于11月10日发表)。另一篇,10月18日,晚6点开始写、通宵,第
二天早晨8点完成,上午9点半完成投稿,最终发表在12月15日的《细胞》上。当然,能
通宵完成一篇文章,还有一个重要前提,就是对研究领域非常熟悉,对文章整体的大概
思路已经深思熟虑,所有的Figures都事先做好了。这些前期工作即使全身心投入也需
要3-4天。】
从1994年自己写第一篇科研论文的艰难到现在写起来得心应手、驾轻就熟,我总结
出如下经验:
1.要写好科研论文,必须先养成读英文文章的习惯,争取每天30-60分钟。刚开始
可以选择以读英文报纸、英文新闻为主,逐渐转为读专业杂志。我会在近期专门写一篇
博客文章介绍一套行之有效的增强读专业杂志能力的办法。
2.写科研论文,最重要的是逻辑。逻辑的形成来自对实验数据的总体分析。必须
先讨论出一套清晰的思路,然后按照思路来做图(Figures),最后才能执笔。
3.具体写作时,先按照思路(即Figures)写一个以subheading为主的框架,然后
开始具体写作。第一稿,切忌追求每一句话的完美,更不要追求词语的华丽,而主要留
心逻辑(logic flow),注意前后句的逻辑关系、相邻两段的逻辑关系。写作时,全力
以赴,尽可能不受外界事情干扰(关闭手机、座机),争取在最短时间内拿出第一稿。
还要注意:一句话不可太长。
4.学会照葫芦画瓢。没有人天生会写优秀的科研论文,都是从别人那里学来的。
学习别人的文章要注意专业领域的不同,有些领域(包括我所在的结构生物学)有它内
在的写作规律。科研文章里的一些话是定式,比如 “To investigate the mechanism
of …, we performed …”, “These results support the former, but not the
latter, hypothesis …”, “Despite recent progress, how … remains to be
elucidated …” 等等。用两次以后,就逐渐学会灵活运用了。在向别人学习时,切忌
抄袭。在美国一些机构,连续7个英文单词在一起和别人的完全一样,原则上就被认为
抄袭(plagiarism)。
5.第一稿写完后,给自己不要超过一天的休息时间,开始修改第二稿。修改时,
还是以逻辑为主,但对每一句话都要推敲一下,对abstract和正文中的关键语句要字斟
句酌。学会用“Thesaurus”(同义词替换)以避免过多重复。第二稿的修改极为关键
,再往后就不会大改了。
6.第二稿以后的修改,主要注重具体的字句,不会改变整体逻辑了。投稿前,一
定要整体读一遍,对个别词句略作改动。记住:学术期刊一般不会因为具体的语法错误
拒绝一篇文章,但一定会因为逻辑混乱而拒绝一篇文章。
这套方法行之有效,我对所有的学生和博士后都会如此教导。我的第一个博士后是
柴继杰,1999年加入我在普林斯顿大学的实验室。继杰当时的英文阅读和写作能力很差
。我对他的第一个建议就是,“每天花半小时读英文报纸”。难能可贵的是:他坚持下
来了!经过几年的努力,2004年继杰已经能写出不错的grant proposal,2006年他的第
一篇独立科研论文发表在《Molecular Cell》上,随后相继在《自然》发表两篇、在其
它一流学术期刊发表十多篇论文。写作能力开始成熟。
发表论文是一件值得高兴的事情,但要明白:论文只是一个载体,是为了向同行们
宣告你的科研发现,是科学领域交流的重要工具。所以,在科研论文写作时,一定要谨
记于心的就是:用最简单的话表达最明白的意思,但一定要逻辑严谨!其实,中文和英
文论文皆如此!
(2010-08-14)
http://ee.hnu.cn/eeold/php/info/detail.php?id=19001
施一公
作为一个科研工作者,在国际学术期刊上发表科研论文是与同行交流、取得国
际影响的必经之路。有些国内的科学家,实验做得很漂亮,但常常苦恼于论文的写作力
不从心,成为国际交流的一大障碍。本文从博主的亲身体验出发,给博士生、博士后、
以及年轻的PI提供一个借鉴。文章最后做简短总结。
我大学时的同班同学都知道,那时我的英语不算好(英语四级考试仅为“良”),
写作尤其糟糕。初到美国之时,对英文环境适应得很差,读一篇JBC的文章要五、六个
小时,还常常不理解其中一些关键词句的意思,心里压力极大。
很幸运,我在约翰霍普金斯大学(Johns Hopkins University)攻读博士学位时,
1991年4月遇到了学兄和启蒙老师John Desjarlais。听了我的苦恼后,John告诉我,“
Spend 45 minutes every day reading Washington Post, and you will be cruising
with your written English in two years”(每天花45分钟读《华盛顿邮报》,两年
后你的写作能力会得心应手)。这条建议正合我意 - 我原本就对新闻感兴趣!于是,我
每天上午安排完第一批实验后,都会在十点左右花一小时的时间阅读《华盛顿邮报》,
主要看A版(新闻版)。刚开始,我一个小时只能读两、三个短消息或一个长篇报道,中
间还不得不经常查字典看生词。但不知不觉间,我的阅读能力明显提高,1992年老布什
与克林顿竞选总统,我跟踪新闻,常常一个小时能读上几个版面的消息或四、五个长篇
报道,有时还把刚看到的新闻绘声绘色地讲给师兄师姐听。
阅读直接提升了我的英文写作能力。看完一些新闻后,我常常产生动笔写自己感想
的冲动。92年巴塞罗那奥运会,中国游泳队取得了四金五银的好成绩,美国主要媒体纷
纷指责这是中国运动员服用违禁药物,但没有任何检测的证据,完全凭美国运动员的感
觉。此事让我很气愤,我生平第一次给《华盛顿邮报》和《巴尔的摩太阳报》(The
Baltimore Sun)各写了一封信,评论报道的不公平。没想到两天后《巴尔的摩太阳报
》居然原封不动的把我的信刊登在“读者来信”栏目,同事祝贺,我也洋洋得意。受到
此事鼓励,我在此后三年多的日子里,常常动笔,有些文章发表在报刊上(大部分投稿
石沉大海),也曾代表中国留学生写信向校方争取过中国学生的利益。有时还有意外的
惊喜。95年的一天,一位朋友打电话告诉我:今天出版的《巴尔的摩太阳报》上有我的
评论文章!我急匆匆赶到街头买来5份报纸,果然,在A版的倒数第二页,以15x15厘米
的篇幅发表了我一个多星期前寄给报社、本以为不会发表的一篇抨击吴宏达的文章。
以上是简述我个人英文写作提升的一段过程。但是,科研论文不同于读者来信,有
其专业特点、甚至是固定格式。1994年,我第一次完整地写科研论文,感觉很差。好不
容易写完的文章,连我自己都不愿意读第二遍;勉强修改之后,交给了老板Jeremy
Berg。他拖了三周没看我的文章,我实在忍不住了、去催他,上午9点,Jeremy告诉我
:今天看!11点,我去他办公室催,秘书拦住我,说Jeremy正在办理重要事务,两点前
不得打扰。我心里惴惴,不知Jeremy在干什么。下午一点半,Jeremy急匆匆过来找我,
拿了一叠纸, “This is the draft. Please let me know what you think. We can
aim for a Science report.”(这是初稿,你看看如何,我们可以试试《科学》)我
仔细一看,天啊!一共7页,四个多小时Jeremy已经把文章的整体写完了,只是缺少
Method和 references。让我郁闷的是,他根本没有用我的初稿。
【其实,写文章贵在一气呵成。我也沿袭了Jeremy的风格。2006年10月,在我们处
于劣势的激烈竞争中,有两个课题面临被 scoop的危险,我曾经两次、一晚上赶一篇文
章。10月15日,傍晚8点左右开始写、通宵,第二天早晨10点完成一篇按照《细胞》杂
志格式的论文,包括abstract, introduction, results, discussion,仔细阅读一遍后
于下午4点半完成网上投稿。这篇文章最终发表在12月份《自然》的子刊《结构与分子
生物学》上(电子版于11月10日发表)。另一篇,10月18日,晚6点开始写、通宵,第
二天早晨8点完成,上午9点半完成投稿,最终发表在12月15日的《细胞》上。当然,能
通宵完成一篇文章,还有一个重要前提,就是对研究领域非常熟悉,对文章整体的大概
思路已经深思熟虑,所有的Figures都事先做好了。这些前期工作即使全身心投入也需
要3-4天。】
从1994年自己写第一篇科研论文的艰难到现在写起来得心应手、驾轻就熟,我总结
出如下经验:
1.要写好科研论文,必须先养成读英文文章的习惯,争取每天30-60分钟。刚开始
可以选择以读英文报纸、英文新闻为主,逐渐转为读专业杂志。我会在近期专门写一篇
博客文章介绍一套行之有效的增强读专业杂志能力的办法。
2.写科研论文,最重要的是逻辑。逻辑的形成来自对实验数据的总体分析。必须
先讨论出一套清晰的思路,然后按照思路来做图(Figures),最后才能执笔。
3.具体写作时,先按照思路(即Figures)写一个以subheading为主的框架,然后
开始具体写作。第一稿,切忌追求每一句话的完美,更不要追求词语的华丽,而主要留
心逻辑(logic flow),注意前后句的逻辑关系、相邻两段的逻辑关系。写作时,全力
以赴,尽可能不受外界事情干扰(关闭手机、座机),争取在最短时间内拿出第一稿。
还要注意:一句话不可太长。
4.学会照葫芦画瓢。没有人天生会写优秀的科研论文,都是从别人那里学来的。
学习别人的文章要注意专业领域的不同,有些领域(包括我所在的结构生物学)有它内
在的写作规律。科研文章里的一些话是定式,比如 “To investigate the mechanism
of …, we performed …”, “These results support the former, but not the
latter, hypothesis …”, “Despite recent progress, how … remains to be
elucidated …” 等等。用两次以后,就逐渐学会灵活运用了。在向别人学习时,切忌
抄袭。在美国一些机构,连续7个英文单词在一起和别人的完全一样,原则上就被认为
抄袭(plagiarism)。
5.第一稿写完后,给自己不要超过一天的休息时间,开始修改第二稿。修改时,
还是以逻辑为主,但对每一句话都要推敲一下,对abstract和正文中的关键语句要字斟
句酌。学会用“Thesaurus”(同义词替换)以避免过多重复。第二稿的修改极为关键
,再往后就不会大改了。
6.第二稿以后的修改,主要注重具体的字句,不会改变整体逻辑了。投稿前,一
定要整体读一遍,对个别词句略作改动。记住:学术期刊一般不会因为具体的语法错误
拒绝一篇文章,但一定会因为逻辑混乱而拒绝一篇文章。
这套方法行之有效,我对所有的学生和博士后都会如此教导。我的第一个博士后是
柴继杰,1999年加入我在普林斯顿大学的实验室。继杰当时的英文阅读和写作能力很差
。我对他的第一个建议就是,“每天花半小时读英文报纸”。难能可贵的是:他坚持下
来了!经过几年的努力,2004年继杰已经能写出不错的grant proposal,2006年他的第
一篇独立科研论文发表在《Molecular Cell》上,随后相继在《自然》发表两篇、在其
它一流学术期刊发表十多篇论文。写作能力开始成熟。
发表论文是一件值得高兴的事情,但要明白:论文只是一个载体,是为了向同行们
宣告你的科研发现,是科学领域交流的重要工具。所以,在科研论文写作时,一定要谨
记于心的就是:用最简单的话表达最明白的意思,但一定要逻辑严谨!其实,中文和英
文论文皆如此!
(2010-08-14)
Subscribe to:
Posts (Atom)