[haiku] Re: Need Some GSoC Advice

  • From: Ryan Leavengood <leavengood@xxxxxxxxx>
  • To: haiku@xxxxxxxxxxxxx
  • Date: Sat, 21 Mar 2009 02:57:21 -0400

On Sat, Mar 21, 2009 at 1:45 AM, Ankur Sethi <get.me.ankur@xxxxxxxxx> wrote:
> Hi, I'm Ankur Sethi, a first time GSoC student from India. Before I
> finalize my application, I would like to discuss some of my ideas with
> the Haiku developers. Here's my list:

Hey Ankur, we are happy to have you as a prospective GSoC student!

> 1. Helping With the WebKit Browser - IMHO, the Firefox port included
> with the pre-alpha VMWare image feels slow and bloated. A nice, fast,
> *native* WebKit browser would definitely make me want to spend more
> time with Haiku.

That is the same reason that motivates me to work on this project.
Though the Bezilla guys have worked very hard, the Firefox project has
not been that friendly to them, and Firefox can never be as fast as a
purely native application because of all the multi-platform

As you may know I am the main "sponsor" of the native browser project
and will be the mentor for it, should a student be chosen to take on
that project. In addition the student will be working WITH me on it,
instead of just doing it alone. I intend for this to be a peer type
relationship more than manager/employee, though obviously mentoring is
a big part of it. I think it will be pretty fun.

But, your other ideas are worthy too, and I expect we will get quite a
few applications for the WebKit browser project, so I think you should
explore the other ideas too. Though feel free to make an application
for the browser project :)

> 2. A Media Library Manager for Haiku - I've wanted to write this app
> ever since I switched to the Mac (from Linux) about 8 months ago. I'm
> an AmaroK fan who has been burned by the horrible media management
> features of iTunes. When you have several gigs of MP3's to take care
> of and your only weapon is iTunes, you begin to seriously doubt The
> Way of Steve Jobs. My app will probably not be as advanced as AmaroK,
> but it will share some of the same goals.

I have not personally used AmaroK, though I have heard great things
about it. I also agree that iTunes is not the best at media management

I think this could be interesting, though I am not sure whether this
should be done as an improvement of the existing MediaPlayer, or as a
separate application. Also when thinking about this, you would do well
to explore some of the ways music has been managed on BeOS before. For
example there is a tool Army Knife (http://www.bebits.com/app/1774 and
http://dev.osdrawer.net/projects/show/armyknife) that extracts MP3 id3
tags into attributes on the file system, allowing Tracker and the BFS
query system to do a lot of "media management" functionality. The
application SoundPlay (http://www.bebits.com/app/156) is also quite
popular in the BeOS world. In addition a fairly recent addition to the
BeOS music player world is Jukebox (http://www.bebits.com/app/4434).

> 3. Spotlight-like Indexing Features for Haiku - I must confess I have
> no idea where or how I'd begin with this one, but it's something I'd
> definitely love to see this in Haiku. Spotlight is one feature of OS X
> that I wouldn't give up for a million dollars.

There has been discussion of this before, and it could probably be
implemented as an extension of the current BFS attribute indexing and
query mechanism. Though there are other Haiku developers who can give
much more detail and better advice than I :)

> So which one of those ideas would be ideal for a GSoC project? Are any
> of those projects too ambitious for the three month period?

I think all three are doable as GSoC projects. It is just a matter of
limiting the scope enough for each project so it can be completed in
the 3 months. For example I do not expect to have a full-fledged
native browser with all the features of Chrome, Firefox or Safari by
the end of summer, even with help from a GSoC student. Its not
realistic. But it is reasonable and realistic to want to have the
multi-process architecture worked out, the basic browser shell working
well, and WebKit up-to-date and fully ported. The same process of
limiting scope can be used on other projects, but it requires some
thought and planning. And FYI, plans for software are almost always
wrong, but you still have to try :)


Other related posts: