Completed enviorment set up….

August 5th, 2006

Tags:

It is so slowly. I almost can’t bear endless problems in compiling KDE4 and kdepim. It’s a nightmare, and the reason I didn’t find yet. :-(

I wasted two weeks on setting up enviorment, partly because of my intern takes me much time. It also because of my inexperience. In fact, in these day, I was so dispirited…

I will speed up on development.

That’s all by now.

Doing intern job and working on Season of KDE

July 20th, 2006

Tags:

The KDE e.V. annouanced “Season of KDE” formally these days. And the site is opened for introducing and progress tracking. I’m very glad to be one of the twelve persons which were chosen to attend this job.

I got the basicly idea in my preparing period for SoC. So it’s much easier to implement it. It seems that the time(about three months) is more than enough. And my mentor - Michael Blade will be help me to complete it. All the things seems well. :-)

But there is a little trouble. I am doing my intern job in Beijing now. The only available time is weekend and nights. What is lucky is the leader allowed me to install enviorment on my computer in company - I didn’t take a laptop. Now the debian is ready. I will compile knotes with KDE 4.0 before this weekend. Then development will begin.

I discarded the idea about write a gadget for Google Desktop which I mentioned before. Though only submit a gadget successful can get a T-shirt, I don’t have enough time to do it. I think my intern and SoK is more important.

So, please look forward to my progress. :-)

BTW: The trouble which is bother me these days has been sloved temporary. I found a place to live in for one month. But what’s going on next month, I don’t know. The Beijing is at least 2 times prices of commodities of Wuhan. What a pity…

“Season of KDE 2006″ Begins

July 2nd, 2006

Tags:

The KDE e.V. sent me a message told me that I will continue my working on KNotes in “Season of KDE 2006″. Michael Blade told they were planing such a kind of thing several weeks ago, now it’s finally announced.

This year KDE has participated in Google Summer of Code program. You were one of the candidates who had sent their proposals to Google under KDE’s mentorship.Google does only support a small selection of the project proposals mentored by KDE. Sadly, your application was not selected in this process.

However, we think that your project proposal was very interesting and had potential to become an important part of the KDE development. Thus, we offer to mentor you without the help of Google in the “Season of KDE 2006” .

We do not have the same financial means like Google does. Thus, we cannot promise you a “reward” for a successful completion of your project. We will, however, try our best to gather sponsors for this event to be able to invite you to this year’s akademy - the annual KDE conference - at Dublin. If nothing else, the Season of KDE 2006 will be a brilliant opportunity for you to become a part of the KDE community while being mentored by an experienced KDE developer that is open for all your questions.

What is out of my expect is there may be no T-shirt but a chance to take part in “aKademy 2006″! Oh, goddness me… Let me calm down for a while…

By the way, I found there are two Chinese person’s project was accepted in KDE Projects of “Google Summer of Code 2006″ : Commenting tools for KPDF by Xiaodong Chu, and QQ - A new protocol for Kopete by Hui Jin.

Google Desktop Gadget Contest

June 29th, 2006

Tags:

Google hold another contest again. This time it wants some gadget(plug-in) for Google Desktop.

When I first time meet Google Desktop, I found it a funny thing. But I decided not to use it. In fact , I am a little afraid Google will take control of my life. Too many things it can do. My feeling is it is too powerful, with great extensibility, leaving no room for other small software. I don’t know why I got this kind of impression. Maybe because I myself also love to write some toy for my using, but the Google Desktop seems(I didn’t study the details) so powerful, beautiful and agilely, I don’t know if it leaves room for small softwares. It makes me a little unhappy.

I am planning to work over Google Desktop’s detail by dint of this contest. At least, I think get a T-shirt is a easy thing.

By the describing of Google Desktop SDK Overview, I found Google Desktop uses COM (however I don’t know if there is better choice). So, take it as my practice of using COM. Good idea :-) .

The deadline is July 31, 2006. I am a little afraid of lacking spare time to work on this. In summer vacation, I am planning to work on KNote, my intern, one of my ideas and this… Maybe COSINE as well. Also some books(include my newly bought “The Art of Computer Programming” and some novels) are on the reading queue. What a substantiate vacation…

