<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:creativeCommons="http://backend.userland.com/creativeCommonsRssModule" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0" xml:base="http://mgccl.com">
<channel>
 <title>Mgccl's Ivory Tower</title>
 <link>http://mgccl.com</link>
 <description />
 <language>en</language>
<geo:lat>40.94993</geo:lat><geo:long>-72.895334</geo:long><creativeCommons:license>http://creativecommons.org/licenses/by-nd/2.0/</creativeCommons:license><image><link>http://creativecommons.org/licenses/by-nd/2.0/</link><url>http://creativecommons.org/images/public/somerights20.gif</url><title>Some Rights Reserved</title></image><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.feedburner.com/mgccl" type="application/rss+xml" /><feedburner:emailServiceId>mgccl</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com" /><item>
 <title>Calculus boot camp</title>
 <link>http://feedproxy.google.com/~r/mgccl/~3/fWWSdAmoTmI/calculus-boot-camp</link>
 <description>&lt;span class='print-link'&gt;&lt;/span&gt;&lt;!-- google_ad_section_start --&gt; &lt;p&gt;Ok, finally up to page 88 on Apostal's calc book. Done almost every exercise problem.&lt;br /&gt;
Currently I restrain myself from going online unless I finished 20 page of text and problems on that day.&lt;br /&gt;
So I can only be seen online at night or 2 am in the morning.&lt;/p&gt;
&lt;p&gt;This problem make me cry.&lt;/p&gt;
&lt;p&gt;Prove that &lt;img src="http://mgccl.com/files/mathfilter/88de9c87859a01fe16ba67228878464c4f5797fb.png" title="\int_a^b f(x) dx = (b-a) \int_0^1 f(a+(b-a)x) dx" alt="\int_a^b f(x) dx = (b-a) \int_0^1 f(a+(b-a)x) dx" style="vertical-align: middle;" /&gt;&lt;br /&gt;
I feel like a idiot.&lt;br /&gt;
&lt;img src="http://mgccl.com/files/mathfilter/c3945dc665e91c06316527905bce20fdb5b8b4fc.png" title="\int_a^b f(x) dx" alt="\int_a^b f(x) dx" style="vertical-align: middle;" /&gt;&lt;br /&gt;
&lt;img src="http://mgccl.com/files/mathfilter/640858502549e356f375e6d4fcd8f10ece6f5a23.png" title="= \int_0^{b-a} f(x+a) dx" alt="= \int_0^{b-a} f(x+a) dx" style="vertical-align: middle;" /&gt;&lt;br /&gt;
&lt;img src="http://mgccl.com/files/mathfilter/afb3a56d96b289cd40e5582d576ca4e3dd20850b.png" title="= (b-a)\int_0^1 f((x+a)(b-a)) dx" alt="= (b-a)\int_0^1 f((x+a)(b-a)) dx" style="vertical-align: middle;" /&gt;&lt;br /&gt;
then I'm stuck, I'm sure I didn't do anything wrong.&lt;br /&gt;
Well.&lt;br /&gt;
The last step is wrong, I used it because I misused the following theorem.&lt;br /&gt;
&lt;img src="http://mgccl.com/files/mathfilter/132810705d753cd390c2ef74ef41823ad4c0da7b.png" title="\frac{1}{k} \int_{ka}^{kb} f(\frac{x}{k}) dx = \int_{a}^{b} f(x) dx" alt="\frac{1}{k} \int_{ka}^{kb} f(\frac{x}{k}) dx = \int_{a}^{b} f(x) dx" style="vertical-align: middle;" /&gt;&lt;br /&gt;
Oh wait, that theorem only works on &lt;img src="http://mgccl.com/files/mathfilter/3e03f4706048fbc6c5a252a85d066adf107fcc1f.png" title="f(x)" alt="f(x)" style="vertical-align: middle;" /&gt;. I can't just apply it on &lt;img src="http://mgccl.com/files/mathfilter/714413915dafec518bebbf3683d0554050c7cea2.png" title="f(x+a)" alt="f(x+a)" style="vertical-align: middle;" /&gt;, like I think it should like in normal algebraic manipulations!&lt;/p&gt;
&lt;p&gt;I see why many people telling me how many people cool with math until they meet calculus. There are some foundational concepts quite easily misunderstood. Then people will start assume about properties that are not true, but are true in most cases they meet. Which made them believe those properties are true until it come back and HUNT THEM, like what happened to me in this problem.&lt;/p&gt;
&lt;p&gt;Meh, I have to make a outline of the concepts to kick out all those fallacy. &lt;/p&gt;
&lt;p&gt;The book is interesting, it goes like this&lt;br /&gt;
Set theory -&gt; Axioms of real numbers -&gt; Induction and inequalities -&gt; Functions -&gt; Integrals of piecewise constant functions -&gt; Integrals of piecewise monotonic functions include polynomials. that's where I am now, next thing it's going to cover is the application of integrals.&lt;/p&gt;
&lt;p&gt;Isn't it strange there is nothing about limit and differentiation yet? Isn't that what people usually learn first?&lt;br /&gt;
Ahh, awesome book.&lt;/p&gt;


 &lt;!-- google_ad_section_end --&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/_XKd6b9xTKC1i974icyG8YrhNJA/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/_XKd6b9xTKC1i974icyG8YrhNJA/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/_XKd6b9xTKC1i974icyG8YrhNJA/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/_XKd6b9xTKC1i974icyG8YrhNJA/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://mgccl.com/2009/07/15/calculus-boot-camp#comments</comments>
 <category domain="http://mgccl.com/topics/math">Math</category>
 <pubDate>Wed, 15 Jul 2009 06:13:54 +0000</pubDate>
 <dc:creator>Mgccl</dc:creator>
 <guid isPermaLink="false">916 at http://mgccl.com</guid>
