IT

Important, RSS management provider changed

FeedBurner Hi, everybody. I decide to change my rss management provider from Feedsky to FeedBurner. I know there is some problems to visit feedburner from China, however, feedburner gives me better service than Feedsky. If this really bother you, please accept my apologize.

This is my new rss link : http://feeds.feedburner.com/kylewu

Most of you use Google Reader. It’s quite easy to subscript feedburner in GR. In the head of Google Reader, there is a button named ‘Add a subscription’. Click it and paste http://feeds.feedburner.com/kylewu into the blank. Then click ‘Add’. That’s all, now you will catch me by using FeedBurner just like Feedsky before.

GR

How to Think Like a Computer Scientist

How to Think Like a Computer Scientist,我已经读完了,由于时间紧迫,没有继续写笔记,对不起各位同学。

有一个好消息是,Dive into Python 3,已经可以看到了,希望学习Python的同学可以去看一下。

Intro to Distributed Version Control (Illustrated)

上篇介绍版本控制,这篇介绍了分布式的版本控制,与集中式vc相比,分布式vc有很多好处。

Traditional version control helps you backup, track and synchronize files. Distributed version control makes it easy to share changes. Done right, you can get the best of both worlds: simple merging and centralized releases.

Distributed? What’s wrong with regular version control?

Read More »

A Visual Guide to Version Control

这篇文章介绍了Version Control版本控制的一些基本概念。

Version Control (aka Revision Control aka Source Control) lets you track your files over time. Why do you care? So when you mess up you can easily get back to a previous working version.

You’ve probably cooked up your own version control system without realizing it had such a geeky name. Got any files like this? (Not these exact ones I hope).

  • KalidAzadResumeOct2006.doc
  • KalidAzadResumeMar2007.doc
  • instacalc-logo3.png
  • instacalc-logo4.png
  • logo-old.png

It’s why we use “Save As”. You want the new file without obliterating the old one. It’s a common problem, and solutions are usually like this:

  • Make a single backup copy (Document.old.txt).
  • If we’re clever, we add a version number or date: Document_V1.txt, DocumentMarch2007.txt
  • We may even use a shared folder so other people can see and edit files without sending them over email. Hopefully they relabel the file after they save it.

Read More »

Getting Started with Parallel Programming

自我感觉很不错的一篇文章,介绍并行计算的。

Multi-core computers have shifted the burden of software performance from chip designers to software architects and developers. In order to gain the full benefits of this new hardware, we need to parallelize our code. The goal of this article is to introduce you to parallelism, its different types and to help you understand when  to parallelize your code – and when not to. We will also examine some of the tool options developers have today for building parallel applications.

Read More »

Google Developer Day 2009 归来

终于等来了GDD的到来,早晨不到6点钟便从床上爬起,赶去坐京津城际,路上很赶,在8点45到达了会场。

Read More »

serialVersionUID介绍

What is serialVersionUID?

serialVersionUID是Serializable类的验证器。也就是说,在序列化时,通过判断serialVersionUID来验证版本的一致性。如果没有匹配,将会抛出InvalidClassException异常。

Guidelines for serialVersionUID

serialVersionUID的几条注意事项

  • 在类中要加入serialVersionUID字段,即使这是该类的第一个版本
  • 在未来的版本中不要去修改serialVersionUID的值,除非你了解修改以后将导致新旧版本不兼容
  • 即使保持serialVersionUID的值不变,序列化类的新版本也有可能与旧版本不兼容

Generate serialVersionUID using Eclipse

这里有两种添加方式:
默认的serialVersionUID和生成serialVersionUID。
选择默认的话将设为private static final long serialVersionUID = 1L;
而生成的话将生成一个随机值(其实是根据类名、接口名、成员方法及属性等来生成一个64位的哈希字段)

Summary

Java序列化是一个简单而又高深的部分,在实践中要慢慢学习。