First Generation College Students?

Don’t give me that victim shit, Alyssa.

We can all do that. “I’m anorexic because I was adopted."

“I cheat on women because I wasn’t breastfed.”

Everyone has a reason for how they behave.

What’s yours, then?

The End of the F***ing World

As I went through the application forms recently, I found that many schools asked about parents’ education for unknown reasons. I searched about this and it seemed that there were two possibilities: (1) It would matter if the parents were alumni of the school. (2) If the parents did not attend college, then the student would be considered as a first-generation college student, which would matter if he applies for undergraduate schools.

First-generation college students? I have never heard about this term before. Perhaps because in Taiwan, going to colleges is a recent phenomenon, and almost everyone is a first-generation college student?

You can be a first-gen if you are the first person from your family to attend college, or if your sibling went and you are going, too. The important part is that your parents did not attend and you are doing so. That makes you a first-gen.

Being a first-gen can be scary, intimidating and confusing because you are like a pioneer, going somewhere with no guide and finding your own way.

Since I never thought about this label, I found it interesting to think about it further. That is, if I label myself as a first-generation college student, what exactly does it make a difference? And then I suddenly realized that I had thought about this before – It’s basically the doubts and helplessness when making a choice as described in 〈眼界、控制、選擇〉.

If not for the Internet and books, which opened the doors to knowledge for me, I might still be locked in a small world, unable to see the outside clearly. But even with books and the Internet, it’s still difficult to get the social capital and guidance about decisions in life. It’s certainly terrifying to think about. Almost all choices in my life since college – whether to go to graduate schools; which lab to go to; which company to intern for; which company to work for – were made solely by myself. Indeed, I might have asked some people for some information, but I had seldom asked anyone about which choices to make. “Don’t you feel afraid?” It might be okay if I really trusted myself, but it’s never that easy to trust myself.

In theory, what is required here is a mentor1, whom I would be able to discuss my future. But I still doubt that whether I would be willing to open myself to anyone. In fact, I often felt that I might be more willing to write about something on my blog than to talk about it with anyone.

Maybe the reason behind this is because I am a first-generation college student, so I never had the opportunity to discuss my career decisions. Therefore, I am not accustomed to discussing it with anyone. But I also feel the reason might be that I am too afraid to be restricted by those opinions I get from others. Because I often feel forced to change my decisions when I am unable to persuade the others2.

For me, the connections and talks with people result in promises and pressure, which affect my decisions even when I don’t believe the opinions given by others. So to escape from the pressure, I choose not to make the connection at the first place.

Nevertheless, education does give us power. Even though I just entered workplace for a few years, my income has exceeded my family’s. But how does it matters? Even if I achieve this, what should I achieve next? I found that the bigger problem is not that I don’t know how to go forward, but I don’t know why I should go forward. Why should I care about career path? Because I never know what’s on the other side, I don’t have the reason to get to the other side.

“So what exactly do you want? What do you want to do?”

I hope, to expand my life experience to the greatest extend. To be able to see things I have never seen before. I believe as long as I keep going, I will become a bigger existence. And the future me will be able to accomplish the things I could not achieve right now.

The dream might seem too romantic. “Why couldn’t you come up with more realist goals?” But why not? Why couldn’t it be the case that only the romantic goals are the true objectives? All the other things – career prospects, financial considerations – are just constraints and regularization terms3. Every time, when I had to use materialistic goals to communicate with others, I wanted shout. Could I live romantically and chase a romantic goal?

Even though I still cannot be so firm about my decisions when I am unable to persuade others about my decision. But maybe one day I will. I hope one day I could become more determined. And that’s my most important dream right now.


  1. What is the importance of a mentor? ↩︎

  2. I changed from not wanting to accept the offer to willing to accept the offer just because I was unable to persuade the recruiter about my decision. And the reason I rejected the offer in the end was just because I was unable to persuade Google’s recruiter – 〈繁花落盡〉↩︎

  3. The problem is, regularization terms – while not being objectives – still affect every decisions. And I sometimes feel that rather than seeing it as regularization terms, perhaps treating it as objectives is more positive. ↩︎

My Interview Experience for Machine Learning Engineer with Appier, Facebook, WorldQuant, and Zillians

neural networks

After my interviews for software engineer positions ended miserably1, I started a new journey to hunt for my first full-time job. This time, the goal was to establish stable income early as well as to learn more about machine learning. Therefore, I decided to interview for machine learning related positions.

