ACM入门之新手入门

ACM入门之新手入门 收藏

第一章 新手入门

1.ACM国际大学生程序设计竞赛简介

1)背景与历史

1970年在美国TexasA&M大学举办了首次区域竞赛,从而拉开了国际大学生程序设计竞赛的序幕。1977年,该项竞赛被分为两个级别:区域赛和总决赛,这便是现代ACM竞赛的开始。在亚洲、美国、欧洲、太平洋地区均设有区域赛点。1995至1996年,来自世界各地的一千多支s代表队参加了ACM区域竞赛。ACM大学生程序设计竞赛由美国计算机协会(ACM)举办,旨在向全世界的大学生提供一个展示和锻炼其解决问题和运用计算机能力的机会,现已成为全世界范围内历史最悠久、规模最大的大学生程序设计竞赛。

Continue reading

提高博客阅读体验的六种技巧

博客的阅读体验有很多方面,如果您要建立一个受欢迎的博客,那么,你可能要善待你的读者,提高阅读体验,这样会提高他们再次访问你博客的机会,让他们成为你的博客或网站的常客之一,当然你的网站如果可以注册的话,还可以成为你的注册用户之一,下面我就提供较为实用的六种方法。
1.简短明了的博客介绍。
这通常被大家认为是没用的,或者说不必要的,但不然,其实这样可以让访问者可以清楚的知道你的网站或博客的类型。总结一下格式大致为:
第一部分:网站的目标,即网站的主题内容,比如月光博客在刚建站是写的一篇介绍,月光博客,是一个以讨论电脑技术和互联网科技为主的科技博客。月光博客的目标就是什么什么。
第二部分:网站主的介绍,大致的内容就是我是谁,我现在的职业等,当然你也可以更加的详细点。
第三部分:联系方式和网站说明,这一部分是很重要的,这样读者或访问者可以和你联系,提出意见和自己的想法,对于网站说明也是很重要的,比如我不交换链接等。
2.高质量的博文而不是求最多的博文。
我们知道访问者访问你的网站是想从你的网站里面得到他们想得到的东西或信息,他们第一次来访你的网站大部分是通过搜索引擎如谷歌等,才知道有你这么个网站,所以你一定要珍惜这个机会,有时候即使是同一件事,他们已经在别的网站获知了,但是读者更想知道你(网站主)的个人想法,而不是别人说什么,某某网站说了什么,同时有了想法也要记得定时更新哦!如果你每一天或每一周(建议时间不要太长,这样也很难稳住访问者),同时又是发表不同的看法,访问者就会觉得耳目一新,那么你想没用户都难!
3.偶尔能带有娱乐(幽默色彩)性质的方式去陈述同一件事。
比如我会有很长的时间,我在写我的博客,一直在称述单调乏味的东西,这时候你应该考虑网站是不是应该渗透点具有娱乐色彩的元素呢?写出来让自己和访问你的博客的人可接受的,这样的一段时间里面常客也会来不定期的访问,他们不会觉得乏味,因为你总能给他们带来惊喜,一句话,我的建议是时常能以娱乐的性质给用户带来惊喜,陈述于对自己最近发生了的事的想法!
比如:月光是一个主讲技术类博客,但月光会不定期的给读者带来诸如:我最近去了哪里,还带来了自己的近照等,这种方式绝对是能增加自己网站的个性和特色的!
4.思路清晰,让读者在最短时间知道你要说什么。
这其实很简单,就是当读者看到你的博文的时候不要发现错别字或重复的句子,不要把播客写成博客等,我相信这点要求并不高的!
5.每篇博文能做到表达正确,清楚,简单。

如果你要写独立博客

听说你有兴趣写独立博客,很高兴你对独立博客有着独特的兴趣,独立博客圈是一群非正式的、很独特的人在一起写着记录着想要记录的东西,真诚希望你能够坚持并且享受写博客带来的乐趣,因为现在写书的越来越多,认真写博客的越来越少。

也许你已经玩过QQ空间和很多门户博客,也许你对于门户们的各种限制感到颇为不爽,也许你担心有一天会因为不知名的理由帐号被封。然后在某一天看到一些不错的独立博客,例如可能吧、月光博客、爱枣报,你会想说也许我可以自己来写写独立博客。当然独立博客有着光明的一面,但也有着访问速度不稳定、数据安全性不高、对作者要求更高等缺点,尽管这些问题通过一段时间的了解都能够减缓,但是在刚开始独立博客旅程的时候仍然无法忽视。

如果你要写独立博客,首先你需要学会怎样挑选和注册一个域名,你要了解各种后缀的意义和价格,域名要贴合自己博客的内容。。com域名是首选但是好域名几乎绝迹,类似。cc这样的非主流后缀域名对于个人博客也许是一个不错的选择。

如果你要写独立博客,你需要选择一个空间来放置你的博客程序,国内的访问速度更快但是隐性成本更高,你需要在复杂的备案系统学会怎样备案;国外空间的访问速度略慢,但是选择大的空间服务商的数据安全性较有保障。

Continue reading

