Show HN: Stack Parts - a way to find possible parts for your stack
http://stackparts.com/
so, when i worked at google there was a great internal webpage that listed all the various parts and systems one could use to build something. i've always wanted something like that for the real world, so here it is.
the idea is basically to index widely used and good stack parts so that people can figure out what they need to build their applications.
this is still very rough. we're still working on figuring out the metadata, how to display it, and how to link it. in addition, some of the metadata is wrong as we evolve how to describe things.
how it works: tornado, yaml, github.
48 comments
[ 4.7 ms ] story [ 122 ms ] threadi'd be interested in all of the above.
Still, I think the most valuable part this site may add is the very notion of stack: what vertical choices work well together. For example would you or could you rather combine C# and MySQL or Python, Django and MySQL for a given context (scalability, criticity, developers profile ...)
I understand it's rough, but here are something of the things I was expecting to see while I was browsing around:
- Some "category" pages, like dbm, are missing definitions. It would be great if definitions were present on every category page.
- I really like that some category pages include a curated list of articles that compare the different options within this class of products. This is exactly what I search for when researching new technologies.
- It'd be nice to have links to the Stackoverflow "tag" page on individual technology pages. For example, the MySQL page could link to this: http://stackoverflow.com/questions/tagged/mysql
I could also see this information being shown in a more visual way. It'd be pretty interesting to allow companies to create an account and build a profile of what their web stack looks like. Maybe something similar to how GuitarGeek.com shows the rigs of famous guitarists? I'd be willing to bet that most web stacks would look more like Eddie Van Halen's setup (http://guitargeek.com/rigview/258/) rather than Angus Young's (http://guitargeek.com/rigview/312/) :)
i bet the vast majority of stacks are still LAMP... but i agree with everything else.
Thanks for all your suggestions, will follow up on the rest of the suggestions!
Also might be a good idea to define the categories for newbies. Most of the categories will need explanation for newbies.
Cool idea, though. I used to use jakarta.apache.org for a similar purpose.
- language
- sql
- webserver
- webframework
- sourcecontrol
...
- stuff most people don't use on their projects, like mapreduce and graph-store
Also, the tooltip definitions are helpful but it's not obvious that they are there. I only knew they were there because you said so here. :-)
Good luck!
eg:
http://stackparts.com/pymongo
connects python to mongo?
we're not sure what to tag these as. bindings?
Also any plans for having it so that I can start with a language, get a list of data-stores that can talk to my chosen language, then get a list of web-servers and so on until I've chosen my stack. Then building on this it would be great if I could get all the API's for the chosen stack!
Thanks for the great little tool!
the implementation is the absolutely simplest we could come up with.
thanks joshua!
To wit, I generated the following page from my structured notes, and added it to my public website, a few weeks ago:
http://synisma.com/comp_dump/gototech.html
That could probably ignite the flamewar thread of the century.
i should write up the file format so people who are so minded can just send me a file to upload.
Could you include an approximation of each components popularity or longevity?
This would allow people to know if they are picking mainstream or more obscure/specialised/enterprise/unstable/etc components.
I'd suggest arranging the categories in a rough data flow, so webserver would be near the "outside" (top?), wsqi inside that, frameworks inside that.
wsgi might become part of a larger cgi-ish category: app container? app connector? You'd include fcgi and the various php equivalents in there; maybe subcategories.
Debatable: firewalls? Virtual environments like virtualenv and whatever the other guys use.
We have added environment managers as a category (virtualenv, rvm, rbenv, bundler)
Also, no Source Control (Git/SVN/etc) or Configuration Control (Chef/Puppet/etc)?
Have you considered including a set of metrics which measure the maturity and status of each project? How about listing noteworthy uses in production? Also, recency and quantity of commits, bug fixes etc.
If things go wrong (and they invariably do), I can sleep safer at night knowing that there is a thriving community behind the project, which can provide guidance on any issues.
Admittedly what I have suggested presents some UI difficulties, at least on the home page. It would also need to be updated quite frequently. That could be partially automated by pinging public version control servers, for instance.
Still, a great job. Looking forward to seeing how it progresses.
Also, you could avoid the spatial UI problems nesting may cause if there's a tooltip with meta data & links on rollover.
Interesting that google had this as an internal webpage. I wonder what other really useful tools companies use that could benefit us if it were public.