[CODE4LIB] Library app basics
My boss has directed me to start looking into producing a phone app for the library, or better yet finding a way to integrate with the existing campus-wide app. Could I pick the list's brains? 1) Is there some tolerably decent cross-platform app language, or am I going to be learning 3 different languages for iOS, Android, and Windows phone? I've dabbled in all kinds of things, but my bread-and-butter work has been PHP on a LAMP stack. Apps aren't written in that, so new language time. 2) The library's selection of mobile devices consists of 2 iPads and a Galaxy tablet. We don't have phones for testing. My personal phone is a 12-year-old flip phone which doesn't run apps. Can I get by with emulators? What are some good ones? The budget for the project is zero, so I don't think dedicated testing devices are in the cards unless I upgrade my own phone, which I probably ought to anyway. 3) What are some best practices for library app design? We were thinking the key functionality would be personal account management (what have I got checked out, renew my stuff, etc), hours, lab availability, search the catalog, and ask a librarian. Anything missing? Too much stuff? Will Martin Web Services Librarian Chester Fritz Library P.S. I sent this a couple days ago and wondered why it hadn't shown up -- only to realize I accidently sent it to j...@code4lib.org rather than the actual list serv address. Whoops, embarrassing!
Re: [CODE4LIB] Library app basics
I can't answer all those questions but a couple useful links: WeaveUX just published a column on Launching a Native App for libraries which is probably pertinent. http://quod.lib.umich.edu/w/weave/12535642.0001.104?view=text;rgn=main While you typically do have to use different SDKs and languages for each major platform, there are projects which use HTML5 and native WebViews to target multiple operating systems. Cordova being the underlying tool but Ionic a more robust framework with UI widgets included. http://ionicframework.com/ There are several of these frameworks, Ionic's just the one I've heard of lately. There was a JavaScript Jabber podcast on it recently. http://javascriptjabber.com/126-jsj-the-ionic-framework-with-max-lynch-and-tyler-renelle/ Best, Eric On Tue, Oct 7, 2014 at 11:51 AM, Will Martin w...@will-martin.net wrote: My boss has directed me to start looking into producing a phone app for the library, or better yet finding a way to integrate with the existing campus-wide app. Could I pick the list's brains? 1) Is there some tolerably decent cross-platform app language, or am I going to be learning 3 different languages for iOS, Android, and Windows phone? I've dabbled in all kinds of things, but my bread-and-butter work has been PHP on a LAMP stack. Apps aren't written in that, so new language time. 2) The library's selection of mobile devices consists of 2 iPads and a Galaxy tablet. We don't have phones for testing. My personal phone is a 12-year-old flip phone which doesn't run apps. Can I get by with emulators? What are some good ones? The budget for the project is zero, so I don't think dedicated testing devices are in the cards unless I upgrade my own phone, which I probably ought to anyway. 3) What are some best practices for library app design? We were thinking the key functionality would be personal account management (what have I got checked out, renew my stuff, etc), hours, lab availability, search the catalog, and ask a librarian. Anything missing? Too much stuff? Will Martin Web Services Librarian Chester Fritz Library P.S. I sent this a couple days ago and wondered why it hadn't shown up -- only to realize I accidently sent it to j...@code4lib.org rather than the actual list serv address. Whoops, embarrassing!
Re: [CODE4LIB] Library app basics
It's perhaps a little bit outdated by now, since things change so fast, but there is a Code4Lib Journal article on one library's approach a few years ago, which you may find useful. http://journal.code4lib.org/articles/5014 And, actually, googling for that one, I found several other ones too on library app mobile development, which I haven't actually read myself yet: http://journal.code4lib.org/articles/7336 http://journal.code4lib.org/articles/2055 http://journal.code4lib.org/articles/2947 On 10/7/14 2:51 PM, Will Martin wrote: My boss has directed me to start looking into producing a phone app for the library, or better yet finding a way to integrate with the existing campus-wide app. Could I pick the list's brains? 1) Is there some tolerably decent cross-platform app language, or am I going to be learning 3 different languages for iOS, Android, and Windows phone? I've dabbled in all kinds of things, but my bread-and-butter work has been PHP on a LAMP stack. Apps aren't written in that, so new language time. 2) The library's selection of mobile devices consists of 2 iPads and a Galaxy tablet. We don't have phones for testing. My personal phone is a 12-year-old flip phone which doesn't run apps. Can I get by with emulators? What are some good ones? The budget for the project is zero, so I don't think dedicated testing devices are in the cards unless I upgrade my own phone, which I probably ought to anyway. 3) What are some best practices for library app design? We were thinking the key functionality would be personal account management (what have I got checked out, renew my stuff, etc), hours, lab availability, search the catalog, and ask a librarian. Anything missing? Too much stuff? Will Martin Web Services Librarian Chester Fritz Library P.S. I sent this a couple days ago and wondered why it hadn't shown up -- only to realize I accidently sent it to j...@code4lib.org rather than the actual list serv address. Whoops, embarrassing!
Re: [CODE4LIB] Library app basics
for your question number 1 take a look at PhoneGap On Tue, Oct 7, 2014 at 2:51 PM, Will Martin w...@will-martin.net wrote: My boss has directed me to start looking into producing a phone app for the library, or better yet finding a way to integrate with the existing campus-wide app. Could I pick the list's brains? 1) Is there some tolerably decent cross-platform app language, or am I going to be learning 3 different languages for iOS, Android, and Windows phone? I've dabbled in all kinds of things, but my bread-and-butter work has been PHP on a LAMP stack. Apps aren't written in that, so new language time. 2) The library's selection of mobile devices consists of 2 iPads and a Galaxy tablet. We don't have phones for testing. My personal phone is a 12-year-old flip phone which doesn't run apps. Can I get by with emulators? What are some good ones? The budget for the project is zero, so I don't think dedicated testing devices are in the cards unless I upgrade my own phone, which I probably ought to anyway. 3) What are some best practices for library app design? We were thinking the key functionality would be personal account management (what have I got checked out, renew my stuff, etc), hours, lab availability, search the catalog, and ask a librarian. Anything missing? Too much stuff? Will Martin Web Services Librarian Chester Fritz Library P.S. I sent this a couple days ago and wondered why it hadn't shown up -- only to realize I accidently sent it to j...@code4lib.org rather than the actual list serv address. Whoops, embarrassing! -- Simon Brown simoncbr...@gmail.com simoncharlesbrown (Skype) 831.440.7466 (Phone) *Following our will and wind we may just go where no one's been -- MJK*
Re: [CODE4LIB] Library app basics
Heya, Lots of good suggestions from everybody in the thread so far. Great resources. So, I am in the camp that's generally opposed to libraries going the native app route - unless they already have a solid mobile-first responsive website and blah blah blah. First thing's first. I am going to self-plug, here, so--er--sorry. A few years ago I gave a talk on future friendly web design that was a direct response to the call to spin-up library apps - mostly for libraries with limited resources to spin-up library apps. It's a little dated, but you can find it here: http://talks.ns4lib.com/future-friendly/. The big tl;dr is a slide on Designing Ethically, which sez: * Developing for specific platforms targets only the handful that own the device. * Developing for enough platforms to be inclusive is costly. * Designing for specific screens--for instance, a desktop website and a mobile website--will inevitably miss the mark. * It is a disservice if a library pursues a web strategy that inevitably caters to less than the majority of its patrons * It is wasteful if a library pursues a web strategy that requires substantial retrofitting or a redesign more than once a year. * Seek ubiquity Years later, Brian Pichman, Amanda Goodman, and I talk about web vs. native on the #libux podcast here: http://libux.co/005-web-vs-native-brian-pichman/ Michael -Original Message- From: Code for Libraries [mailto:CODE4LIB@LISTSERV.ND.EDU] On Behalf Of Jonathan Rochkind Sent: Tuesday, October 07, 2014 3:31 PM To: CODE4LIB@LISTSERV.ND.EDU Subject: Re: [CODE4LIB] Library app basics It's perhaps a little bit outdated by now, since things change so fast, but there is a Code4Lib Journal article on one library's approach a few years ago, which you may find useful. http://journal.code4lib.org/articles/5014 And, actually, googling for that one, I found several other ones too on library app mobile development, which I haven't actually read myself yet: http://journal.code4lib.org/articles/7336 http://journal.code4lib.org/articles/2055 http://journal.code4lib.org/articles/2947 On 10/7/14 2:51 PM, Will Martin wrote: My boss has directed me to start looking into producing a phone app for the library, or better yet finding a way to integrate with the existing campus-wide app. Could I pick the list's brains? 1) Is there some tolerably decent cross-platform app language, or am I going to be learning 3 different languages for iOS, Android, and Windows phone? I've dabbled in all kinds of things, but my bread-and-butter work has been PHP on a LAMP stack. Apps aren't written in that, so new language time. 2) The library's selection of mobile devices consists of 2 iPads and a Galaxy tablet. We don't have phones for testing. My personal phone is a 12-year-old flip phone which doesn't run apps. Can I get by with emulators? What are some good ones? The budget for the project is zero, so I don't think dedicated testing devices are in the cards unless I upgrade my own phone, which I probably ought to anyway. 3) What are some best practices for library app design? We were thinking the key functionality would be personal account management (what have I got checked out, renew my stuff, etc), hours, lab availability, search the catalog, and ask a librarian. Anything missing? Too much stuff? Will Martin Web Services Librarian Chester Fritz Library P.S. I sent this a couple days ago and wondered why it hadn't shown up -- only to realize I accidently sent it to j...@code4lib.org rather than the actual list serv address. Whoops, embarrassing!
Re: [CODE4LIB] Library app basics
Before launching into a native app, start with the functional requirements to see if what you want to accomplish could be done in a well designed mobile web site, or if you actually need the advanced features that native development would make available. For example, there is a _lot_ that you can do in jQuery Mobile backed by a strong AJAX backend that looks like a native app, yet does not subject you to the stringent requirements of having to do multi-platform development and worry about submitting to multiple vendors for approval. There is already some support for media capture for photos/video/sound in HTML5 on some devices that you can use for interactive experiences like snapping a photo, sending it to the server for processing, and having the server send back something relevant. See http://www.html5rocks.com/en/tutorials/getusermedia/intro/ for some information on what is possible currently, and then imagine what you could do with book covers, bar codes, maybe even tapping into the NFC chips in smartphones to tickle those RFID chips everyone is talking about this week. As a data point, I have seen estimates that put mobile app development costs between $5,000 and $50,000, depending on their complexity, amount of UI/UX design and testing, graphics development, etc, so if you are operating without a budget and are having to scrounge for devices just to test with, a smart mobile web site may be a better starting point anyway. It’s less of an unknown, using familiar tools, doesn’t require testing hardware, and doesn’t have an onerous vendor approval step to deal with. -- Andrew Anderson, Director of Development, Library and Information Resources Network, Inc. http://www.lirn.net/ | http://www.twitter.com/LIRNnotes | http://www.facebook.com/LIRNnotes On Oct 7, 2014, at 14:51, Will Martin w...@will-martin.net wrote: My boss has directed me to start looking into producing a phone app for the library, or better yet finding a way to integrate with the existing campus-wide app. Could I pick the list's brains? 1) Is there some tolerably decent cross-platform app language, or am I going to be learning 3 different languages for iOS, Android, and Windows phone? I've dabbled in all kinds of things, but my bread-and-butter work has been PHP on a LAMP stack. Apps aren't written in that, so new language time. 2) The library's selection of mobile devices consists of 2 iPads and a Galaxy tablet. We don't have phones for testing. My personal phone is a 12-year-old flip phone which doesn't run apps. Can I get by with emulators? What are some good ones? The budget for the project is zero, so I don't think dedicated testing devices are in the cards unless I upgrade my own phone, which I probably ought to anyway. 3) What are some best practices for library app design? We were thinking the key functionality would be personal account management (what have I got checked out, renew my stuff, etc), hours, lab availability, search the catalog, and ask a librarian. Anything missing? Too much stuff? Will Martin Web Services Librarian Chester Fritz Library P.S. I sent this a couple days ago and wondered why it hadn't shown up -- only to realize I accidently sent it to j...@code4lib.org rather than the actual list serv address. Whoops, embarrassing!
Re: [CODE4LIB] Library app basics
You don't say what this app is supposed to do, and that might influence your decision. If you are going to provide services that are on your website, it likely makes little sense to build apps. Your website looks homegrown, so you might want to consider using your resources to rebuild it in a CMS system, preferably free and open-source, and since you are comfortable with PHP and LAMP, you might consider Drupal or WordPress, both of which offer responsive themes and are supported in the library community. Cary On Oct 7, 2014, at 11:51 AM, Will Martin w...@will-martin.net wrote: My boss has directed me to start looking into producing a phone app for the library, or better yet finding a way to integrate with the existing campus-wide app. Could I pick the list's brains? 1) Is there some tolerably decent cross-platform app language, or am I going to be learning 3 different languages for iOS, Android, and Windows phone? I've dabbled in all kinds of things, but my bread-and-butter work has been PHP on a LAMP stack. Apps aren't written in that, so new language time. 2) The library's selection of mobile devices consists of 2 iPads and a Galaxy tablet. We don't have phones for testing. My personal phone is a 12-year-old flip phone which doesn't run apps. Can I get by with emulators? What are some good ones? The budget for the project is zero, so I don't think dedicated testing devices are in the cards unless I upgrade my own phone, which I probably ought to anyway. 3) What are some best practices for library app design? We were thinking the key functionality would be personal account management (what have I got checked out, renew my stuff, etc), hours, lab availability, search the catalog, and ask a librarian. Anything missing? Too much stuff? Will Martin Web Services Librarian Chester Fritz Library P.S. I sent this a couple days ago and wondered why it hadn't shown up -- only to realize I accidently sent it to j...@code4lib.org rather than the actual list serv address. Whoops, embarrassing!
Re: [CODE4LIB] Library app basics
I agree with some here, in the long term, a responsive site is the best bang for the buck. However, before our responsive site, we used Library Anywhere for our mobile app. By LibraryThing, it has customizations, both iOS and Android, and real time interaction with the catalog. http://www.libanywhere.com/ We felt the price to be very reasonable. Just my experience, not that one is better than another! Lisa Haitz UC Libraries University of Cincinnati -Original Message- From: Code for Libraries [mailto:CODE4LIB@LISTSERV.ND.EDU] On Behalf Of Will Martin Sent: Tuesday, October 07, 2014 2:51 PM To: CODE4LIB@LISTSERV.ND.EDU Subject: [CODE4LIB] Library app basics My boss has directed me to start looking into producing a phone app for the library, or better yet finding a way to integrate with the existing campus-wide app. Could I pick the list's brains? 1) Is there some tolerably decent cross-platform app language, or am I going to be learning 3 different languages for iOS, Android, and Windows phone? I've dabbled in all kinds of things, but my bread-and-butter work has been PHP on a LAMP stack. Apps aren't written in that, so new language time. 2) The library's selection of mobile devices consists of 2 iPads and a Galaxy tablet. We don't have phones for testing. My personal phone is a 12-year-old flip phone which doesn't run apps. Can I get by with emulators? What are some good ones? The budget for the project is zero, so I don't think dedicated testing devices are in the cards unless I upgrade my own phone, which I probably ought to anyway. 3) What are some best practices for library app design? We were thinking the key functionality would be personal account management (what have I got checked out, renew my stuff, etc), hours, lab availability, search the catalog, and ask a librarian. Anything missing? Too much stuff? Will Martin Web Services Librarian Chester Fritz Library P.S. I sent this a couple days ago and wondered why it hadn't shown up -- only to realize I accidently sent it to j...@code4lib.org rather than the actual list serv address. Whoops, embarrassing!
Re: [CODE4LIB] Library app basics
Lots of good info here, thanks. You don't say what this app is supposed to do, and that might influence your decision. [...] If you are going to provide services that are on your website, it likely makes little sense to build apps. That's the idea: make our stuff available through phones. And I agree, an app makes little sense. Sadly, it's not my choice to make -- that decision was made further up the chain of command, without consulting me. Your website looks homegrown [...] you might consider Drupal or WordPress ... Ye gods, I wish it were homegrown. I'd have done a better job of it. Or rather, I'd have done it in Drupal, which I worked with for years at a different institution, including developing custom themes and modules. Drupal's a solid system. I miss it. But no, we're stuck in a poor excuse for a CMS called OmniUpdate, which is written in an unholy mixture of XSLT and Cold Fusion. It was selected by the marketing department, is mandated across the campus, and makes my job way harder than it has to be. OmniUpdate is damage to work around, not a system to work with. I've done the best I can with it, but there are limits. In theory, an OmniUpdate site can be made responsive -- but in this case, that means making the entire campus web infrastructure responsive, because we share a common template with the entire university. That's a good idea which probably needs to happen, but also a MASSIVE undertaking -- largely because it rapidly gets into some fairly heated campus politics. So in the meantime, I'm going to do research on this and put together a project prospectus laying out the possible approaches and challenges, to see if my bosses really want me to do this. If the really do, it'll probably eat all of my time and then some for the foreseeable future. Will Martin
Re: [CODE4LIB] Library app basics
I am less of a coder myself and more of a lurker, but I'm familiar with the app development scene for games on mobile phones, and I would suggest taking a look at http://xamarin.com/, which not only provides a platform for cross-platform development in C# (code once and it runs on darn near anything), but also has a service for cloud testing on simulated devices, so that you can test your app without having a bunch of different tablets and phones on hand. I don't know what the prices are like; I know that a license for Unity, the game engine that's based on this platform, can be a bit pricey (though cheap compared to other engines). On Tue, Oct 7, 2014 at 7:17 PM, Will Martin w...@will-martin.net wrote: Lots of good info here, thanks. You don't say what this app is supposed to do, and that might influence your decision. [...] If you are going to provide services that are on your website, it likely makes little sense to build apps. That's the idea: make our stuff available through phones. And I agree, an app makes little sense. Sadly, it's not my choice to make -- that decision was made further up the chain of command, without consulting me. Your website looks homegrown [...] you might consider Drupal or WordPress ... Ye gods, I wish it were homegrown. I'd have done a better job of it. Or rather, I'd have done it in Drupal, which I worked with for years at a different institution, including developing custom themes and modules. Drupal's a solid system. I miss it. But no, we're stuck in a poor excuse for a CMS called OmniUpdate, which is written in an unholy mixture of XSLT and Cold Fusion. It was selected by the marketing department, is mandated across the campus, and makes my job way harder than it has to be. OmniUpdate is damage to work around, not a system to work with. I've done the best I can with it, but there are limits. In theory, an OmniUpdate site can be made responsive -- but in this case, that means making the entire campus web infrastructure responsive, because we share a common template with the entire university. That's a good idea which probably needs to happen, but also a MASSIVE undertaking -- largely because it rapidly gets into some fairly heated campus politics. So in the meantime, I'm going to do research on this and put together a project prospectus laying out the possible approaches and challenges, to see if my bosses really want me to do this. If the really do, it'll probably eat all of my time and then some for the foreseeable future. Will Martin