WorldQuant – Quantitative Researcher

Since I had interviewed with Jane Street before1, I got interested in related industries. I’ve also heard that the salary at WorldQuant was quite high, and therefore I’ve decided to interview with them. Of course, I had heard about many different opinions about this company, but I thought it would still be an interesting journey.

The first stage of the interviews was a mathematical exam. I came across my classmates as I attended the exam and we encouraged each other before leaving. Luckily, I was able to pass the exam.

The on-site interviews involved problems that had a mathematical flavour. It took some time for me to come up with a solution. Rather than encouraging us to speak out our thoughts like in interviews elsewhere, the interviewer stopped me when I tried to explain my thoughts early. He told me to think alone first, and started using his mobile phone. Although I was a little bit uncertain about the situation, I was able to come up with a solution at the end.

When I asked the reason why he chose this company, the interviewer was quite honest. “It was all about money. Some people might want to publish papers about investment. I think this is quite useless. It only matters when you are able to earn money.”

“Perhaps your could still publish some of your methods after it’s no longer effective in the market?” I asked.

“But publishing is not important for me.”

“Just like I said, I only care about earning money.” The interviewer responded.

After the interviews ended, I went back to the school, and started to thought about it. Indeed money was really important, but I still felt that I was unable to like such ideas. Therefore, I decided to quit the interviewing process.

Zillians – AI Developer

I came across the recruitment ad for a AI Developer position at Zillians on the Internet, and I felt very interested. Therefore, I applied for the job.

Because at that time, I felt my background on artificial intelligence was not very strong, I decided to write a detailed letter explaining my background and motivations. I really don’t know why I would think that would be useful, but luckily I did get invited for the interviews.

Before the interviews, I was given a homework to analyse source code of Caffe framework, and to make some modifications. I spent quite some time on it, and attended the interviews. The interviews involved the usual programming exercises as well as questions about the Caffe code.

I asked the interviewer why he chose Zillians.

“Why did you choose Zillians among other choices?” I asked.

“Because Zillians was such a rare company. If I did not go to Zillians, I would be afraid that it might go bankrupt very soon then I would not be able to work at such a company anymore.”

“I could always to go work for other companies later because most of them would still exist by then.”

The company featured a open space office just like other startups, but it was also possible to work alone quietly if you like. As we talked, the interviewer brought me to a room where only one employee was working inside. I said hello to the lonely employee before I left the company.

Afterwards, I had second rounds of interviews via Skype. The offer I got was very competitive, but I decided to turn down the offer.

Appier – Machine Learning Scientist

Appier was a very well-respected company in machine learning and I also had a friend who worked there. Therefore, I asked my friend for a referral.

I was asked some machine learning problems as well as programming problems during the first round of interviews. The second round of interviews were similar but also involved questions about my masters thesis.

I still remember asking interviewers questions like “Why did you decide to start up a company?” It was indeed an enjoyable chat.

I successfully got an offer.

Facebook - Machine Learning Engineer

The interviews with Facebook happened in a different time from other interviews described in this article. However, it’s convenient to put it here.

The story started when a recruiter from Facebook sent a letter to me via LinkedIn, offering me about opportunities in machine learning. However, because I was too tired from day-to-day work, I hadn’t replied it for at least a month. I then got a second letter, saying that it was the last chance to interview.

Some of my friends also talked about the email about the last chance. “Looks like I am not the only one who is hesitant to reply. " I thought.

I decided to try anyway, and surprisingly I passed the phone interview without any preparation, unlike my last attempt1. Perhaps the bar for machine learning engineers was lower? Or perhaps it was helpful that I still practice problem solving sometimes during these years? Or perhaps I just got lucky?

But the on-site interviews did not turn out positive. I performed poorly on distributed machine learning system design and basic machine learning problems. I felt sad, because it appeared that my machine learning skills actually did not improve a lot during these years.

On the other hand, I also felt relieved. Because if I did get the offer, my career path would be largely decided because I might be too afraid to try different paths due to financial considerations. Perhaps this was an opportunity for me to take a detour, to see what could be possible ahead.

My Interview Experience for Software Engineer with Facebook, Google, Jane Street, Microsoft, and Quora


Microsoft – Software Development Engineer