非常给力的编程新手教程

那些密密麻麻的E文是一些很棒的编程教程,令人激动的是~~全是英文版的。可因为是菜鸟教程,SO很简单阅读,边练编程技术边成为英语高手,哇塞,非常不错的哦!

Quicl温馨提醒,如果觉得自己在编程方面还是初级入门,我嘛~强烈建议你把本页设为你的收藏夹。
C

C Optimization Tutorial
Compiling C and C++ Programs on UNIX Systems – gcc/g++
Building and Using Static and Shared C Libraries
Programming in C: UNIX System Calls and Subroutines Using C
Introduction to C Programming
C FAQ
C Programming Class Notes
ANSI C for Programmers on UNIX Systems
Sams Teach Yourself C in 24 Hours
Sams Teach Yourself C in 21 Days (4th Ed.)
The Standard C Library for Linux – Part 1: file functions
The Standard C Library for Linux – Part 2: character input/output
The Standard C Library for Linux – Part 3: formatted input/output
The Standard C Library for Linux – Part 4: Character Handling
The Standard C Library for Linux – Part 5: Miscellaneous Functions
Programming in C: A Tutorial
An Introduction to C Development on Linux
C Programming Course
C Language Tutorial
CScene: An Online Magazine for C and C++ Programming

C++
C++ Tutorial
Understanding C++: An Accelerated Introduction
An Introduction to C++ Class Hierarchies
G++ FAQ
Introduction to Object-Oriented Programming Using C++
Compiling C and C++ Programs on UNIX Systems – gcc/g++
C++ FAQ Lite
C++ Programming Language Tutorials
Reducing Dependencies in C++
C++ Exception Handling
Part 1: Unicode
Part 2: A Complete String Class
Making C++ Loadable Modules Work
Sams Teach Yourself C++ in 21 Days (2nd Ed.)
C++ Portability Guide
C++ Tips
C++ Language Tutorial
CScene: An Online Magazine for C and C++ Programming
C++ Libraries FAQ

CGI
CGI Programming Tutorial
CGI Programming 101
CGI Manual of Style
CGI Developer’s Guide
CGI Programming Unleashed
Sams Teach Yourself CGI Programming with Perl 5 in a Week (2nd Ed.)
CGI/Perl Tips, Tricks and Hints
A Tour of HTML Forms and CGI Scripts
Reading CGI Data: URL-Encoding and the CGI Protocol
CGI Programming FAQ

CORBA
CORBA FAQ
A Brief Tutorial on CORBA
CORBA 2.0 Specification
CORBA Tutorials
Sams Teach Yourself CORBA in 14 Days
Linux Network Programming, Part 3 – CORBA: The Software Bus
CORBA Program Development, Part 1
CORBA Program Development, Part 2
CORBA Program Development, Part 3

CSS
CSS2 Tutorial

CVS
CVS Tutorial
Concurrent Version System Tutorial

DHTML
Introduction to Dynamic HTML

Emacs
Emacs: The Software Engineer’s “Swiss Army Knife”
Emacs FAQ
GNU Emacs Lisp Reference Manual
Programming in Emacs Lisp
GNU Emacs Manual
A Tutorial Introduction to Emacs
EMACSulation: Internet-ready!
EMACSulation: Ediff – An Emacs interface to diff and patch
EMACSulation: Emacs as a Server
EMACSulation: Customizing Emacs
Basic Emacs
EMACSulation: Templating Mechanisms
Emacs Macros and the Power-Macros Package
Polyglot Emacs 20.4

Expect
Advanced Programming in Expect: A Bulletproof Interface
Automating Tasks with Expect
What Can you Expect?–A Data Collection Project Using Linux

Fortran
Professional Programmer’s Guide to Fortran 77
Fortran 90 and Computational Science
User Notes on Fortran Programming
Fortran Programming for Physics and Astronomy
A Fortran 90 Tutorial
Using GNU Fortran
Fortran 90: A Course for Fortran 77 Programmers
Fortran 90 for the Fortran 77 Programmer
Introduction to Fortran

GIMP
GIMP Tutorial Index
A Tutorial for Perl GIMP Users
A Scheme Tutorial for GIMP Users
GIMP Guide
The GIMP User Manual
Pseudo 3-D with GIMP
Graphical Photocomposition with GIMP
Creating Text with the GIMP
Creating Fire Effects with the GIMP
Creating and Editing Animations with GIMP
GIMP-Perl: GIMP Scripting for the Rest of Us
Writing a GIMP Plugin
GIMP: The RRU Tutorial
GIMP User FAQ
Script-Fu Tutorial
The Quick Start Guide to the GIMP, Part 1
The Quick Start Guide to the GIMP, Part 2
The Quick Start Guide to the GIMP, Part 3
The Quick Start Guide to the GIMP, Part 4

GNOME
Application Programming Using the GNOME Libraries
Part 1: Everything You Need to Get Started
Part 2: Building a Sample Genealogy Program
Part 3: Adding File Saving and Loading Using libxml
Creating GTK+ Widgets with GOB: An Easier Way to Derive New GTK+ Widgets
Handling Multipel Documents: Using the GnomeMDI Framework
Livening Things Up: Graphics Made Easy Using the GNOME Canvas
Developing Gnome Applications with Python – Part 1

