views:

81

answers:

4

I've been working for a few weeks now with the Google Maps API v3, and have done a good bit of development for the map I've been creating.

Some of the things I've done have had to be done to add usability where there previously was not any, at least not that I could find online. Essentially, I made a list of what had to be done, searched all over the web for the ways to do what I needed, and found that some were not(at the time) possible(in the "grab an example off the web" sense).

Thus, in my working on this map, I have created a number of very useful tools, which I would like to share with the development community.

Is there anywhere I could use as a hub, apart from my portfolio ( http://dougglover.com ), to allow people to view and recycle my work?

I know how hard it can be to need to do something, and be unable to find the solution elsewhere, and I don't think that if something has been done before, it should necessarily need to be written again and again. Hence open source code, right?

Firstly, I was considering coming on here and asking a question, and then just answering it. Problem there is I assume that would just look like a big reputation grab. If not, please let me know and I'll go ahead and do that so people here can see it. Other suggestions appreciated.

Some stuff I've made:

A (new and improved) LatLng generator

  • Works quicker, generates LatLng based on position of a draggable marker
  • Allows searching for an address to place the marker on/near the desired location(much better than having to scroll to your location all the way from Siberia)
  • Since it's a draggable marker, double-clicking zooms in, instead of creating a new LatLng marker like the one I was originally using

The ability to create entirely custom "Smart Paths"

  • Plot LatLng points on the map which connect to each other just like they do using the actual Google Maps
  • Using Dijkstra's algorithm with Javascript, the routing is intelligent and always gives the shortest possible route, using the points provided
  • Simple, easy to read multi-dimensional array system allows for easily adding new points to the grid

Any suggestions, etc. appreciated.

+7  A: 

GitHub, CodePlex, Google Code, and BitBucket are the obvious choices for open-source hosting. (There's also SourceForge, but ewww, yuck.) Definitely go for a DVCS like git or Mercurial, which will make it easier for others to fork code and contribute back than something like SVN or CVS.

I don't think it's appropriate to use Stack Overflow to post "fake" questions about your project. It would be better to start a blog. If you write good content, people will find you.

On the other hand, I think it is appropriate to look for map-related questions on SO and answer them by saying "I implemented such-and-such algorithm in my BlahBlahBlah project, and you can view the code by clicking this link." Just make sure you are actually answering the questions with specific and relevant information.

Kristopher Johnson
Seconded. If your code is worthwhile and half-way well indexed on Google, people will find you.
Pekka
I figured it'd be relatively inappropriate to post questions and just go on and answer them. Just thought I might mention that it passed through my head.Thanks for the intelligible response.
Douglas
+2  A: 

You can host your code on SourceForge, github, Codeplex. I am sure there are many more, but those were the ones that came to mind

Thanks for wanting to give back!

Rob Goodwin
There is Google Project Hosting http://code.google.com/hosting/
Shaji
+2  A: 

GitHub or Google Code would be my first choices, in descending order.

Stay away from SourceForge. Although they are continuously improving, the interface (both for developers and for end users) is horrible, and the entire site is slow as hell.

Thomas
+2  A: 

Hi Douglas

SourceForge
This one is great for bigger open source apps, written in C, C++, Java ...

github
Here I would post Webapps (like yours).

Codeplex
.Net, JQuery and other Microsoft related stuff should go here. Plus anything you develop with Visual Studio.

Dänu