I finally got the intern offer

June 17th, 2006

Tags:

In the following two month (or more), I will be work at Oak Pacific Interactive(the owner of mop) in Beijing as a intern. The work is c++ related. After sending countless copys of my resume and successful got the only one which replied(igonred by all others…), this result maybe the best I can imagine.
At the same time, I will be continue my working on KNote improvement - because Michael told me KDE e.V. is planning to hold a “Summer of Code” for KDE itself. No prize but a T-shirt — that doesn’t matter, isn’t it? ^_^ At least, I really want to do something for open source, which also will prove my ability.

The last two months are hard time, and the following two months will be excited.

BTW: I bought “The Art of Computer Programming Volume One”(Chinese version) this week, in order to enhance my knowledge of algorithm and data structure. I strongly feel that more codes I wrote, the more demands on basic knowledge are needed.

Failed to get SoC project

May 24th, 2006

Tags:After a whole day waiting, I received a mail from soc2006support@google.com:

Dear Applicant, First of all, Google and the open source organizations taking part in the Summer of Code would like to thank for applying to take part in this year’s Summer of Code. Unfortunately, your application was not one of those selected to take part in this year’s program. Universally, the quality of the submitted applications was very high, but we had a limited number of slots available. This often difficult decision was made by the organization you applied to, so any questions regarding application selection should be directed at them. We hope you’ll consider applying next year. Some of you may have received an email with incorrect text stating that one of your applications was accepted. For this, we are deeply sorry for the confusion. Kind regards, The Summer of Code Program Administration Team

My brain became blank at once. Then I accepted the result. No more to say. No application next year, because I would not be a student then in all probability. The page of SoC2006 is marked as history. I will also send all information to the one who in charge of KNotes, maybe some help. That’s all for Google Summer of Code 2006, a meteor in my life.

Advice from mailing list

May 23rd, 2006

Tags: Today is timeline of approved list show. After wishing me good luck, I wrote down these last effort I made. If I failed, this maybe the last post about SoC. And I will send these data to the people who in charge of the knotes improvement project. But I am still eagar to get this project, so WISH ME GOOD LUCK^_^

I send a survey to kde-linux and kdepim-user yesterday in order to find users thoughts of knotes’ categories.

Thanks to Grahma Cobb in kdepim-user. He not only give me useful suggest on categories, but also spent time on correcting my English. That’s very kind of him. I am appreciate him.
Cobb says he didn’t mind only one level category, and not mind no “new”/”delete” button. He suggested a very useful feature: filter for categories. He wrote:

I think the most important feature, however, is to be able to filter the notes view by category. For example, in Outlook I have notes which I want to keep but which I don’t want to clutter up the view normally. I have a category called “Obsolete” which I assign to the notes I don’t want to see and my normal default view only displays notes which do not have the Obsolete category.

I am thinking over this. This is a very useful feature I believe, but not clear in details. For example, how to show all notes? KNotes didn’t provide another view of notes. Maybe Kontact can help. Or you must change filter every time. But it’s really a good idea. I am willing to implement it.

Thanks to Jim Philips in kde-linux.
He suggested that KNotes/Kontact can be associated with GTD, a influential time management technique
formalized by David Allen. Last year, there is a SoC KDE project called GTD,
targeted on “make Kontact much more efficient and comfortable as “the system you can trust'’”. And he provide MonkeyGTD as a example for GTD Application. I also found some articles on GTD, which is very helpful for understanding.

General design of knotes improvement

May 22nd, 2006

Tags:

I have just finished my midterm exams, so I didn’t update blog for several days. But I am continue working on knotes in my spare time.
Now I have basicly completed the knotes code’s analyzing.

