<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/" version="3.10.0">Jekyll</generator><link href="https://nicholasrabbit.github.io/feed.xml" rel="self" type="application/atom+xml" /><link href="https://nicholasrabbit.github.io/" rel="alternate" type="text/html" /><updated>2026-08-07T07:32:18+00:00</updated><id>https://nicholasrabbit.github.io/feed.xml</id><title type="html">Nick’s Blog</title><subtitle>An amazing website.</subtitle><author><name>Xianghui</name></author><entry><title type="html">Bananas</title><link href="https://nicholasrabbit.github.io/Bananas/" rel="alternate" type="text/html" title="Bananas" /><published>2025-05-26T00:00:00+00:00</published><updated>2025-05-26T00:00:00+00:00</updated><id>https://nicholasrabbit.github.io/Bananas</id><content type="html" xml:base="https://nicholasrabbit.github.io/Bananas/"><![CDATA[<p>A banana is an edible fruit – botanically a berry – produced by several
kinds of large herbaceous flowering plants in the genus Musa.</p>

<p>In some countries, bananas used for cooking may be called “plantains”,
distinguishing them from dessert bananas. The fruit is variable in size,
color, and firmness, but is usually elongated and curved, with soft
flesh rich in starch covered with a rind, which may be green, yellow,
red, purple, or brown when ripe.</p>]]></content><author><name>tom</name></author><summary type="html"><![CDATA[A banana is an edible fruit – botanically a berry – produced by several kinds of large herbaceous flowering plants in the genus Musa.]]></summary></entry><entry><title type="html">Visiting Genuine Landscape</title><link href="https://nicholasrabbit.github.io/Visiting-Genuine-Landscape/" rel="alternate" type="text/html" title="Visiting Genuine Landscape" /><published>2025-05-22T00:00:00+00:00</published><updated>2025-05-22T00:00:00+00:00</updated><id>https://nicholasrabbit.github.io/Visiting-Genuine-Landscape</id><content type="html" xml:base="https://nicholasrabbit.github.io/Visiting-Genuine-Landscape/"><![CDATA[<p>As Artificial Intellengence is becoming more and more popular, many generated video have been releasing on the Internet.</p>

<p>Whereas, I was not astound by these fabulously well generated scenery which was not breathtaking at all. On the contrary,  I have subscribed some travelling and geographic channels in which considerable number of genuine pictures of steep cliffs, magnificent waterfalls, vast grassland and dense forests were published; I was intrigued in these attractions indeed. Fortunately, generated video merely appeared on the Internet so that the real world hasn’t been changed. Therefore, tourists can visit these really beautiful scenery after closing computer.</p>]]></content><author><name>Nicholas</name></author><summary type="html"><![CDATA[As Artificial Intellengence is becoming more and more popular, many generated video have been releasing on the Internet.]]></summary></entry><entry><title type="html">Discipline</title><link href="https://nicholasrabbit.github.io/journals/draft/Discipline/" rel="alternate" type="text/html" title="Discipline" /><published>2025-04-15T12:00:00+00:00</published><updated>2025-04-15T12:00:00+00:00</updated><id>https://nicholasrabbit.github.io/journals/draft/Discipline</id><content type="html" xml:base="https://nicholasrabbit.github.io/journals/draft/Discipline/"><![CDATA[<p>When I was at college I developed rhinitis and felt splitting headache when the temperature changed drastically. Many general practitioners in my hometown had prescribed me some tablets but in vain. Ironically, I felt better only if I was have them. As a matter of fact, I couldn’t have these pills all my life because they are poisonous to some extent. Fortunately, ,my friend, who also suffered excruciating pain caused by the same disease, told me that the only way to alleviate pain was to take exercises, to run and to play sports. I followed his advice and had started running in the evenings ever since if I had time whatever the weather was.</p>

