LibDatabase
Cataloging Solution for small
libraries on limited budget
Beth Kulacz
LibDatabase Author
Library Director, Broadwater Nebraska
staff@broadwaterftl.org
My Background
• Software engineer for Fortune 500 company
• Ran my own software company
• Eventually, ended up in Nebraska small town.
Urged to get my (provisional) librarian
certification from NLC.
• Became Library Director of small library with no
computerization. Commercial software out of
reach. I saw the way the books were being
inventoried for move. Simple database
application.
I Introduction
• Needed an up-to-date catalog of materials
• Should be searchable
• Value of material – lost items or disaster
• Patron privacy is of utmost importance
Budget
• Commercial cataloging software out of reach.
• Some freeware but would require your own
local server. That is not possible in the local
area either.
• Volunteered to help inventory items packed
during move.
• Not complex – skills to do it
Considerations
• Could not use applications or development
software requiring royalties for government or
commercial use.
• Could not use images, text, or rely on other
applications under copyright.
Today
• We have it, and are using it.
• Other libraries have the same problem
• “Lightweight” solution. Not appropriate for a much
larger library.
It worked well for us, so you don’t have to
reinvent it!
Shareware, asking for a donation to our Friends
of the Library group.
Small Libraries: An unfilled niche for corporations.
What we wanted (basics)
• Searchable Card Catalog.
• Information on location of material.
• Statistics of how many of what type of item
we have
• Patron privacy is an absolute MUST.
• Information concerning value of each item
and collection – for patron loss and insurance
purposes in case of disaster.
What we wanted (Nice to have)
• 24x7 online access
• Circulation system that did not rely on “old
fashioned” book cards.
• Placing “Holds” on items.
• Check for overdue items.
• Select candidates for weeding.
• Maintain a list of items to be replaced.
Non-Goals Things we didn’t want/need
• Magnetic stripes and scanners.
• To place restrictions on who can check out certain things.
• To place any limits on the Freedom to Read. There’s no
function for saying that some items are for checkout for adults
only, or to children over a particular age, or limit in any such
way.
- In small library, better to do by personal recognition and
judgment, than relying on software.
• To store historical lending patterns or tastes of any patron, or
card number, for any purpose.
• To make it compliant with library laws throughout the world.
Designed for US use.
How it was done
• Developed under Linux, using free tools in Linux.
• Uses Internet-standard and industry-standard
readily available tools, including
HTML, PHP, MySQL, and Javascript.
• Developed locally, by me, working as a volunteer.
• Used a great deal of free help – on websites
, books, forums, software developers I know.
• “Borrowed” code was labeled as legally available
and free for use in commercial or nonprofit
applications in books or websites where it was
published, and attributed to source.
How it was done
• Costs involved coffee, diet cola, pizza and
several used books.
• Help from software engineers I know or met
through software forums and late nights.
• Developed on a Ubuntu Linux computer, using
the free tools available with Ubuntu.
• No Microsoft products were harmed in the
development of this application.
How it works.
• Patrons identified by card number. Identifying
information about those patrons is kept in a
paper notebook in the library.
• Books identified by ISBN or ASIN numbers
• Videos, tapes, CDs and items in other formats
identified arbitrarily.
• Passworded database.
Privacy Concerns
• Freedom to Read – ALA and Freedom to Read
Foundation.
• History of what card numbers have checked out
what material are not kept after the material is
returned. The only thing kept is the date of the
last checkout – for evaluating for weeding
purposes.
• Association with card number and any patron
kept on paper in the library. Even hacking will not
compromise it.
Intellectual Property & Copyright
• Developed locally by myself. I only used and
reused other people’s code only where the
author offered it to be freely used with
whatever credit the person or author wanted
– listed on the About page.
• Software that this uses is part of webhost’s
services, or is an intrinsic part of the internet.
Tested & Works with most computers
• Tested with various browsers with various
operating systems, versions, and various
computer types (and ages).
• I got several people’s input on the usability.
Advantages to Patrons
• They don’t have to make a special trip into the
library to find out if the library has a particular
item.
• Categories for special needs items, such as
audiobooks or large type books.
• Ease of use - Menu items and input items have a
short help attached when you hover over them
with your mouse. People with little computer
experience can search for what they want.
Search for materials
• Users or staff can search for items in the
library under any number of criteria.
Summary of Collection
• This gives a summary of the collection – how
many items of what types and what genres are in
the collection.
• User and staff version of this function
• It can tell a user, potential user, about your
library, and how much of what sorts of things are
there.
• It can give staff figures on how many of what the
collection has for development.
• It gives trustees and financial managers numbers
to be able to properly insure collection from loss.
Backend
• Let’s look at what’s available on the back end
of this.
- Staff Functions
- Webmaster Functions
Enter New Books (or other items)
• To enter an item, it will need a unique identifier.
It can be an ISBN, LOC number, or an arbitrary
number,selected by your library.
• Basic info – author or creator’s name, title,
location, copyright date. Also the age group it’s
targeted for, children, YA, adult, the genre –
nonfiction, mystery, romance, scifi, etc. The
format of the item – book, DVD, audiobook, etc.
If there’s a performer.
Enter New Books (or other items)
• Decide whether or not the item can ever be
removed from the library – special collections
or reference.
• Put in a price for the item. This can be the retail
price of an item, the cost+shipping of a used
and similar item, appraisal value, or any other
method of valuing the collection.
- You are not required to enter a value. It will
be set to zero.
Enter – Succeed or fail
• If it succeeds, it will give you a success.
• If it’s duplicate, it will not succeed. You’ll
have to use the arrow key on your browser
to change something you might have
misentered.
• If it’s missing an author last name, or
title, or index number, it will not succeed
and tell you to go back.
Update items
• Correct errors.
• Update the location of an item.
• Re-classify an item.
• Re-value an item.
Update items
• Update function also contains function to
DELETE an item.
• If you want to replace a deleted item, V1.0
does not have a place to keep track of such
items. You will need to do this outside of the
program.
Display (print out) entire database of
collection
• You probably don’t want to do this very often
– that can be thousands of items long.
• To make a backup of your database, which
you should do frequently, there are better
methods.
Circulate materials
• Let’s see how to do the most frequent
activity, which is checking materials in and out
of the library.
Check in/Check out
• Materials can be circulated using this
software.
• The due date is arbitrarily set for 2 weeks for
all items – and should be aware of US
holidays.
• The “success” screen for checkouts will inform
you of date due, so you can inform patron or
put a due label on the item.
Renew
• Renewal is a library staff function in V1
because of security reasons.
• Patron can contact library staff to request an
item be renewed.
• Item will not be renewed if it’s on HOLD by
another patron.
• Library staff will be informed if item is already
overdue. You may or may not choose to renew
the book in that case.
Place Hold
• Placing a HOLD on an item is a library staff
function in V1.0.
• Disallows checking out book to any other user
than the one with the HOLD until or unless
removed.
• Holds do not expire. They can be manually
removed, or will go away when the patron
checks out the item.
• Staff may remove HOLD.
Fines
• Fines are computed or charged in this version.
Will tell you that the item was overdue, and
when it was due, so figure and charge the fine
according to Library policy.
Search for items which are overdue.
• Overdue screen allows you to enter a date
which is the earliest you want to hear about.
• The output of this gives you the information
on the book, including:
– Value or replacement cost.
– The Card number or Patron number of the
person who checked it out.
– The due date
Lost/damaged materials.
• Combine functions:
• Look up book, possibly with the OVERDUE
function.
• Delete from database.
• Look in your own files for information
associating a person to the card number.
• Assess cost to patron.
• Place on YOUR list of items to replace.
Weeding
• This can give you some assistance in selecting
items for weeding. It does this searching for
material which have not circulated since, are
older than an arbitrary date as candidates for
weeding.
To place restrictions on who can check
out certain things.
• There are no age functions, or card
classifications.
• If your library has items which may only be
checked out by adults, that is the discretion of
the library staff, and possibly a policy.
• R-rated movie titles.
Intellectual freedom and library laws
• To make it compliant with library laws
throughout the world. Designed for US
use, and perhaps it can be used in some other
countries, and in other countries it cannot.
• There are some simple changes in the
software that would allow money to be
displayed in another currency, and detection
of holidays can be set to another location.
Requirements
• Website.
• Must have a website address (URL). The webhost
must support MySQL and PHP. Most commercial
ones do.
• Watch so you are not paying for things you don’t
need – like shopping carts or credit card payment
processors – but you might find that it’s less
costly to choose a website that provides them for
everyone, and not use them.
• Webmaster – to load the software, and set up the
databases.
Webmaster
• - Volunteer – Does someone in your
community have a blog?
- Students/Honor Society may have skills to
create a database. Especially computer science
students.
- It is not difficult to do at this level.
- You may be able to contract/hire one for a
short time for your specific task (e.g., set up
the database).
Books you or your Webmaster might
find helpful
• Building a Web Site For Dummies
• The Really, Really, Really Easy Step-by-Step
Guide to Building Your Own Website: For
Absolute Beginners of All Ages by Gavin Hoole
and Cheryl Smith
• Build a Website for Free by Mark William Bell
Steps to getting this
• Select a webhost that, minimally, supports MySQL and
PHP.
• Get the website, address (URL).
• Download LibDatabase from broadwaterftl.org
• Customize the pages and contact info for your library
• Put your own picture in liblogo.jpg
• Upload it
• Use library.sql from the kit to set up your database.
There’s usually a database wizard available from the
webhost.
Customization
• To customize LibDatabase for your library, you will need to change the following files.
• - liblogo.jpg is a photograph or other image that represents your library. I have included one that Broadwater, NE is
using for its library
• - a "faded" photograph of a bookshelf. You may use this, or you may substitute another JPEG or GIF image that
• represents your library - a photograph, artwork or logo. The size of the image uploaded will be maintained.
• Suggested size is 265x150 pixels.
• - LibMain.html - Insert specific information about your library, including its name, location, telephone number,
• and email address in thefields enclosed in parentheses ( ).
• - UserMain.html - Insert specific information about your library, including its name, location, telephone number,
• and email address in thefields enclosed in parentheses ( ).
• - consecuredb.inc - The information needs to be changed to reflect your SECURE username and password for your
• MySQL database.
• - conectdb.inc - The information needs to reflect your NONSECURE username and password for your
• MySQL database-
You
will need to change the following files
for your own library.
• - liblogo.jpg is a photograph or other image that represents your
library. I
- I have included one that Broadwater, NE is using for its library
• - a "faded" photograph of a bookshelf. Is included You may use
this, or you may substitute another JPEG or GIF image that
represents your library - a photograph, artwork or logo. The size of
the image uploaded will be maintained. Suggested size is 265x150
pixels.
You
will need to change the following files
for your own library.
• - LibMain.html - Insert specific information about your library, including its
name, location, telephone number, and email address in the fields
enclosed in parentheses ( ).
• - UserMain.html - Insert specific information about your library, including
its name, location, telephone number, and email address in the fields
enclosed in parentheses ( ).
• - consecuredb.inc - The information needs to be changed to reflect your
SECURE username and password for your MySQL database.
• - conectdb.inc - The information needs to reflect your NONSECURE
username and password for your MySQL database
Search for a left paren in the files, to locate what you need to change.
Database Schema – or database layout
• Another word for “database” is “file”.
Database software just has it in a special
format.
• LibDatabase expects the “file” to contain
certain information in certain places. The
single most important of these is the index
which it uses to efficiently find data in a large
file.
Database schema.
Discussion
• The field labeled ISBN which is 13 characters
must be unique to find the item.
• Some of the other information is required by
LibDatabase software, but not the MySQL
database.
• Library.sql sets this up for you, using
PHPMyAdmin on the webhost.
NCompass Live: Tech Talk with Michael Sauers: Building your own ILS from scratch
Customized Details
• Name of your library, along with its address
and phone number, email, and website
address. Use a text editor, such as Notepad.
• Photo or logo for your library. Again, look out
for copyrighted photos. Take it yourself, or get
whoever took it to give the rights use the
photo to the library in writing.
Populate the database.
• Big job to start from scratch on it.
• Volunteer help was essential to doing it over a
few months in my small library. Still do not have it
complete.
• It was a non-goal to use scanned data for input.
For one thing, we don’t have an OCR reader, or
barcode scanner, or barcodes. As the price goes
down, there might be more call for it.
• It might be possible to copy online records from
some other system to this. That would depend on
a lot of factors.
Word of advice
• Back up the database from the web
site frequently. Store multiple
copies in multiple places.
Implementation
• This is a 1.0 implementation of this software. It
works good at my library.
• Designer and Library Director are the same
person – advantages and disadvantages.
• Most of my volunteers are not familiar with the
back-end of websites – most are limited to using
a computer and navigating the web.
• Gave me suggestions to clarify the menus
• Help that comes up when you hover over the
input item.
Some “like to have” functions are not
yet implemented.
• Setting library policy for such things as the
loan period. It’s arbitrarily set at 2 weeks for
everything.
• The ability to have different loan periods for
some items.
• Better security.
• Ability to change the theme – the color, the
font, and so forth.
Shareware, with a Creative Commons
Attribution-Sharealike 3.0 Unported
License. Y Please share.
• Use it, copy it, give copies away. You can even
modify it, and you can include your name in the
credits for what it is that you modified or
improved. Just don’t charge for it – at least not
more than to cover copying and mailing
expenses. And, don’t commercialize it.
• If you like it, we ask that you send a $10 donation
to our Friends of the Library group when you can.
http://broadwaterftl.org/donate.html
Please read the documentation!
• There is a lot of information in the About.html
file, that appears on the website after it is up,
and is in the installation kit.
• Readme.txt in the installation kit has useful
information.
After you install it
• If you don’t like it, I’d appreciate it, for now, to tell me what you
don’t like, and maybe I can make a future modification. If you’ve
got problems using it, chances are other people do too.
• If you use it, please register it by emailing
beth@broadwaterftl.org That will put you on our mailing list, so
that we can inform you when new versions become available.
• We do not distribute, sell, or share email addresses on this list.
• Please report bugs that you find to beth@broadwaterftl.org If
possible, include any “computerese” that appeared on your
screen.
• If you decide you don’t want to use it, don’t pay us.
No warranty.
• LibDatabase Catalog V1.0 is distributed in the
hope that it will be useful, but WITHOUT ANY
WARRANTY; without even the implied
warranty of MERCHANTABILITY or FITNESS
FOR A PARTICULAR PURPOSE.