<feedburner:origLink>http://mgccl.com/2009/07/15/calculus-boot-camp</feedburner:origLink></item>
<item>
 <title>If one misinterprets some text, who's fault is it?</title>
 <link>http://feedproxy.google.com/~r/mgccl/~3/ltUzSpURrWo/if-one-misinterprets-some-text-who-s-fault-is-it</link>
 <description>&lt;span class='print-link'&gt;&lt;/span&gt;&lt;!-- google_ad_section_start --&gt; &lt;p&gt;Some blogger wrote on his blog something for some intended audience.&lt;br /&gt;
Some unintended audiences read the post and misinterpreted it.&lt;br /&gt;
Well, maybe nothing bad happened due to the misinterpretation. but what if something bad happened? Who's fault is it?&lt;/p&gt;
&lt;p&gt;It's hard to come with a conclusion, I personally believe blogger is not at fault, but I can acknowledge the other side.&lt;/p&gt;
&lt;p&gt;Consider this analogy.&lt;br /&gt;
I wrote a piece of code only work for one compiler. Other compilers will not work, but it can still compile, except not doing what the code intends to.&lt;br /&gt;
I put the code in my SVN, expecting a few people I know to use it. Someone else comes, find the code, and used it in their project. Except he compiled with another compiler. In the end the program become very buggy, and take him a long time to figure out what's wrong. Clearly, he lose some valuable time, and caused him frustration, but is this my fault or not? &lt;/p&gt;
&lt;p&gt;In this sense, I usually assume most people will believe I am no where near faults; However, the fact is this assumption is not really correct, since most people don't even get what I just talked about because only developers understand. Still, that's the closet analogy I can make. I think this can convey the idea to developers, which can support my side. Now I understand why those open source projects have those disclaimers.&lt;/p&gt;
&lt;p&gt;If someone see a blog as something intended to act like a newspaper, he might suggest newspaper often put corrections after previous articles that create possible misunderstandings. If it's a standard practice, there must be some reasons to it. Of course, they failed at their purpose, to inform. People pay and put trust to the newspaper, if they can't keep do their job, the consumers will not be happy.&lt;/p&gt;
&lt;p&gt;If the blog is intended as a place where it act as a journal of one's thoughts, it should be treated differently. Right?&lt;br /&gt;
I use my blog as a place to catch my thought and communicate with a few people that often read my blog. I do not keep things hidden because I like to make resources public. By public, I really mean public. I start post solutions to math problems I did since a few months ago. I don't intend someone go and see them, I rarely even giving out link to people. But I still put it online for the public to see. If anyone wants them(I doubt), it is there. btw if you want to see how I solve math problems, it's &lt;a href="http://mgccl.com/maths/1/"&gt;here&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;It is just some resource you find, it might be right or wrong. I'm just allowing such resources generated by me to be taken by anyone.&lt;br /&gt;
It's like I have a collection of books, and I am open to people who come and read them. If there are problem with some of the books, they are not suppose to blame me for allowing them to read them. Even if all the books are full of bogus... or should they?&lt;/p&gt;
&lt;p&gt;Consider another analogy.&lt;br /&gt;
A child trespassing into my house and drowned in the swimming pool. Who's fault is it? The law says, it's my fault. There is this attractive nuisance, and I have to find a reasonable way to prevent it from accessed.&lt;/p&gt;
&lt;p&gt;I will assume the law is reasonable.&lt;br /&gt;
Then what's so different from that in the blogger case? The blogger intend the post to be viewed by some, but other people are drawn to it because it is a attractive nuisance, and it cause misunderstanding, ultimately cause bad things to happen.&lt;/p&gt;
&lt;p&gt;The society embrace the weak, and sympathetic to the victims. That's why such laws present.&lt;br /&gt;
"Well, if the kid know better, he won't drown himself." This do sound reasonable,if the parents teach the kid not to trespass, or go near a pool without supervision, this would not happen.&lt;br /&gt;
This kind of statement don't work, because following the same reasoning, we can conclude:&lt;br /&gt;
"If he isn't that rich, he won't get robbed."&lt;br /&gt;
"If she didn't wear a mini-skirt, she won't get raped."&lt;br /&gt;
The above statements will meet a lot of objection if anyone ever say it. "Yeah, just blame the victim!".&lt;br /&gt;
A paradox, I still can't figure out why the first one seems reasonable and other two are not. Maybe because in the other two statements, they are a victim of a (group of) person instead of a object.&lt;/p&gt;
&lt;p&gt;These should have some implications on this blogger problem. The victim are the people who have misinterpret the the resource. Isn't the producer of the resource at fault?&lt;/p&gt;
&lt;p&gt;I guess, yes. Strangely I still hold the belief that the person who misinterpret are the one who did something wrong.&lt;/p&gt;
&lt;p&gt;That's quite paradoxical.&lt;br /&gt;
If one dig around and found a piece of uranium ore, take it home, then die from all those radiation. Is the uranium ore at fault or the person who died from it?&lt;br /&gt;
The law can't act against uranium, or the producer of it.&lt;br /&gt;
Are we still going to blame nature? This time it seems more reasonable not blame the producer, like the kid getting drowned scenario. The world is not created to be mean or nice to the people living in it.&lt;br /&gt;
The blogger is not a object, thus he can be blamed and he is the one at fault.&lt;/p&gt;
&lt;p&gt;The word "blame" come up again. Isn't that people do? find something to blame on when bad things happened.&lt;br /&gt;
Maybe because I was once in the situation where people misunderstand my meanings and get hurt, so I blame them for it instead of asking why I give them the chance to misunderstand?&lt;br /&gt;
"I can't believe they can't see my post is pure sarcasm." I sometimes say.&lt;br /&gt;
Maybe that's the reason people use  after what they says as reasonable protection to attractive nuisance, I should have too.&lt;/p&gt;
&lt;p&gt;I'm changing my blog's name from "Mgccl's blog" to "Mgccl's Ivory Tower".&lt;/p&gt;


 &lt;!-- google_ad_section_end --&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/Vou2SGPpDTVG-v8vQW1XvoHotrA/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Vou2SGPpDTVG-v8vQW1XvoHotrA/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/Vou2SGPpDTVG-v8vQW1XvoHotrA/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Vou2SGPpDTVG-v8vQW1XvoHotrA/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://mgccl.com/2009/07/12/if-one-misinterprets-some-text-who-s-fault-is-it#comments</comments>
 <category domain="http://mgccl.com/taxonomy/term/519">thoughts</category>
 <pubDate>Mon, 13 Jul 2009 01:04:39 +0000</pubDate>
 <dc:creator>Mgccl</dc:creator>
 <guid isPermaLink="false">914 at http://mgccl.com</guid>