<p>In the autumn of 2018, I started going jogging in the evenings after work. Presumably, the pain was not eased immediately, but I kept on running. When autumn was coming I was sneezing none stop that year. Whereas, that didn’t happen in the next year after I had been running for a whole year. Furthermore, there was an unexpected achievement which was that I was more disciplined than before. My immune system become stronger and I didn’t have to take enormous number of tablets.</p>]]></content><author><name>Xianghui</name></author><category term="journals" /><category term="draft" /><category term="journals" /><summary type="html"><![CDATA[When I was at college I developed rhinitis and felt splitting headache when the temperature changed drastically. Many general practitioners in my hometown had prescribed me some tablets but in vain. Ironically, I felt better only if I was have them. As a matter of fact, I couldn’t have these pills all my life because they are poisonous to some extent. Fortunately, ,my friend, who also suffered excruciating pain caused by the same disease, told me that the only way to alleviate pain was to take exercises, to run and to play sports. I followed his advice and had started running in the evenings ever since if I had time whatever the weather was. In the autumn of 2018, I started going jogging in the evenings after work. Presumably, the pain was not eased immediately, but I kept on running. When autumn was coming I was sneezing none stop that year. Whereas, that didn’t happen in the next year after I had been running for a whole year. Furthermore, there was an unexpected achievement which was that I was more disciplined than before. My immune system become stronger and I didn’t have to take enormous number of tablets.]]></summary></entry><entry><title type="html">Jekyll</title><link href="https://nicholasrabbit.github.io/Jekyll/" rel="alternate" type="text/html" title="Jekyll" /><published>2025-04-01T00:00:00+00:00</published><updated>2025-04-01T00:00:00+00:00</updated><id>https://nicholasrabbit.github.io/Jekyll</id><content type="html" xml:base="https://nicholasrabbit.github.io/Jekyll/"><![CDATA[<p>Ironically, as a Java developer, I found that it is interesting to build a website based on Jekyll, which is a framework written by Ruby. 
One reason is presumably there is a thorough and user-friendly documentation; maybe there are documentation about how to build a website with Java, but, unfortunately, I haven’t found any since I was always busy with writing code.</p>

<p>The second is that it is easy to use Jekyll.</p>]]></content><author><name>nick</name></author><summary type="html"><![CDATA[Ironically, as a Java developer, I found that it is interesting to build a website based on Jekyll, which is a framework written by Ruby. One reason is presumably there is a thorough and user-friendly documentation; maybe there are documentation about how to build a website with Java, but, unfortunately, I haven’t found any since I was always busy with writing code.]]></summary></entry><entry><title type="html">What Is Algorithm and Why To Learn</title><link href="https://nicholasrabbit.github.io/journal/programming/What-Is-Algorithm-and-Why-To-Learn/" rel="alternate" type="text/html" title="What Is Algorithm and Why To Learn" /><published>2024-05-10T12:00:00+00:00</published><updated>2024-05-10T12:00:00+00:00</updated><id>https://nicholasrabbit.github.io/journal/programming/What-Is-Algorithm-and-Why-To-Learn</id><content type="html" xml:base="https://nicholasrabbit.github.io/journal/programming/What-Is-Algorithm-and-Why-To-Learn/"><![CDATA[<p>When it comes to algorithms, it always remind me of the Gauss’ solution to summarise the numbers from one to a hundred which I learned in primary school. Perhaps it is the first algorithm that I have learned. Whereas, I didn’t completely recognised the importance of his solution until I become a programmer. In a word, the time complexity of Gauss’ solution is $O(1)$ while the normal solution is $O(n)$. If I write programme to implement the former one, only one line of code is enough, but I have to write a for loop for the later one. Apparently, his solution is far more effective than the normal one especially when dealing with large amount of data. When I was learning data structure and algorithms, what I learned from Gauss helped understand what exactly the algorithm is and why I should learn it.</p>

<p>The word “algorithm”, which is difficult to spell, intimidated me when I know it at the first time. I thought it must be some complicated mathematical methods for experts. Is it? It is definitely not for the elitist mathematicians or programmers. It is just a solution as very same as Gauss’ to solve another problem. There are algorithms everywhere in our daily life not only in developer’s world. For example, stall holders calculate the price of goods in a way that decomposing fractional numbers into integers when multiplying them. $10.5\times3$ can be decomposed to $10\times3+0.5\times3$. This is a kind of algorithm that could help them make deal without a calculator.</p>

<p>After knowing about what algorithm is, it is obvious that why it is critically important for software engineers to learn it. It is not a programming tricks to astound your friends or managers but a practical approaches to save consumption of time and footage of disks. As a software engineer, we will have to deal with large amount of data or show the information as soon as possible. That is where we need algorithms. Algorithm is arguably the fundamental of programming.</p>

<p>In conclusion, it is necessary to learn data structure and algorithms for its significant benefits for robust and effective programme. To be an exceptional programmer needs to be able to master widely used algorithms and write code with them.</p>