More Related Content

PPT
Evergreen Indiana Basic Circulation Class
PDF
Lipstick on a Pig: Integrated Library Systems
PPTX
Library terminology
PPTX
NCompass Live: Customer Service Means Convenience
PDF
Big Talk From Small Libraries: Working in the cloud
PPTX
NCompass Live: Hot Titles for a Cold Month
PDF
Reader of the Week Handout
PPTX
Marketing of information services & products
Evergreen Indiana Basic Circulation Class
Lipstick on a Pig: Integrated Library Systems
Library terminology
NCompass Live: Customer Service Means Convenience
Big Talk From Small Libraries: Working in the cloud
NCompass Live: Hot Titles for a Cold Month
Reader of the Week Handout
Marketing of information services & products

Similar to NCompass Live: Tech Talk with Michael Sauers: Building your own ILS from scratch (20)

PPTX
LIBRARY Automation
PPTX
LIBRARY Automation
PPTX
Internet & Library Use 2022 .pptx
PPTX
Wa mw 2013
PPTX
Contextualized Online Search and Research Skills.pptx
PPT
Research in the digital age - circa 2005
PPTX
Planning a Successful Digital Project
PPT
GAHWNY Spring 2016 Digitization for Historians
PPTX
Ereader presentation
PPT
Building Digital Collections: Managing and Sharing
PPTX
Information Literacy and Search Techniques By Vivekanand Jain BHU.pptx
PPTX
What's the fuss about all this metadata?
PDF
Object-oriented analysis and design
PPTX
Librarian services to entrepreneurs
ODP
An Introduction to Providence Information center
PPTX
Enumerate the basic guidelines that a researcher may follow throughout the re...
PPTX
Ala cspace aspace rep services demo 2015
PPTX
A Learning Curve: Lessons Learned Driving Along the PDA Path
PPTX
Reference in an obligate no print environment trimmed (2)
PPTX
LITA Forum 2012 Web Analytics Strategy Preconference
LIBRARY Automation
LIBRARY Automation
Internet & Library Use 2022 .pptx
Wa mw 2013
Contextualized Online Search and Research Skills.pptx
Research in the digital age - circa 2005
Planning a Successful Digital Project
GAHWNY Spring 2016 Digitization for Historians
Ereader presentation
Building Digital Collections: Managing and Sharing
Information Literacy and Search Techniques By Vivekanand Jain BHU.pptx
What's the fuss about all this metadata?
Object-oriented analysis and design
Librarian services to entrepreneurs
An Introduction to Providence Information center
Enumerate the basic guidelines that a researcher may follow throughout the re...
Ala cspace aspace rep services demo 2015
A Learning Curve: Lessons Learned Driving Along the PDA Path
Reference in an obligate no print environment trimmed (2)
LITA Forum 2012 Web Analytics Strategy Preconference
Ad

