Starting off I'd like to thank all of you making regular suggestions for improvement. We welcome each and every feedback we get from our users and it's a pleasure for us to implement features you request. This doesn't always happen in a timely manner, but eventually we'll get around to it. Thanks again.
"The new search engine responds approximately 60% faster[..]"
|As a long due change our search engine now makes use of the FULLTEXT search options provided by MySQL. This finally eliminates a lot of the shortcomings of our old search engine, e.g. no boolean search options, no differentiation between full word matches and substring matches and, lastly, speed. The new search engine responds approximately 60% faster than the old one and should be a lot more accurate thanks to the internal match scoring of MySQL.|
No good thing comes without a bad, a few shortcomings remain with the current incarnation of the MySQL fulltext search. For example, it treats a hyphen ('-') as a stop word and will only search for the first part of the hyphenated word you're looking for. This can, for now, be circumvented by searching for the words separately. The MySQL developers are aware of this and it should eventually be fixed with a future release of MySQL.
|To accompany the new search engine, registered and logged in users may now save executed searches to either be re-executed at a later time and/or be emailed about the results of that saved search in a given interval. These emailings may either contain new projects, updated projects or all projects found.||
"[..]users may now save executed searches[..]"
In order to save a search, just enter the search terms in question into the search box that can be found at the top of every page, check the options you'd like to apply (filters or a different sort option for example) and click the 'save search' link on the search results page. You will then be taken to a page that has all your stored searches on it. On this page you can give your searches a custom name as well as set the options for getting emails regarding your stored searches. The default is to not send out emails at all.
"[..]universal project page containing consistent information[..]"
|The project pages themselves have been reorganized a bit. As a side effect, we got rid of all the separate branch and release pages we had and merged these into one single and universal project page containing consistent information about the project as well as additional information depending on whether you are on a release or branch page.|
The project pages have also been enriched by a list of projects that depend on the one you're currently viewing. That way a bi-directional relationship is established for a dependant and a dependency. The aforementioned list contains a maximum of 5 projects, if the number of depending projects exceeds that number, the list is compiled by a randomizer.
We also optimized and redesigned the display of the trove categories assigned to a project. The emphasis was to make the different root categories such as "License", "Topic", or "Programming Language" more distinct from one another. We also added alternating colors to the various rows in order to increase the visibility.
Due to popular request we changed the calculation of the popularity score to weigh in the number of subscribers in a more substantial manner. The old formula weighed URL hits, project page hits, and the subscriber count equally high. The subscribers are now treated separately. The new formula reads:
((record hits + URL hits) * (subscriptions + 1))^(1/2)
As a minor change, the name of the project author has been added to the search results page and the category browsing pages. Also, it is now possible to file a URL pointing to a BSD ports repository for a given project.
If you've subscribed to projects before and never used any of the advanced options such as subscriptions to dependencies or just a single branch you can now save yourself a lot of clicks by enabling the 'quick subscribe' option in your user preferences. This, by default, subscribes you to all branches of a given project, ignoring the dependencies and the ability to customize a project's listed name. You're immediately being redirected to the page you clicked the subscribe icon on and may continue your journey through the freshmeat.net project space.
|Those of you who subscribed to a lot of projects or use subscriptions as a way to 'bookmark' projects for later review will enjoy the new way to categorize your subscriptions. Projects can even be a member of multiple categories which permits, for example, to use categories as a way to group projects by the machine name you've installed them on. That way you can keep track of which machine needs to have which project update installed.||
"[..]enjoy the new way to categorize your subscriptions[..]"
You can add categories from either your personal page or your subscribed projects page. The latter can also be used to apply multiple category filters to the list of subscribed projects if you'd like to see the contents of more than one category at a time.
Also, if you're subscribed to a project that is requested to be deleted by either the author himself or by the fact that all links turned out broken and no fix could be found, you'll be informed about the removal by an email.
"[..]the new way to subscribe to a whole trove node[..]"
|In case you're already maintaining a large list of subscribed projects about mainly one topic you might be better off using the new way to subscribe to a whole trove node, such as Programming Language :: PHP (shameless plug, I know). Just hit the 'subscribe to this category' link and you'll receive an instant release notification as soon as one of our staff members approves a project release of a project being categorized in one of the trove categories you subscribed to. The list of subscribed categories can be maintained through your personal page.|
On a related note, all subscription notifications (regardless of whether they originate at a subscription to a single project or a whole category) now carry the list of assigned trove nodes similar to our newsletter.
Starting with the implementation of freshmeat.net sections it's been a bit hard to distinguish between the different types of projects listed in our database (for those who like to have multiple sections listed on their freshmeat.net pages, which you can do through your user preferences). For that reason we added custom icons for every section replacing the default freshmeat 'II' icon on the daily pages. The aforementioned icons have also been added to the lounge, category browsing and the search results pages as a complementary icon. Please keep in mind that the icons only show up for projects that are assigned to a single section.
For those of you religiously reading our frontpage from top to bottom and willing to continue up on the projects following the ones on the frontpage we added a small and red double arrow to the daily headlines in the right column that indicates the last item displayed on the frontpage in detail. If you click the arrow, you'll end up on a page listing all items for that day minus the ones you've already seen on the frontpage in detail.
Since the our community is built upon an enormous count of different licenses, we've added a new FAQ entry explaining or linking to explanations for all licenses we support. This will be useful for both authors looking for a license to release their project under as well as visitors looking for more details about a license a project of their liking is released under.
If you've changed your mind about a past project rate and don't feel like correcting it by submitting a new one, you can cancel your old rate by picking 'reset' from the rating value dropdown menu.
Getting only the freshmeat.net content you're looking for has been more and more challenging over the past months. We've optimized some of the available techniques to filter content to allow for a more streamlined user experience as well as speed up the process of ignoring and unignoring certain aspects or whole projects. You can now unignore projects you've explicitly ignored from the list of filtered projects accessible from any page containing content subject to project filters and the ignore button next to a project in any project list automatically flips over to an unignore button if you're looking at an ignored project (with a filter mode other than 'hide', which is customizable from the filters page).
Also, we've added filter hit statistics to the bottom of all pages subject to project filters. These include the number of projects filtered, the number of projects displayed, and the filter hit rate. If you have any other suggestions to ease your ability to tailor our content to your needs, please let us know.
|Lastly, the mass subscription/ignore forms we've used on the frontpage and the daily pages have been revamped to allow for even less clicks to get a bunch of projects ignored while subscribing to others. Every project has three radio buttons next to it now. One of them places a subscription on the project, the other adds it to the ignore list, and the third (which is the default) does nothing. A single click on the 'submit selection' button at the bottom of the page executes your choices. This way of dealing with projects efficiently and easily has also been added to the lounge pages, specifically the new releases and new projects pages.||
"[..]less clicks to get a bunch of projects ignored while subscribing to others[..]"
We've learned that different people have different preferences with regards to the size of web pages they'd like to download. One prefers a large page to use off line, another looks for a small page that is quickly to navigate. Since we cannot please everyone, we've added a choice to the user preferences to allow customization of the amount of projects displayed on the different pages on freshmeat.net. This includes the lounge pages, the browse pages and search results.
"[..]recent searches and recent project views[..]"
|Apart from having reorganized the personal page, we've also added your recent searches and recent project views to it. They'll survive a browser crash and will help you to remember which project it was that you looked at this morning but forgot to download it or subscribe to it. The list contains a maximum of 5 items, the rest is automatically purged with the 6th item that is being stored.|
To complement the sorting options available for the lounge pages we've added an option to sort the lounge pages by date in an ascending instead of the already available descending order.
Along with the aforementioned new sort option, we've also implemented a third option as a possibility to reset your lounge last read pointer. Clicking the appropriate link at the bottom of every lounge page you can reset it to the time stamp of the last item listed on the page you're looking at. This can be used as a quick way to store where you left off in a particular lounge session and you can pick up later just at the point where you left.
Easier navigation between the different parts of the lounge is now possible through the new 'quick jump' menu. That way you can jump from any lounge page to a different area without having to go through the personal home page.
In order to support and encourage the release of documentation, example code, and API docs, a new release focus type is available. Please use 'Documentation' for all your upcoming project releases that do not directly deal with code releases but focus on the aforementioned things.
If you're submitting change requests for projects or branches you'll notice a new counter besides the old fashioned 'X changes submitted successfully'. This counter hints at the number of already submitted changes in case you've either hit the submit button multiple times or another team member has beaten you in updating your project's freshmeat.net page.
|Our XML files have been expanded by a dump of the available trove categories as well as the addition of dependency and trove category information to the project dumps, namely the single project XML files, the full dump of all projects in our database as well as the search results in XML format. Additionally, the ranking information for the different scores we calculate for every project are also available in all the project dumps.||
"[..]the addition of dependency and trove category information to the project dumps[..]"
As a reminder, our backend files are available via http://freshmeat.net/backend/.
Over the next few weeks we will both be adding additional content to our XML files as well as optimize what we have to fully comply to the current standards set by the W3C.
If you'd like to see something specific on this topic in the future, please let us know.
I truly hope the numerous features I presented you in this article make your user and developer experience here at freshmeat.net even more worthwhile. As you might have noticed, most features focus on logged in users. As we promised to not sell your user information to anyone besides grocery stores, I can assure you that it's safe to register for and peruse a freshmeat.net user account in all its intended usefulness.
If you have any questions, critism or suggestions, don't hesitate to contact me.
Patrick Lenz (scoop)
freshmeat.net Site Director