<p>P.S. My <a href="https://github.com/NicholasRabbit/Data-Structure-and-Algorithm">repository</a>.  for data structure and algorithm. It seems that the “LaTex” expressions are not shown properly. I will find the solution later.</p>]]></content><author><name>Xianghui</name></author><category term="journal" /><category term="programming" /><category term="journal" /><summary type="html"><![CDATA[When it comes to algorithms, it always remind me of the Gauss’ solution to summarise the numbers from one to a hundred which I learned in primary school. Perhaps it is the first algorithm that I have learned. Whereas, I didn’t completely recognised the importance of his solution until I become a programmer. In a word, the time complexity of Gauss’ solution is $O(1)$ while the normal solution is $O(n)$. If I write programme to implement the former one, only one line of code is enough, but I have to write a for loop for the later one. Apparently, his solution is far more effective than the normal one especially when dealing with large amount of data. When I was learning data structure and algorithms, what I learned from Gauss helped understand what exactly the algorithm is and why I should learn it. The word “algorithm”, which is difficult to spell, intimidated me when I know it at the first time. I thought it must be some complicated mathematical methods for experts. Is it? It is definitely not for the elitist mathematicians or programmers. It is just a solution as very same as Gauss’ to solve another problem. There are algorithms everywhere in our daily life not only in developer’s world. For example, stall holders calculate the price of goods in a way that decomposing fractional numbers into integers when multiplying them. $10.5\times3$ can be decomposed to $10\times3+0.5\times3$. This is a kind of algorithm that could help them make deal without a calculator. After knowing about what algorithm is, it is obvious that why it is critically important for software engineers to learn it. It is not a programming tricks to astound your friends or managers but a practical approaches to save consumption of time and footage of disks. As a software engineer, we will have to deal with large amount of data or show the information as soon as possible. That is where we need algorithms. Algorithm is arguably the fundamental of programming. In conclusion, it is necessary to learn data structure and algorithms for its significant benefits for robust and effective programme. To be an exceptional programmer needs to be able to master widely used algorithms and write code with them. P.S. My repository. for data structure and algorithm. It seems that the “LaTex” expressions are not shown properly. I will find the solution later.]]></summary></entry><entry><title type="html">Keep On Learning TDD</title><link href="https://nicholasrabbit.github.io/tdd/Keep-On-Learning-TDD/" rel="alternate" type="text/html" title="Keep On Learning TDD" /><published>2024-04-22T12:00:00+00:00</published><updated>2024-04-22T12:00:00+00:00</updated><id>https://nicholasrabbit.github.io/tdd/Keep-On-Learning-TDD</id><content type="html" xml:base="https://nicholasrabbit.github.io/tdd/Keep-On-Learning-TDD/"><![CDATA[<p>After submitting my dissertation on the 20th April 2024, I keep on learning TDD. It is evident that learning a new skill is not as easy as I expected, especially by myself. Since TDD is not widely used amongst the software engineers in China, to find out tutorials is more difficult than when you learn a programming language or a Spring framework.</p>

<p>As a matter of fact, many Chinese developers don’t like writing tests, not mention to units test or TDD. Fortunately, I have found a book written by an experienced programmer who had encountered the same obstacles  as I have now and he had already overcome them. Additionally, I have found an online course of TDD which is made by the Chief Technology Officer of Thought Works in China. He is an exceptional software engineer and is exactly the person I am looking for.  For a intermediate programmer like me, it is impossible to have a mentor teach me advanced skills to be an exceptional developer. Not only the knowledge of TDD have I learned, but also some practical programming approaches such as how to use IDE to refactor effectively, how to write Java code with its new features and so forth.</p>

<p>In conclusion, though both the book and the course are not easy to understand, I have finished half of the former and two chapters of the latter. Presumably, reading one time of the book is not enough and the course should be watched one or two more times. First of all, finish them for the first time.</p>]]></content><author><name>Xianghui</name></author><category term="TDD" /><category term="TDD" /><summary type="html"><![CDATA[After submitting my dissertation on the 20th April 2024, I keep on learning TDD. It is evident that learning a new skill is not as easy as I expected, especially by myself. Since TDD is not widely used amongst the software engineers in China, to find out tutorials is more difficult than when you learn a programming language or a Spring framework. As a matter of fact, many Chinese developers don’t like writing tests, not mention to units test or TDD. Fortunately, I have found a book written by an experienced programmer who had encountered the same obstacles as I have now and he had already overcome them. Additionally, I have found an online course of TDD which is made by the Chief Technology Officer of Thought Works in China. He is an exceptional software engineer and is exactly the person I am looking for. For a intermediate programmer like me, it is impossible to have a mentor teach me advanced skills to be an exceptional developer. Not only the knowledge of TDD have I learned, but also some practical programming approaches such as how to use IDE to refactor effectively, how to write Java code with its new features and so forth. In conclusion, though both the book and the course are not easy to understand, I have finished half of the former and two chapters of the latter. Presumably, reading one time of the book is not enough and the course should be watched one or two more times. First of all, finish them for the first time.]]></summary></entry><entry><title type="html">Mathematics is The Fundamental of Science</title><link href="https://nicholasrabbit.github.io/blog/journal/Mathematics-is-The-Fundamental-of-Human-Civillisation/" rel="alternate" type="text/html" title="Mathematics is The Fundamental of Science" /><published>2024-04-18T12:00:00+00:00</published><updated>2024-04-18T12:00:00+00:00</updated><id>https://nicholasrabbit.github.io/blog/journal/Mathematics-is-The-Fundamental-of-Human-Civillisation</id><content type="html" xml:base="https://nicholasrabbit.github.io/blog/journal/Mathematics-is-The-Fundamental-of-Human-Civillisation/"><![CDATA[<p>In every aspect of our life, mathematics plays a major role even without our consciousness. Physics, chemistry, engineering, astrology, and so forth can exist without mathematics as their fundamentals, not mention to computer science which is typically a branch of applied mathematics.  Where there is a great mathematicians, there is a great country. It is acknowledged that the invention of the steam engine is the key factor in the birth of the industrial revolution. As a matter of fact, math is the very key factor of the invention. So is it in the IT revolution.</p>

