While GitHub is an exceptional platform, it does not provide all the functionality I need. Therefore, I plan to add a search function that enables users to filter projects.
1. What do you think about this idea? 2. However, I am uncertain about how to plan the product. Can you assist me with this?
1. I never discovered any movie on IMDB. I go to IMDB to find trivia, cast or some other fact about a movie that I somehow already knew of.
2. My interest in an open source project will not be influenced by its popularity or any other metrics but purely by what it means to me. I submitted my first PR to an open source project not because it is popular but because it lacked something I needed.
P.S. Thanks to all the nice people who generously contribute to OSS and offer their work for free. Hats off and respect.
One useful feature is the ability to coalesce different identities. For example, I've released libraries on my personal accounts as well as through work. For a while I used to link there from my personal site since it nearly summarized that I’d made N thousand commits to OSS. But I stopped. I’m not really sure what the point is for me.
https://openhub.net/accounts/neilk
If it’s bragging rights, we have Github stars. Effectively (and sadly) open source is a resume building tool nowadays, so maybe that?
What use cases do you see?
A database of open source software would help when looking for suitable products, personally I tend to scout for open source options before looking into closed options.
If it contained easily searchable/filterable information on license, "activity" (i.e how alive the project is), hosting/deployment options, development language, operating system, it would be great.
Also if it has info on how it accepts contributions, it'd be nice.
Probably you could scrape I formation from GitHub, gitlab and similar sites and you could also let projects supply information for you in a "oss-info.yaml/json" in the root dir of the project.
https://www.freeopensourcesoftware.org/index.php?title=Fresh...
Then figure out why a person might want to visit your site. Curiosity? Interest in a person? To learn if a foss project is any good? To see who has traction to decide what to contribute to? Something else?
Bonus points: a podcast with interviews with various community leaders; or try to encourage a volunteer to do such a thing. And try to get on other pro open source podcasts. I bet companies like purism would love any free publicity they can get
Then, I’d you catch on, years from now, look out for Microsoft trying to crush you via some competing index tied to GitHub. Try to avoid the temptation to be acquired by Microsoft. Try to set up your company in a way that convinces foss people that this can never happen, Eg, put some fsf people on the board or something?
Lastly, to make the gnu people happy, make your website usable without proprietary JavaScript and consider open sourcing your client and server code. After all, the valuable thing you hold isn’t the site or tech: it’s the network and traction you build
IMDB is centered on reviews and ratings of a static media asset.
Open source projects are often growing/changing. They might have a really intriguing seed of an idea with an interesting roadmap, but the prototype is poorly executed / buggy. Does that deserve a low ranking / poor review?
Managing open source contributors is non-trivial work. It's actually one of the harder forms of engineering management, because you're dealing with volunteers - you can't even really directly tell contributors what to do, you have to deploy a whole bunch of (difficult) soft skills and influence and leadership to point people in the right direction.
How confident are you that there's sufficient demand from projects to attract more contributors in this way?
Whenever I contribute to open-source, it’s typically because I found the project on my own, and, by extension, I already have an idea of how it should operate, and so I’m able to recognize issues or missing features. If an open-source project I’m using already works great, I make no changes. This is how people’s mindset should operate.
Instead, a project like this seems ripe for people to come in and make any sort of change. OSS maintainers already deal with garbage PRs because of self-taught developers hearing that they should “contribute to open source to learn,” and then it’s just a README change or other unnecessary tweaks from absolute beginners. If an OOS maintainer put their repo on your platform, I feel like they would deal with a lot more of that.
It also seems ripe for abuse from nefarious OSS maintainers, who will use that to just promote their own projects, rather than actively seeking contributions. If they have a limited scope as to the changes they’ll accept, and are using your platform just as a means to get more eyeballs on their Donation link, that’s bad for everyone.
Just some things to keep in mind before you proceed.
Not limited to open source products, but maybe that's a good thing so you can find alternatives.
What kind of planning do you need though, like, "how to build it", or "what would users want"?
I as a potential user would want to see:
Is it actively maintained?
License
Category/compatibility (like want to search for things compatible with remix or react three fiber but not the latest version)
Amazon style product reviews, split between ease of use, bugs
Community quality and links
- Maybe should be an aggregator-aggregator, using github stars and all the various metrics/lists you can find, making formal affiliations with those sites so there's no ill-will?
- Maybe a decentralized governance (or clear neutrality in listing mechanism) to encourage people to participate knowing you're not gonna turn bad?
- Maybe section off a bit more wishlisting projects people WANT to exist (and subscribe to updates on as others fulfill)?
- Maybe a place to complain and critique existing software (closed or open source) and dream up alternatives (like a reverse engineering or UX critique forum?)
- Maybe some affiliates program to get projects to backlink, and/or incentives program to manage a donation pool across projects to pay for advertising and bring more people into the space?
- Maybe plan around inter-project architecture (common libraries in demand) and have people be able to push for the most needed ones?
- Maybe plan around AIs becoming an increasingly large segment of contributors, certainly on more junior/intermediate things, and make workflows to direct their efforts in a simple-to-contribute way (e.g. hook up your compute to an open-source AI coder hosted in the cloud with a TODO list to churn on already vetted by other people/AIs)
All ideas. Good luck! Would love this to exist at popular scales.
Open-source may have a similar graph (projects, contributors, sponsors), and could make for a fantastic content/talent discovery mechanism.
However, a lot of IMDb's content is user-curated. What is your content acquisition strategy?
I predict it would soon use three major APIs and leave everyone's private gitea or gitweb install in obscurity.
I also like the idea of consolidating all the "awesome*" lists, which have been very useful for me for discovering software.
But I also like the idea of automated rankings, especially if it can avoid being clogged with clickbait, astroturf, and SEO like some popular software comparison type sites I can think of.
So I guess what you're considering might be kind of a list engine. Build a big meta-database, then provide both curated lists (top rankings, contributor lists, etc.), and user-generated lists.
I think I'd check out such a site
I think it might be interesting to have some comparisons between similar projects.
How does CockroachDB compare to Cassandra? Should I pick Spark or Apache Beam?
It also might be interesting to see timeline of major contributors to various projects as well ( Did the founder of CouchDB leave and go start working on PostGres at one point).
However, because Open Source is often tied to large corporations or startups, I'm sure the system could be gamed, and I'm not sure how you don't get in the situation amazon is in, where some small startup pays to get review bombed so their database is ranked higher than everything else.
What about when someone angry at having their gmail broken decides to go rant about how terrible all the google open source projects are? That seems like a pain in the ass.
So I think overall I'd ask what you want to get out of it personally. If you're looking for a business idea, I would be worried that if it makes a lot of money, github would just clone the best ideas and integrate it into their site. If you just want it to be a small money making side project, then that's probably fine.
If you're looking to do this as a personal project, I would focus on the most technically challenging and interesting parts. If you're looking to make some side money, do what is most popular. If you're trying to start a full time business...probably not enough $$$ and too easy to be copied by github.
Wikipedia bases all its content on the following: "A topic is presumed to be suitable for a stand-alone article or list when it has received significant coverage in reliable sources that are independent of the subject."
This is flexible enough to allow a lot of stuff, but also causes endless debates, discussions and complaints when content is removed. This is (in my opinion) one of the things that actually give Wikipedia value. If everything is permitted, separating spam from actual content is hopeless.
Defining a scope for your application is a must; if you gain even the slightest popularity, every self-serving developer is going to try to piggyback on you. "See, my project is listed on xyz, therefore it's famous and hence I'm a rockstar."
-Do you want to include any project hosted anywhere? -Incomplete/unfinished projects? -Forks? -Do you want to limit yourself to particular licenses? -What about ecosystems such as PyPi, Nuget, npm and all the rest? Code is mainly hosted on github, but do you want to maintain any kind of relation between source and package?
I think this could be handy, both for finding alternatives if you have an issue with a library or if you're looking for "something" that does
I assume that's not what you mean though. You wouldn't, for example, list the credits for each open source project, i.e. who were the engineers, who were the QA testers? Or maybe you would! But that seems like it'd be a ton of work, and supporting the changing roster over different versions seems like it'd be a scope nightmare.
(I have always wanted this website to exist, though. I just think it's impossible without a software industry equivalent of the screen actors guild, or MPAA, or whichever entity it is that mandates rules about who gets credit for a film)
Instead, do you mean more like a big searchable list of open source projects? If so, I'd still want to know what kind of information you plan on collecting about each project, to know whether I would use it or not.
It's not particularly search that I'm interested in, more some semi-objective indication of whether a given project is competently put together or not. Broadly, would adding it as a dependency be a good idea. Does it work for other people, do developers already using it like it, do said developers vaguely correlate with things I care about.
E.g. adding sqlite to a project is likely to make it better. C libraries are not all like that.
Who are the target users? Newbies looking for open source projects with low-hanging fruit that they can pad their resumes with? Projects that need better documentation than what GPT can write for them? Or the Lasse Collins of the world who are desperately looking for a Jia Tan to help them? There are different kinds of open source projects, each with very different attitudes toward casual contributors. Which kinds do you want to focus on, at least in the beginning? Answering this question will help you plan what kinds of interactions you want to enable on your platform.
https://devboard.gitsense.com/zed-industries
https://devboard.gitsense.com/supabase
https://devboard.gitsense.com/ollama
My value proposition isn't the data, but the ability to gather, organize and update data at scale, so giving it (data) away free is not an issue for me.
- https://www.opensourcealternative.to/
- https://opensourcealternatives.org/
- https://www.btw.so/open-source-alternatives
By just aggregating everything FOSS, doesn't mean its useful. Its useful in a certain context - such as searching for alternatives.
If you are uncertain how to "plan the product", don't plan -> just start.
It needs a memorable name like wesource or youcode.
You'll probably want a way for maintainers to claim a project (like google allows businesses to do on maps). Community management in general seems hard.
The other hard part will determining relevancy. What do you show on the homepage?
Ad-supported or donation-based?
Look to large wikis and public resources like everymac.com for inspiration maybe.
I honestly had no idea what I was doing when I started it during the pandemic, but I now have about 2k unique users per month, and it seems to be holding itself together pretty well. My best metrics are the google search results which are going in a very positive direction.
IMDb works mainly by user reviews who rate videos from 1 to 10. But personally, I think any system can be gamed, just like GitHub Stars. When I'm interested in the GitHub Top 250 (as equivalent to IMDb Top 250), I just do a GitHub search with a filter for the language I'm interested in, e.g., Python, and then sort by stars. This works good enough for me.
The second question is, you are making something real big if you want to build another website. Will a browser plugin for github work? If yes, go for it.
That's my suggestion
The HN post for it is https://news.ycombinator.com/item?id=39639386.
If you are junior developer interested in learning development or a specific technology, it would be great project to build and open source though.
List your fav features of IMDB that you want to emulate in your project. Then, scope your project to something you can do in 3 months and do it and show off to users and get feedback. Then, after that figure out what to do next.
> What do you think about this idea?
There are common fallacies and pitfalls when someone says they want to do "like X for Y". (Like Uber for shopping etc). Learn about them and make sure your idea isn't suffering from those same issues.
The idea of a imdb for open source is really cool, cracking the code to get industry buy in will in my opinion be the way to ensure a long tail of value for anyone using it.
You can chat with GPT to help you plan things. It’s really good for this type of stuff.
There is potentially a lot of blind spots you have (e.g. What types of mechanisms are you going to have for license filtering?). Your questions along with request for assistance read much more as a request for mentorship as opposed to introducing more code into the world that people aren't reading.
I want to build x that does y using z, where you your database has x y and z - but maybe x y and z's own github pages don't explain what their code is capable off as well as you do. I think that would add value to what already exists.
For example, "Free Photoshop alternative" is a lot more likely scenario where such service might help. Btw I think https://alternativeto.net is pretty good for that.
I could be specifically looking for, or flexible on details like: desktop GUI app (native? not electron? tauri ok?), a webserver with web UI (I might be picky about database, docker, backend language, front-end language), or CLI tool.
The code for OpenAlternative is on GitHub if you want to use some or take inspiration.
So, do something that provides the functionality you need. It might be useful to others but probably not.
I think that a search function that also enables filtering on attributes would be useful, but an 'IMDB' for open source projects sounds like a terrible idea.
I see someone has recently tried to redo it under the name libs.field on GitHub.
Is it to discover tools that solve a specific problem?
Is it just for entertainment purposes?
I am not a heavy IMDB user but I just go there to get actor names by movie title or lookup rating by movie title.
Is it something you are building to track contributors across projects?
I already see how I would be even more solicited on LinkedIn...
Let me also say that you learn more from failure than success, so even if this goes as I predict, you'll learn a lot about this kind of idea, and that alone may be worth it.
I predict the project will fail. Here's my thinking;
Firstly, projects should always start with a revenue model. You didn't mention one so either you chose not to mention it, or you don't have one. This project will cost money every month, in hosting fees if nothing else. If it becomes popular it'll fail because you can't afford it.
Secondly it'll fail because the data needs to be curated. If it isn't, and it becomes popular it'll be buried in low-quality submissions. There are thousands and thousands of everything released as open source. 99% of it is rubbish (just like commercial stuff.)
Curating costs time or money. Once you get a day job, or another OSS idea, this one will lose your attention, and with it any sense of quality.
Lastly there's a network effect problem. To be valuable you need the directory to be populated. To get populated it needs to be valuable.
As a bonus, someone else proposes such a directory every other week. Some have been successful for a while. But they don't stick around. Why do you suppose that is? Why doesn't a quality directory already exist? The idea is not novel, sooo ..... ?
Good luck!
It also doesn't contain all open source software. I'd be surprised if it even has most of it, but I don't know.
No alternative to it that I'm aware of.
2. i don't know, but don't plan, just cobble up something first, some barely working POC. Then you'll have a solid ground for fruitful discussions and feedback.
This seems more suitable as a feature of GitHub, not a standalone product.
(Interesting idea nonetheless, please don’t take my comments as being negative)
I don't like the idea of some "authority" picking the winners and losers in the open-source space.
What makes IMDB work and this not, is that Movies are static things. You aren't going to one day find the 1957 romantic comedy Desk Set[1], suddenly turn into a slasher film. Where as open source software changes, sometimes drastically.
[1]- You should watch Desk Set, it has Katharine Hepburn and Spencer Tracy. The main plot is about a computer taking over the job of information workers.
Seeing how people behave on ratings sites, it's pretty obvious that this can open up developers to abuse and harassment, if it gains popularity and traction.
what's missing are curated lists of projects you need to use for a specific reason: you want to setup a web site? which framework do you use, db, api style, formatter, linter, etc what about SIMD libraries? Java unit testing?
How will your search function be better than Google? (and how and who will classify projects?)
2. If it is important to you, build a ShowHN. Don't plan, just build and be ready to pivot. Don't expect people to help you.
What most people want is not a list of tools. They want an expert opinion.
IMDb works because movies are passively consumed; have a short period of engagement and there aren't many of them....a few hundred theatrical releases a year in the US.
Good luck.
* You should be able to easily tell how the project is hosted. I prefer containerized applications, but there's people who don't. Sometimes they make you install their own hosting platform - yuck.
* If a paid version is available, how much is it? Are the features provided by that paid version big important ones or it is mostly just for support?
* If there are screenshots, an easy screenshot browser would be nice. Many projects either do not provide them, or they're in the Github repo which doesn't have an easy left/right browse functionality. I want to know if the UI sucks before spending the time to deploy.
* What's the most comparable commercial project? How does it excel and how does it fall short? Perhaps a (moderated) comments or reviews section would be worth it here.
* What about interoperability with other popular tools? It's difficult tell sometimes if a project supports something as simple as LDAP. This would depend somewhat on the product which features are shown.
* Ffs please provide a semi meaningful graph of forks. The way Github does it with Insights is nearly useless.
I suppose it would benefit to ask people with a reasonable amount of experience for a given field what they want/need too. That's not necessarily something you'd see on the site, but it'd be done in the background. For instance, I want 3MF support for 3D printer slicers, but that's not relevant for a kanban board.
As far as interfaces, I enjoy the filtering provided by sites like Texas Instruments or Analog Devices for electronic components. They really managed to figure that out.
Good luck with your project! I hope it succeeds, I would very much enjoy such a tool.
Reviews might be a good differentiator, but obviously that's hard to get content for.
IMO almost no directory projects get both the wiki and database parts right like wikidata and vndb do (at two very different scales). Those two have in common: (come to think of it, so does OpenStreetMap mostly):
- query builder in addition to the search form [1][2]
- web query runner (SQL, SPARQL) [3], both with a custom backend [4]
- open data license (ODbl, CC0) [5]
- db dumps as files over http [5]
- (A)GPL source. Both also self-host their git web ui [6]
- no login-walls, and no ads
[1] with relational subqueries https://vndb.org/v?f=["and",["olang","!=","en"],["staff","!=...
[2] wikidata's is experimental and incomplete https://query.wikidata.org/querybuilder/?query={"conditions"...}
[3] https://query.vndb.org/?sql=SELECT+'https://www.wikidata.org...
[3] https://query.wikidata.org/##defaultView:ImageGrid%0ASELECT%...
[4] https://dev.yorhel.nl/sqlbin [4] https://wikitech.wikimedia.org/wiki/Wikidata_Query_Service
[5] https://vndb.org/d14 [5] https://www.wikidata.org/wiki/Wikidata:Data_access
[6] https://code.blicky.net/yorhel/vndb [6] https://gerrit.wikimedia.org/g/mediawiki/extensions/Wikibase