More from Nebraska Library Commission (20)

PDF
NCompass Live: Banding Together: Lessons from the MPLA Leadership Institute
PDF
NCompass Live: Ditching 1000 Books: A New Initiative
PPTX
NCompass Live: National Book Festival Near You
PPTX
NCompass Live: Printing, Scanning, and Faxing at the Library
PDF
NCompass Live: Creative Aging Outreach Opportunities for Libraries
PPTX
NCompass Live: Nebraska Open Meetings Act: 2025 Overview and Update
PDF
NCompass Live: United for Libraries - Trustees, Advocates, Friends, and Found...
PPTX
NCompass Live: Sparking Community Connections: Rural Public Library Partnerships
PPTX
NCompass Live: Food for Thought: Addressing Food Waste, Access & Insecurity t...
PDF
NCompass Live: Everyday Advocacy for Smaller Libraries: Practical & Affordabl...
PPTX
NCompass Live: Do You Know Your Logins? Password Best Practices for Libraries
PPTX
NCompass Live: Creating Connection in Library Events
PPTX
NCompass Live: Civic Engagement for Nebraska Public Libraries
PDF
Big Talk From Small Libraries 2025: Are You There, Reader’s Advisory? It’s M...
PDF
Big Talk From Small Libraries 2025: Background Engagement: Creating Interest...
PDF
Big Talk From Small Libraries 2025: Postage Pals Letters
DOCX
Big Talk From Small Libraries 2025: Postage Pals Notes
PDF
Big Talk From Small Libraries 2025: Partnering with Local Schools to Boost P...
PPTX
Big Talk From Small Libraries 2025: Unique Community Resources at a Small Li...
PDF
Big Talk From Small Libraries 2025: Small Libraries, Big Economic, Environmen...
NCompass Live: Banding Together: Lessons from the MPLA Leadership Institute
NCompass Live: Ditching 1000 Books: A New Initiative
NCompass Live: National Book Festival Near You
NCompass Live: Printing, Scanning, and Faxing at the Library
NCompass Live: Creative Aging Outreach Opportunities for Libraries
NCompass Live: Nebraska Open Meetings Act: 2025 Overview and Update
NCompass Live: United for Libraries - Trustees, Advocates, Friends, and Found...
NCompass Live: Sparking Community Connections: Rural Public Library Partnerships
NCompass Live: Food for Thought: Addressing Food Waste, Access & Insecurity t...
NCompass Live: Everyday Advocacy for Smaller Libraries: Practical & Affordabl...
NCompass Live: Do You Know Your Logins? Password Best Practices for Libraries
NCompass Live: Creating Connection in Library Events
NCompass Live: Civic Engagement for Nebraska Public Libraries
Big Talk From Small Libraries 2025: Are You There, Reader’s Advisory? It’s M...
Big Talk From Small Libraries 2025: Background Engagement: Creating Interest...
Big Talk From Small Libraries 2025: Postage Pals Letters
Big Talk From Small Libraries 2025: Postage Pals Notes
Big Talk From Small Libraries 2025: Partnering with Local Schools to Boost P...
Big Talk From Small Libraries 2025: Unique Community Resources at a Small Li...
Big Talk From Small Libraries 2025: Small Libraries, Big Economic, Environmen...
Ad

