.json files:
I still feel like I am entering a part of the forest where there are wizards and trolls when I enter any discussion of .json files. I am only slightly more comfortable when the discussion is limited to open badges. Like much of the world of the web we need standards so that documents and data can be easily shared with users and applications across the ecosystem. JSON is a standard that supports the sharing of data across the web from files that are 'easily readable' in human, as opposed to machine, languages. Like many objects that live on the cusp between the human and the digital worlds they are sensitive to any errors in formatting that are inconsistent with the standard.
Because these objects are 'sensitive' the open badges project has created a badge metadata validator to assure that we have constructed our badge objects correctly. Like many such tools I have found that it sometimes gives me seriously inscrutable feedback which can be frustrating. Generally though it has been a critical tool in my exploration and understanding of the underlying badge objects. I have sometimes found it useful to use a more generic json file validator to gain additional insight.
From a tech wizard's perspective I suspect a .json file is a very simple object. It certainly looks like text in the normal sense of the word (part of the purpose of the JSON standard) but all of our standard text files (.doc, .txt, .pdf etc) all have a lot of hidden stuff in the file that we're not aware of. Creating a .json file is a little more aggravating than you would think. In the end I have used a JSON editor app on my Mac after attempting a variety of solutions using text editors. For me the Cocoa JSON Editor has been an inexpensive and very helpful application. There are also a range of online tools for creating json files. My initial explorations of these tools has not been notably successful. I have no recommendations at this point for JSON editors on Windows platforms. Perhaps someone will enlighten me at HITEC.
My biggest aggravation? Putting unintended carriage returns (how's that for an antique concept) in the .json object -- they show up as \n which is easy to miss the alphabet soup of a long url.
When it all goes well this is what the metadata validator will show you.....