If you are an Android or a Java Developer you’d know about the pain of navigating amongst the classes of a project on Github. You either need to look it up in the tree like this


or use the file finder using the keyboard shortcut “ t ” like this


But while you are looking at the code, and want to jump to another class you have to use one of the above methods unlike what you do in the IDE. You just Cmd + Click and reach the other class, like this

In order to bring the similar kind of navigation to Github, I wrote a chrome extension which will automatically hyperlink all the classes of your project so you can just click to open them in a new tab.

Here it is in action

Installation is simple, just click on this link and once installed just open any of your projects on Github and navigate through the classes like a boss 😎

Wait…there’s more to it! It also links all the classes from the Android SDK to the official documentation, which means now you have almost everything you need to understand the code on Github at your disposal with just a click.


I would love to your hear feedback on this effort. If you like it, just hit the ️💚 icon below and let your friends know about this extension.

The extension is open sourced already, feel free to star and/or watch it, report issues, improvements and features. I’d be more than happy to accept pull requests there.

Github Repo : https://github.com/droidchef/hops

Follow me on twitter : https://twitter.com/droidchef

Cheers!

So its that time of the year again when students will start hustling for their Google Summer of Code proposals, especially since the organizations will begin accepting them from today.

Before you go any further, mark your calendars, April 3, 2017, is the last day to submit your proposal.


1. Structure of the proposal

Portrays you as an organized person

The most important thing that you must keep in mind always while writing your proposal is that your proposal is your best advertisement.

The flow of this advertisement (story) of selling the product (yourself) to the customer (org/mentor) is in your hands. So why not structure it in such a way that the person going through it, gets so engrossed as if you were going to tell them about the death of the next character in Game of Thrones.

2. Identify the Problem, Propose the solution

Shows you’ve understood the project

Clearly define the problem that you wish to solve through this project. Brownie points, if you can also tell why is this a problem because it’ll tell the reader that you’ve taken a step forward to understand the underlying idea of the project.

Mention the technical aspects of the project. This part of the proposal can be and should be lengthy, as it is nice to give a long detail description of how you are going to complete the project.

Try to highlight:-

  • Things that you find challenging.
  • Things that you have no idea about, at the moment.
  • Any other blockers you might have.

Then, also mention how do you plan to overcome all these hurdles.

3. Deliverables — with bullets

Show you’re result oriented

A good proposal should always contain deliverables. These are the things you want to deliver or goals you want to achieve in order to be able to successfully pass all the evaluations and graduate as a successful GSoC student.

Break them down into smallest pieces possible.

This’ll give you confidence during the program when you can start checking off things from your list.

4. Well Defined — Timeline

Depicts how you manage time

This can be a game changer at times when choosing amongst students who are competing for the same project.

A humble, realistic and detailed timeline is much better than a timeline that promises to move mountains.

  • Show weekly goals
  • Dedicate enough time for writing tests and documentation.
  • Honestly tell about any other activity that you are going to do during the summer, which will take up significant amount of time, including but not limited to: exams, classes, travel and vacation days, internships, jobs, volunteer work etc.

5. About Me — Go nuts bragging about yourself here

This has to be a section more or less acting like a CV for you. Tell about yourself here, give all the channels of communication you use.

Here are some that a lot of people in open source use (so make sure you have everything already setup) :

  • IRC
  • Jabber
  • Skype
  • Email
  • Google Hangouts

Don’t forget to mention about your Open source contributions here, if they are in the same organization/project very well! If not, you can still mention.

6. Iterate while you can

Don’t be in a hurry to submit the proposal. It is completely fine to submit it on the last day since organizations will usually not start reviewing them before the that.

Get it reviewed from as many sources as you can.

Most importantly from your:

  • Mentors
  • Previous GSoC students
  • Someone who has relevant expertise in the tech stack or the project that you are working on. (You can get the problem and solution part reviewed from them, they might even give you a better idea to approach the problem.)

7. Images worth 1000 words

Show your dedication

Try investing some time in creating and adding mockups, flow charts, diagrams or anything relevant you find can be pictorially represented.

I’d be more than happy to review your proposals. Head over to this GitHub project and send in your proposal as a PR for the review.