<p>On the contrary, it was literature such as poems, ballads and novels  that was developed in the long history of China. Whereas, almost all the famous figures of every dynasty were interested in how can they write poems with coherence and cohesion until their country were conquered and they were butchered by the so-called on-horse barbarians. Though the form of literature was changed with the birth and death of dynasties, mathematics had been ignored for five thousands years before Chinese realised the importance of it when the reform and opening-up policy was introduced by Deng Xiaoping.</p>

<p>In conclusion, it is necessary for a software engineer to realise how critically important mathematics is and to learn it. Not only because it is the core of computer science, but also the fundamental of our human’s civilisation.</p>]]></content><author><name>Xianghui</name></author><category term="blog" /><category term="journal" /><category term="Mathematics" /><summary type="html"><![CDATA[In every aspect of our life, mathematics plays a major role even without our consciousness. Physics, chemistry, engineering, astrology, and so forth can exist without mathematics as their fundamentals, not mention to computer science which is typically a branch of applied mathematics. Where there is a great mathematicians, there is a great country. It is acknowledged that the invention of the steam engine is the key factor in the birth of the industrial revolution. As a matter of fact, math is the very key factor of the invention. So is it in the IT revolution. On the contrary, it was literature such as poems, ballads and novels that was developed in the long history of China. Whereas, almost all the famous figures of every dynasty were interested in how can they write poems with coherence and cohesion until their country were conquered and they were butchered by the so-called on-horse barbarians. Though the form of literature was changed with the birth and death of dynasties, mathematics had been ignored for five thousands years before Chinese realised the importance of it when the reform and opening-up policy was introduced by Deng Xiaoping. In conclusion, it is necessary for a software engineer to realise how critically important mathematics is and to learn it. Not only because it is the core of computer science, but also the fundamental of our human’s civilisation.]]></summary></entry><entry><title type="html">Writing the Dissertation for A Bachelor Degree</title><link href="https://nicholasrabbit.github.io/journal/Writing-the-Dissertation-for-A-Bachelor-Degree/" rel="alternate" type="text/html" title="Writing the Dissertation for A Bachelor Degree" /><published>2024-04-17T12:00:00+00:00</published><updated>2024-04-17T12:00:00+00:00</updated><id>https://nicholasrabbit.github.io/journal/Writing-the-Dissertation-for-A-Bachelor-Degree</id><content type="html" xml:base="https://nicholasrabbit.github.io/journal/Writing-the-Dissertation-for-A-Bachelor-Degree/"><![CDATA[<p>It is a long time since I wrote the last journal. In order to hand in my dissertation on time, I have to spent much time writing it. The deadline is approaching so that I have to write it day and night. If I passed the verification, I would be granted with a bachelor degree on computer science.</p>

<p>The degree is extremely valuable for me. It proves that I have completed the comprehensive courses of computer science. Even though it is an online program, the degree  is as same as the one a student obtains on campus and is recognised by the Education Ministry in China. The most significant impact is that I am qualified for the jobs which need applicants at least have a bachelor degree. In fact, it is a fundamental or minimum requirement.</p>

<p>The following content is added after June, 2024 when I have obtained my bachelor degree.</p>