In 2014, as my summer internship at Microsoft was approaching its end, I started to realize that I probably would get a return offer as an software engineer in Bellevue. I had mixed feelings about the situation. I was happy but confused at the same time.

My impression at Microsoft was actually pretty good. There were many friendly colleagues and the projects were also okay. It’s just that I had been a long-time Linux user and an open source supporter. This personal identity made me less willing to work at Microsoft full-time.

However, due to encouragement from colleagues as well as the financial motives, I started to think that maybe it’s not such a bad idea to accept the offer. I would always remember how naive I was when I got the offer:

“Your compensation would be like this.”

“Well, I am actually not sure about the value of this number.” I said.

“Okay, that’s take a look at the exchange rate… Well, it’s about this many NTD.”

I almost accepted the offer, if not for the email that I received from a Google recruiter.

I was encouraged by the recruiter to take the interviews at Google. Since Microsoft only gave me about 2.5 weeks to make a decision, we had to act quickly. However, after the interviews, I felt that I had no chance to get accepted because I did not do very well.

Since the results would not be announced before the deadline, I sent a letter to Google to stop the recruiting process, and wrote a letter for Microsoft to accept the offer. But just before I sent the email, the Google recruiter contacted me and made me to reconsider about this.

Eventually, I decided to wait.

So I lost my Microsoft offer, and unfortunately I did not get an offer from Google either.

Of course things have changed a lot since then. Microsoft started to embrace open source and Linux. Perhaps I wouldn’t be so hesitate about working at Microsoft next time?

Google – Software Engineer

My relationship with Google was really special. My first-ever interview for an internship was with Google Taipei. At that time, I was inexperienced and didn’t even know how to write a resume well. But still, I was really lucky to get selected for an internship. The lucky experience must also have given me many benefits afterwards.

After many years, just when I started to wonder about what to do after graduation, I received a letter from Google again, asking whether I was interested in a full-time position.

I thought, “Of course this was a good opportunity!” I had always had the feeling that Google was a dream company. It had so many interesting and impactful projects. I really wanted to become part of the force that could transform the society. Although as a inexperienced software engineer, I probably would not be able to do exciting projects, I was still wiling to help them make money to support other exciting projects.

The problem was that I was not very determined to go abroad at that time. So I had not started to prepare the technical interviews when I received the email. And due to the Microsoft offer, I had so little time to prepare for the interviews. Unfortunately, I did not get lucky this time and my performance at the interviews was not so good. The recruiter scheduled another two on-site interviews for me, and this time I thought I did better, but eventually I was unable to get the offer.

Facebook – Software Engineer

I’ve applied for internships at Facebook before. But I never received any responses. Luckily, I was able to get a referral this time for a full-time position in Seattle. Although the process was rather slow, a phone interview was finally scheduled for me.

In the first phone interview, I choose to use Python initially, but the interviewer said I should choose a more serious language so I decided to use C++ instead. It appeared that the reason he said that was because he wanted to test me about object-oriented programming. I completed the interview, but was told that a second phone interview was required.1

The second interviewer had a strong accent and it was really difficult for me to understand him. Although I managed to complete the problems, I eventually failed the interview.

Later I discovered that most of the problems tested could be found on LeetCode. I was really regretful that I did not practice more problems on LeetCode.

Quora – Software Engineer

If not for the Internet, I wouldn’t know that it’s possible to apply for an internship abroad. As I searched the information about companies, I also started to use Quora. I looked up their web page and found that at that time there was a Taiwanese employee there as well. So I thought perhaps I could apply for this company.

Firstly there were two phone interviews for technical problems. The problems were not easy, but luckily I passed the interviews. For on-site interviews, I had to book the airplane tickets by myself and get reimbursement later, this was different from other companies that directly book the tickets for me.

Besides the usual technical problems, the on-site interviews involved many design problems and a special practical interview that imitated real tasks engineers encountered at work.

Although I felt I did okay for the interviews, I still got rejected afterwards.

Jane Street Capital – Software Engineer

Jane Street was a really special company. I had never known about it until I accidentally learned about its existence on Quora. It’s a proprietary trading firm that utilized computer programs to automatically trade in the market. Jane Street was also using OCaml, a functional programming language, as their main programming language.

As I found some good reviews about the company, I decided to give it a try. I felt regretful that even though I had tried a little bit of Haskell when I was an undergraduate, I had not continued my efforts.

