Searching for "json"

JSON and Structured Data

Introduction to JSON and Structured Data

Dates: November 2nd through 29th, 2020
Instructor: Robert Chavez
Credits: 1.5 CEUs or 15 PDHs
Price: $175

https://libraryjuiceacademy.com/shop/course/161-introduction-json-structured-data/

JSON is a semi-structured data format for encoding data and is a popular language for data sharing and interchange – as such it is considered a good alternative to XML. This materials in this course will cover all the core JSON syntax and data structures as well as:
– structured data as a concept
– core data structuring approaches
– the differences between XML and JSON
– when to use XML, when to use JSON

JSON itself is the language of JSON Schema and JSON-LD. We will also study core JSON Schema, a language that allows annotation and validation of JSON documents, and have an introduction to JSON-LD. JSON-LD is covered in greater depth in a follow-up course, JSON-LD Fundamentals. Both courses are follow-ups to our Certificate in XML and RDF-Based Systems.
https://libraryjuiceacademy.com/shop/course/171-json-ld-fundamentals/
https://libraryjuiceacademy.com/certificate/xml-and-rdf-based-systems/

Robert Chavez holds a PhD in Classical Studies from Indiana University. From 1994-1999 he worked in the Library Electronic Text Resource Service at Indiana University Bloomington as an electronic text specialist. From 1999-2007 Robert worked at Tufts University at the Perseus Project and the Digital Collections and Archives as a programmer, digital humanist, and institutional repository program manager. He currently works for the New England Journal of Medicine as Content Applications Architect.

Course Structure
This is an online class that is taught asynchronously, meaning that participants do the work on their own time as their schedules allow. The class does not meet together at any particular times, although the instructor may set up optional synchronous chat sessions. Instruction includes readings and assignments in one-week segments. Class participation is in an online forum environment.

++++++++++++++++
more on JSON in this IMS blog
https://blog.stcloudstate.edu/ims?s=json

Schema.org and JSON-LD

Introduction to Schema.org and JSON-LD

Web search engines such as Google, Bing, and Yahoo are integral to making information more discoverable on the open web. How can you expose data about your organization, its services, people, collections, and other information in a way that is meaningful to these search engines?
In this 90 minute session, learn how to leverage Schema.org and semantic markup to achieve enhanced discovery of information on the open web. The session will provide an introduction to both Schema.org and the JSON-LD data format. Topics include an in-depth look at the Schema.org vocabulary, a brief overview of semantic markup with a focus on JSON-LD, and use-cases of these technologies. By the end of the session, you will have an opportunity to apply these technologies through a structured exercise. The session will conclude with resources and guidance for next steps.

Learning Outcomes

Participants will leave this webinar with tools for increasing the discoverability of information on the open web.
This program will include presentation slides, bibliographic references to resources referenced to in the slides, and hands-on exercise material. The exercise material will include instructions, template records for attendees to practice applying Schema.org and JSON-LD, and example records as reference material.

Who Should Attend

Librarians and other professionals interested in increasing discovery of their organization’s information and collections on the open web. General knowledge of metadata concepts and standards is encouraged. Familiarity with the concept of data formats (XML, JSON, MARC, etc.) would be helpful.
Jacob Shelby is the Metadata Technologies Librarian at North Carolina State University (NCSU) Libraries, where he performs metadata activities that support library information services and collections. He has collaborated on endeavors to enhance the discovery of library services and collections on the open web, including exposing NCSU Libraries digital special collections data as Schema.org data. In addition to these endeavors, Jacob has taught workshops at NCSU Libraries on Schema.org and semantic markup.

JSON and Structured Data

JSON and Structured Data

https://www.w3schools.com/js/js_json_intro.asp

JSON replace XML. lightweight data-interchange format. Often used with AJAX (send data forth back client, server, without refresh)

Data types:
number: no dfference between integer and floats
string: string of unicode characters “”
Boolean: true and false
array: ordered list of 0 and more values
Object: unordered collection of key/value pairs
Null: empty value

JSON Syntax Rules:
uses key/value pairs – {“name”;”brad”} .     uses double quotes around Key and value .     must use the specific data type .   file type is “.json” .   MIME type is “application/json”

http://www.json.org/

https://code.google.com/archive/p/json-simple/

https://www.linkedin.com/learning/learn-api-documentation-with-json-and-xml/json-basics

strings: text enclosed in single or double quotation marks
numbers: integer or decimal, positive or negative
booleans: true or false, no quot marks
null: means “nothing,” no quot marks

arrays are lists in square brackets, comma separated, can mix data types