<p>However, only four hundred in three thousand graduates were granted with bachelor degrees and I was among them. But that is not the end of the learning journey, and I will continue doing so until the day when I retire.</p>]]></content><author><name>Xianghui</name></author><category term="journal" /><category term="degree" /><summary type="html"><![CDATA[It is a long time since I wrote the last journal. In order to hand in my dissertation on time, I have to spent much time writing it. The deadline is approaching so that I have to write it day and night. If I passed the verification, I would be granted with a bachelor degree on computer science. The degree is extremely valuable for me. It proves that I have completed the comprehensive courses of computer science. Even though it is an online program, the degree is as same as the one a student obtains on campus and is recognised by the Education Ministry in China. The most significant impact is that I am qualified for the jobs which need applicants at least have a bachelor degree. In fact, it is a fundamental or minimum requirement. The following content is added after June, 2024 when I have obtained my bachelor degree. However, only four hundred in three thousand graduates were granted with bachelor degrees and I was among them. But that is not the end of the learning journey, and I will continue doing so until the day when I retire.]]></summary></entry><entry><title type="html">Writing My First Code of TDD</title><link href="https://nicholasrabbit.github.io/tdd/Writing-My-First-TDD-Code/" rel="alternate" type="text/html" title="Writing My First Code of TDD" /><published>2024-04-09T09:17:00+00:00</published><updated>2024-04-09T09:17:00+00:00</updated><id>https://nicholasrabbit.github.io/tdd/Writing-My-First-TDD-Code</id><content type="html" xml:base="https://nicholasrabbit.github.io/tdd/Writing-My-First-TDD-Code/"><![CDATA[<p>After reading a book named <a href="https://www.manning.com/books/test-driven">Test Driven-Practical TDD and Acceptance TDD for Java Developers</a>  for serval days, I finally wrote a demo by following the instruction in the book. I gradually began to understand about what TDD is after reading nearly half of the book. Honestly, even though the book highly recommended, I wondered whether it was worth reading before I wrote the first demo today.</p>

<p>Fortunately, I don’’t stop reading and understand why the author thoroughly write so many chapters before he  wrote the first demo. When adopting a new approach, I should know what it is and what kind of problems it will help me to solve. Writing demos at the beginning is easy, but for the readers who have not heard about TDD and develop software in a traditional way, it is confused  for them to understand it, especially writing a test first before writing any product code. That is interesting. There is no shortcut but to read the book carefully.</p>]]></content><author><name>Xianghui</name></author><category term="TDD" /><category term="TDD" /><summary type="html"><![CDATA[After reading a book named Test Driven-Practical TDD and Acceptance TDD for Java Developers for serval days, I finally wrote a demo by following the instruction in the book. I gradually began to understand about what TDD is after reading nearly half of the book. Honestly, even though the book highly recommended, I wondered whether it was worth reading before I wrote the first demo today. Fortunately, I don’’t stop reading and understand why the author thoroughly write so many chapters before he wrote the first demo. When adopting a new approach, I should know what it is and what kind of problems it will help me to solve. Writing demos at the beginning is easy, but for the readers who have not heard about TDD and develop software in a traditional way, it is confused for them to understand it, especially writing a test first before writing any product code. That is interesting. There is no shortcut but to read the book carefully.]]></summary></entry><entry><title type="html">Refactoring Legacy Code</title><link href="https://nicholasrabbit.github.io/Refactoring-Legacy-Code/" rel="alternate" type="text/html" title="Refactoring Legacy Code" /><published>2024-04-08T12:00:00+00:00</published><updated>2024-04-08T12:00:00+00:00</updated><id>https://nicholasrabbit.github.io/Refactoring-Legacy-Code</id><content type="html" xml:base="https://nicholasrabbit.github.io/Refactoring-Legacy-Code/"><![CDATA[<p>A good news today is that  I have found the solution to delete cluttered code. Then I felt bitterly embarrassed after realising that I even didn’t have found where the problem was before refactoring the code. That gave me a lesson. It is heuristic when I was trying to solve problems. First of all, don’t be so hurry. Then locate the problem and do your best to solve it.</p>

<p>Qing Ming Festival</p>

<p>Three-day vocation has began from today for celebrating the Qingming Festival. I booked a seat on a couch to my hometown and the price is a little bit higher than it is in the usual days, apparently, because of the great migration in every festival in China.</p>]]></content><author><name>Xianghui</name></author><summary type="html"><![CDATA[A good news today is that I have found the solution to delete cluttered code. Then I felt bitterly embarrassed after realising that I even didn’t have found where the problem was before refactoring the code. That gave me a lesson. It is heuristic when I was trying to solve problems. First of all, don’t be so hurry. Then locate the problem and do your best to solve it. Qing Ming Festival Three-day vocation has began from today for celebrating the Qingming Festival. I booked a seat on a couch to my hometown and the price is a little bit higher than it is in the usual days, apparently, because of the great migration in every festival in China.]]></summary></entry></feed>