Due to my lack of experience in functional languages, I thought I could never pass the phone interviews. However, it’s actually okay to use other languages such as Python. And I did pass the phone interviews.

The onsite interviews lasted a whole day, and involved a lot of problems. Moreover, most of the problems were very different from what I encountered in other companies. They were really interesting but also challenging.

After I talked with the employees, I started to like the company. The interviewers said that most of the employees there were really smart and therefore they could learn a lot during work. In addition, the workplace politics was minimal there due to its small size. And as they were not a product company, they did not have to rush through many deadlines and could spend time to polish their work. Finally, their compensation was also very competitive compared to other companies.

However, the interview results were not definitive enough for a hire. So they scheduled another rounds of on-site interviews. Unfortunately, I did not get the offer eventually.

  1. It was said that you only got a secend phone interview when you performed not so well on the first. ↩︎

My Life at Google Taipei as a Software Engineering Intern in 2011



To be honest, becoming a software engineering intern was not in my plans at that time. I was too focused on my campus life to think about my career. However, I did want to try some new things, and find opportunities to grow and change my self. I came across the ad about Google internship from our department so I decided to give it a try. I was really lucky to pass each stage: the online assessments, writing my resume, and the interviews.

Doing an interview was an unfamiliar experience for me. At that time, I had only done an official interview once with Asus. Just like what people said, Google interviews involved technical and algorithmic problems. Some of them was really challenging for me. I was really lucky to get selected. Since I did not apply for any other companies, I would certainly have a very different summer vacation if I did not pass the interviews.


Google was a really special place. It gave me a lot of freedom. There were no pre-determined work hours. Some people came really early and left early. But there were also some people who came in afternoon. There were many snacks and fruits for the employees and I did eat a lot of them.

Initially, I spent a lot of time familiarizing myself with tools and the development process. I also read a lot of documents to analyze the system architecture in order to complete my project. One thing I found surprising was that, even with distributed complication, compiling a complex system still took a lot of time. I did understand why Google would try to design a programming language that compiles faster like Go. It was also my first time to develop a system that could potentially affect other people’s work if bugs were introduced by my commits. That made me became extra careful about my work.

Google had many special in-house tools and development systems. In addition, other services like Gmail and Docs were also indispensable for the employees. Just like what they said, “Eating your own dog food.”

Most of the interns were from National Taiwan University, and that made me a little bit lonely. Although the interns ate lunch together every day, I still felt uncomfortable. But it did make sense. Students from other cities would certainly be less willing and less capable to do an internship at Taipei. After I heard about everyone’s story, I really felt I still had many areas that I could work to improve.

During the internship, I discussed my thoughts and doubts about my future with senior engineers. I even had an opportunity to have an 1-1 with Li-feng Jian to discuss about industry and academia.


When working at Taipei 101, I often liked to walk toward the window and watch the city outside. The cars and people below appeared to be so small. I still remember some memories while I worked there: Every morning when I walked in the building, there were always some people handing out flyers; Once I was stopped by the guard at the building because I did not look like an office worker; And there were many expensive restaurants on the lower ground floor.

Because of the internship, I had to find a place to stay for 2 months. It was not that easy. I searched the listings on the Internet and came to Taipei by myself in order to inspect the places. In retrospect, the place I stayed eventually was still not very satisfactory. But this was my first time renting a place, so I think I still learned a lesson.


I had to adapt to many things when I moved there initially. I didn’t know where to eat, where to buy. And I usually had to bring a map with me all the time. (I didn’t have a smart phone at that time.) Although I spent a lot of time exploring at first, I slowly developed my routines. Each morning I took MRT towards Taipei 101, I would read the book “Theory of Computation” to prepare my courses next semester. Once I got off MRT, I started to listen to English podcasts. At work, I would eat my breakfast and plan what to do today. When I got tired, I ate something and look outside or read some reference books. I ate lunch with colleagues each day and took a snap before resuming working. After work, I walked back and continued reading. Each evening I prepared a different course such as Computer Organization. Just like before, I always wanted to establish patterns during my life, and figured out ways to fill all of my time. It was like this when I was at NCTU, it was also like this after I went to Taipei.


Google was really a place that made me feel safe and warm. Everyone was friendly and gave me a lot of guidance. Having the opportunity to work with many professional colleagues really made me see what I lacked. I really hoped I could improve and become better in the future.

