Showing posts with label IRC. Show all posts
Showing posts with label IRC. Show all posts

Saturday, June 16, 2012

Moments with Twitter - II

This post continues from my previous post, Moments with Twitter..  I just noticed the "Embed This Tweet" option provided by Twitter, that copies the tweet with formatting. However, I was just copy-pasting the tweets here.

#Google #hoaxes - Really funny. http://en.wikipedia.org/wiki/Google%27s_hoaxes Jun 20, 2010  
Google never fails to amuse the users with its easter eggs and April fool hoaxes

Seems a nice collection: http://www.alldissertations.com/univ.php Jun 21, 2010  
This is indeed a useful collection, with theses from multiple academic institutes.

sleepless night at Paris.. ;) Dec 08, 2010
This tweet is indeed remarkable. This was my first tweet from abroad, during my visit to Paris for SoCPar2010.

wanna discuss more about Google Summer of Code with other enthusiasts and students from Sri Lanka? Join #gsoc-lk at irc://irc.freenode.net Feb 10, 2011  
We created an irc (along with the mailing list, which is quite popular among the students) for the Sri Lankan students to discuss the GSoC among themselves. During the Summer of Code student application period, this room gets a bit of traffic, while remaining passive during the other days of the year.

If #Microsoft had Invented ... http://t.co/3GiwBgM ;) Jun 25, 2011  
We always enjoy a good set of jokes at Microsoft, as Linux fans. Not that we hate Microsoft. It is just we too love fun and a good laugh.

You and Your Research - http://t.co/I71uUkKA Oct 16, 2011
This is again a good read for the future researchers.

An interesting journey around the world.. http://t.co/qgVm0dt1 Jan 14, 2012  
This includes a nice set of photos taken around the world, by an artist.

Google Summer of Code Workshop in Poland - http://t.co/BL2UHNZ7 #GSoC Mar 29, 2012
This workshop from Poland reminded me the Google Summer of Code awareness sessions we had allover the country. We had 5 for GSoC 2012, and 2 for GSoC 2011.

Anti patterns - http://t.co/DswnzcUD May 29, 2012  
Learning anti patterns is more fun than learning patterns. It is more like learning from your own mistakes. It is also suggested that one should learn anti patterns before learning patterns, for the efficient use of the patterns. In any case, anti patterns are fun.

Friday, March 23, 2012

GSoC Feedback Session in IRC for the rejected organizations

Google schedules an irc feedback session with the organizations that couldn't make to the summer each year, addressing what went wrong with the each organizations. It was an interesting session today.

First we all adjust our irc nick to have the format {org}|{nick}
/nick ogsadai|Pradeeba

Then we queue ourselves with the gsoc bot by sending a message in the following format.
/msg gsocbot queue
/msg gsocbot queue ogsadai http://sourceforge.net/apps/trac/ogsa-dai/wiki/GoogleSummerOfCode

To see the next 10 positions,
/msg gsocbot showqueue
(11:17:59 PM) gsocbot: 01. AmineKhaldi reactos http://reactos.org/wiki/Google_Summer_of_Code_2012_Ideas
(11:18:00 PM) gsocbot: 02. ReactOS|Amine reactos http://reactos.org/wiki/Google_Summer_of_Code_2012_Ideas
(11:18:01 PM) gsocbot: 03. mikhas maliit https://wiki.maliit.org/Ideas
(11:18:02 PM) gsocbot: 04. prism PRISM Model Checker http://www.prismmodelchecker.org/gsoc/
(11:18:03 PM) gsocbot: 05. ogsadai|Pradeeba ogsadai http://sourceforge.net/apps/trac/ogsa-dai/wiki/GoogleSummerOfCode
(11:18:04 PM) gsocbot: 06. Andrew__ boost https://svn.boost.org/trac/boost/wiki/SoC2012
(11:18:05 PM) gsocbot: 07. plan9|anth plan9 http://www.plan9.bell-labs.com/wiki/plan9/gsoc-2012-ideas/index.html
(11:18:06 PM) gsocbot: 08. plone|kevin7kal plone http://plone.org/events/summer-of-code/2012/
(11:18:07 PM) gsocbot: 09. wordpress|jane WordPress http://codex.wordpress.org/index.php?title=GSoC2012&oldid=114656
(11:18:08 PM) gsocbot: 10. tcl_aku tcl http://wiki.tcl.tk/28789
(11:18:09 PM) gsocbot: ... and more ...