<feedburner:origLink>http://mgccl.com/2009/07/12/if-one-misinterprets-some-text-who-s-fault-is-it</feedburner:origLink></item>
<item>
 <title>Formulation of the last problem</title>
 <link>http://feedproxy.google.com/~r/mgccl/~3/bzPofUHevAc/formulation-of-the-last-problem</link>
 <description>&lt;span class='print-link'&gt;&lt;/span&gt;&lt;!-- google_ad_section_start --&gt; &lt;p&gt;Here is a more formal view of the &lt;a href="http://mgccl.com/2009/07/11/a-pratical-problem-from-a-game"&gt;last problem&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;There exist a undirected graph &lt;img src="http://mgccl.com/files/mathfilter/4098286eb7ff851642557df0c6e4f694895af0b7.png" title="G(V,E)" alt="G(V,E)" style="vertical-align: middle;" /&gt;. For each vertex &lt;img src="http://mgccl.com/files/mathfilter/a38fa0e42b2ae5878125df69acc3664863f5a441.png" title="v_i\in V" alt="v_i\in V" style="vertical-align: middle;" /&gt;, the edges of &lt;img src="http://mgccl.com/files/mathfilter/f0cd317158e9b3b19134b2c5db4e0861fcd95222.png" title="v_i" alt="v_i" style="vertical-align: middle;" /&gt; are &lt;img src="http://mgccl.com/files/mathfilter/2e9a1bfee8589b8ef56e1c7bc49ef33fec014ee9.png" title="e_i(1), e_i(2), e_i(3), \ldots e_i(degree(v_i))" alt="e_i(1), e_i(2), e_i(3), \ldots e_i(degree(v_i))" style="vertical-align: middle;" /&gt;.&lt;br /&gt;
&lt;img src="http://mgccl.com/files/mathfilter/5eb1c1da2f2ffa91a4f1c5083b0f3e1f3481242a.png" title="A(v_i,k) = \{u|(u,v_i)\in e_i(k)\}" alt="A(v_i,k) = \{u|(u,v_i)\in e_i(k)\}" style="vertical-align: middle;" /&gt;.&lt;/p&gt;
&lt;p&gt;Let there be a sequence &lt;img src="http://mgccl.com/files/mathfilter/8e39eecc751a6c2cfe2296a8530db5497d593738.png" title="\{k_i\}" alt="\{k_i\}" style="vertical-align: middle;" /&gt;.&lt;br /&gt;
Let &lt;img src="http://mgccl.com/files/mathfilter/7badb9565e050d02639db693dc38ea13a97e047a.png" title="a_1 = v_1" alt="a_1 = v_1" style="vertical-align: middle;" /&gt;, &lt;img src="http://mgccl.com/files/mathfilter/8fc93d5b405d35a739bf69a4e22fb3526c9034e7.png" title="a_{n} = A(a_{n-1},k_n)" alt="a_{n} = A(a_{n-1},k_n)" style="vertical-align: middle;" /&gt;, Where &lt;img src="http://mgccl.com/files/mathfilter/03e1ad51e44a5c9fc7af97e73630411deac62a19.png" title="1 \leq k_n\leq degree(a_{n-1})" alt="1 \leq k_n\leq degree(a_{n-1})" style="vertical-align: middle;" /&gt;.&lt;/p&gt;
&lt;p&gt;Can you provide a algorithm to find the shortest sequence &lt;img src="http://mgccl.com/files/mathfilter/8e39eecc751a6c2cfe2296a8530db5497d593738.png" title="\{k_i\}" alt="\{k_i\}" style="vertical-align: middle;" /&gt; if &lt;img src="http://mgccl.com/files/mathfilter/8e05450bb294645990319518550f9f0d93b444bf.png" title="\{v|v\in \{a_i\}\} =V" alt="\{v|v\in \{a_i\}\} =V" style="vertical-align: middle;" /&gt;, given &lt;img src="http://mgccl.com/files/mathfilter/4098286eb7ff851642557df0c6e4f694895af0b7.png" title="G(V,E)" alt="G(V,E)" style="vertical-align: middle;" /&gt; and &lt;img src="http://mgccl.com/files/mathfilter/9b12bbf79036cb3e904f971fd86838db1dade1aa.png" title="v_1" alt="v_1" style="vertical-align: middle;" /&gt; .&lt;/p&gt;
&lt;p&gt;Clearly the lower bound for the size of the sequence is &lt;img src="http://mgccl.com/files/mathfilter/1a0e72adff55696a3435ace587179437550d6631.png" title="|V|" alt="|V|" style="vertical-align: middle;" /&gt;.&lt;br /&gt;
I think the upper bound is &lt;img src="http://mgccl.com/files/mathfilter/3e7c4a8c354c3bbac783bddf0f76d55a2a711f5c.png" title="2|V|" alt="2|V|" style="vertical-align: middle;" /&gt;.&lt;br /&gt;
Of course the algorithm is what's important.&lt;/p&gt;
&lt;p&gt;I will leave this problem behind because I have to do calculus.&lt;/p&gt;
&lt;p&gt;BTW this is a NPC problem.&lt;/p&gt;


 &lt;!-- google_ad_section_end --&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/eG1Ae9YFHe0IoB07B2yuarkAKGE/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/eG1Ae9YFHe0IoB07B2yuarkAKGE/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/eG1Ae9YFHe0IoB07B2yuarkAKGE/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/eG1Ae9YFHe0IoB07B2yuarkAKGE/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://mgccl.com/2009/07/11/formulation-of-the-last-problem#comments</comments>
 <category domain="http://mgccl.com/taxonomy/term/403">Computer Science</category>
 <category domain="http://mgccl.com/taxonomy/term/520">Graph Theory</category>
 <pubDate>Sat, 11 Jul 2009 21:44:30 +0000</pubDate>
 <dc:creator>Mgccl</dc:creator>
 <guid isPermaLink="false">913 at http://mgccl.com</guid>