Although there were no pre-determined work hours, I still felt the pressure to do great work. It’s really tiring to code whole day.

The 2-month internship finally ended. Although I had the opportunity to work part-time at Google once the semester started. I turned it down because the distance between Google and my school was too long. I still wonder now how things would turn out differently if I had made a difference choice.

2014 IBM Master the Mainframe World Championship



“Is this OOO?”

“This year, we would like to hold a Master the Mainframe World Championship.”

The beginning of this story was like a dream – just as I came up with the idea to finish my reflection on the 2009 Master the Mainframe contest, I got a call from IBM Taiwan. They asked me whether I would like to join the first-ever Master the Mainframe World Championship.

“We will invite students around the world who have won Mainframe contests in the past to join this IBM Master the Mainframe World Championship. Participant must still be a student and be willing to complete some introductory challenges remotely and to go to New York City for the final rounds. This is a great opportunity to meet talented people and all expenses will be paid by IBM. Are you willing to participate?”


It had been so many years since my last participation in the 2009 IBM Mainframe contest, so I was rather surprised by the call. Although I was not that keen on travelling, I still felt it would be a good thing to go to see the US. This could make me braver. The opportunity to demonstrate and present my work before everyone would also be a good way to improve myself.

The competition had three stages; and in addition to technical challenges, we had to write three reports and to demonstrate our work in person. The competition started from 3/10 and participant could complete different tasks at his own pace. But we did have specific deadlines for the reports. Preliminary rounds for demonstration were held in the US, and 6 finalists were selected. The final rounds were held on 4/7. All challenge documents can be found on the website.


The technical challenges didn’t take long to complete, so it went pretty smoothly at the beginning of the competition. However, there were some ambiguous instructions. Since I always preferred it to be precise, I had many email conversations with IBM before I finally solved some problems. In this process, I figured out a logical error in the code of the tasks, so IBM changed the instructions to ask participants to fix it.

Meanwhile, I got a lot of support from IBM Taiwan, and we also had several oversea teleconferences, where we could ask technical questions and listen to lectures about the business trends that could help us write the analysis.

When I finally started the implementation of the bank application, I heard that someone asked whether it’s okay to use PHP instead of Liberty for the development and was given the permission. Since I was unfamiliar with Liberty development using Java, I also decided to use Django for the backend application. However, the DB2 driver given only had JDBC support and cannot be used with Django. So I searched for a while for Python drivers, but I had never succeeded in making it work. Finally I realized that a license file was needed to use the driver, so I sent an email to IBM, and they told me they would try to figure out the solution, but Liberty was still recommended.

But I didn’t want to give up. I spent more time searching, and I found that I could use Jython to execute an old version of Django. In this way, I could use JDBC. So I finally started to develop my web application. After some time, IBM released a trial license file for us to use, but the version did not match the software package on the website, so I spent some time to find the correct package. However, even if I solved the license problem, I still got permission problems when I connected to the DB2, and only after I contacted IBM for this did I make it work. So I finally could use the latest Django with Python. I think this might be the biggest challenge that I solved during this competition.

During the development of the application, I learned a lot about jQuery and Bootstrap. It had really been a long time since I was involved in front-end development in the past, and I had never had opportunity to learn these two libraries. I was really surprised by their capability to construct a beautiful interface in such a short time.

Since I only had 6~8 minutes for demonstration, I couldn’t demonstrate any advanced, complicated features even if I wanted to. So what kind of extra features should I make? I wanted to have a creative and easy-to-understand feature, so I finally decided to create a mobile app that could disable and enable a debit card in real-time. With this app, one could enable the card before an online purchase, and disable it immediately afterwards so nobody could make an illegal payment with her information.

Originally the instructions were that the final rounds were mainly about demonstration, and there was no need to do a presentation. But after a rehearsal, I realized that I was unable to state my ideas clearly during the demonstration. If I wanted to make a good impression, I must first do a presentation before the demonstration.

New York

After I finished my slides I soon started my journey to New York. I first arrived in Tokyo, Japan for a transfer, and finally got to New York in the afternoon. After I arrived in Waldorf Astoria, I only had some time to put my luggage. I then had dinner with other participants, and on the early morning next day, we must start our preliminary rounds.

