I also am new to mbed. I have the same problems discussed above. I can't tell the difference between a users test script that was published and a supported library. Some indication of the source(who: mbed or user) and platform-set it was running on when published, would be very helpful.
Also, adequate documentation areas exist, but almost no one makes use of them. (wiki, readme, notebook,etc.) For code in a repository, there is no indication that a notebook page may reference it.
Almost none of the code is documented internally either! Every piece of code should have a comment header describing the intended use, example calling sequence and if it drives an external device example connections or wiring.
It also is VERY difficult for a mbed beginner to find "getting started" documentation and example usage. There are lots of different places with a little info, seldom dated in a way to determine usefulness and without reference to varying platforms. Many people have written up their starting experience, probably because they noticed the lack also, but they are often incomplete, aged, inept or even sometimes illiterate.
Also, there are too many places for questions/forum posts. I have noticed the same question posted in more than 4 different places wit differing sets of answers in each. There must be some way to restrict the question/answers to one searchable place. Fro example the same question is in: the questions at the bottom of the platform description page, the questions at the bottom of the localfilesystem library, cross posted in several forum Discussions.
Just today I searched (from the search bar at the top of most pages) for "Sparkfun" serial LCD. I have the very old one with the ATMEGA328 chip. I got 530 results, some of which looked like what I was after. The first 5 that I examined were obviously users test programs that only proved the device working. Not one of the first 10 had any kind of README or internal documentation to say which version of the SerialLCD it was for. None showed any hint of which wires to connect to which pins of any platform. I did not find one that implemented all of the commands the LCD accepts, which is OK but....
I had to open the main.cpp and read the un-commented code of each one to see if it even was written to address the same device I have.
This example maybe my fault for not searching correctly but, in 4 months I have not found the concise instructions for how to use this site.
I do like the eventual results. Mbed is much easier than coding the clocks by hand. But I get frustrated! In a prior life I managed software development and any of the above omissions were grounds for review/termination.
As a new member of the mbed community I was quite disappointed with the some of the software I would try and import ranging from compile errors to link errors.
Surely when software is posted onto the mbed developer community it would be possible to :-
1. Include unit tests 2. Include wrapper programs for testing 3. If a library relies on another library then it should automatically import that library (because tracking down library dependencies is a pain) 4. Automated testing of modules would be nice 5. More importantly if the program / library should fail then move onto the library / program into a "Here by Dragons" area or mark it in someway as not working
If this is covered already apologies ...