<feedburner:origLink>http://mgccl.com/2009/07/11/formulation-of-the-last-problem</feedburner:origLink></item>
<item>
 <title>A pratical problem from a game</title>
 <link>http://feedproxy.google.com/~r/mgccl/~3/8Ezj1PsAy6k/a-pratical-problem-from-a-game</link>
 <description>&lt;span class='print-link'&gt;&lt;/span&gt;&lt;!-- google_ad_section_start --&gt; &lt;p&gt;I'm not talking about The Game, which you just lost.&lt;br /&gt;
I was playing a online game, where I have to go around the entire map to kill monsters. The name of the game is not important. (they might ban me for using automatic bots...)&lt;br /&gt;
I'm too busy to play the game thus I have to write a script to play it for me. Suppose I have a map, like the following one. 0 mean you can't move to it, 1 means you can move to it. There is a moving option, where one can move to one of the adjacent 8 spots.&lt;/p&gt;
&lt;div class="geshifilter"&gt;
&lt;pre class="text geshifilter-text" style="font-family:monospace;"&gt;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 1 1 1 0 1 1 1 1 1 1 1 1 0 0 1 1 1 1 0 1 1 1 0 0
0 1 1 1 0 1 0 1 0 1 1 1 1 0 0 1 0 1 1 0 1 1 1 0 0
0 1 1 1 0 0 0 1 0 1 1 1 1 0 0 1 0 1 1 0 0 1 0 0 0
0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 1 1 1 1 0
0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 1 0 1 0 0 0
0 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 0 0 1 0 0 1 0 0 0
0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 0 0 0 1 0 0
0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 1 0 1 0 0 1 1 1 0
0 0 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 0 1 1 0 1 1 1 0
0 1 0 1 0 1 0 1 0 1 0 1 0 0 1 0 0 1 1 0 0 0 1 0 0
0 1 1 1 1 1 0 1 1 1 1 1 1 1 0 0 0 0 1 1 0 0 1 0 0
0 1 0 0 1 0 0 0 1 0 1 0 1 0 0 1 1 0 1 0 0 1 1 1 0
0 0 0 0 1 0 0 0 1 0 1 0 1 0 0 1 1 1 1 1 0 1 1 1 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Given a starting point, find a path with minimal amount of movement that visit every spot at least once.&lt;/p&gt;
&lt;p&gt;Humm, of course this problem can be converted to a TSP and bash though the NPC stuff.&lt;br /&gt;
Uhh, I'm going to use javascript to do this, so its going to be way too slow to implement a naive TSP.&lt;br /&gt;
Compare to normal TSP problem, there are some special features of the graph,
&lt;ul&gt;
&lt;li&gt;Distance between any 2 adjacent nodes is a constant.
&lt;/li&gt;&lt;li&gt;
&lt;/li&gt;&lt;li&gt;It features some geometry structures. like a n*m rectangle where every single vertex is visitable, a lot of vertices with degree 2.&lt;/li&gt;
&lt;/ul&gt;
&lt;/p&gt;&lt;p&gt;Some ideas:&lt;br /&gt;
Condense the chain of vertices with degree 2 into 1 vertex&lt;br /&gt;
Find subroutine deal with n*m rectangles&lt;br /&gt;
Let TSP take on the rest&lt;/p&gt;
&lt;p&gt;There is more.&lt;br /&gt;
The player will know if there are enemies in the 8 spots around them.Those spots are no longer necessary to be visited, but setting it to 0 might disconnect the graph. A small modification is required to handle such cases.&lt;/p&gt;
&lt;p&gt;It's too late to think, I will try this problem tomorrow.&lt;/p&gt;
&lt;p&gt;Edit: No, it's not a TSP problem, this problem allow node be visited more than once.&lt;br /&gt;
I assume a good solution can be made simply transverse the graph.&lt;/p&gt;


 &lt;!-- google_ad_section_end --&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/oKxANBDJDP93wmFyPyrMQ3FKBuY/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/oKxANBDJDP93wmFyPyrMQ3FKBuY/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/oKxANBDJDP93wmFyPyrMQ3FKBuY/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/oKxANBDJDP93wmFyPyrMQ3FKBuY/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://mgccl.com/2009/07/11/a-pratical-problem-from-a-game#comments</comments>
 <category domain="http://mgccl.com/taxonomy/term/403">Computer Science</category>
 <category domain="http://mgccl.com/topics/game">Game</category>
 <pubDate>Sat, 11 Jul 2009 08:09:54 +0000</pubDate>
 <dc:creator>Mgccl</dc:creator>
 <guid isPermaLink="false">912 at http://mgccl.com</guid>
<feedburner:origLink>http://mgccl.com/2009/07/11/a-pratical-problem-from-a-game</feedburner:origLink></item>
<item>
 <title>Freshmen Orientation</title>
 <link>http://feedproxy.google.com/~r/mgccl/~3/peuWpEn1_TE/freshmen-orientation</link>
 <description>&lt;span class='print-link'&gt;&lt;/span&gt;&lt;!-- google_ad_section_start --&gt; &lt;p&gt;Since there is so many Asian people there, I can't help but say. Why does people from the Orient need to go to the orientation? LOL!&lt;/p&gt;