The improvement will effect following class at least:

  • KNote: Add a item or something other to choose categories.
  • KNotesApp: Improve the implement of note list(KNotesApp::updateNoteActions, NotesApp::m_noteActions, etc.). It seems that a big changed using KXMLGUIClient is needed for implement tree. Also a new initialization for single note is needed.
  • Because categories should be managed, a new config dialog is needed., or we can add a option to KNotesGlobalConfig (knotesglobalConfig.kcfg) .
  • Are the different default settings needed in different categories? Considerable.
  • I am planning to carry out the improvement in the following way:
    1. Left click on the icon will generate a menu with sub menues(categories). In fact, one note can be displayed under different sub menues.
    2. When right click on the icon, you can find a way to manage all categories, like rename. I don’t think the new and delete action is needed here. Because I preferred( so did my mentor ) Method B, which means if there is no note with this tag, the tag won’t exist. I don’t know if it is properly, and if it is can be accepted by most people. But I know the idea of tag is very popular with web2.0 like delicious. At least, I think this method has very good flexibility.
    3. When you editing a note, you can setting its tags by right click on the title or something other. The exist tags will be provided to choose, you can also create a tag.

    I have send a survey to mailinglist(kdepim-user and kde-linux). I want to know if tags-style can be accepted.

    The other thing is about knotes in kontact. I skimmed the source code, and it is seems another story… I am planning to add something like QListWidget for users to choose categories.

    Some Thought on KNotes Catagory

    May 12th, 2006

    Tags:

    KNotes uses KCal::Journal(which provides a Journal in the sense of RFC2445) to save info. After read RFC2445,I found Journal has some good properties to meet our demands, like “categories”
    or “related”. These two property also can occur more than once. That’s perfect.

    I summed up the main threads of bug#41341 discussion as following:

  • 1. Taking category as some kind of note, which reduce the amount of change.
  • 2. Using drag and drop to operate the entries(consider later).
  • I don’t quite agree take category as a note. The most inportant meaning of doing so is that it reduce the change, because some function like “New” or “Rename” can be reused.
    But I don’t think so. In fact, I found the functions can be reused may be only “New” ,”Rename”. Surely many function can be override, but many other function like “Delete” will be changed a lot.

    Another question is if it is necessary to set up a “ROOT” note as the parent of all notes and categories? Otherwise if you delete a category note and want to save the notes, how can you use same function move these notes to root or to another category? It’s certain that a if can work, but I don’t like it… But if a ROOT note must be added, there will be a extra work on upgrade.

    After thinking over the serveral method, I found the focus is on “How to store category information”. There are serveral ways:

    Method A:
    Using category node. Store related information in parent using property “related”.
    Advantage:

  • 1. Some functions can be reused.
  • 2. The structure of logic is very clear.
  • 3. Advanced in the efficiency of most operations.
  • Disadvantage:

  • 1. Is that a ROOT note needed?
  • 2. In my opinion, most functions must be rewrited all the same.
  • 3. In any case, category is not a note. And no class fit for inherit. Strange feeling…
  • Method B:
    Store related information in notes using property “categories”. In fact, no catagory instance exists.
    Advantage:

  • 1. The operation of single note is very easy to implement.
  • 2. The operation of catagory is easy to implement, but low efficiency.
  • Disadvantage:

  • 1. Maybe a lot of work needed.
  • 2. Not clear structure of logic.
  • 3. Low efficiency(at most o(m*n) in searching).
  • 4. Difficult to implement more than one levels.
  • 5. Can’t keep the sort.
  • More:
    Because there aren’t many notes to deal with, I don’t think the efficiency is very important here.

    Method B+:
    On the basis of Method B, add temperory catagories instance to assist.
    Advantage:

  • 1. High efficiency.
  • 2. Clear structure of logic.
  • Disadvantage:
    How to implement, seems a little complex… Maybe counteract the advantage of Method B.

    Method C:
    Bring in catagory instance.
    Advantage:

  • 1. Very clear structure of logic.
  • 2. High efficiency.
  • Disadvantage:
    How to implement….

    The four method below is my initial ideas. Please tell me your opinion.
    These days I will continue study the source code and method of developing kdepim.

    Setting up timeline for soc project

    May 9th, 2006

    Tags:

    May 10th: Completed the resume and send it here as a page. Done
    May 12th: Completed the detail version of CV.Maybe not needed, so delay it
    The following week(week of exams): Describle the details of my opition on the project.
    After exams, more will be done before May 22……