GTK
GDK Reference Manual
GLib Reference Manual
GTK+ Reference Manual
The GIMP Toolkit
GTK+ FAQ
GTK V1.2 Tutorial
Drawing and Event Handling in GTK
An Introduction to the GIMP Tool Kit

Gnuplot
Constrained Dynamics
Continuum Dynamics
Differential Equation Basics
Energy Functions and Stiffness
Particle System Dynamics
An Introduction to Physically Based Modeling
Rigid Body Dynamics I
Rigid Body Dynamics II
Scientific Visualization Tutorials
Gnuplot – An Interactive Plotting Program
GIF Animation Tutorial

HTML
HTML Table Tutorial
HTML by Example
How to Use HTML 3.2
Creating a Client-Side Image Map
Advanced HTML: How to Create Complex Multimedia Documents for the Web
The ABCs of HTML
Sharky’s Netscape Frames Tutorial

IP-Masquerading
ipchains: Packet Filtering for Linux 2.2
Setting Up IP Masquerade
Setting Up IP-Masquerading
Ipchains: Easy Links to the Net
Linux Networking Using Ipchains

ILU
ILU Reference Manual
Using ILU with ANSI C: A Tutorial
Using ILU with Java: A Tutorial
Using ILU with Python: A Tutorial

ML
ML Tutorial
Programming in Standard ML ’97
A Gentle Introduction to ML
Moscow ML Owner’s Manual

IPC
Advanced 4.4BSD Interpprocess Communication Tutorial
UNIX Multi-Process Programming and IPC

Java
Enterprise JavaBeans Tutorial
JavaBeans Short Course
Introduction to the JavaBeans API
JDBC Short Course
Essentials of the Java Programming Language, Part 1
Essentials of the Java Programming Language, Part 2
Writing Advanced Applications for the Java Platform
Fundamentals of Java Security
Fundamentals of Java Servlets
Introduction to the Collections Framework
Introduction to CORBA
Fundamentals of RMI
Advanced
Introductory
Intermediate
Java Language Specification
Java Tutorial: Servlet Trail
Java Virtual Machine Specification (2nd Ed.)
Glossary of Java and Related Terms
The Java Language Environment
Java Look and Feel Design Guidelines
Story of a Servlet: An Instant Tutorial
Introduction to Java
Java2D: An Introduction and Tutorial
Java Servlet Tutorial
comp.lang.java FAQ
Brewing Java: A Tutorial
Shlurrrppp … Java: The First User-Friendly Tutorial on Java
Swing Tutorial
Swing: A Quick Tutorial for AWT Programmers
Thinking in Java
Java RMI Tutorial
Java for C++ Programmers
The Advanced Jav/aJ2EE Tutorial
Hacking Java: The Java Professional’s Resource Kit
JFC Unleashed
Java Developer’s Guide
Java Developer’s Reference
Sams Teach Yourself Java in 21 Days (Professional Reference Ed.)
Java Unleashed (2nd Ed.)
Java 1.1 Unleashed (3rd Ed.)
Java Game Programming Tutorial
Java Networking FAQ
Java Tutorial: A Practical Guide for Programmers
Sockets Programming in Java
Programming with Java – Part I
Programming with Java – Part II
Setting Up a Java Development Environment for Linux
Understanding Java
Beginner’s Guide to JDK
GUI Development in Java
Java Servlets: An introduction to writing and running Java servlets on Linux

JavaScript
Introductory JavaScript Tutorials
JavaScript Authoring Guide
Client-Side JavaScript 1.3 Guide
Client-Side JavaScript 1.3 Reference
Core JavaScript 1.4 Guide
Core JavaScript 1.4 Reference
Server-Side JavaScript 1.4 Guide
JavaScript FAQ
JavaScript Tutorial
The Way of JavaScript
Voodoo’s Introduction to JavaScript
JavaScript Tutorial for Programmers
JavaScript Primer
EchoEcho JavaScript Tutorial
Sams Teach Yourself JavaScript 1.1 in a Week (2nd Ed.)

Lisp
Common Lisp Hints
Common Lisp the Language (2nd Ed.)
Lisp FAQ
Lisp Programming Tutorial
Lisp Tutorial
LISP Tutorial
Common Lisp HyperSpec

Matlab
Matlab Basics Tutorial
Matlab Summary and Tutorial
Matlab – Official Online Manuals in PDF
Misc
The Soar 8 Tutorial Home Page

MIDI
Basic MIDI Tutorials
Tutorial on MIDI and Music Synthesis

MPI
An MPI Tutorial
Tutorial on MPI
MPI: Portable Parallel Programming for Scientific Computing
Tuning MPI Applications for Peak Performance
MPI: From Fundamentals to Applications
MPI Tutorial
MPI: The Complete Reference
Introduction to Parallel Programming Using MPI
Basics of MPI Programming