&lt;p&gt;of course I had other orientation jokes. Wrap your head around the Möbius strip.&lt;/p&gt;
&lt;p&gt;My orientation leader looks like Jun Natsukawa!&lt;/p&gt;
&lt;p&gt;Also, the data I gathered today strongly suggest that&lt;br /&gt;
&lt;img src="http://mgccl.com/files/mathfilter/eb5024cdab28101aaf742f33f79e458e8396172c.png" title="A = \{x| x \in girls \land x\in freshmen\}" alt="A = \{x| x \in girls \land x\in freshmen\}" style="vertical-align: middle;" /&gt;&lt;br /&gt;
&lt;img src="http://mgccl.com/files/mathfilter/a72481178d773c8c9d2ee6e27afb039b73a15bb1.png" title="B = \{x| x \in CS\} " alt="B = \{x| x \in CS\} " style="vertical-align: middle;" /&gt;&lt;br /&gt;
&lt;img src="http://mgccl.com/files/mathfilter/d5a965a11aed806522aa57092e80df0a821ff706.png" title="A \cap B = \emptyset" alt="A \cap B = \emptyset" style="vertical-align: middle;" /&gt;&lt;/p&gt;
&lt;p&gt;Anyways, it was all good, except I didn't get CSE 130 because freshmen can only have 17 credits. until August 28th, which will be boosted to 19 credits.&lt;br /&gt;
The first time I registered for CSE 130, it said I didn't meet the prerequisite. Funny, it only requires me having 3 or greater on the math placement. I got a 9! OMG it's 3 SQUARED! Since &lt;img src="http://mgccl.com/files/mathfilter/69a85c6e0e079d0e024e063ff09365009b6f29f6.png" title="3 &amp;gt; 1 \implies 3^2 &amp;gt; 3" alt="3 &amp;gt; 1 \implies 3^2 &amp;gt; 3" style="vertical-align: middle;" /&gt;. = = ohh..those geniuses.&lt;br /&gt;
so I choose MAT 305 over it for now. Hopefully that class still remains till 28th.&lt;/p&gt;
&lt;p&gt;No science/arts/humanities for the first semester!&lt;br /&gt;
YEAH.&lt;br /&gt;
yeah, it took a while with my adviser, who suggest me this is not a good idea, but I still decide to do it.&lt;/p&gt;
&lt;p&gt;I need to tell the math department that I intend to major in math too and show SBU I already have health insurance(or do I...).&lt;/p&gt;


 &lt;!-- google_ad_section_end --&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/YQwSSez-tvyL1J7SdKAcoT3KbOA/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/YQwSSez-tvyL1J7SdKAcoT3KbOA/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/YQwSSez-tvyL1J7SdKAcoT3KbOA/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/YQwSSez-tvyL1J7SdKAcoT3KbOA/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://mgccl.com/2009/07/09/freshmen-orientation#comments</comments>
 <category domain="http://mgccl.com/taxonomy/term/474">Stony Brook</category>
 <pubDate>Fri, 10 Jul 2009 00:11:09 +0000</pubDate>
 <dc:creator>Mgccl</dc:creator>
 <guid isPermaLink="false">911 at http://mgccl.com</guid>
<feedburner:origLink>http://mgccl.com/2009/07/09/freshmen-orientation</feedburner:origLink></item>
<item>
 <title>Good looking and just human</title>
 <link>http://feedproxy.google.com/~r/mgccl/~3/sjVs--CxltQ/good-looking-and-just-human</link>
 <description>&lt;span class='print-link'&gt;&lt;/span&gt;&lt;!-- google_ad_section_start --&gt; &lt;p&gt;I love how I don't care about how I look!&lt;br /&gt;
"Meh, I'm not superfluous enough to care."&lt;br /&gt;
truth is, humans are superfluous, I'm superfluous too.&lt;br /&gt;
I was confronted with this question, does appearance change how I react?&lt;/p&gt;
&lt;p&gt;Oh. I guess yeah.&lt;/p&gt;
&lt;p&gt;Examples I can think of...&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;I was helping someone with physics homework online. I would reply messages a lot slower if she wasn't as good looking.&lt;/li&gt;
&lt;li&gt;I would actually pay a few dollars more for an object even if the only difference is it's color.&lt;/li&gt;
&lt;li&gt;I would turn my head when I see a awesome looking car.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;This is just human...&lt;/p&gt;
&lt;p&gt;Oh, just human?&lt;br /&gt;
Something people say to get away from everything. Did you know Pedophiles (more accurately Hebephiles) are &lt;a href="http://www.scientificamerican.com/article.cfm?id=pedophiles-erotic-age-orientation"&gt;just human&lt;/a&gt;? Certainly the society does not like this.&lt;/p&gt;
&lt;p&gt;I think sometimes, we shouldn't stop at "just human" and not do anything about it.&lt;br /&gt;
Why be human, if you have a lot of traits you don't like? Yeah, accept the trait is one way, or, change it entirely!&lt;/p&gt;


 &lt;!-- google_ad_section_end --&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/w1Cphvd-LBlcSsWjt85wUfn_J5U/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/w1Cphvd-LBlcSsWjt85wUfn_J5U/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/w1Cphvd-LBlcSsWjt85wUfn_J5U/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/w1Cphvd-LBlcSsWjt85wUfn_J5U/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://mgccl.com/2009/07/09/good-looking-and-just-human#comments</comments>
 <category domain="http://mgccl.com/topics/personal">Personal</category>
 <category domain="http://mgccl.com/taxonomy/term/519">thoughts</category>
 <pubDate>Thu, 09 Jul 2009 23:41:18 +0000</pubDate>
 <dc:creator>Mgccl</dc:creator>
 <guid isPermaLink="false">910 at http://mgccl.com</guid>
