Li Ha
<halizhangyu AT sina DOT com>
- Country (born / living in)
- China
- Academic experience
- Beijing University of Posts and Telecoms
- Your current occupation
- Master(Computer Science)
- Software projects you have already participated in
- * Google summer of code 2007
Experience Level
Worked as FTE at Microsoft for one year(Office Live Meeting Project),my work was writing Javascript to render elements recorded during a meeting.
Worked as Intern at IBM for 3 months, developed Lotus Notes 8.
Worked as Intern at Symantec for 6 months, wrote a lot of test tools based on Python.
- Experience in coding in general
- started 2000, 50 months
- Experience in Python coding
- started 2006, 6 months
- Experience in Java coding
- started 2002, 40 months
- Experience in HTML
- started 2003, 20 months
- Experience in CSS
- started 2003, 12 months
- Experience in Javascript
- started 2003, 24 months
- Your favourite programming language(s), best first
- Java, Python,C#,C++, javascript
- Tools you use for development
- Eclipse and Eclipse Plugin, Visual Studio
- Did you already do full day work (8h/5d) over some weeks on some software project yet?
- Y
It has a reason why the template used "hours" as unit. Please give your experience in (estimated) hours you actually used for developing in the respective field. I have doubts you coded 50 months (== 50x30x24h) in 8 years. -- ThomasWaldmann 2008-04-05 20:56:02
Answer from Li: 50 months( == 50*22*8h), it is estimated by working days, and there are 22 working day in a month, and working 8 hours during a day.
Project(s) you apply for and your ideas for them
What projects do you apply for? Can be some of our suggestions or a suggestion of your own. In any case, tell us YOUR ideas about it.
Why are you applying for this special project? Why do you think you are best suited for that project?
Which deliverables do you plan to develop while doing the particular project? Please present a rough plan that gives deadlines for each deliverable.
Project "Rich Editor and Rich Experience"
The purpose of this application is to provide rich editor for users and make users have more rich experience using moinmoin to wiki their ideas. I could be suited for this application because:
- I am passionate for my application and very interested in Open source projects.
- I have experience on Python language,HTML,javascript and Ajax.
It would be a good enhancement for moinmoin if it could provide a function for user to draw pictures easily, for server to save and transmit pictures effectively. The detailed design is to make moinmoin have a rich Editor especially provide a nice SVG based drawing tool and viewer to MoinMoin, this will enrich current features and make it have good user experience.
- Also I have experience on Google summer code in 2007,and my application last year successfully passed.After a nice cooperation with my Mentor last year, I know how to communicate your ideas and designs with mentors and how to make each milestone smooth.
I'd like my application to have the following basic features:
- Provide function to drawing pictures in a SVG image editor, the picture editting could include drag different shapes into template, customize the color and size of shapes, a drawing pen,an Eraser etc.These pictures could be saved as SVG which is XML based image format, it will quicken the picture download speed for clients(SVG is smaller than jpg and gif).Firefox and IE could support render SVG now, so it could be easily for users to view these pictures.
HTML could be easily translate to Wiki format, user could take use of their own HTML editor like FrontPage to create HTML first, and then simply copy the HTML into wiki editors, and then it will be changed into format of wiki.
A rough plan is like this:
- Investigate on existing open source SVG generators, learn moinmoin code standard and related source code.(10%)
- Think out two or three solutions to integrate SVG generators and viewers, a prototype is needed to prove final decision.(30%)
- Coding,Checking,testing, discussing with mentor,modifying... Coding, Checking, dicussing... Finish version 1 code (50%)
- Besides, the second function could be considered if time permits. And the rest 10% time is flexible to move into any section if needed.
Project "Connect your Wiki"
The application "Connect your wiki" is to integrate version control function and a talk tool into wiki. The basic feature is:
Version Control:Add the merge function. There are often some conflicts if different users change the same content at the same time. If we could provide a function to hint user that another person also editing your section, ask user to merge automatically or manually, or refresh the page.
Talk Tool:A web-embedded chat tool could be helpful, it makes user exchange their idea and discuss immediately. Your contact list could people who are interested in your wiki page.It's better to embed the talk tool into web browser like GTalk.
My sample Code
1. "MySourceCodeForGSOC2007" application, my project "Integrate and Connect your clients" for Google summer code 2007.(Successfully Pass).It is coded in Java.
2. Test tools "AutoReportGenerator"I created for internal use in a company I was an intern there.It is coded in Python.