Recently uploaded (20)

PDF
FORM 1 BIOLOGY MIND MAPS and their schemes
PDF
Weekly quiz Compilation Jan -July 25.pdf
PDF
OBE - B.A.(HON'S) IN INTERIOR ARCHITECTURE -Ar.MOHIUDDIN.pdf
PDF
AI-driven educational solutions for real-life interventions in the Philippine...
PPTX
Onco Emergencies - Spinal cord compression Superior vena cava syndrome Febr...
PDF
FOISHS ANNUAL IMPLEMENTATION PLAN 2025.pdf
PPTX
Virtual and Augmented Reality in Current Scenario
PDF
Vision Prelims GS PYQ Analysis 2011-2022 www.upscpdf.com.pdf
DOCX
Cambridge-Practice-Tests-for-IELTS-12.docx
PPTX
Introduction to pro and eukaryotes and differences.pptx
PDF
medical_surgical_nursing_10th_edition_ignatavicius_TEST_BANK_pdf.pdf
PPTX
202450812 BayCHI UCSC-SV 20250812 v17.pptx
PDF
What if we spent less time fighting change, and more time building what’s rig...
PDF
Environmental Education MCQ BD2EE - Share Source.pdf
PDF
David L Page_DCI Research Study Journey_how Methodology can inform one's prac...
PDF
ChatGPT for Dummies - Pam Baker Ccesa007.pdf
PDF
Complications of Minimal Access-Surgery.pdf
PDF
Trump Administration's workforce development strategy
PDF
advance database management system book.pdf
PPTX
ELIAS-SEZIURE AND EPilepsy semmioan session.pptx
FORM 1 BIOLOGY MIND MAPS and their schemes
Weekly quiz Compilation Jan -July 25.pdf
OBE - B.A.(HON'S) IN INTERIOR ARCHITECTURE -Ar.MOHIUDDIN.pdf
AI-driven educational solutions for real-life interventions in the Philippine...
Onco Emergencies - Spinal cord compression Superior vena cava syndrome Febr...
FOISHS ANNUAL IMPLEMENTATION PLAN 2025.pdf
Virtual and Augmented Reality in Current Scenario
Vision Prelims GS PYQ Analysis 2011-2022 www.upscpdf.com.pdf
Cambridge-Practice-Tests-for-IELTS-12.docx
Introduction to pro and eukaryotes and differences.pptx
medical_surgical_nursing_10th_edition_ignatavicius_TEST_BANK_pdf.pdf
202450812 BayCHI UCSC-SV 20250812 v17.pptx
What if we spent less time fighting change, and more time building what’s rig...
Environmental Education MCQ BD2EE - Share Source.pdf
David L Page_DCI Research Study Journey_how Methodology can inform one's prac...
ChatGPT for Dummies - Pam Baker Ccesa007.pdf
Complications of Minimal Access-Surgery.pdf
Trump Administration's workforce development strategy
advance database management system book.pdf
ELIAS-SEZIURE AND EPilepsy semmioan session.pptx

NCompass Live: Tech Talk with Michael Sauers: Building your own ILS from scratch

  • 1. LibDatabase Cataloging Solution for small libraries on limited budget Beth Kulacz LibDatabase Author Library Director, Broadwater Nebraska [email protected]
  • 2. My Background • Software engineer for Fortune 500 company • Ran my own software company • Eventually, ended up in Nebraska small town. Urged to get my (provisional) librarian certification from NLC. • Became Library Director of small library with no computerization. Commercial software out of reach. I saw the way the books were being inventoried for move. Simple database application.
  • 3. I Introduction • Needed an up-to-date catalog of materials • Should be searchable • Value of material – lost items or disaster • Patron privacy is of utmost importance
  • 4. Budget • Commercial cataloging software out of reach. • Some freeware but would require your own local server. That is not possible in the local area either. • Volunteered to help inventory items packed during move. • Not complex – skills to do it
  • 5. Considerations • Could not use applications or development software requiring royalties for government or commercial use. • Could not use images, text, or rely on other applications under copyright.
  • 6. Today • We have it, and are using it. • Other libraries have the same problem • “Lightweight” solution. Not appropriate for a much larger library. It worked well for us, so you don’t have to reinvent it! Shareware, asking for a donation to our Friends of the Library group. Small Libraries: An unfilled niche for corporations.
  • 7. What we wanted (basics) • Searchable Card Catalog. • Information on location of material. • Statistics of how many of what type of item we have • Patron privacy is an absolute MUST. • Information concerning value of each item and collection – for patron loss and insurance purposes in case of disaster.
  • 8. What we wanted (Nice to have) • 24x7 online access • Circulation system that did not rely on “old fashioned” book cards. • Placing “Holds” on items. • Check for overdue items. • Select candidates for weeding. • Maintain a list of items to be replaced.
  • 9. Non-Goals Things we didn’t want/need • Magnetic stripes and scanners. • To place restrictions on who can check out certain things. • To place any limits on the Freedom to Read. There’s no function for saying that some items are for checkout for adults only, or to children over a particular age, or limit in any such way. - In small library, better to do by personal recognition and judgment, than relying on software. • To store historical lending patterns or tastes of any patron, or card number, for any purpose. • To make it compliant with library laws throughout the world. Designed for US use.
  • 10. How it was done • Developed under Linux, using free tools in Linux. • Uses Internet-standard and industry-standard readily available tools, including HTML, PHP, MySQL, and Javascript. • Developed locally, by me, working as a volunteer. • Used a great deal of free help – on websites , books, forums, software developers I know. • “Borrowed” code was labeled as legally available and free for use in commercial or nonprofit applications in books or websites where it was published, and attributed to source.
  • 11. How it was done • Costs involved coffee, diet cola, pizza and several used books. • Help from software engineers I know or met through software forums and late nights. • Developed on a Ubuntu Linux computer, using the free tools available with Ubuntu. • No Microsoft products were harmed in the development of this application.
  • 12. How it works. • Patrons identified by card number. Identifying information about those patrons is kept in a paper notebook in the library. • Books identified by ISBN or ASIN numbers • Videos, tapes, CDs and items in other formats identified arbitrarily. • Passworded database.
  • 13. Privacy Concerns • Freedom to Read – ALA and Freedom to Read Foundation. • History of what card numbers have checked out what material are not kept after the material is returned. The only thing kept is the date of the last checkout – for evaluating for weeding purposes. • Association with card number and any patron kept on paper in the library. Even hacking will not compromise it.
  • 14. Intellectual Property & Copyright • Developed locally by myself. I only used and reused other people’s code only where the author offered it to be freely used with whatever credit the person or author wanted – listed on the About page. • Software that this uses is part of webhost’s services, or is an intrinsic part of the internet.
  • 15. Tested & Works with most computers • Tested with various browsers with various operating systems, versions, and various computer types (and ages). • I got several people’s input on the usability.
  • 16. Advantages to Patrons • They don’t have to make a special trip into the library to find out if the library has a particular item. • Categories for special needs items, such as audiobooks or large type books. • Ease of use - Menu items and input items have a short help attached when you hover over them with your mouse. People with little computer experience can search for what they want.
  • 17. Search for materials • Users or staff can search for items in the library under any number of criteria.
  • 18. Summary of Collection • This gives a summary of the collection – how many items of what types and what genres are in the collection. • User and staff version of this function • It can tell a user, potential user, about your library, and how much of what sorts of things are there. • It can give staff figures on how many of what the collection has for development. • It gives trustees and financial managers numbers to be able to properly insure collection from loss.
  • 19. Backend • Let’s look at what’s available on the back end of this. - Staff Functions - Webmaster Functions
  • 20. Enter New Books (or other items) • To enter an item, it will need a unique identifier. It can be an ISBN, LOC number, or an arbitrary number,selected by your library. • Basic info – author or creator’s name, title, location, copyright date. Also the age group it’s targeted for, children, YA, adult, the genre – nonfiction, mystery, romance, scifi, etc. The format of the item – book, DVD, audiobook, etc. If there’s a performer.
  • 21. Enter New Books (or other items) • Decide whether or not the item can ever be removed from the library – special collections or reference. • Put in a price for the item. This can be the retail price of an item, the cost+shipping of a used and similar item, appraisal value, or any other method of valuing the collection. - You are not required to enter a value. It will be set to zero.
  • 22. Enter – Succeed or fail • If it succeeds, it will give you a success. • If it’s duplicate, it will not succeed. You’ll have to use the arrow key on your browser to change something you might have misentered. • If it’s missing an author last name, or title, or index number, it will not succeed and tell you to go back.
  • 23. Update items • Correct errors. • Update the location of an item. • Re-classify an item. • Re-value an item.
  • 24. Update items • Update function also contains function to DELETE an item. • If you want to replace a deleted item, V1.0 does not have a place to keep track of such items. You will need to do this outside of the program.
  • 25. Display (print out) entire database of collection • You probably don’t want to do this very often – that can be thousands of items long. • To make a backup of your database, which you should do frequently, there are better methods.
  • 26. Circulate materials • Let’s see how to do the most frequent activity, which is checking materials in and out of the library.
  • 27. Check in/Check out • Materials can be circulated using this software. • The due date is arbitrarily set for 2 weeks for all items – and should be aware of US holidays. • The “success” screen for checkouts will inform you of date due, so you can inform patron or put a due label on the item.
  • 28. Renew • Renewal is a library staff function in V1 because of security reasons. • Patron can contact library staff to request an item be renewed. • Item will not be renewed if it’s on HOLD by another patron. • Library staff will be informed if item is already overdue. You may or may not choose to renew the book in that case.
  • 29. Place Hold • Placing a HOLD on an item is a library staff function in V1.0. • Disallows checking out book to any other user than the one with the HOLD until or unless removed. • Holds do not expire. They can be manually removed, or will go away when the patron checks out the item. • Staff may remove HOLD.
  • 30. Fines • Fines are computed or charged in this version. Will tell you that the item was overdue, and when it was due, so figure and charge the fine according to Library policy.
  • 31. Search for items which are overdue. • Overdue screen allows you to enter a date which is the earliest you want to hear about. • The output of this gives you the information on the book, including: – Value or replacement cost. – The Card number or Patron number of the person who checked it out. – The due date
  • 32. Lost/damaged materials. • Combine functions: • Look up book, possibly with the OVERDUE function. • Delete from database. • Look in your own files for information associating a person to the card number. • Assess cost to patron. • Place on YOUR list of items to replace.
  • 33. Weeding • This can give you some assistance in selecting items for weeding. It does this searching for material which have not circulated since, are older than an arbitrary date as candidates for weeding.
  • 34. To place restrictions on who can check out certain things. • There are no age functions, or card classifications. • If your library has items which may only be checked out by adults, that is the discretion of the library staff, and possibly a policy. • R-rated movie titles.
  • 35. Intellectual freedom and library laws • To make it compliant with library laws throughout the world. Designed for US use, and perhaps it can be used in some other countries, and in other countries it cannot. • There are some simple changes in the software that would allow money to be displayed in another currency, and detection of holidays can be set to another location.
  • 36. Requirements • Website. • Must have a website address (URL). The webhost must support MySQL and PHP. Most commercial ones do. • Watch so you are not paying for things you don’t need – like shopping carts or credit card payment processors – but you might find that it’s less costly to choose a website that provides them for everyone, and not use them. • Webmaster – to load the software, and set up the databases.
  • 37. Webmaster • - Volunteer – Does someone in your community have a blog? - Students/Honor Society may have skills to create a database. Especially computer science students. - It is not difficult to do at this level. - You may be able to contract/hire one for a short time for your specific task (e.g., set up the database).
  • 38. Books you or your Webmaster might find helpful • Building a Web Site For Dummies • The Really, Really, Really Easy Step-by-Step Guide to Building Your Own Website: For Absolute Beginners of All Ages by Gavin Hoole and Cheryl Smith • Build a Website for Free by Mark William Bell
  • 39. Steps to getting this • Select a webhost that, minimally, supports MySQL and PHP. • Get the website, address (URL). • Download LibDatabase from broadwaterftl.org • Customize the pages and contact info for your library • Put your own picture in liblogo.jpg • Upload it • Use library.sql from the kit to set up your database. There’s usually a database wizard available from the webhost.
  • 40. Customization • To customize LibDatabase for your library, you will need to change the following files. • - liblogo.jpg is a photograph or other image that represents your library. I have included one that Broadwater, NE is using for its library • - a "faded" photograph of a bookshelf. You may use this, or you may substitute another JPEG or GIF image that • represents your library - a photograph, artwork or logo. The size of the image uploaded will be maintained. • Suggested size is 265x150 pixels. • - LibMain.html - Insert specific information about your library, including its name, location, telephone number, • and email address in thefields enclosed in parentheses ( ). • - UserMain.html - Insert specific information about your library, including its name, location, telephone number, • and email address in thefields enclosed in parentheses ( ). • - consecuredb.inc - The information needs to be changed to reflect your SECURE username and password for your • MySQL database. • - conectdb.inc - The information needs to reflect your NONSECURE username and password for your • MySQL database-
  • 41. You will need to change the following files for your own library. • - liblogo.jpg is a photograph or other image that represents your library. I - I have included one that Broadwater, NE is using for its library • - a "faded" photograph of a bookshelf. Is included You may use this, or you may substitute another JPEG or GIF image that represents your library - a photograph, artwork or logo. The size of the image uploaded will be maintained. Suggested size is 265x150 pixels.
  • 42. You will need to change the following files for your own library. • - LibMain.html - Insert specific information about your library, including its name, location, telephone number, and email address in the fields enclosed in parentheses ( ). • - UserMain.html - Insert specific information about your library, including its name, location, telephone number, and email address in the fields enclosed in parentheses ( ). • - consecuredb.inc - The information needs to be changed to reflect your SECURE username and password for your MySQL database. • - conectdb.inc - The information needs to reflect your NONSECURE username and password for your MySQL database Search for a left paren in the files, to locate what you need to change.
  • 43. Database Schema – or database layout • Another word for “database” is “file”. Database software just has it in a special format. • LibDatabase expects the “file” to contain certain information in certain places. The single most important of these is the index which it uses to efficiently find data in a large file.
  • 45. Discussion • The field labeled ISBN which is 13 characters must be unique to find the item. • Some of the other information is required by LibDatabase software, but not the MySQL database. • Library.sql sets this up for you, using PHPMyAdmin on the webhost.
  • 47. Customized Details • Name of your library, along with its address and phone number, email, and website address. Use a text editor, such as Notepad. • Photo or logo for your library. Again, look out for copyrighted photos. Take it yourself, or get whoever took it to give the rights use the photo to the library in writing.
  • 48. Populate the database. • Big job to start from scratch on it. • Volunteer help was essential to doing it over a few months in my small library. Still do not have it complete. • It was a non-goal to use scanned data for input. For one thing, we don’t have an OCR reader, or barcode scanner, or barcodes. As the price goes down, there might be more call for it. • It might be possible to copy online records from some other system to this. That would depend on a lot of factors.
  • 49. Word of advice • Back up the database from the web site frequently. Store multiple copies in multiple places.
  • 50. Implementation • This is a 1.0 implementation of this software. It works good at my library. • Designer and Library Director are the same person – advantages and disadvantages. • Most of my volunteers are not familiar with the back-end of websites – most are limited to using a computer and navigating the web. • Gave me suggestions to clarify the menus • Help that comes up when you hover over the input item.
  • 51. Some “like to have” functions are not yet implemented. • Setting library policy for such things as the loan period. It’s arbitrarily set at 2 weeks for everything. • The ability to have different loan periods for some items. • Better security. • Ability to change the theme – the color, the font, and so forth.
  • 52. Shareware, with a Creative Commons Attribution-Sharealike 3.0 Unported License. Y Please share. • Use it, copy it, give copies away. You can even modify it, and you can include your name in the credits for what it is that you modified or improved. Just don’t charge for it – at least not more than to cover copying and mailing expenses. And, don’t commercialize it. • If you like it, we ask that you send a $10 donation to our Friends of the Library group when you can. http://broadwaterftl.org/donate.html
  • 53. Please read the documentation! • There is a lot of information in the About.html file, that appears on the website after it is up, and is in the installation kit. • Readme.txt in the installation kit has useful information.
  • 54. After you install it • If you don’t like it, I’d appreciate it, for now, to tell me what you don’t like, and maybe I can make a future modification. If you’ve got problems using it, chances are other people do too. • If you use it, please register it by emailing [email protected] That will put you on our mailing list, so that we can inform you when new versions become available. • We do not distribute, sell, or share email addresses on this list. • Please report bugs that you find to [email protected] If possible, include any “computerese” that appeared on your screen. • If you decide you don’t want to use it, don’t pay us.
  • 55. No warranty. • LibDatabase Catalog V1.0 is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.