<feedburner:origLink>http://mgccl.com/2009/07/09/good-looking-and-just-human</feedburner:origLink></item>
<item>
 <title>I Love data</title>
 <link>http://feedproxy.google.com/~r/mgccl/~3/RXYgkF893VY/i-love-data</link>
 <description>&lt;span class='print-link'&gt;&lt;/span&gt;&lt;!-- google_ad_section_start --&gt; &lt;p&gt;I have completed pidginlog0.3. It is fully functioning, now all my chatlogs are saved remotely and I can run all kind of SQL queries on them. For example, check out who talked to me the most, how many characters have I sent and all other kind of stuff.&lt;/p&gt;
&lt;p&gt;If you remember, I also have this program&lt;a href="http://mgccl.com/2009/04/06/keycounter-sqlite-version"&gt;count my keystrokes&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;I started this list of &lt;a href="http://mgccl.com/tid"&gt;things I did&lt;/a&gt; a while ago.&lt;/p&gt;
&lt;p&gt;I'm also saving money to get my genes tested by &lt;a href="https://www.23andme.com/"&gt;23andme&lt;/a&gt;. so my gene will be saved in a computer and I can know all kind of stuff about it.&lt;/p&gt;
&lt;p&gt;Why... why am I so obsessed with all kind of data about myself?&lt;/p&gt;
&lt;p&gt;because I need to know and preserve.&lt;/p&gt;
&lt;p&gt;I love these data. because I am data, or, information, if it can be used by someone else.&lt;/p&gt;
&lt;p&gt;I see this world as creation and destruction of data.&lt;/p&gt;
&lt;p&gt;I can only know what I sense. sensing itself is a method to gather data from the surrounding. (If there is a surrounding, I could be living in a dream.)&lt;/p&gt;
&lt;p&gt;There are many things happen, and no data about it gets recorded. I might did something, but I can't recall it.&lt;br /&gt;
Ultimately, it lead to that I don't even know what I.&lt;/p&gt;
&lt;p&gt;I believe I expressed it a few times that losing memory means death.&lt;/p&gt;
&lt;p&gt;by keeping a record of things I did, I preserve some part of the memory.&lt;br /&gt;
Then. part of my life is not on me. It's somewhere else. Even if I die, those memory are still there (as long as someone can read them), then I still lives.&lt;/p&gt;
&lt;p&gt;because I am data... data don't die from disease, old age or even death...&lt;br /&gt;
data die when it is no longer recorded anywhere.&lt;/p&gt;


 &lt;!-- google_ad_section_end --&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/ypvTgmV0YWnNWdgbr1FZOTjU3R8/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/ypvTgmV0YWnNWdgbr1FZOTjU3R8/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/ypvTgmV0YWnNWdgbr1FZOTjU3R8/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/ypvTgmV0YWnNWdgbr1FZOTjU3R8/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://mgccl.com/2009/07/08/i-love-data#comments</comments>
 <category domain="http://mgccl.com/topics/data">Data</category>
 <pubDate>Thu, 09 Jul 2009 00:53:24 +0000</pubDate>
 <dc:creator>Mgccl</dc:creator>
 <guid isPermaLink="false">909 at http://mgccl.com</guid>
<feedburner:origLink>http://mgccl.com/2009/07/08/i-love-data</feedburner:origLink></item>
<item>
 <title>Chickenfoot and Ubiquity are too awesome!</title>
 <link>http://feedproxy.google.com/~r/mgccl/~3/RCiT9_zKj6M/chickenfoot-and-ubiquity-are-too-awesome</link>
 <description>&lt;span class='print-link'&gt;&lt;/span&gt;&lt;!-- google_ad_section_start --&gt; &lt;p&gt;I got this &lt;a href="http://groups.csail.mit.edu/uid/chickenfoot/index.php"&gt;Chickenfoot&lt;/a&gt; and &lt;a href="https://wiki.mozilla.org/Labs/Ubiquity"&gt;Ubiquity&lt;/a&gt; plugin for firefox.&lt;br /&gt;