objects are JSON dictionaries in curly brackets, keys and values are separated by a colon, pairs are separated by commas. keys and values can be any data type, but string is the most common value for a key

nesting : arrays and objects inside each other
can put arrays inside objects, objects inside

 

ARLearn

Ternier, S., Klemke, R., Kalz, M., Van Ulzen, P., & Specht, M. (in press). ARLearn: augmented reality meets augmented virtuality [Special issue]. Journal of Universal Computer Science – Technolgy for learning across physical and virtual spaces.

https://www.academia.edu/29464704/ARLearn_augmented_reality_meets_augmented_virtuality

Augmented reality (AR) and AR games offer a unique opportunity to
implement this core idea in linking real world situations and problems with learning
support. The theory of situated learning [Lave & Wenger, 90] is grounded on the
assumption that learners do not learn via the plain acquisition of knowledge but they
learn via the active participation in frameworks and social contexts with a specific
social engagement structure. Kolb’s learning cycle [Kolb, 84] and the concept of
experiential learning discusses

de Freitas stresses the importance of linking the
experiences made in a game, simulation or micro world with their application in real
world practices [de Freitas, 06]. [Brown & Cairns, 04] describe game immersion as a
continuum from engagement over engrossment to total immersion.

Despite the huge potential of immersive games to overcome the gap between the real
world and the educational context and the rising market for electronic games [PWC,
10], the use of technology-enhanced immersive games in education is still quite low.
The reasons for this are manyfold:
● high game development costs meet limited educational budgets [Westera et
al., 08]
● predefined games are hard to be integrated in the educational process
[Klopfer, Osterweil & Salen, 09]
● learner support in online games does not easily scale [Van Rosmalen et al.,
08]
● furthermore, game platforms up to now could not easily be integrated with
real world environments.

mixed reality definition

 

augmented reality browsers like Layar and Wikitude

first mashups for Google StreetView (called StreetLearn) and for mobile
devices which use the Android Google Maps API (called ARLearn). StreetLearn is
intended to provide an augmented virtuality environment on a Desktop, while mobile
devices are provided with an augmented reality experience through ARLearn. By
creating scripts, adding interactive elements and by introducing gamification
elements, we believe that we can increase the learner’s motivation and provide a
richer learning experience linking mobile augmented reality and augmented virtuality.

freely available tools and offers an open REST API. From the enduser
point of view, playing games is easy for users and requires no special knowledge.
Creating scripts requires no programming skills but does impose still technical
background as scripts are to be edited either in JSON or XML.

Software Carpentry Workshop at SCSU Python

Registration is now open for the workshop: 

>>>>>>>>>  https://ntmoore.github.io/2018-06-02-stcloud/ <<<<<<<<<<<<<

Syllabus:

The Unix Shell

  • Files and directories
  • History and tab completion
  • Pipes and redirection
  • Looping over files
  • Creating and running shell scripts
  • Finding things
  • Reference…

Programming in Python

  • Using libraries
  • Working with arrays
  • Reading and plotting data
  • Creating and using functions
  • Loops and conditionals
  • Defensive programming
  • Using Python from the command line
  • Reference…

 

https://en.wikipedia.org/wiki/GNU_nano

https://swcarpentry.github.io/shell-novice/03-create/

http://pad.software-carpentry.org/2018-06-02-stcloud

Jupyter is IDE https://en.wikipedia.org/wiki/Integrated_development_environment

https://searchcloudcomputing.techtarget.com/definition/Infrastructure-as-a-Service-IaaS

JSON file format where Jupiter data is stored. HMTL and Markdown (simplified HTML).

Panda: https://pandas.pydata.org/

React OS (JS) https://en.wikipedia.org/wiki/ReactOS

 

+++++++++++++++++++
more on Software Carpentry workshops on this iMS blog
https://blog.stcloudstate.edu/ims/2017/10/26/software-carpentry-workshop/

topics for IM260