I was a little excited and nervous before the presentation and kept checking my mobile phone and presenter. But after I got on stage, everything seemed to work smoothly and the time passed so fast. The judges seemed to be excited about the mobile app, and I got good feedback from them.

We then visited the zEnterprise plant, had dinner, and went to Times Square. I really felt that the amount of food provided by the restaurants there was so much that I often accidentally ordered too much.

The finalists were announced in the next day, and I was really happy to be selected.

Final Rounds

After some preparation and interviews, the final rounds finally began. I had to stay in one room, and 6 judges would come to different rooms one at a time, so I had to give 6 consecutive presentations. I was really tired after 6 rounds. Other students would go with the judges, so they would also be able to see the work of 6 finalists. The judging style of different judges were very different. Some judges were very strict, and some were very encouraging.

I still remember a judge asked an unexpected question: “How do you think programming can make the world a better place?”

I also gave an unexpected response: “Actually programming can solve many problems. For example, we can even make the government more efficient and more transparent. We can make every modification of the laws easily understandable (using something like a version control system), or visualize budgets of the government.” (I don’t really remember exactly what I said, but right, I was paying a tribute to organizations such as Code for America, Code for Tomorrow, and g0v.)


Maybe it’s because of some news reports in Taiwan, I suddenly received a lot of congratulations on the Facebook. It really made me feel a little overloaded, and it took me several days to reply. The influence of the media could be really big, and I also felt very impressed after I read the reports. Haha, it actually seemed a bit unnatural. When I saw the word “genius”, I suddenly recalled the conversation when I was being interviewed at IBM Taiwan before the competition:

An experienced member at IBM said that he felt that one must have the gift to be in the software industry. Not everyone would like to work so hard to study a problem. I said I didn’t really agree with this. I thought hard work and the time spent was more important. Considering the fact that I spent a lot of time on the computer since I was in the elementary school, it should not be surprising even if I did well.

Afterwards, someone said: “I think he didn’t mean you have to be gifted. What he meant was that personality was important.” Maybe. But I couldn’t help but start to think that this kind of thinking implied that – “Personality itself is a natural talent. Or to be precise, the capability to work hard is innate.” So it could also be interpreted negatively – If you didn’t have the talent to work hard, you couldn’t even try to work hard. To be honest, I didn’t really want to accept this kind of world.

It seemed to be again a deadlock between nature and nurture. Wasn’t there already a answer for this question? The two affected each other, and no single factor was unimportant. Every known and unknown factor worked hand in hand, it’s just that we humans tended to attribute to some simple reasons – just like what I am going to do next:

The Perfect Factors

When I was talking with students from other countries, I mentioned that I had been reading Thinking, Fast and Slow recently. I was unable to explain clearly what the book said, but I was surprised to meet someone who also had read this book. A passage in the book went like this:

A recurrent theme of this book is that luck plays a large role in every story of success; it is almost always easy to identify a small change in the story that would have turned a remarkable achievement into a mediocre outcome. Our story was no exception.

I felt, my story was also the same.

It took too many coincidences and factors to win this prize. Even if one factor had been missing, the result might not have been the same. I felt really lucky and thankful for this.

Everything started when I was a child. I was lucky enough to learn some web design. Because no one in my family was in the computer industry, I spent a lot of time learning by my own. Therefore, I acquired the ability to analyse a system by trial and error and became familiar with searching for solutions. That’s why I was able to solve the difficulties in the competition.

In the junior high school, I was bored by the English grammar courses, so I decided to find a new way to learn English and started to read a lot of books. English gradually became my interest. The long hard work enabled me to read technical documents efficiently and allowed me to write good reports. Moreover, the practical experience I got from Wenzao English Debate Workshops and National Taiwan University English Debate Society sharpened my communication skills. In the 2009 competition, I already felt that English was a great advantage to win. This time I felt this was even more true.

Even if my English was good, it’s still impossible for me to be better than native speakers. But there was another factor which might be even more decisive: the presentation skill itself. I got interested in presentation when I learned the Takahashi method in senior high school. Afterwards, I prepared every presentation thoroughly to sharpen my skills. In the last semester, I happened to take the course Speaking in the Disciplines, and learned some voice techniques. And I got a presenter as the prize of the final presentation on that course. This helped me a lot in the competition.