It's like greasemonkey but really easy.&lt;br /&gt;
For example I made a auto login script for Stony Brook's Solar system, save me hours and hours of time.(because I always have to open a file to find my stony brook id...I like how they like to make things secure and have me to login every time)&lt;br /&gt;
I get this Chickenfoot script to run when ever I open solar login page.&lt;/p&gt;
&lt;div class="geshifilter"&gt;
&lt;pre class="javascript geshifilter-javascript" style="font-family:monospace;"&gt;enter&lt;span style="color: #009900;"&gt;&amp;#40;&lt;/span&gt;&lt;span style="color: #3366CC;"&gt;'Stony Brook ID:'&lt;/span&gt;&lt;span style="color: #339933;"&gt;,&lt;/span&gt; &lt;span style="color: #3366CC;"&gt;'123456789'&lt;/span&gt;&lt;span style="color: #009900;"&gt;&amp;#41;&lt;/span&gt;&lt;span style="color: #339933;"&gt;;&lt;/span&gt;
enter&lt;span style="color: #009900;"&gt;&amp;#40;&lt;/span&gt;&lt;span style="color: #3366CC;"&gt;'Password:'&lt;/span&gt;&lt;span style="color: #339933;"&gt;,&lt;/span&gt; &lt;span style="color: #3366CC;"&gt;'123456789'&lt;/span&gt;&lt;span style="color: #009900;"&gt;&amp;#41;&lt;/span&gt;&lt;span style="color: #339933;"&gt;;&lt;/span&gt;
click&lt;span style="color: #009900;"&gt;&amp;#40;&lt;/span&gt;&lt;span style="color: #3366CC;"&gt;'sign in'&lt;/span&gt;&lt;span style="color: #009900;"&gt;&amp;#41;&lt;/span&gt;&lt;span style="color: #339933;"&gt;;&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;then I make this solar function in Ubiquity&lt;/p&gt;
&lt;div class="geshifilter"&gt;
&lt;pre class="javascript geshifilter-javascript" style="font-family:monospace;"&gt;CmdUtils.&lt;span style="color: #660066;"&gt;CreateCommand&lt;/span&gt;&lt;span style="color: #009900;"&gt;&amp;#40;&lt;/span&gt;&lt;span style="color: #009900;"&gt;&amp;#123;&lt;/span&gt;
  &lt;span style="color: #000066;"&gt;name&lt;/span&gt;&lt;span style="color: #339933;"&gt;:&lt;/span&gt; &lt;span style="color: #3366CC;"&gt;&amp;quot;solar&amp;quot;&lt;/span&gt;&lt;span style="color: #339933;"&gt;,&lt;/span&gt;
  execute&lt;span style="color: #339933;"&gt;:&lt;/span&gt; &lt;span style="color: #003366; font-weight: bold;"&gt;function&lt;/span&gt;&lt;span style="color: #009900;"&gt;&amp;#40;&lt;/span&gt;&lt;span style="color: #009900;"&gt;&amp;#41;&lt;/span&gt; &lt;span style="color: #009900;"&gt;&amp;#123;&lt;/span&gt;
    Utils.&lt;span style="color: #660066;"&gt;openUrlInBrowser&lt;/span&gt;&lt;span style="color: #009900;"&gt;&amp;#40;&lt;/span&gt;&lt;span style="color: #3366CC;"&gt;&amp;quot;https://psns.cc.stonybrook.edu/psp/he89prods/?cmd=login&amp;quot;&lt;/span&gt;&lt;span style="color: #009900;"&gt;&amp;#41;&lt;/span&gt;&lt;span style="color: #339933;"&gt;;&lt;/span&gt; 
  &lt;span style="color: #009900;"&gt;&amp;#125;&lt;/span&gt;
&lt;span style="color: #009900;"&gt;&amp;#125;&lt;/span&gt;&lt;span style="color: #009900;"&gt;&amp;#41;&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;now I just have to activate Ubiquity and input solar and enter. so efficient :)&lt;br /&gt;
In fact, the sequence will be&lt;br /&gt;
ctrl + space + s + o + l + a + r + enter&lt;br /&gt;
mwhahahahahahaha, I love efficiency!&lt;/p&gt;
&lt;p&gt;Of course I can employ this during the orientation day. I can let it keep refresh the enrollment page, when the "Orientation hold" is gone, it go and automatically sign up all my classes.&lt;br /&gt;
(ahh. MAT305 still have 3 seats. if they are not taken in 2 more days, they will be MINE.)&lt;/p&gt;


 &lt;!-- google_ad_section_end --&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/2tq1jCG0fO9sNs8lia_ZoKZnzBU/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/2tq1jCG0fO9sNs8lia_ZoKZnzBU/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/2tq1jCG0fO9sNs8lia_ZoKZnzBU/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/2tq1jCG0fO9sNs8lia_ZoKZnzBU/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://mgccl.com/2009/07/06/chickenfoot-and-ubiquity-are-too-awesome#comments</comments>
 <category domain="http://mgccl.com/taxonomy/term/459">Firefox</category>
 <category domain="http://mgccl.com/topics/software">Software</category>
 <category domain="http://mgccl.com/taxonomy/term/518">Web</category>
 <pubDate>Mon, 06 Jul 2009 23:08:17 +0000</pubDate>
 <dc:creator>Mgccl</dc:creator>
 <guid isPermaLink="false">908 at http://mgccl.com</guid>
<feedburner:origLink>http://mgccl.com/2009/07/06/chickenfoot-and-ubiquity-are-too-awesome</feedburner:origLink></item>
<item>
 <title>Courses required to graduate</title>
 <link>http://feedproxy.google.com/~r/mgccl/~3/wylcXNDp9zQ/courses-required-to-graduate</link>
 <description>&lt;span class='print-link'&gt;&lt;/span&gt;&lt;!-- google_ad_section_start --&gt; &lt;p&gt;I made a graph of all the &lt;a href="http://mgccl.com/files/courses.png"&gt;course I have to take&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Researching  and choosing classes wisely is crucial to success academically in college. My sister don't know what to major in when she started college, thus chose random classes, now half of them can't be counted to her major, and she just decided to double major when she become a junior this fall. It's going to be a hard time.&lt;/p&gt;