This year OGSA-DAI applied as a mentoring organization. Carol mentioned that the organization's application as well as the idea's page look perfect, while suggesting we could have proposed more ideas. OGSA-DAI will come up with more ideas next year. In the mean time, feel free to volunteer for OGSA-DAI, if you are interested. OGSA-DAI community always welcomes the enthusiastic volunteers.

Friday, March 16, 2012

Google Summer of Code (The best of both the worlds)

Month of March is so special to me. I was introduced to two great open source projects in March, 2009 (AbiWord) and 2010 (OGSA-DAI).. ♥

Not everyone gets a chance to live........ a second life!
Now, the beauty of open source projects come into play that it gives you a chance to work on something that you are really interested in, in your own way. But not many of us get time to dedicate to an open source project due to our other commitments and as we are busy with our regular work, study, and related activities. The Google Summer of Code (GSoC) gives the best of both the worlds.

Why GSoC?
GSoC is an annual program from Google for the university students of age 18 and more. You will be coding for your preferred open source organization for 3 months. Google coordinates and awards the successful participants. Though open source organizations are run mostly by volunteer developers, Google pays the students with 5000 USD along with a certificate, an awesome t-shirt, and gifts! Hence you can focus entirely on the program during the 3 months time.

3 milestones. 
  • Getting Accepted (500 USD)
  • Mid-Evaluations (2250 USD)
  • Final Evaluations (2250 USD)

Some statistics of 2011
  • 175 Organizations
  • 2096 mentors and co-mentors.
Submitted
  • 3,731 students, from 97 countries.
  • 5,651 proposals.
Accepted
  • 1115 students/projects
  • 68 countries.
  • 595 universities.

The success rate is pretty high!
Last year, more than 90% of the students passed the mid evaluations, where around 88% passed the final evaluations. The high success rate is because, the mentors and the organization are with the student to provide him assistance and guidance, whenever is needed. 

The passion towards open source and the desire to be an outstanding student are considered to be the major reasons for a student to participate in the Google Summer of Code. Not to mention, while earning the money for the summer.

A computer with the Internet connection, knowledge and experience in the domain, and the motivation are the required to participate. Of course, you should really be interested in contributing to the particular open source organization.

Don't forget to check the


Before you begin..
  • Google Summer of Code is all about being Open Source.
    • Get your basics and motives right.
  • Netiquettes.
  • Sign up to the lists.
  • Join the relevant channel(s).

Technologies
  • Version Control Systems
    • SVN, CVS, GIT, Mercurial, ..
  • Build Tools
    • Ant, Maven, ..
  • IDEs (Integrated Development Environments)
    • IntelliJ IDEA, Eclipse, ..
    • Microsoft Visual Studio, Anjuta, ..
  • Issue Tracker
    • Bugzilla, Jira, Trac, ..

Communicating with the team..
.. and the mentor, over the Internet..
  • Mailing Lists
    • Dev, User, Commit lists, sub-groups, ..
  • Internet Relay Chat (IRC)
  • Issue Tracker
  • Forums and wiki
  • Blogs
  • Skype, Personal Mails, gtalk, conference calls, .. [with the mentors, if that is preferred.]

Network Etiquettes
  • Be Specific and clear.
  • Research (google.. ;)) before asking.
  • Be helpful to others.
  • Be ethical; respect.
  • NO CAPS! (UNLESS YOU ARE SHOUTING!)
  • Don't take messages personally.
  • Dn't snd ur sms msgs to thrds or lsts.

Proper Addressing..over the lists/irc/..
  • Address the devs and users properly.
    • First Name or Preferred calling name.
    • NO Sir, Madam, bro, sis, pal..
      • Even if you know them, personally.
    • No Mr., Dr., or Prof. either.
  • Be gender neutral.
    • “Folks” over “Guys and Girls”.
  • Not too personal.
    • Use “Hi”, instead of “Dear”.

Mailing lists
  • Post only to the relevant list.
  • Check the mail archives first.
    • To avoid getting RTFW/RTFM responses.
  • Avoid HTML mails.
    • Most of the mail servers do not like it. For eg, all the html mails posted to abiword mailing lists are dropped by the mail server. Make sure to turn off the html or rich text mail feature in your email program. It is by default HTML/RTF mail in the web mail like Gmail/Yahoo. Make them send plain text email.
  • No [URGENT]/[IMPORTANT] tags.
  • No unnecessary attachments.
  • No Cross Posting.
    • Stick to the proper mailing list only.
  • Don't hijack threads.
  • Don't post off-topic.