However, technical skills and presentation alone were far from enough. To write the analysis documents, I still needed background knowledge. I happened to take the course Introduction to Cloud Computing and Big Data last semester, and learned some ideas to help me write the reports.

Even the smart phone that played an important role in the competition was just bought for several days. I had been using my old traditional phone for more than 4 years, but it suddenly broke. That’s why I decided to buy a new one. Without the phone, even if I wanted to make a mobile app, I might not be able to borrow a phone to realize it.

And finally, about the idea to enable and disable the debit card in real-time. This idea actually originated from a feature of the Chunghwa Post debit card. It allowed us to use an integrated circuit card to sign in the webATM, and from the webATM, we could disable online transactions and foreign payments for the card. I really loved this feature, and I always disabled it until I really wanted to make a purchase.

In early January, I came across a post on the Bank_Service board on, and the author asked whether other banks had the same feature, but nobody seemed to know one. So I learned two things: (1) Other people also liked this feature. (2) Almost no banks had this feature.

But using webATM and an integrated circuit card was just too complicated. It didn’t make sense if we want to disable and enable the card frequently. Why not use a mobile app? So this became my final idea.

This feature could potentially save the bank a lot of money. Moreover, it could give a sense of security to people like us, and made us more willing to accept debit cards.

Just like this. Every factor worked together so perfectly. Even if just one had been different a little bit, the result might not have been the same. This itself was incredible.

The Broken Umbrella

My umbrella is broken, again. The winds in Hsinchu are so strong. Now, I have to carry it very carefully to use it. I still haven’t buy a new one. Seems like I am too lazy to do so. And I am still wondering where can I buy a strong umbrella, which can stand longer. I like folding umbrellas, they are easier to carry.

It has been rainy so some days. I am not sure when the weather would change. I really don’t like a rainy day. Well, actually it does not rain very often in Hsinchu. But every time it rains, the winds become strong, and that is terrible.

“Rainy days are beautiful.” Some people say. Indeed the feeling is very different. Calmer, and … sadder. It’s a time that you can take time to appreciate some strange thoughts and feelings. Sometimes I feel I am too busy. Too busy to look around the world. But at least this gives me one thing good: it leaves me no time to cry.

But you cannot always escape like that, can you? Take time to think, and you may find what’s really important. What you have ignored for such a long time.

I have left this umbrella behind somewhere for two times, but luckily both times I got it back. Still it would leave me. Hit by the heavy rain for these days, standing there to face the winds. It is broken now. But I still carry it, waiting for a new one to come in.

Considering the strong winds, this may happen many times in the future.


My Love for Reading and Pleasure of Little Things


Written in 2009/12/14.

Love for reading

I do think reading is important. It inspires, educates and entertains us.

It was not until I was a second grade student in junior high that I acquire the habit of reading.

I am not sure, but I believe that I came across a website focusing on learning strategies. There was some book recommendations on the site, and I try reading some of them. They did inspire me very much. For one thing, I started to study English hard and it pays off. Now my reading ability is much better than I was. And this enables me to learn so much by reading English books and websites. Also, I became fascinated by the books of neuroscience, cognitive science and psychology. I keep reading books about my brain and how to improve my ways of learning. They are helpful and interesting at the same time.

I have developed a love for reading. I read almost any kinds of books now. physics, biology, computer science, novels and literature. I read books about science more often, though.

I believe I can become better by reading. There are new thoughts, new ways of life and new knowledge. I try to change my self by applying the techniques I learned from books. And it sometimes works wonderfully. So I make it a rule to read every week. This way, I can always be learning. And it becomes a measurement of my time management. I must never be too busy to read, if I don’t have time reading, maybe it’s time to change my schedule.

Pleasure of Little Things

I am not the kind of person who enjoys party or other social activities. Often, when I hang out with my friends, we just talk and do nothing particular. I love this kind of feeling. Just be together, and no more.

When I am by myself, I spend much time reading or using computer. Basically, I am always learning. I use my computer to design software, read ebooks, create webpages and learn languages. I love learning. I seldom play, it just doesn’t fit me.

Maybe I am a serious person, too serious that some people find me boring.

But that’s all right. I have tried to participate in some activities that I have never tried before, and found that while they are pleasant, they are not my way of life. What I should do is spending more time with my close friends and try to make new friends in my own way.

I should live in my own style, only then will I be happy.

My dear friends, I do appreciate you. I feel fortunate to have you as my friends.