&lt;p&gt;A total of 180 credits(if count course I like to take, 144 is the minimal amount of credits to get to my goal, expense of missing lot of fun and useful courses). My APs will kill 19 of those credits. (MAT 131,132. CHE 131,132, and a Chinese course). so only 161 left.&lt;/p&gt;
&lt;p&gt;Note that Stony Brook have a 19 credit limit per semester unless I can file for academic overload, which boost it up to 23 credits, I won't be able to finish it in 4 years. Glad I did some research.&lt;/p&gt;
&lt;p&gt;I want to go to Tsinghua to study for one, even 2 semesters during my junior year. If it succeeds, that will get me into some problems because I might not get all the Tsinghua credits for something equivalent in SBU. It is going to be a awesome learning experience though, so credit problem is 2nd of my concern.&lt;/p&gt;
&lt;p&gt;My other APs can also count as credit(CSE 114,214. I'm in honors program so I don't even take them anyway...= =) but those are useless because they don't help me with required courses, it only help me if I don't have enough credits to graduate.&lt;/p&gt;
&lt;p&gt;The goal is get BS in CS with honors and specializations in game programming and BS in Math with honors.&lt;/p&gt;
&lt;p&gt;I used around 2 hours research all the general graduation requirement+major + honors program + specializations requirements.&lt;/p&gt;
&lt;p&gt;Which I learned...&lt;br /&gt;
Math major require much less credits than CS majors. In fact, if I only want to major in math, I need only 36 credits to complete the major's requirements. 45 to complete honors program. Then the rest of the time can be used to complete those general graduation requirements.&lt;br /&gt;
I would be able to graduate in 2 years.(of course, I need to study during the summer and winter.)&lt;br /&gt;
For CS, it requires over 52 credits. (12 of them going to science courses). 58 for honor's program and add 6 more credits if one want to specialize in game programming(if you picked classes count for all 3 set of requirements).&lt;/p&gt;
&lt;p&gt;There is only a few topic below graduate level for math, but a lot more for CS.&lt;/p&gt;
&lt;p&gt;(applied)calculus and analysis,linear algebra, number theory, abstract algebra, differential geometry, chaos and dynamics, topology, geometrical structures and a few courses in proofs and problem solving.math is basically.&lt;br /&gt;
For CS, there is so much... maybe because half of CS is engineering.&lt;/p&gt;
&lt;p&gt;What I dislike is... around 50 credits will be stuff I don't want to learn...&lt;br /&gt;
Writing, humanities, arts and other stuff... laaaaaaaaame, 50 credits... how unreasonable... 30% of the things I learn have nothing to do with my major...&lt;/p&gt;
&lt;p&gt;My first year schedule should consist of&lt;br /&gt;
MAT205, MAT211, MAT305, CSE150, CSE130, IST101&lt;br /&gt;
4,3,4,4,3,1&lt;br /&gt;
exactly 19 credits, highest I can go for the first semester. and the good thing is there is no non math or CS classes!(except IST101, I see it as a extended orientation...)&lt;br /&gt;
If only my orientation is earlier. MAT305 only has 3 spots left, I doubt any freshman is going to go for that class in the next 4 days, but you never know, I might have to end up choosing something else.&lt;br /&gt;
Currently I'm at home learning MAT141 and MAT142 from its textbook and resources published on it's site. It's going to be very tough semester if I can't master the material before September.&lt;/p&gt;
&lt;p&gt;rawr... rawr...&lt;br /&gt;
Watchmen is a awesome movie.&lt;/p&gt;


 &lt;!-- google_ad_section_end --&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/mEeOkzAs3KPqqKb7tUlQ2sJeEek/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/mEeOkzAs3KPqqKb7tUlQ2sJeEek/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/mEeOkzAs3KPqqKb7tUlQ2sJeEek/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/mEeOkzAs3KPqqKb7tUlQ2sJeEek/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://mgccl.com/2009/07/05/courses-required-to-graduate#comments</comments>
 <category domain="http://mgccl.com/taxonomy/term/474">Stony Brook</category>
 <pubDate>Sun, 05 Jul 2009 08:17:56 +0000</pubDate>
 <dc:creator>Mgccl</dc:creator>
 <guid isPermaLink="false">907 at http://mgccl.com</guid>
<feedburner:origLink>http://mgccl.com/2009/07/05/courses-required-to-graduate</feedburner:origLink></item>
<item>
 <title>Chat log database, pidginlog</title>
 <link>http://feedproxy.google.com/~r/mgccl/~3/cuX6o9HZYxU/chat-log-database-pidginlog</link>
 <description>&lt;span class='print-link'&gt;&lt;/span&gt;&lt;!-- google_ad_section_start --&gt; &lt;p&gt;I developed a simple chat logging database from the &lt;a href="http://mgccl.com/2009/06/30/pidgin-html-log-parser"&gt;Pidgin html log parser&lt;/a&gt;.&lt;br /&gt;
It's one of those things I put in &lt;a href="http://code.google.com/p/mgccl/"&gt;mgccl's google codes repository&lt;/a&gt;.&lt;br /&gt;
I call it pidginlog for now.&lt;br /&gt;
While it is called chat log, it is intended to log IM's instead of IRC or group chat logs.&lt;/p&gt;
&lt;p&gt;You can find the download &lt;a href="http://code.google.com/p/mgccl/downloads/list"&gt;here&lt;/a&gt;, or check the SVN.&lt;/p&gt;
&lt;p&gt;If you don't get how to use it, read the code, logic should be pretty clear. This requires you to run pidgin and a PHP server on the same machine.&lt;br /&gt;
You also have to use cron job or other kind of schedule service to run the script once in a while to make this thing actually useful.&lt;/p&gt;
&lt;p&gt;If you don't understand the code or have no idea of what I just talked about, chose a user friendly alternative like &lt;a href="http://www.im-history.com/"&gt;IM-history&lt;/a&gt;, &lt;a href="https://www.dexrex.com/"&gt;Dexrex&lt;/a&gt; or &lt;a href="http://www.thirdmartini.com/index.php/WebPidgin"&gt;Web Pidgin&lt;/a&gt;. &lt;/p&gt;
&lt;p&gt;In the future I will make a web front end to this program...or not. phpmyadmin is powerful enough for a front end.&lt;/p&gt;


 &lt;!-- google_ad_section_end --&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/HYQXvPxv_S4zmlrb0M_Ja2h1ppc/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/HYQXvPxv_S4zmlrb0M_Ja2h1ppc/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/HYQXvPxv_S4zmlrb0M_Ja2h1ppc/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/HYQXvPxv_S4zmlrb0M_Ja2h1ppc/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://mgccl.com/2009/07/02/chat-log-database-pidginlog#comments</comments>
 <category domain="http://mgccl.com/topics/chat">chat</category>
 <category domain="http://mgccl.com/topics/php">PHP</category>
 <category domain="http://mgccl.com/taxonomy/term/517">Pidgin</category>
 <pubDate>Thu, 02 Jul 2009 05:30:32 +0000</pubDate>
 <dc:creator>Mgccl</dc:creator>
 <guid isPermaLink="false">905 at http://mgccl.com</guid>
<feedburner:origLink>http://mgccl.com/2009/07/02/chat-log-database-pidginlog</feedburner:origLink></item>
</channel>
</rss>