proposed topics for IM 260 class

  • Media literacy. Differentiated instruction. Media literacy guide.
    Fake news as part of media literacy. Visual literacy as part of media literacy. Media literacy as part of digital citizenship.
  • Web design / web development
    the roles of HTML5, CSS, Java Script, PHP, Bootstrap, JQuery, React and other scripting languages and libraries. Heat maps and other usability issues; website content strategy. THE MODEL-VIEW-CONTROLLER (MVC) design pattern
  • Social media for institutional use. Digital Curation. Social Media algorithms. Etiquette Ethics. Mastodon
    I hosted a LITA webinar in the fall of 2016 (four weeks); I can accommodate any information from that webinar for the use of the IM students
  • OER and instructional designer’s assistance to book creators.
    I can cover both the “library part” (“free” OER, copyright issues etc) and the support / creative part of an OER book / textbook
  • Big Data.” Data visualization. Large scale visualization. Text encoding. Analytics, Data mining. Unizin. Python, R in academia.
    I can introduce the students to the large idea of Big Data and its importance in lieu of the upcoming IoT, but also departmentalize its importance for academia, business, etc. From infographics to heavy duty visualization (Primo X-Services API. JSON, Flask).
  • NetNeutrality, Digital Darwinism, Internet economy and the role of your professional in such environment
    I can introduce students to the issues, if not familiar and / or lead a discussion on a rather controversial topic
  • Digital assessment. Digital Assessment literacy.
    I can introduce students to tools, how to evaluate and select tools and their pedagogical implications
  • Wikipedia
    a hands-on exercise on working with Wikipedia. After the session, students will be able to create Wikipedia entries thus knowing intimately the process of Wikipedia and its information.
  • Effective presentations. Tools, methods, concepts and theories (cognitive load). Presentations in the era of VR, AR and mixed reality. Unity.
    I can facilitate a discussion among experts (your students) on selection of tools and their didactically sound use to convey information. I can supplement the discussion with my own findings and conclusions.
  • eConferencing. Tools and methods
    I can facilitate a discussion among your students on selection of tools and comparison. Discussion about the their future and their place in an increasing online learning environment
  • Digital Storytelling. Immersive Storytelling. The Moth. Twine. Transmedia Storytelling
    I am teaching a LIB 490/590 Digital Storytelling class. I can adapt any information from that class to the use of IM students
  • VR, AR, Mixed Reality.
    besides Mark Gill, I can facilitate a discussion, which goes beyond hardware and brands, but expand on the implications for academia and corporate education / world
  • IoT , Arduino, Raspberry PI. Industry 4.0
  • Instructional design. ID2ID
    I can facilitate a discussion based on the Educause suggestions about the profession’s development
  • Microcredentialing in academia and corporate world. Blockchain
  • IT in K12. How to evaluate; prioritize; select. obsolete trends in 21 century schools. K12 mobile learning
  • Podcasting: past, present, future. Beautiful Audio Editor.
    a definition of podcasting and delineation of similar activities; advantages and disadvantages.
  • Digital, Blended (Hybrid), Online teaching and learning: facilitation. Methods and techniques. Proctoring. Online students’ expectations. Faculty support. Asynch. Blended Synchronous Learning Environment
  • Gender, race and age in education. Digital divide. Xennials, Millennials and Gen Z. generational approach to teaching and learning. Young vs old Millennials. Millennial employees.
  • Privacy, [cyber]security, surveillance. K12 cyberincidents. Hackers.
  • Gaming and gamification. Appsmashing. Gradecraft
  • Lecture capture, course capture.
  • Bibliometrics, altmetrics
  • Technology and cheating, academic dishonest, plagiarism, copyright.

Software Carpentry Workshop

Minnesota State University Moorhead – Software Carpentry Workshop

https://www.eventbrite.com/e/minnesota-state-university-moorhead-software-carpentry-workshop-registration-38516119751

Reservation code: 680510823  Reservation for: Plamen Miltenoff

Hagen Hall – 600 11th St S – Room 207 – Moorhead

pad.software-carpentry.org/2017-10-27-Moorhead

http://www.datacarpentry.org/lessons/

https://software-carpentry.org/lessons/

++++++++++++++++

Friday

Jeff – certified Bash Python, John

http://bit.do/msum_swc

https://ntmoore.github.io/2017-10-27-Moorhead/

what is shall and what does it do. language close to computers, fast.

what is “bash” . cd, ls

shell job is a translator between the binory code, the middle name. several types of shells, with slight differences. one natively installed on MAC and Unix. born-again shell

bash commands: cd change director, ls – list; ls -F if it does not work: man ls (manual for LS); colon lower left corner tells you can scrool; q for escape; ls -ltr

arguments is colloquially used with different names. options, flags, parameters

cd ..  – move up one directory .      pwd : see the content      cd data_shell/   – go down one directory