IRC Etiquettes
  • Be an observer first.
  • Refer to others using their irc nick.
    • Whenever my irc nick is mentioned, I get a pop up message from my irc client such as pidgin.
  • Don't expect immediate replies; wait.
  • Don't post bulk of text into irc.
  • Avoid these common mistakes.

Find a mentoring organization..
  • Have a look at the list of GSoC2011.
    • Since the list of this year hasn't been selected yet.
  • 175 Last year!
  • New Organizations.
  • Google as the mentoring organization.
  • Introduce GSoC to an organization (Sounds Smart!).

Find THE right project..    
Once you have found the right organization(s), that matches your interest and expertise, you have to go through the ideas list (e.g: the project ideas of AbiWord).

You can even contribute to the organizations, that aren't selected this year, as most of them still welcome the student contributors. OGSA-DAI had some great project ideas, but wasn't accepted this year as a mentoring organization.
    These were the organizations that I had my summer with. The beauty of these organizations is, they are friendly and provide a great learning environment. I was able to become a committer, developer, and mentor for these organizations. I learned open source with these organizations, and they have influenced me a lot positively. Apart from the coding, we always share thoughts and literally the AbiWord and OGSA-DAI communities have given me a colorful second life, which I would love to maintain as a developer, whenever I get a free time from the "first life".

    Get to know more about the projects
    • Talk to the mentor(s) Assigned by the organization for each project idea.
    • Mailing lists and archives.
    • Issue Tracker
      • Open issues or tickets
        • New features/enhancements (RFE)
        • Bugs (easy/difficult and normal/critical)

    What makes you special?
    • Experience
      • Being a great user doesn't mean that you can be a good developer.
    • Your interests and motivation
      • Pick something you really enjoy doing.
      • Being a great developer doesn't mean that you can be a good contributor.
    • Opportunities
      • What makes you the right person?
    • Willingness to contribute to the community beyond the time frame of GSoC.
      • We want committers and long time volunteers - Not just students!


    Experience
    • Languages
      • Java, C++, C, ..
      • Not much time to learn a new language (?)
    • Prove It!
      • Patches.
      • Assist other students!!!
      • Project expertise
        • Bug reports and fixes.
        • Go through the archives, wikis, and web sites.

    Opportunities..
    • Project that matches your previous work experience.
      • Choose the right project.
    • Timezone Difference 
      • Use it effectively - Most of us prefer to work in nights too, as we have the lectures in the mornings.
    • Multiple Applications (20!)
    • Preferences! 
    • Communicate early and often.
    • Be heard, visible, responsive,  and quick!
      • Ask questions, and more importantly answer others' questions.


    Apply

    Register as a student for GSoC, as the first step. Use the project's wiki for draft proposal, if applicable. Some organizations prefer that, where some discourage it. 

    Apply on Google's melange, at the earliest possible, as you can edit it later, till the last minute. Make sure to get the mentors' opinions and improve. Check melange often for the mentors' comments and attend to them. Make sure that you subscribe to the comments on your proposal in the melange site, such that you will receive email alerts for each comment that is made by a mentor/developer on your proposal. Your proposal can only be seen by the orgnization mentors, unless you decide to make it public.

    How to impress the mentors/developers?
    • Stick to the organization's template.
    • Abstract.
    • Introduce yourself properly.
      • Focus on the relevant facts.
      • Why do you fit? Your skill sets.
      • List of the patches (if any) you have submitted.
    • Project Goals
      • Proves you got them correct.
    • Deliverables
      • Code, Documentation, test cases, ..
    • Description - can also be given along with the timeline
      • Benefits to the organization and other projects  
    • Timeline
      • Finer details - Break upto periods of 3 - 4 days.
      • Testing takes time - Don't be over-optimistic.
      • Some organizations require considerable work hrs/week (40 ?).
    • Links - References and additional details.

    After the submission..
    • Don't go invisible!
      • Evaluation is still going on.. ;)
    • You may be asked to provide additional information.
      • Patches.
      • Screenshots.
    • Start coding on your project - only if you didn't apply for multiple projects.
    • Be motivated.

    Got Selected? Community Bonding Period!!!

    Don't Panic. You have one more month, just to mingle with the developers and the code base. Mentors are there to help you! Keep touch with the developers and users. Learn the project by going through the code base and documentation such as coding styles and coding guide lines. e.g: OGSA-DAI coding guidelines. This will help you understand the project idea more. Come up with a design and start with simple hacks.

    Coding

    Finally comes the coding - the easiest task of all. Commit often, if you are given committership. In AbiWord GSoC projects are usually given a branch in the public svn, which will be merged to the trunk, upon the successful completion of the project. In OGSA-DAI, based on the project, it is either committed to the trunk directly or given a branch. These two projects give committership to the students. However, some organizations/projects do not give committer access to the students. In such cases send daily patches otherwise.

    When committing or sending the patches, make sure to include meaningful Commit messages. Get feedback from the mentor(s) on your commits or patches frequently. Keep the community updated. Committing or sending patches daily would be a good approach.

    Plan for the mid and final evaluations early, with the mentor. This will help you reach the target successfully. You might also need to revisit the project goals if required, during the milestones.



    Conclude/Continue

    Pencils Down Date - to stop the coding. Still you can refactor and improve the code, fix any last minute bugs, and work on finalizing the documentation. This is follwed by the firm pencils down date, which literally finishes the Google Summer of Code. 

    Whatever coding or related job done on your project after the firm pencils down date will not be considered part of your summer of code, and will be considered a volunteer work on the project. Get a tarball of all the diff files to submit to Google. Successful submission of the tarball along with the successful final evaluation ensure your success in the Google Summer of Code.

    Focus on becoming a committer if not already given committership. Keep contributing to your project.



    A few links
    This blog post has gone a bit longer, since I tried to include all the information in a single post. Wish you all the best.

      Friday, April 15, 2011

      මරන්න එපා නිදහස් කරන්න

      I recall, it was one of the classes, and my teacher was narrating a story from the history of Sri Lanka. A prince has been arrested and kept in prison, for a while. Now, an order goes to the jailers, "මරන්න එපා  නිදහස් කරන්න" (Translation: Kill not release). He is supposed to be released, according to the real order (මරන්න එපා.  නිදහස් කරන්න; Kill Not. Release). But the jailers get it wrong as මරන්න. එපා  නිදහස් කරන්න (Kill. Not  Release). So finally he ends up his life sadly. 
      With time, I have actually forgotten the real context and the exact figures involved in this historical story. But I got the message clearly. 
      "Please be clear in what you are saying. Miscommunication costs lives!"

      In a direct face-to-face communication, it is said that only upto 7% of the communication is contributed by words (verbal communication). The remaining is expressed through the tone and body language. When it comes to the online communication media or even a text message (SMS), we have to make sure to use that 7% effectively to contribute to the entire message, since the other two factors are not present. I often prefer lengthy mail over the short messages to avoid the "මරන්න එපා  නිදහස් කරන්න" scenarios due to the miscommunication. Sarcasm, pun, or jokes rarely interpreted correctly over the media except face-to-face.

      Over technical ircs, we always ask the newbies to type in full, instead of using an sms language (I srsly hate ppl typng lk ths ovr ircs. I mean t). However we should accept the fact that the smileys support a lot over these communication media for an effective communication.
      0) yes, I will give a try. 
      1) yes, I will give a try. :) 
      2) yes, I will give a try. ;)
      3) yes, I will give a try. :(
      4) yes, I will give a try. :P
      5) yes, I will give a try. :S

      You can get different meanings by going through the same sentence given above (0 - 5). I get the below meanings, actually. (Sentence 0 doesn't need further explanation - It is the sentence, without any smileys. It says itself).
      1) yes, I will give a try. :) [I will happily give a try.]
      2) yes, I will give a try. ;) [It will be fun to give a try. So I may.]
      3) yes, I will give a try. :( [You ask me to give a try. So I will, though I am not competent enough]
      4) yes, I will give a try. :P [I may give a try; most probably I won't.]
      5) yes, I will give a try. :S [I am worried, whether I should really give a try.]

      When interacting online, we always prefer to use the Internet slang and the smileys. They make the conversation more animated and interesting. An alphabetical list of the most commonly used internet slang can be found here along with their meaning. This site lists the smileys with their meaning. In a formal communication, we should always avoid the usage of smileys or the other languages except English (unless in a specified localized group) nevertheless. Saying everything directly in simple words would be better, to avoid miscommunication, as well as to suit the culture of the work environment.

      Recently I lost the friendship (temporarily - I am pretty sure. I am capable enough to rectify this in the upcoming days myself, and we will be back to normal as good friends.) of one of my good friends due to some misinterpretation. It hurts nevertheless to hurt a good friend. So again it calls for this blogpost.

      "I heard someone badmouthing you recently", I was told on a related context.
      "Nevermind, that simply means, I am more important and influential to them than their own self. Just let them entertain you," I smiled.

      Though badmouthers are annoying and irritating, there is nothing to worry about them. They do exist and let them exist (like all the other *things* in the environment). Fighting with them just reduces our effectiveness. We have the freedom to choose our response in an effective manner, after all!

      Friday, June 26, 2009

      DroneBL

      Today morning, while trying to log into my irc account on freenode using xchat, I was getting the message,
      "(notice) *** Banned: You have a host listed in the DroneBL. For more information, visit dronebl.org/lookup_branded.do?ip=124.43.238.174 Please contact kline@freenode.net with questions. "
      The message was repeating itself, as it tried to connect with different Freenode servers.

      So I visited dronebl.org/lookup_branded.do?ip=124.43.238.174
      It was saying
      "There have been listings for the host, 124.43.238.174 found in DroneBL. To get removed from our DNSBL, you will need to address all of these incident listings.



      I got it! Since we are given dynamic IP from the service provider (Sri Lanka Telecom), an abusive usage of someone else has caused this trouble to me. I used the request removal option.

      Removal results for 124.43.238.174
      You are requesting the delisting of incident 532599 involving 124.43.238.174. Please confirm that you are human.

      It was quick and removed the ban promptly, without any fuss.
      Removal results for 124.43.238.174
      This incident has been removed from the DroneBL. Please make sure that you have fixed your problem, or it will reappear here. Have a great day.
      You may have other incidents in DroneBL reported, in which case you will need to remove them.

      I learned more about DroneBL from its blog. "DroneBL is a realtime monitor of abusable IPs, which has the goal of stopping abuse of infected machines."

      Saturday, May 23, 2009

      Common mistakes : IRC

      Today the GSoC2009 coding period officially started. During the last two months, I could get some ideas on how NOT to use IRC channels in an open source world.

      1. Leaving IRC immediately after a response is given:
      Some users log in to the channel, and leave the channel immediately after they got a response for their query. This is a dangerous habit. Wait for some more time, you may get some more responses too.

      2. Expecting a reply promptly:
      Don't forget people are not paid to answer you. Someone will eventually answer your question. Don't panic and leave the channel without getting the answer. You may have to wait for hours for an answer.

      3. Demanding:
      Don't try to demand the hackers. They are volunteers, and you have no moral right to do so.

      4. Expecting all the hackers to be knowledgeable in the whole subject:
      Some hackers know part or full of the source code. If someone says he is not sure about the issue, wait for someone else to respond to your query.

      5. Avoid SMS writing:
      Don't use 'u', '4 wat', and '4n'. This is IRC and not your mobile phone. Your sms writing will definitely irritate the hackers.

      6. DON'T WRITE LIKE THIS UNLESS YOU ARE SHOUTING AT SOMEONE.

      7. dOn'T wRiTe lIkE tHiS!!!!!!!!!!, uNlESs yOu aRe iNsAnE :) :) :).

      8. Try to be in a synchronization with the ongoing discussion. If it is going with a touch of fun, you could crack some jokes too. Otherwise be serious.

      9. Finally use English on the international channels. You may know someone personally, but that doesn't mean you could have a conversation in your mother tongue, unless it is a local user group.

      10. Use the channel display name to refer to the people. Don't use their real names, sir, or other similar salutation.

      11. Debates - Each has his/her own opinion. Avoid being religious on topics such as Richard Matthew Stallman (rms) vs Eric S. Raymond (ESR).

      For further reference regarding irc and other open source communication media, refer to the book, "Producing Open Source Software - How to Run a Successful Free Software Project, by Karl Fogel".
      The online version is available here.


      Useful Links:
      IRC guidelines from freenode.
      Beginners' guide.
      Information on registering a channel - [1] and [2].
      Operator commands.
      A nice op guide with the introduction to modes.
      ChanServ commands.
      ChanServ Help Page.
      Freenode irc chanserv help.