思立's profile我不是柠檬BlogListsGuestbookMore Tools Help

Blog


    September 29

    谎言豆沙包

    我觉得自己很英俊,叶子楣很贤良淑德,陈伯祥是世界上最棒的人,袁木很诚实,李鹏是我们的伟大领袖。                   

    ——《整蛊专家》里周星驰吃了谎言豆沙包以后如是说

    September 28

    为什么总是左耳

    耳机又听坏了,从地摊上买的8元松下,还有学校买的冒牌索尼松下,到MP3的原装松下,到MP3的原装魅族,再到现在FirstLine,每次耳机坏,都是左耳不发声!
    除了森海塞尔还有什么值得信任的耳机品牌?

    中国已经病入膏肓(zt)

    盛世中国,绿营兵勇埋葬了土地的心


    尽管已经耳闻目睹了太多丑恶,但这次仍然会让我们动容。

    民间报道点此进入。(大伙可把相关图片与报道存下来)

    官方报道点此进入。
    September 27

    鼻血长流ing

    Google公司的牛人们
    agilebus 发表于 2007-9-20 22:44:00

      1、VintonCerf:号称互联网之父,TCIP/IP协议和互联网架构的合作设计者。他05年10月3日开始正式为Google工作,职位为"首席互联网传布官"。

      2、JoshuaBloch:号称java教父,《EffectiveJava》《JAVAPUZZLE》的作者,JSR175标准的leader,J2SE1.5的主要开发人员之一。

      3、GuidoVanRossum:Python之父。Google把Python用的炉火纯青,有了Python之父的加盟,肯定如虎添翼了。

      4、AndrewMorton:linux的二号人物。其在google的工作仍是继续维护linux2.6内核

      5、MarkLucovsky:Windows核心设计师。不晓得碰到了Morton会不会吵起来:-)

      6、BramMoolenaar:Vim的作者

      7、DarinFisher:Mozilla项目主力开发者

      8、SeanEgan:Gaim开发团队的leader

      9、GregStein:Apache项目主要开发者,Apache基金会主席

      10、UdiManber:Amazon的A9搜索团队总监

      11、RobPike,Plan9OS主力开发者

      12、AdamBosworth:BEA的首席架构师

      13、LarryBrilliant:网络先驱大慈善家,负责google.org

      14、AndyHertzfeld:曾经是Macintosh研发团队核心成员

      15、LouisMonier:Internet搜索的发明者,eBay的前开发总监

      16、AdndrewWMoore:卡内基美隆大学资讯与机器人工程学的教授,他将负责Google在匹兹堡新创立的实验室

      17、AlanDavidson:CentreforDemocracy&Technology的协理,他负责处理处理google与美国政府的关系

      18、BenGoodger:Firefox的主要设计者(已由Google加入微软)

      19、DannyThorpe,Delphi开发者,原Borland首席科学家

      20、AlexanderLimi,plone创始人

      21、DavidPresotto,plan9创始人

    惭愧啊

    昨天刚说自己刀剑不入来着,今天就被Mondialito杀死了.
    不过日本人的东西向来风味不同,从狂暴的林檎女王,到安静到低声自言自语的Mondialito,残酷,极端,或者说......变态,日本音乐最是变态,我讨厌死他们了.
    September 26

    小清新已经不能杀死我

    独立,清新,小众,非主流,这样的字眼,现在已经成了热朝,成了臭大街的词汇.我是在这股热朝的前夜爱上他们的,但是当他们越来越热时,我也打算抽身而退了.
    这样的音乐仿佛是一个必然的人生阶段,通过了它,也许会走向下一个阶段.现在我很喜欢听老男人,Johhny Cash, Tom Waits,Nick Cave等人的音乐百听不厌.究竟是我开始控大叔,还是强烈表达了我想快点成为大叔的愿望.
    September 24

    少了他还是不行啊

    老莫离职了,至少是英超的损失吧.不知道他下一站在哪?
    老莫绝对是一个划时代的人物,他是开天辟地的一个,将来还会有更多他这样的人参与到职业足球的游戏中,弗格森,卡佩罗,只是石器时代的大师罢了.

    区审计局内部通知系统 市局通知

    请认真执行信息上报需由主管领导把关签字制度


    文:admin 发表时间2007-9-10 16:33:05

    秘 密★一年 秘密
    特 级

    各科室、所:
    请认真学习京审办发〔2007〕120号文件,并根据要求,继续深入贯彻执行信息上报需由主管领导把关签字制度。



    办公室
    2007年9月10日

    京审办发〔2007〕120号


    北京市审计局转发审计署办公厅
    关于日本广播协会(NHK)制作并播出
    《激流中国》系列纪录片有关情况的通知

    各区、县审计局,市局各处、室、中心:
    现将审计署办公厅关于日本广播协会(NHK)制作并播出《激流中国》系列纪录片有关情况的通知,转发给你们。请各单位结合《北京市审计机关宣传工作管理规 定》和《北京市审计局关于北京奥运会及其筹办期间外国记者采访审计机关管理工作的规定》,认真贯彻、严格执行。各单位在NHK提出采访要求时,应向市局办 公室报告,并按上述规定中的有关要求,履行必要的报批程序。






    二〇〇七年九月四日
    中华人民共和国审计署信笺
    秘密

    审计署办公厅关于日本广播协会(NHK)制作并播出《激流中国》系列纪录片
    有关情况的通知

    各省、自治区、直辖市审计厅(局),解放军审计署,各计划单列市、新疆生产建设兵团审计局,署机关各单位、各特派员办事处、各派出审计局,南京审计学院:
    去年底,日本广播协会(NHK)经我国有关部门批准来华拍摄反映中国现状的系列纪录片《激流中国》。目前已播出四集,其余各集将于9月起陆续制作并播出,内容主要包括中国教育现状、十七大、青藏铁路、物权法、医保制度、中国企业走向世界等。
    该片前两集内容基调消极,观点负面,造成了不良影响。第一集《富人与农民工》忽视我政府在提高人民生活水平、缩小贫富差别上所做的努力和取得的成绩,片面 突出“富人”和“农民工”生活水平差距,以强烈视觉冲击渲染贫富差距。第二集《喉舌与责任》诬称我“新闻管制”,缺乏新闻自由,引导观众关注我社会负面现 象及突出问题。该片还拍摄了一些地方宣传部门对国内媒体报道提出要求的内部文件。
    该片后两集内容较积极客观。第三集《青岛老人院的故事》总体肯定了我政府和社会为解决老龄化问题所作的积极努力,但同时也指出了一些客观存在的问题。第四 集《确保北京用水》反映了北京水资源缺乏的现状及为保护、节约用水所做的努力,同时还介绍了周边省市地区人民为保证北京市用水所作出的牺牲。
    该片播出后,我外交部新闻司和我驻日使馆已就其中消极内容向NHK提出交涉,指出该片前两集观点失衡,基调负面,没有客观、真实反映中国社会现状,误导了 观众,损害了中国形象,中方对此严重不满;希望NHK增强媒体责任感,客观、全面、公正报道中国,并采取必要措施消除该片不良影响。日方表示,NHK一直 力求客观、公正地报道中国,重视与中方建立互信合作关系,拍摄《激》片决无丑化中国之意,对该片给中方带来的不良影响表示遗憾;该节目组已进行反思,制作 后续节目时会更加谨慎、客观,更多反映中国政府的立场以及所做努力,以消除负面影响。
    考虑到NHK长期以来涉华报道总体客观及对我交涉表态较积极,我方同意其继续完成后续采访拍摄,但要求其在制作《激》后续系列节目时公正、客观反映中国各方面的发展情况。
    各级审计机关在NHK提出采访要求时,应履行必要的报告或报批程序;如接受其采访,应增强对其引导和管理的意识,对采访做好充分准备,对采访拍摄施加积极影响并注意把关。


    主题词:外国记者 采访 规定 通知

    北京市审计局办公室  2007年9月4日印发

    September 21

    Math For Programmers-by Steve Yegge

    I've been working for the past 15 months on repairing my rusty math skills, ever since I read a biography of Johnny von Neumann. I've read a huge stack of math books, and I have an even bigger stack of unread math books. And it's starting to come together.

    Let me tell you about it.

    Conventional Wisdom Doesn't Add Up

    First: programmers don't think they need to know math. I hear that so often; I hardly know anyone who disagrees. Even programmers who were math majors tell me they don't really use math all that much! They say it's better to know about design patterns, object-oriented methodologies, software tools, interface design, stuff like that.

    And you know what? They're absolutely right. You can be a good, solid, professional programmer without knowing much math.

    But hey, you don't really need to know how to program, either. Let's face it: there are a lot of professional programmers out there who realize they're not very good at it, and they still find ways to contribute.

    If you're suddenly feeling out of your depth, and everyone appears to be running circles around you, what are your options? Well, you might discover you're good at project management, or people management, or UI design, or technical writing, or system administration, any number of other important things that "programmers" aren't necessarily any good at. You'll start filling those niches (because there's always more work to do), and as soon as you find something you're good at, you'll probably migrate towards doing it full-time.

    In fact, I don't think you need to know anything, as long as you can stay alive somehow.

    So they're right: you don't need to know math, and you can get by for your entire life just fine without it.

    But a few things I've learned recently might surprise you:

    1. Math is a lot easier to pick up after you know how to program. In fact, if you're a halfway decent programmer, you'll find it's almost a snap.
    2. They teach math all wrong in school. Way, WAY wrong. If you teach yourself math the right way, you'll learn faster, remember it longer, and it'll be much more valuable to you as a programmer.
    3. Knowing even a little of the right kinds of math can enable you do write some pretty interesting programs that would otherwise be too hard. In other words, math is something you can pick up a little at a time, whenever you have free time.
    4. Nobody knows all of math, not even the best mathematicians. The field is constantly expanding, as people invent new formalisms to solve their own problems. And with any given math problem, just like in programming, there's more than one way to do it. You can pick the one you like best.
    5. Math is... ummm, please don't tell anyone I said this; I'll never get invited to another party as long as I live. But math, well... I'd better whisper this, so listen up: (it's actually kinda fun.)


    The Math You Learned (And Forgot)

    Here's the math I learned in school, as far as I can remember:

    Grade School: Numbers, Counting, Arithmetic, Pre-Algebra ("story problems")

    High School: Algebra, Geometry, Advanced Algebra, Trigonometry, Pre-Calculus (conics and limits)

    College: Differential and Integral Calculus, Differential Equations, Linear Algebra, Probability and Statistics, Discrete Math

    How'd they come up with that particular list for high school, anyway? It's more or less the same courses in most U.S. high schools. I think it's very similar in other countries, too, except that their students have finished the list by the time they're nine years old. (Americans really kick butt at monster-truck competitions, though, so it's not a total loss.)

    Algebra? Sure. No question. You need that. And a basic understanding of Cartesian geometry, too. Those are useful, and you can learn everything you need to know in a few months, give or take. But the rest of them? I think an introduction to the basics might be useful, but spending a whole semester or year on them seems ridiculous.

    I'm guessing the list was designed to prepare students for science and engineering professions. The math courses they teach in and high school don't help ready you for a career in programming, and the simple fact is that the number of programming jobs is rapidly outpacing the demand for all other engineering roles.

    And even if you're planning on being a scientist or an engineer, I've found it's much easier to learn and appreciate geometry and trig after you understand what exactly math is — where it came from, where it's going, what it's for. No need to dive right into memorizing geometric proofs and trigonometric identities. But that's exactly what high schools have you do.

    So the list's no good anymore. Schools are teaching us the wrong math, and they're teaching it the wrong way. It's no wonder programmers think they don't need any math: most of the math we learned isn't helping us.

    The Math They Didn't Teach You

    The math computer scientists use regularly, in real life, has very little overlap with the list above. For one thing, most of the math you learn in grade school and high school is continuous: that is, math on the real numbers. For computer scientists, 95% or more of the interesting math is discrete: i.e., math on the integers.

    I'm going to talk in a future blog about some key differences between computer science, software engineering, programming, hacking, and other oft-confused disciplines. I got the basic framework for these (upcoming) insights in no small part from Richard Gabriel's Patterns Of Software, so if you absolutely can't wait, go read that. It's a good book.

    For now, though, don't let the term "computer scientist" worry you. It sounds intimidating, but math isn't the exclusive purview of computer scientists; you can learn it all by yourself as a closet hacker, and be just as good (or better) at it than they are. Your background as a programmer will help keep you focused on the practical side of things.

    The math we use for modeling computational problems is, by and large, math on discrete integers. This is a generalization. If you're with me on today's blog, you'll be studying a little more math from now on than you were planning to before today, and you'll discover places where the generalization isn't true. But by then, a short time from now, you'll be confident enough to ignore all this and teach yourself math the way you want to learn it.

    For programmers, the most useful branch of discrete math is probability theory. It's the first thing they should teach you after arithmetic, in grade school. What's probability theory, you ask? Why, it's counting. How many ways are there to make a Full House in poker? Or a Royal Flush? Whenever you think of a question that starts with "how many ways..." or "what are the odds...", it's a probability question. And as it happens (what are the odds?), it all just turns out to be "simple" counting. It starts with flipping a coin and goes from there. It's definitely the first thing they should teach you in grade school after you learn Basic Calculator Usage.

    I still have my discrete math textbook from college. It's a bit heavyweight for a third-grader (maybe), but it does cover a lot of the math we use in "everyday" computer science and computer engineering.

    Oddly enough, my professor didn't tell me what it was for. Or I didn't hear. Or something. So I didn't pay very close attention: just enough to pass the course and forget this hateful topic forever, because I didn't think it had anything to do with programming. That happened in quite a few of my comp sci courses in college, maybe as many as 25% of them. Poor me! I had to figure out what was important on my own, later, the hard way.

    I think it would be nice if every math course spent a full week just introducing you to the subject, in the most fun way possible, so you know why the heck you're learning it. Heck, that's probably true for every course.

    Aside from probability and discrete math, there are a few other branches of mathematics that are potentially quite useful to programmers, and they usually don't teach them in school, unless you're a math minor. This list includes:

    • Statistics, some of which is covered in my discrete math book, but it's really a discipline of its own. A pretty important one, too, but hopefully it needs no introduction.
    • Algebra and Linear Algebra (i.e., matrices). They should teach Linear Algebra immediately after algebra. It's pretty easy, and it's amazingly useful in all sorts of domains, including machine learning.
    • Mathematical Logic. I have a really cool totally unreadable book on the subject by Stephen Kleene, the inventor of the Kleene closure and, as far as I know, Kleenex. Don't read that one. I swear I've tried 20 times, and never made it past chapter 2. If anyone has a recommendation for a better introduction to this field, please post a comment. It's obviously important stuff, though.
    • Information Theory and Kolmogorov Complexity. Weird, eh? I bet none of your high schools taught either of those. They're both pretty new. Information theory is (veeery roughly) about data compression, and Kolmogorov Complexity is (also roughly) about algorithmic complexity. I.e., how small you can you make it, how long will it take, how elegant can the program or data structure be, things like that. They're both fun, interesting and useful.

    There are others, of course, and some of the fields overlap. But it just goes to show: the math that you'll find useful is pretty different from the math your school thought would be useful.

    What about calculus? Everyone teaches it, so it must be important, right?

    Well, calculus is actually pretty easy. Before I learned it, it sounded like one of the hardest things in the universe, right up there with quantum mechanics. Quantum mechanics is still beyond me, but calculus is nothing. After I realized programmers can learn math quickly, I picked up my Calculus textbook and got through the entire thing in about a month, reading for an hour an evening.

    Calculus is all about continuums — rates of change, areas under curves, volumes of solids. Useful stuff, but the exact details involve a lot of memorization and a lot of tedium that you don't normally need as a programmer. It's better to know the overall concepts and techniques, and go look up the details when you need them.

    Geometry, trigonometry, differentiation, integration, conic sections, differential equations, and their multidimensional and multivariate versions — these all have important applications. It's just that you don't need to know them right this second. So it probably wasn't a great idea to make you spend years and years doing proofs and exercises with them, was it? If you're going to spend that much time studying math, it ought to be on topics that will remain relevant to you for life.

    The Right Way To Learn Math

    The right way to learn math is breadth-first, not depth-first. You need to survey the space, learn the names of things, figure out what's what.

    To put this in perspective, think about long division. Raise your hand if you can do long division on paper, right now. Hands? Anyone? I didn't think so.

    I went back and looked at the long-division algorithm they teach in grade school, and damn if it isn't annoyingly complicated. It's deterministic, sure, but you never have to do it by hand, because it's easier to find a calculator, even if you're stuck on a desert island without electricity. You'll still have a calculator in your watch, or your dental filling, or something.

    Why do they even teach it to you? Why do we feel vaguely guilty if we can't remember how to do it? It's not as if we need to know it anymore. And besides, if your life were on the line, you know you could perform long division of any arbitrarily large numbers. Imagine you're imprisoned in some slimy 3rd-world dungeon, and the dictator there won't let you out until you've computed 219308862/103503391. How would you do it? Well, easy. You'd start subtracting the denominator from the numerator, keeping a counter, until you couldn't subtract it anymore, and that'd be the remainder. If pressed, you could figure out a way to continue using repeated subtraction to estimate the remainder as decimal number (in this case, 0.1185678219, or so my Emacs M-x calc tells me. Close enough!)

    You could figure it out because you know that division is just repeated subtraction. The intuitive notion of division is deeply ingrained now.

    The right way to learn math is to ignore the actual algorithms and proofs, for the most part, and to start by learning a little bit about all the techniques: their names, what they're useful for, approximately how they're computed, how long they've been around, (sometimes) who invented them, what their limitations are, and what they're related to. Think of it as a Liberal Arts degree in mathematics.

    Why? Because the first step to applying mathematics is problem identification. If you have a problem to solve, and you have no idea where to start, it could take you a long time to figure it out. But if you know it's a differentiation problem, or a convex optimization problem, or a boolean logic problem, then you at least know where to start looking for the solution.

    There are lots and lots of mathematical techniques and entire sub-disciplines out there now. If you don't know what combinatorics is, not even the first clue, then you're not very likely to be able to recognize problems for which the solution is found in combinatorics, are you?

    But that's actually great news, because it's easier to read about the field and learn the names of everything than it is to learn the actual algorithms and methods for modeling and computing the results. In school they teach you the Chain Rule, and you can memorize the formula and apply it on exams, but how many students really know what it "means"? So they're not going to be able to know to apply the formula when they run across a chain-rule problem in the wild. Ironically, it's easier to know what it is than to memorize and apply the formula. The chain rule is just how to take the derivative of "chained" functions — meaning, function x() calls function g(), and you want the derivative of x(g()). Well, programmers know all about functions; we use them every day, so it's much easier to imagine the problem now than it was back in school.

    Which is why I think they're teaching math wrong. They're doing it wrong in several ways. They're focusing on specializations that aren't proving empirically to be useful to most high-school graduates, and they're teaching those specializations backwards. You should learn how to count, and how to program, before you learn how to take derivatives and perform integration.

    I think the best way to start learning math is to spend 15 to 30 minutes a day surfing in Wikipedia. It's filled with articles about thousands of little branches of mathematics. You start with pretty much any article that seems interesting (e.g. String theory, say, or the Fourier transform, or Tensors, anything that strikes your fancy.) Start reading. If there's something you don't understand, click the link and read about it. Do this recursively until you get bored or tired.

    Doing this will give you amazing perspective on mathematics, after a few months. You'll start seeing patterns — for instance, it seems that just about every branch of mathematics that involves a single variable has a more complicated multivariate version, and the multivariate version is almost always represented by matrices of linear equations. At least for applied math. So Linear Algebra will gradually bump its way up your list, until you feel compelled to learn how it actually works, and you'll download a PDF or buy a book, and you'll figure out enough to make you happy for a while.

    With the Wikipedia approach, you'll also quickly find your way to the Foundations of Mathematics, the Rome to which all math roads lead. Math is almost always about formalizing our "common sense" about some domain, so that we can deduce and/or prove new things about that domain. Metamathematics is the fascinating study of what the limits are on math itself: the intrinsic capabilities of our formal models, proofs, axiomatic systems, and representations of rules, information, and computation.

    One great thing that soon falls by the wayside is notation. Mathematical notation is the biggest turn-off to outsiders. Even if you're familiar with summations, integrals, polynomials, exponents, etc., if you see a thick nest of them your inclination is probably to skip right over that sucker as one atomic operation.

    However, by surveying math, trying to figure out what problems people have been trying to solve (and which of these might actually prove useful to you someday), you'll start seeing patterns in the notation, and it'll stop being so alien-looking. For instance, a summation sign (capital-sigma) or product sign (capital-pi) will look scary at first, even if you know the basics. But if you're a programmer, you'll soon realize it's just a loop: one that sums values, one that multiplies them. Integration is just a summation over a continuous section of a curve, so that won't stay scary for very long, either.

    Once you're comfortable with the many branches of math, and the many different forms of notation, you're well on your way to knowing a lot of useful math. Because it won't be scary anymore, and next time you see a math problem, it'll jump right out at you. "Hey," you'll think, "I recognize that. That's a multiplication sign!"

    And then you should pull out the calculator. It might be a very fancy calculator such as R, Matlab, Mathematica, or a even C library for support vector machines. But almost all useful math is heavily automatable, so you might as well get some automated servants to help you with it.

    When Are Exercises Useful?

    After a year of doing part-time hobbyist catch-up math, you're going to be able to do a lot more math in your head, even if you never touch a pencil to a paper. For instance, you'll see polynomials all the time, so eventually you'll pick up on the arithmetic of polynomials by osmosis. Same with logarithms, roots, transcendentals, and other fundamental mathematical representations that appear nearly everywhere.

    I'm still getting a feel for how many exercises I want to work through by hand. I'm finding that I like to be able to follow explanations (proofs) using a kind of "plausibility test" — for instance, if I see someone dividing two polynomials, I kinda know what form the result should take, and if their result looks more or less right, then I'll take their word for it. But if I see the explanation doing something that I've never heard of, or that seems wrong or impossible, then I'll dig in some more.

    That's a lot like reading programming-language source code, isn't it? You don't need to hand-simulate the entire program state as you read someone's code; if you know what approximate shape the computation will take, you can simply check that their result makes sense. E.g. if the result should be a list, and they're returning a scalar, maybe you should dig in a little more. But normally you can scan source code almost at the speed you'd read English text (sometimes just as fast), and you'll feel confident that you understand the overall shape and that you'll probably spot any truly egregious errors.

    I think that's how mathematically-inclined people (mathematicians and hobbyists) read math papers, or any old papers containing a lot of math. They do the same sort of sanity checks you'd do when reading code, but no more, unless they're intent on shooting the author down.

    With that said, I still occasionally do math exercises. If something comes up again and again (like algebra and linear algebra), then I'll start doing some exercises to make sure I really understand it.

    But I'd stress this: don't let exercises put you off the math. If an exercise (or even a particular article or chapter) is starting to bore you, move on. Jump around as much as you need to. Let your intuition guide you. You'll learn much, much faster doing it that way, and your confidence will grow almost every day.

    How Will This Help Me?

    Well, it might not — not right away. Certainly it will improve your logical reasoning ability; it's a bit like doing exercise at the gym, and your overall mental fitness will get better if you're pushing yourself a little every day.

    For me, I've noticed that a few domains I've always been interested in (including artificial intelligence, machine learning, natural language processing, and pattern recognition) use a lot of math. And as I've dug in more deeply, I've found that the math they use is no more difficult than the sum total of the math I learned in high school; it's just different math, for the most part. It's not harder. And learning it is enabling me to code (or use in my own code) neural networks, genetic algorithms, bayesian classifiers, clustering algorithms, image matching, and other nifty things that will result in cool applications I can show off to my friends.

    And I've gradually gotten to the point where I no longer break out in a cold sweat when someone presents me with an article containing math notation: n-choose-k, differentials, matrices, determinants, infinite series, etc. The notation is actually there to make it easier, but (like programming-language syntax) notation is always a bit tricky and daunting on first contact. Nowadays I can follow it better, and it no longer makes me feel like a plebian when I don't know it. Because I know I can figure it out.

    And that's a good thing.

    And I'll keep getting better at this. I have lots of years left, and lots of books, and articles. Sometimes I'll spend a whole weekend reading a math book, and sometimes I'll go for weeks without thinking about it even once. But like any hobby, if you simply trust that it will be interesting, and that it'll get easier with time, you can apply it as often or as little as you like and still get value out of it.

    Math every day. What a great idea that turned out to be!
    September 19

    还能更无耻吗?

    http://unn.people.com.cn/GB/14748/6282747.html
    被暴光的坏事都是假新闻,天下还有比这更无耻的事吗?
    September 18

    Ned辞职了

     有点惊愕,他很讨厌,但是的确是个有才情的人.
    September 17

    昨晚读了<货币战争>

    三点感想:
    1.愤青一直在进化,<中国可以说不>终于推出了金融版.
    2.作者真NB,历史上所有的经济学家,从凯恩斯到弗德里曼,都被他BS了.
    3.看到最后一面,顿时恍然大悟,铁血社区果然出人才.
     
    书中讲的历史基本可以说是胡扯,揭露的一些问题倒是切中要害,比如早半年预测了美国现在的次级债风波,比如批评美国无耻地滥发美元,逼全世界来一起买单,比如揭露IMF这样穿着光鲜外衣的国际组织,背地里玩的实质把戏.这本书,和那个郎旋风教授一样,问题看的准确,解决的方子荒唐透顶.要复辟金本位货币?通货紧缩来了可不是喝一壶这么简单,特别是在这样一个高速发展的时代.
     
     
     
    September 13

    历史决定论

    中国历代王朝的更替时,总是天下大乱,在这场混乱之中,最野蛮,最残酷,最不择手段,最狡猾,最没有人性的一方,才会取得最终的胜利.胜利之后,新政权就急急忙忙地证明自己的合法性,比如说放出斩白蛇的传说,比如说反复强调代表了中国人民的利益.
    历史从来就没有一个确定的发展方向,但是这不妨碍各种卑劣之徒玩口含天宪的把戏,宣称是历史决定了他们当权.当然,这些说法,理论,永远是他们的文字游戏和愚民工具.
    很想看看那本<历史决定论的贫困>.
     

    SilverLight

    技术日新月异,进化得如此之快. 但是我最怀念的,还是当初绞尽脑汁在640k基本内存中多空出点地的年代.
    September 07

    宝宝的和谐诗和连岳的恶劣诗

    支持和谐,批判恶劣!
     

    《仰望星空》

    我仰望星空,

    它是那样寥廓而深邃;

    那无穷的真理,

    让我苦苦地求索、追随。

    我仰望星空,

    它是那样庄严而圣洁;

    那凛然的正义,

    让我充满热爱、感到敬畏。

    我仰望星空,

    它是那样自由而宁静;

    那博大的胸怀,

    让我的心灵栖息、依偎。

    我仰望星空,

    它是那样壮丽而光辉;

    那永恒的炽热,

    让我心中燃起希望的烈焰、响起春雷。

    =============恶劣的分割线===================================

    一起仰望星空

    我仰望星空,
    它是那样寥廓而深邃;
    像矿道那样深不可测。

    那无穷的真理,
    让我苦苦地求索、追随。
    像山西失踪的窑奴一样踪迹全无。

    我仰望星空,
    它是那样庄严而圣洁;
    像喝奶长大的高贵奥运猪。

    那凛然的正义,
    让我充满热爱、感到敬畏。
    像面对焚烧贫民窑的烈火。

    我仰望星空,
    它是那样自由而宁静;
    像不为聂树斌冤曲所动的法官们。

    那博大的胸怀,
    让我的心灵栖息、依偎。
    当然,GFW也还是必不可少的。

    我仰望星空,
    它是那样壮丽而光辉;
    那永恒的炽热,
    让我心中燃起希望的烈焰、响起春雷。
    哦,哦,哦,像溶化肉身的钢水那么炽热,
    像凤凰大桥垮掉那声巨响。

    十八年前势同水火,如今亲如一家

     

    高明:忘记我,但请记住我的梦想——北大学生和人民解放军的“恋爱”

    来源: 南方周末作者:南方周末记者 马昌博 王永孝 陈寿富 余文武  [2007-09-05 21:30:31]

    编者按:这几天,“高明”两个字正高频出现。高明身上有两重身份,“80后”;北京大学光华管理学院大三学生。一年多前,高明加入中国人民解放军最精锐的部队:二炮。“80后”的个性,北大学生的特质,能否“安全着陆”?而从“二炮”对他的重视来看,又能感觉到“二炮”的焦虑,士兵素质难以适应高科技作战需要,是这支部队的心结,其实他们的焦虑还不止于此。

     

     

        高明站在大家面前讲课,大家穿同样的衣服,下面的人都在仔细地听他讲 李鸿林/摄

     

     

    在北大的高明,是完全不同的形象   李鸿林/摄

    [copyright by www.infzm.com]
        与想象中不同,第一次见到部队首长的高明并没有受到特殊待遇,旅长胡明全的第一句话是:没毕业你来当什么兵?[copyright by www.infzm.com]
        这是2005年12月,高明到这个地处西南边陲隶属第二炮兵的96213部队两个星期。[copyright by www.infzm.com]
        之前,刚满20岁的高明是北京大学光华管理学院大三学生,甘肃人,文学爱好者,曾经留一头过耳的长发,喜欢读《孙子》,也喜欢和别人辩论。[copyright by www.infzm.com]
        高明和胡明全的见面并不正式,不过是在仓库旁边的相遇。让带兵二十多年的胡明全有好感并不容易,当时高明穿着肥大的新兵军服,“晒得黑不溜秋,看起来傻乎乎的”。[copyright by www.infzm.com]
        见面之后,旅长给连队指导员留下两句话:第一,新兵别光说好,观察下高明有什么毛病;第二,训练别粗暴,注意方式方法。[copyright by www.infzm.com]
        此时还没人预料到,一年多后,高明会成为一个符号。而这个符号代表的,既是一个就读于中国顶级学府的“80后”青年“携笔从戎”的故事,也是有着80年历史的中国人民解放军要建设现代化劲旅时对人才的渴望和急迫。[copyright by www.infzm.com]
    [copyright by www.infzm.com]
    “男儿意气,无关富贵”[copyright by www.infzm.com]
        “从此穿梭在凝冷的校场,遵照着军人的荣誉与耻辱”
    [copyright by www.infzm.com]
        高明作出参军的决定,不过几天时间。[copyright by www.infzm.com]
        这是一个看起来不可思议的决定,“傻”,这样的形容已经在他的北大同学中传开,直到参军后还有战友问:已到北大,何必当兵?高明的回答平淡无奇:“只是想来。”[copyright by www.infzm.com]
        此前的高明虽然身为班级团支书并在同年级中第一批入党,不过并没有显示出日后毅然从军、惊动众人的端倪。[copyright by www.infzm.com]
        喜欢辩论是特点之一,也曾半夜被朋友拉起来谈哲学,习惯于写文章到深夜,但这在北大并不罕见。[copyright by www.infzm.com]
        北大光华管理学院党委副书记冒大卫和高明颇为熟悉,他的评价是高明“是一个优秀的北大学生,早熟,有时固执己见,但无更多特别”。[copyright by www.infzm.com]
        在高明的回忆中,自己平日只是来往于朗朗的课堂,望着中关村处处奔忙的脚步,想自己“应该做一头快乐的猪还是思索着的柏拉图”。[copyright by www.infzm.com]
        但如果回望高明过去20年的人生,或许会有一些痕迹。[copyright by www.infzm.com]
        这个出生于甘肃正宁农村的孩子,从小喜读古文,他在一篇文章中说自己“世居秦故地,先祖尚武、知耕,临函谷而望诸侯”;而“高姓源于姜姓,出于齐鲁,民以仁德称”,“我承秦齐传统,希望文武不失”。[copyright by www.infzm.com]
        这些埋在潜流中的意识一直等到2005年——当国家颁布在校大学生可以参军的政策时,“每个男儿都有的军人梦”清晰地跳了出来,没有太多思考,高明决定参军。[copyright by www.infzm.com]
        母亲最好说服,况且这个父亲早亡的孩子,早已习惯自己作决定。最激烈的反对来自伯父,理由是晚两年毕业,耽误挣钱。高明回信说,“男儿意气,无关富贵。”[copyright by www.infzm.com]
        这个光华管理学院的学生甚至用了专业理论,“经济学上讲,只有一次的东西,它的权重就无穷大。对我来说,当兵的机会就这一次,当然要去。”[copyright by www.infzm.com]
        踏上南下从军列车的高明无疑是欣喜的,他后来在一篇文章中不无兴奋地说,“在一个北风凛冽的早晨,离开了我熟悉的燕园,告别了我精神所依归的一塔湖图,飞往祖国的南部边陲,从此穿梭在凝冷的校场,遵照着军人的荣誉与耻辱。”[copyright by www.infzm.com]
    [copyright by www.infzm.com]
    “知耻而后勇”[copyright by www.infzm.com]
        驻地晴朗的夜晚必然繁星满天,让这个北大学生时而生出“依北斗望京华”的感慨[copyright by www.infzm.com]
        虽然豪情万丈,但从一个北大学生到合格军人的转变并不顺畅。[copyright by www.infzm.com]
        入伍第二天高明就挨了批评:当天班长要给他安排任务,正在叠被子的高明随口回了声“稍等”,结果班长厉言说,听到叫名字必须答“到”。[copyright by www.infzm.com]
        更难堪的是第一次出早操,点名时独不见高明,几分钟后在宿舍被叫醒的高明直愣愣地看着班长说:“这么早就起床了?”[copyright by www.infzm.com]
        班长曾经找教导员提出不带这个兵,理由是大学生“眼高手低”。不过几天后,班长改变了看法。当然,高明也再未“稍等”和迟到,原因很简单:知耻而后勇。[copyright by www.infzm.com]
        两个星期后,表现突出的高明已经做了副班长。胡明全再见到高明是新兵训练快结束的时候,一个标准的军礼,让旅长感觉“像个样子了”。[copyright by www.infzm.com]
        北大学生高明迅速展现了一个大学生士兵的素质:下连队第一次考试只有47分,但第二次时已经是营里前三名。[copyright by www.infzm.com]
        这个出身文科的大学生后来自学了《电子电路》和《机械制图》这些专业基础理论,不过这并不是一个加班加点的学习过程,“有些科目我很快就弄懂了,可别的战友还要学一个月,我也要为自己找些事干。”高明说。[copyright by www.infzm.com]
        但训练成绩是如此突出,以至高明在下连队不久就担任了某专业关键操作号手,而这个岗位一般是5年的老兵才能胜任。号位需要涉及五百多个口令,高明背完它们的时间是:半天。[copyright by www.infzm.com]
        不过他跟别人说自己一个多月才背完,“怕人家不信,个别战友背了一年还没搞清楚。”[copyright by www.infzm.com]
        他也是一个爱发表自己见解的兵,有一次作为第二炮兵优秀政治教员的教导员吴学军给全营官兵上完政治课后,高明“委婉地指出了授课中引文和表述的不当”。后来吴学军跟旅长说,每次讲课都加强准备,免得被高明看出错误。[copyright by www.infzm.com]
        2006年8月的时候,高明被领导叫去给96213部队全体军官上了一堂现代管理课,此时的他已经是旅里惟一的义务兵班长和义务兵党员。[copyright by www.infzm.com]
        但也有高明不“积极”的,比如在连队种菜。他解释说,自己认为正规军不应该干这个,不过后来想通了:这可以培养一种作风。[copyright by www.infzm.com]
        虽然从军艰苦,但军旅生活在高明眼中是富有诗意的。训练之余不能随意外出,而驻地晴朗的夜晚必然繁星满天,让这个北大学生时而生出“依北斗望京华”的感慨。[copyright by www.infzm.com]
    [copyright by www.infzm.com]
    诉说自己的体悟[copyright by www.infzm.com]
        “我们不用将责任、奉献、吃苦挂在嘴边,我们这些被宠坏了的年轻人,都在努力”[copyright by www.infzm.com]
        就在高明在基层连队以“一个大学生的速度”成长时,第二炮兵的将军们敏锐地发现了这个符合部队内在要求的例子。[copyright by www.infzm.com]
        这显然是一个健康的形象——一个不矫揉造作,但又素质良好、训练刻苦的大学生士兵。[copyright by www.infzm.com]
        中央军委副主席徐才厚7月4日在刊登有高明材料的《国内动态清样》上批示说,“要吸引更多的优秀大学生入伍,促进基层官兵素质提高”。高明最终引起了军方高层的注意。[copyright by www.infzm.com]
        聚光灯打在了这个22岁士兵的身上,随之还有疑惑:毕竟,这只是一个参军一年多的兵。[copyright by www.infzm.com]
        在面对几十个记者的一次座谈会上,高明谨慎而坚定地为自己的角色定位:“我只是一个媒介。”他说,“诉说自己的体悟,让愿意参军的大学生们了解这条道路。”[copyright by www.infzm.com]
        此前,他曾在北大青年网上写了体验第二炮兵军旅生活的万字长文,几天中点击过八千,跟帖五百。而在本部队,高明在年轻士兵中已颇有影响,记者采访时就曾碰到他的“粉丝”,后来席间谈及,高明笑言:崇拜我的多了。[copyright by www.infzm.com]
        曾有人问高明,是否认为自己有责任在毕业后还回到部队?因为,“如果两年毕业后你挣钱去了,我怎么跟我的孩子说起你?”[copyright by www.infzm.com]
        高明回答:“像我来部队就是为了这身军装,穿上军装我就满意了;如果说我后来为了钱去当商人,挣了很多钱,我也非常满意。经济建设领域的英雄同样是英雄。”[copyright by www.infzm.com]
        他说:“应该改变某种传统观念,你是不是应该这样跟孩子说:高明大学的时候,选择了参军入伍,尽了两年的义务;脱下军装之后又带着部队的历炼投入到社会中去。”[copyright by www.infzm.com]
        作为改革开放后出生的一代,高明显然更乐意展示自己作为普通人的逻辑,而避免附加太多的沉重。他在一篇文章中说,“我们不用将责任、奉献、吃苦挂在嘴边,我们这些被宠坏了的年轻人,都在努力。”[copyright by www.infzm.com]
    [copyright by www.infzm.com]
    横戈原不为封候[copyright by www.infzm.com]
      他抄录了明末名将袁崇焕的诗:“杖策只因图雪耻,横戈原不为封候”[copyright by www.infzm.com]
        北大光华管理学院党委副书记冒大卫代表北大来看望高明,他同时带来的还有光华管理学院院长张维迎的口信。张在表示为高明感到骄傲之余,也希望高明能有一颗平常心。“我们怕他因为少年得志而束缚了自己。”冒大卫说。[copyright by www.infzm.com]
        事实上,这个“80后”的年轻人已经习惯于消融那些可能夸大自己的色彩。“最好的结果是大家记得一个大学生参军的梦想,但忘记我。”[copyright by www.infzm.com]
        他在4月份的一篇文章中说,“2005年12月,我来到军营,2007年11月,退役返校。该来,则来;该去,则去。”[copyright by www.infzm.com]
        高明曾在晚上熄灯后阅读专业资料,这看起来是一个刻苦学习的传统例子,不过他不喜欢被记者着墨,“做过这样的事,但我不建议引导这样的趋势”。[copyright by www.infzm.com]
        提到传统价值观的时候,他会回想起自己是看赖宁的故事长大的,但“钦佩他的精神,却不会像他那样去救火,因为他首先要保护自己才对”。[copyright by www.infzm.com]
        他也会老实地跟你说,自己当初参军没想过太多的意义,后来别人不断问起,才想“是啊,为什么”。然后回头在内心寻找原因,跟别人解释。[copyright by www.infzm.com]
        而他试图跟大学生们所传达的是:这是一个不改变你人生轨迹的选择,如果你向往军营,并愿意付出两年时间,那么你可以为这支共和国军队的信息化贡献自己的力量。而就自己的感受看,这两年军旅生活绝对值得。两年后,你可以重回曾经的道路。[copyright by www.infzm.com]
        他也会跟你分析利弊,“从经济学看,这是一个双赢的进程。”但他也依然承认诸如理想、责任、光荣这些词汇在自己价值坐标上的地位。[copyright by www.infzm.com]
        但无论表现得如何“普通”,这个22岁的年轻人显然是向往豪迈和刚毅的。他在一篇文章中抄录了明末名将袁崇焕出京赴辽时所作的一首《边中送别》,其中一句说,“杖策只因图雪耻,横戈原不为封侯。”[copyright by www.infzm.com]
        不过他喜欢的另一首现代诗或许更符合他的年龄和心境:“想象穿过泥泞 / 给橄榄绿的年龄 / 镀上了一层水雾 / 于是在关于战争、硝烟 / 抑或生与死的传说里 / 萌生出了 / 绿色的梦。”[copyright by www.infzm.com]
        采访结束时,当地部队给记者送行,高明掺杂在众多普通士兵中间,不声不响地一起搬送行李箱。此前他曾半开玩笑地要求说,“采访‘折腾’我一个人就够了,不要去打扰我的战友。”[copyright by www.infzm.com]
        至少到现在,这个被赋予荣誉的年轻人似乎没有忘记,自己和这些扛着“一道杠”的士兵们,依然是兄弟。

    September 03

    祝愿我们的祖国繁荣富强

    http://news.21cn.com/nfdsb/2007/09/01/3451217.shtml
     我觉得这样的照片可以拿普利策新闻奖.

    不好意思再这样

     纠缠于某个错怎么报,纠缠于几行代码怎么写,已经说成车轱辘话了,还再如此,不是浪费青春嘛?
    看当年的同侪一个个都蒸蒸日上,我却还是这个样子,还越来越差,真是说不过去啊.
    Do something big, 甚至我还这样想.