cd ~  – brings me al the way up .        $HOME (universally defined variable

the default behavior of cd is to bring to home directory.

the core shall commands accept the same shell commands (letters)

$ du -h .     gives me the size of the files. ctrl C to stop

$ clear . – clear the entire screen, scroll up to go back to previous command

man history $ history $! pwd (to go to pwd . $ history | grep history (piping)

$ cat (and the file name) – standard output

$ cat ../

+++++++++++++++
how to edit and delete files

to create new folder: $ mkdir . – make directory

text editors – nano, vim (UNIX text editors) .      $ nano draft.txt .  ctrl O (save) ctr X (exit) .
$ vim . shift  esc (key)  and in command line – wq (write quit) or just “q”

$ mv draft.txt ../data . (move files)

to remove $ rm thesis/:     $ man rm

copy files       $cp    $ touch . (touches the file, creates if new)

remove $ rm .    anything PSEUDO is dangerous   Bash profile: cp -i

*- wild card, truncate       $ ls analyzed      (list of the analyized directory)

stackoverflow web site .

+++++++++++++++++

head command .  $head basilisk.day (check only the first several lines of a large file

$ for filename in basilisk.dat unicorn.dat . (making a loop = multiline)

> do (expecting an action) do

> head -n 3 $filename . (3 is for the first three line of the file to be displayed and -n is for the number)

> done

for doing repetitive functions

also

$ for filename in *.dat ; do head -n 3$x; done

$ for filename in *.dat ; do echo $filename do head -n 3$x; done

$ echo $filename (print statement)

how to loop

$ for filename in *.dat ; do echo $filename ; echo head -n 3 $filename ; done

ctrl c or apple comd dot to get out of the loop

http://swcarpentry.github.io/shell-novice/02-filedir/

also

$ for filename in *.dat

> do

> $filename

> head -n  10 (first ten files ) $filename | tail  -n 20 (last twenty lines)

$ for filename  in *.dat

do
>> echo  $filename
>> done

$ for filename in *.dat
>> do
>> cp $filename orig_$filename
>>done\

history > something else

$ head something.else

+++++++++++++

another function: word count

$ wc *.pdb  (protein databank)

$ head cubane.pdb

if i don;t know how to read the outpun $ man wc

the difference between “*” and “?”

$ wc -l *.pdb

$

wc -l *.pdb > lenghts.txs

cat lenghts.txt

$ for fil in *.txt
>>> do
>>> wc -l $fil

by putting a $ sign use that not the actual text.

++++++++++++

nano middle.sh . The entire point of shell is to automate

$ bash (exectubale) to run the program middle.sh

rwx – rwx – rwx . (owner – group -anybody)

bash middle.sh

$ file middle.sh

$path .

$ echo $PATH | tr “:” “\n”

/usr/local/bin

/usr/bin

/bin

/usr/sbin

/sbin

/Applications/VMware Fusion.app/Contents/Public

/usr/local/munki

$ export PATH=$PWD:$PATH

(this is to make sure that the last version of Python is running)

$ ls ~ . (hidden files)        

$ ls -a ~

$ touch .bach_profile .bashrc

$history | grep PATH

   19   echo $PATH

   44  echo #PATH | tr “:” “\n”

   45   echo $PATH | tr “:” “\n”

   46   export PATH=$PWD:$PATH

   47  echo #PATH | tr “:” “\n”

   48   echo #PATH | tr “:” “\n”

   55  history | grep PATH

 

wc -l “$@” | sort -n ($@  – encompasses eerything. will process every single file in the list of files

 

$ chmod (make it executable)

 

$ find . -type d . (find only directories, recursively, ) 

$ find . -type f (files, instead of directories)

$ find . -name ‘*.txt’ . (find files by name, don’t forget single quotes)

$ wc -l $(find . -name ‘*.txt’)  – when searching among direcories on different level

$ find . -name ‘*.txt’ | xargs wc -l    –  same as above ; two ways to do one and the same

+++++++++++++++++++

Saturday

Python

Link to the Python Plotting : https://swcarpentry.github.io/python-novice-gapminder

C and C++. scripting purposes in microbiology (instructor). libraries, packages alongside Python, which can extend its functionality. numpy and scipy (numeric and science python). Python for academic libraries?

going out of python $ quit () .      python expect beginning and end parenthesis

new terminal needed after installation. anaconda 5.0.1

python 3 is complete redesign, not only an update.

http://swcarpentry.github.io/python-novice-gapminder/setup/

jupyter crashes in safari. open in chrome. spg engine maybe

https://swcarpentry.github.io/python-novice-gapminder/01-run-quit/

to start python in the terminal $ python

>> variable = 3

>> variable +10

several data types.

stored in JSON format.

command vs edit code.  code cell is the gray box. a text cell is plain text

markdown syntax. format working with git and github .  search explanation in https://swcarpentry.github.io/python-novice-gapminder/01-run-quit/

hackMD https://hackmd.io/ (use your GIthub account)

PANDOC – translates different data formats. https://pandoc.org/

print is a function

in what cases i will run my data trough Python instead of SPSS?

python is a 0 based language. starts counting with 0 – Java, C, P

atom_name = ‘helium ‘
print(atom_name[0])                  string slicing and indexing is tricky

atom_name = ‘helium ‘
print(atom_name[0:6])
vs
atom_name = ‘helium ‘
print(atom_name[7])                python does not know how to slice it
synthax of python is        start : end : countby/step
string versus list .   string is in a single quote, list will have brakets
strings allow me to work not only w values, revers the string
atom_name = ‘helium lithium beryllium’
print(atom_name[::-1])
muillyreb muihtil muileh
Atom_name = ‘helium’
len (atom_name)                                     6 .             case sensitive
to clean the memory, restart the kernel
objects in Python have different types. adopt a class, value may have class inherent in its defintion
print (type(’42’)) .   Python tells me that it is a string
print (type(42)) .    tells e it is a string
LaTex
to combine integer and letter: print (str(1) + ‘A’)
converting a string to integer . : print (1 + int(’55’)) .    all the same type
translation table. numerical representation of a string
float
print (‘half is’, 1 / 2.0)
built in functions and help
print is a function, lenght is a function (len); type, string, int, max, round,
Python does not explain well why the code breaks
ASCI character set – build in Python conversation
libraries – package: https://swcarpentry.github.io/python-novice-gapminder/06-libraries/
function “import”
 Saturdady afternoon
reading .CSV in Python
http://swcarpentry.github.io/python-novice-gapminder/files/python-novice-gapminder-data.zip
**For windows users only: set up git https://swcarpentry.github.io/workshop-template/#git 
python is object oriented and i can define the objects
python creates its own types of objects (which we model) and those are called “DataFrame”
method applied it is an attribute to data that already exists. – difference from function
data.info() . is function – it does not take any arguments
whereas
data.columns . is a method
print (data.T) .  transpose.  not easy in Excel, but very easy in Python
print (data.describe()) .
/Users/plamen_local/anaconda3/lib/python3.6/site-packages/pandas/__init__.py
%matplotlib inline teling Jupyter notebook

import pandas

data = pandas.read_csv(‘/Users/plamen_local/Desktop/data/gapminder_gdp_oceania.csv’ , index_col=’country’)
data.loc[‘Australia’].plot()
plt.xticks(rotation=10)

GD plot 2 is the most well known library.

xelatex is a PDF engine.  reST restructured text like Markdown.  google what is the best PDF engine with Jupyter

four loops .  any computer language will have the concept of “for” loop. In Python: 1. whenever we create a “for” loop, that line must end with a single colon

2. indentation.  any “if” statement in the “for” loop, gets indented

data visualization for librarians

Eaton, M. E. (2017). Seeing Seeing Library Data: A Prototype Data Visualization Application for Librarians. Journal of Web Librarianship, 11(1), 69–78. Retrieved from http://academicworks.cuny.edu/kb_pubs

Visualization can increase the power of data, by showing the “patterns, trends and exceptions”

Librarians can benefit when they visually leverage data in support of library projects.

Nathan Yau suggests that exploratory learning is a significant benefit of data visualization initiatives (2013). We can learn about our libraries by tinkering with data. In addition, handling data can also challenge librarians to improve their technical skills. Visualization projects allow librarians to not only learn about their libraries, but to also learn programming and data science skills.

The classic voice on data visualization theory is Edward Tufte. In Envisioning Information, Tufte unequivocally advocates for multi-dimensionality in visualizations. He praises some incredibly complex paper-based visualizations (1990). This discussion suggests that the principles of data visualization are strongly contested. Although Yau’s even-handed approach and Cairo’s willingness to find common ground are laudable, their positions are not authoritative or the only approach to data visualization.

a web application that visualizes the library’s holdings of books and e-books according to certain facets and keywords. Users can visualize whatever topics they want, by selecting keywords and facets that interest them.

Primo X-Services API. JSON, Flask, a very flexible Python web micro-framework. In addition to creating the visualization, SeeCollections also makes this data available on the web. JavaScript is the front-end technology that ultimately presents data to the SeeCollections user. JavaScript is a cornerstone of contemporary web development; a great deal of today’s interactive web content relies upon it. Many popular code libraries have been written for JavaScript. This project draws upon jQuery, Bootstrap and d3.js.

To give SeeCollections a unified visual theme, I have used Bootstrap. Bootstrap is most commonly used to make webpages responsive to different devices

D3.js facilitates the binding of data to the content of a web page, which allows manipulation of the web content based on the underlying data.

 

1 2