Re: [CODE4LIB] Python CMSs
Great points and, I think, an accurate assessment of Drupal now and in the near future. Not sure if this translates to the Python framework v. CMS discussion, but in PHP land I enjoy both. I like writing applications that don't fit the CMS model with Symfony, but I also enjoy *sustainably* extending Drupal. I really *don't* like reinventing the wheel or making things harder for future me (whether actual me or my successor), so if Drupal does 90% of what I need then I'll write a Drupal module to handle the other 10%. That's much more maintainable for us than a custom CMS, and so is better for my institution. There's plenty of work; we don't need to *try* to make ourselves indispensable. :-) -Original Message- From: Code for Libraries [mailto:CODE4LIB@LISTSERV.ND.EDU] On Behalf Of Cary Gordon Sent: Friday, February 14, 2014 1:15 PM To: CODE4LIB@LISTSERV.ND.EDU Subject: Re: [CODE4LIB] Python CMSs Random comments and crackpot remarks. --- I like to think of myself as a programer and architect, not a PHP developer or a Python developer (Rails, JS, Scala, APL. Java, C/+/+...). In 2005, I was either going to build a new CMS in ColdFusion or move to Django, when Drupal presented itself as a possibility. I was no fan of PHP, and I was skeptical. My first Drupal project was not a CMS. It was putting a user-freindly face on a dSpace library. Drupal won me over because it had well documented APIs and it was XML friendly. Drupal was written in PHP, but avoided the excesses of that language by adopting strong coding standards. Even then, the community was thinking of it as a content management framework. Since then and across 5 major releases, Drupal has picked up thousands of contributed modules, and, notably, moved to test-driven development. It has kept its tight coding standards, and added tools to help developers maintain those in their own modules. Coming soon(ish): Drupal 8 we will be based on a framework. Symfony started life as a "Rails for PHP" and has evolved into a movement. What Symfony and Rails (and Drupal) have in common are passionate, dedicated communities. The move to Symfony is expensive for the community, but we feel it is worth the effort, as it will lower the entry bar for Drupal developers who have a background in PHP, Symfony or even Rails and Rails-ish frameworks. --- As was pointed out earlier, the selling point for using a full-on CMS is support and maintenance. You can build the coolest, most specific site and/or CMS in the world in Unlambda, Piet or Lolcode, but unless you have a dedicated amanuensis, or perhaps your own reality TV show, whoever owns it had better have a really good insurance policy on you, just in case you get hit by a truck before you get to the documentation step. If they have both the insurance policy AND a truck, watch out. --- I really like Python, but I seldom use it for anything other that systems-related jobs. Day-to-day, I use Drupal (API-as-language), Symfony, Node, and occasionally Rails. Java drags me in once in a while. Thanks, Cary On Feb 14, 2014, at 8:39 AM, Sarah Thorngate wrote: > I second Jason's approach. Even though I'd have more fun using a > framework, I'm currently implementing a CMS (Drupal) for our main site > content. If your non-technical library colleagues are anything like > mine, they will want LibGuides-level simplicity for editing content. > My thinking is that it's worth a little extra pain now to make sure > I'm not the only one who can make changes to our content in the > future; that can be a huge time suck, and prevent you from moving on to other > projects. > > Sarah > > > On Fri, Feb 14, 2014 at 10:08 AM, Scott Turnbull > > wrote: > >> We used Django and Python extensively while I was at Emory. >> >> First let me answer your question. If Django interests you then >> DjangoCMS is a pretty good choice https://www.django-cms.org/en/ >> >> I know a few folks who use it and like it quiet a bit. That said I >> know a lot of the community is trending toward Flask for simple apps >> in python so it depends on how deep you want to go with what you need >> to develop. >> >> In terms of what I'd add, I would reflect what a lot of people have >> already said here. My own philosophy is that the CMS problem has >> already been solved and it's not a great fit for a custom framework >> unless you have very strong use cases that prove it isn't. I suggest >> you consider taking care of straight up content with whatever CMS you >> want to use (Drupal, Wordpress, etc) and reserve Django and python >> for custom apps that need to sit under it. >> >> You can theme the sites so they look the same, leave the CMS to the >> CMS and put your django apps under an app. subdomain to make the >> experience more ore less seamless. >> >> Just my thoughts, I hope that helps some. >> >> Good luck and let us know what you end up doing, >> >> - Scott >> >> On Fri, Feb 14, 2014
Re: [CODE4LIB] Python CMSs
Drupal 8 will *almost* be a box-based CMS with Views being integrated with the core application. You can turn any chunk of content into a view "block" that can be dropped into pre-defined regions. But to have different blocks on different pages, you still have to build complex templates or use a plugin like Context. You'd think it wouldn't be that hard... you'd just need a database table with fields for box_id, page_id, and page_region. Then when a page loads, it pulls up all boxes with the same page_id and puts them into the appropriate region. Why this isn't built into the core of any CMS I know is beyond me. They all have plugins that hack in that functionality in an ugly way. Josh Welker -Original Message- From: Code for Libraries [mailto:CODE4LIB@LISTSERV.ND.EDU] On Behalf Of Tom Keays Sent: Friday, February 14, 2014 2:15 PM To: CODE4LIB@LISTSERV.ND.EDU Subject: Re: [CODE4LIB] Python CMSs Here's a little digression, getting away from talk about the underlying technology... Most CMSes, rather than being *content *management systems, are actually *page *management systems. They provide a few different page templates -- blog posts, about pages, product descriptions, etc. -- but when you get to the point of creating of creating or editing content, you are asked to fill in a form that, other than requiring a title, author, date, and simple tags or categories, is mainly just a big-old-chunk-o-unstructured-text. Read the following post by Christopher Butler, a web developer, that describes this problem and proposes a new way of thinking about content management. http://www.newfangled.com/the_way_you_design_web_content_is_about_to_change AFAIK, none of the CMSes mentioned in this thread so far do anything that approaches what this article is talking about. Drupal is constantly restructuring itself to be more modular. I keep having hope. But it remains cumbersome to reuse content in Drupal or any other CMS I've looked at. Ultimately, CMS modularity is still tied to page templates. The one exception seems to be LibGuides. I think the reason that librarians and libraries like LibGuides is the ease of creating modules of content that it offers. In the process of building a guide (a suite of pages on a topic), you are largely creating boxes of structured content. In those boxes, you can create links that can be shared and reused in other guides; you can have a user profile that can be slotted into any page; and even the most unstructured content, the "rich text box", can be cloned into other pages or guides. Entire pages or guides can also be cloned and reused. With the forthcoming LibGuides 2, which offers even more structured and reusable content -- e.g., assets in the form of links, RSS feeds, documents/files, book entries, media widgets, database listings, and icons -- it looks even more modular. Their new approach to building boxes by assembling them from reusable components is also a step forward. You can't do everything with LibGuides that you can with "real" CMS systems; some content types are purposely withheld -- e.g., event and calendar entries, blog/news posts, image galleries, etc. -- but does any "real" CMS even come close in terms of modularity? What I'd like to see is a modular CMS, with reusable components and, ideally, some sort of API to further extend reuse. Tom On Fri, Feb 14, 2014 at 11:39 AM, Sarah Thorngate wrote: > I second Jason's approach. Even though I'd have more fun using a > framework, I'm currently implementing a CMS (Drupal) for our main site > content. If your non-technical library colleagues are anything like > mine, they will want LibGuides-level simplicity for editing content. > My thinking is that it's worth a little extra pain now to make sure > I'm not the only one who can make changes to our content in the > future; that can be a huge time suck, and prevent you from moving on to > other projects. > > Sarah > > > On Fri, Feb 14, 2014 at 10:08 AM, Scott Turnbull < > scott.turnb...@aptrust.org > > wrote: > > > We used Django and Python extensively while I was at Emory. > > > > First let me answer your question. If Django interests you then > > DjangoCMS is a pretty good choice https://www.django-cms.org/en/ > > > > I know a few folks who use it and like it quiet a bit. That said I > > know a lot of the community is trending toward Flask for simple apps > > in python so it depends on how deep you want to go with what you > > need to develop. > > > > In terms of what I'd add, I would reflect what a lot of people have > > already said here. My own philosophy is that the CMS problem has > > already been solved and it's not a great fit for a custom framework > > unless you have very strong use cases that prove it isn't. I suggest > > you consider taking care of straight up content with whatever CMS > > you want to use (Drupal, Wordpress, etc) and reserve Django and > > python for custom apps that need to sit under it. > > > > You can theme the sites s
Re: [CODE4LIB] Python CMSs
I still like the Zope framework and Plone for a CMS in the Python language. Zope itself is written in python from the ground up. Within Zope the programmer can connect to multiple databases of different publishers like postgresql, mysql, or just an odbc adapter for MS SQL or the like. You create a database connection object, then you can add ZSQL methods which define what connector to use, arguments to pass to the query if any, and the query in a WEB form which also has a test button. The results are called into a page where you can format the results like you might with any WEB page of static data. You can use "External Python Scripts" for just about unlimited purposes like a Google room booking system with Google Calendar, update users passwords on remote services including ldap, other zope servers, and .htpasswd files, do database dumps from a WEB page, tutorial and quiz system, create an excel phone list from a Postgresql database, create QR Codes, and several Google Apps services . External python scripts are scripts that are in the regular file system otherwise, the entire site is in a Z! ope Object Database [Zodb] except for external scripts and products, sorta like modules in Drupal. So to move a WEB site to another machine, install zope and replace the install Zodb with yours and even all authentication is there and you still connect to the same external databases, just copy the Products and Extensions (scripts) directories. You can use local scripting and avoid having to use EZ Proxy or other proxies in our case, but not now since we moved to Drupal, every database link checks WAM first now. Previously, since we owned the entire last two octets, I could check users IPs to see if they were on or off campus PCs and direct them to WAM if they were off campus before preceding to the a database. And there are other examples. Most of the scripting for this is relatively easy for a Python programmer and the code is forced to be readable because indention is part of the syntax. And hopefully you comment your code real good. In Plone, an admin can setup the look and feel, and set user permissions as far as a CMS. I've not worked with Plone in a while but my last work was with a version that will let the not so tech savy user log in to any page and directly edit the page in the browser if that login is authorized, not an editor like CKEditor or Tiny MCE. lots of add on products to enhance Plone. Plone has the best security track record of any major CMS ( http://plone.org ). Thomas Support Requesthttp://portal.support.appstate.edu Thomas McMillan Grant Bennett Appalachian State University Operations & Systems AnalystP O Box 32026 University LibraryBoone, North Carolina 28608 (828) 262 6587 Library Systems http://www.library.appstate.edu Confidentiality Notice: This communication constitutes an electronic communication within the meaning of the Electronic Communications Privacy Act, 18 U.S.C. Section 2510, and its disclosure is strictly limited to the recipient intended by the sender of this message. If you are not the intended recipient, any disclosure, copying, distribution or use of any of the information contained in or attached to this transmission is STRICTLY PROHIBITED. Please contact this office immediately by return e-mail or at 828-262-6587, and destroy the original transmission and its attachment(s), if any, if you are not the intended recipient. On Feb 13, 2014, at 7:13 PM, Coral Sheldon-Hess wrote: > Hi, everyone! > > I've gotten clearance to totally rewrite my library's website in the > framework/CMS of my choice (pretty much :)). As I have said on numerous > occasions, "If I can get paid to write Python, I want to do that!" So, > after some discussion with my department head/sysadmin, we're leaning > toward Django. > > Here's a broad question, re: Python and Django: If you've made the switch, > what has your experience been? Has Django (or any other Python framework) > given you something cool that was lacking in your previous > language/framework/CMS? Has it helped you build something awesome? Have you > found it enabling or limiting in any way? If you were going to sell people > on (or against) using it, what would your arguments be? I'm a relative > newbie to Python, and a total newbie to Django, so even if there was a > tutorial you found useful, or some caveat you learned along the way, I'm > interested. :) > > And then a more specific question: Given the following requirements, do you > have a Django-based CMS you'd recommend? (Of course, I'll also do my own > research, but I'd love to see what other libraries' experien
[CODE4LIB] Job: Drupal Developer - Denver Public Library
The Denver Public Library has an opening for a Drupal Developer February 14, 2014 - February 28, 2014 The Denver Public Library is looking for a Drupal Developer to be part of our Digital User Experience team, building world-class websites for a world-class city. We’re looking for someone experienced in back-end Drupal technologies. Why develop for DPL? You'll be doing important work - connecting the people in your community with resources they need. Got side work or a life outside of your job? No worries - you will have a regular, 40-hour work week at DPL. We value quality of life, so it’s extremely rare that you would be asked to put in more than 40 hours. Primary Responsibilities Drupal site, theme and module development. Integration of our code with that of our partners and vendors Required Qualifications Intimate knowledge of Drupal technologies - specifically PHP, MYSQL, JavaScript, HTML, and CSS Experience working with APIs Experience working with source control systems Passion for building high-quality web applications Excellent written and oral communication skills Strong interpersonal and collaborative skills Strong analytical, reasoning and problem resolution skills and demonstrated success in applying technology to meet user needs Desired Qualifications Experience developing native mobile applications See full job posting and application information: http://denverlibrary.iapplicants.com/ViewJob-550107.html
Re: [CODE4LIB] Python CMSs
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 2/14/2014 3:23 PM, Edward Summers wrote: > Can I just say, how nice it is to read this thread and not see > Microsoft SharePoint mentioned? You have a problem with Enterprise software Ed? ./fxk - -- This Fortune Examined By INSPECTOR NO. 2-14 -BEGIN PGP SIGNATURE- Version: GnuPG v2.0.22 (MingW32) Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/ iQEcBAEBAgAGBQJS/nxCAAoJEOptrq/fXk6MJAUH/29E0YPQmg1cB3asNG3UD3Tu q0vNJta+IG94xfGTds0G6dmk3aNPqgadnaVeu+1vRrgwpExybe9sy5ovrKlvskRm wj1vqU/riYOCVVGzuboaeAGFY95GLi60MpMHBKfj/uzrF99eB/QpBG3o7RL5sCzW h8GSMXDkX2g/02zB6UjM0THAUr5ssJ1hfKigTmfue2DEGPb+RxDjgaHGMjc+oFPv 6k+03RZnE4dJeje+/Uyi6UnCy4vPcAQSJhHykW79kU5Jq9iMCbK5CyjD8+e+0tyo 7xZdV8kE42Kchre8lW0zYA3w9lo2XxQXx5XuSTYNX10gKE/4rmU/UZ4I9eQqsNM= =YzO0 -END PGP SIGNATURE-
Re: [CODE4LIB] Python CMSs
Can I just say, how nice it is to read this thread and not see Microsoft SharePoint mentioned? Have a great weekend, //Ed On Feb 14, 2014, at 3:14 PM, Cary Gordon wrote: > Random comments and crackpot remarks. > > --- > > I like to think of myself as a programer and architect, not a PHP developer > or a Python developer (Rails, JS, Scala, APL. Java, C/+/+...). In 2005, I was > either going to build a new CMS in ColdFusion or move to Django, when Drupal > presented itself as a possibility. I was no fan of PHP, and I was skeptical. > > My first Drupal project was not a CMS. It was putting a user-freindly face on > a dSpace library. Drupal won me over because it had well documented APIs and > it was XML friendly. Drupal was written in PHP, but avoided the excesses of > that language by adopting strong coding standards. Even then, the community > was thinking of it as a content management framework. > > Since then and across 5 major releases, Drupal has picked up thousands of > contributed modules, and, notably, moved to test-driven development. It has > kept its tight coding standards, and added tools to help developers maintain > those in their own modules. > > Coming soon(ish): Drupal 8 we will be based on a framework. Symfony started > life as a "Rails for PHP" and has evolved into a movement. What Symfony and > Rails (and Drupal) have in common are passionate, dedicated communities. The > move to Symfony is expensive for the community, but we feel it is worth the > effort, as it will lower the entry bar for Drupal developers who have a > background in PHP, Symfony or even Rails and Rails-ish frameworks. > > --- > > As was pointed out earlier, the selling point for using a full-on CMS is > support and maintenance. > > You can build the coolest, most specific site and/or CMS in the world in > Unlambda, Piet or Lolcode, but unless you have a dedicated amanuensis, or > perhaps your own reality TV show, whoever owns it had better have a really > good insurance policy on you, just in case you get hit by a truck before you > get to the documentation step. If they have both the insurance policy AND a > truck, watch out. > > --- > > I really like Python, but I seldom use it for anything other that > systems-related jobs. Day-to-day, I use Drupal (API-as-language), Symfony, > Node, and occasionally Rails. Java drags me in once in a while. > > Thanks, > > Cary > > > On Feb 14, 2014, at 8:39 AM, Sarah Thorngate > wrote: > >> I second Jason's approach. Even though I'd have more fun using a framework, >> I'm currently implementing a CMS (Drupal) for our main site content. If >> your non-technical library colleagues are anything like mine, they will >> want LibGuides-level simplicity for editing content. My thinking is that >> it's worth a little extra pain now to make sure I'm not the only one who >> can make changes to our content in the future; that can be a huge time >> suck, and prevent you from moving on to other projects. >> >> Sarah >> >> >> On Fri, Feb 14, 2014 at 10:08 AM, Scott Turnbull >> wrote: >> >>> We used Django and Python extensively while I was at Emory. >>> >>> First let me answer your question. If Django interests you then >>> DjangoCMS is a pretty good choice https://www.django-cms.org/en/ >>> >>> I know a few folks who use it and like it quiet a bit. That said I >>> know a lot of the community is trending toward Flask for simple apps >>> in python so it depends on how deep you want to go with what you need >>> to develop. >>> >>> In terms of what I'd add, I would reflect what a lot of people have >>> already said here. My own philosophy is that the CMS problem has >>> already been solved and it's not a great fit for a custom framework >>> unless you have very strong use cases that prove it isn't. I suggest >>> you consider taking care of straight up content with whatever CMS you >>> want to use (Drupal, Wordpress, etc) and reserve Django and python for >>> custom apps that need to sit under it. >>> >>> You can theme the sites so they look the same, leave the CMS to the >>> CMS and put your django apps under an app. subdomain to make the >>> experience more ore less seamless. >>> >>> Just my thoughts, I hope that helps some. >>> >>> Good luck and let us know what you end up doing, >>> >>> - Scott >>> >>> On Fri, Feb 14, 2014 at 10:35 AM, Jason Bengtson >>> wrote: I agree with Josh. In the end it's really going to come down to >>> balancing priorities. On my personal site I don't use any kind of content >>> management system and have no interest in adopting one. This has left me >>> free to do as I please without jumping through hoops to try and get things >>> work with an often intentionally limiting CMS. At my last University we >>> started with nothing but moved institutionally to Cascade Server (a >>> horrible mistake if ever there was one). Still, as rotten as CS is, I was >>> able to shoehorn a lot of web code through various
Re: [CODE4LIB] Python CMSs
Random comments and crackpot remarks. --- I like to think of myself as a programer and architect, not a PHP developer or a Python developer (Rails, JS, Scala, APL. Java, C/+/+...). In 2005, I was either going to build a new CMS in ColdFusion or move to Django, when Drupal presented itself as a possibility. I was no fan of PHP, and I was skeptical. My first Drupal project was not a CMS. It was putting a user-freindly face on a dSpace library. Drupal won me over because it had well documented APIs and it was XML friendly. Drupal was written in PHP, but avoided the excesses of that language by adopting strong coding standards. Even then, the community was thinking of it as a content management framework. Since then and across 5 major releases, Drupal has picked up thousands of contributed modules, and, notably, moved to test-driven development. It has kept its tight coding standards, and added tools to help developers maintain those in their own modules. Coming soon(ish): Drupal 8 we will be based on a framework. Symfony started life as a "Rails for PHP" and has evolved into a movement. What Symfony and Rails (and Drupal) have in common are passionate, dedicated communities. The move to Symfony is expensive for the community, but we feel it is worth the effort, as it will lower the entry bar for Drupal developers who have a background in PHP, Symfony or even Rails and Rails-ish frameworks. --- As was pointed out earlier, the selling point for using a full-on CMS is support and maintenance. You can build the coolest, most specific site and/or CMS in the world in Unlambda, Piet or Lolcode, but unless you have a dedicated amanuensis, or perhaps your own reality TV show, whoever owns it had better have a really good insurance policy on you, just in case you get hit by a truck before you get to the documentation step. If they have both the insurance policy AND a truck, watch out. --- I really like Python, but I seldom use it for anything other that systems-related jobs. Day-to-day, I use Drupal (API-as-language), Symfony, Node, and occasionally Rails. Java drags me in once in a while. Thanks, Cary On Feb 14, 2014, at 8:39 AM, Sarah Thorngate wrote: > I second Jason's approach. Even though I'd have more fun using a framework, > I'm currently implementing a CMS (Drupal) for our main site content. If > your non-technical library colleagues are anything like mine, they will > want LibGuides-level simplicity for editing content. My thinking is that > it's worth a little extra pain now to make sure I'm not the only one who > can make changes to our content in the future; that can be a huge time > suck, and prevent you from moving on to other projects. > > Sarah > > > On Fri, Feb 14, 2014 at 10:08 AM, Scott Turnbull > wrote: > >> We used Django and Python extensively while I was at Emory. >> >> First let me answer your question. If Django interests you then >> DjangoCMS is a pretty good choice https://www.django-cms.org/en/ >> >> I know a few folks who use it and like it quiet a bit. That said I >> know a lot of the community is trending toward Flask for simple apps >> in python so it depends on how deep you want to go with what you need >> to develop. >> >> In terms of what I'd add, I would reflect what a lot of people have >> already said here. My own philosophy is that the CMS problem has >> already been solved and it's not a great fit for a custom framework >> unless you have very strong use cases that prove it isn't. I suggest >> you consider taking care of straight up content with whatever CMS you >> want to use (Drupal, Wordpress, etc) and reserve Django and python for >> custom apps that need to sit under it. >> >> You can theme the sites so they look the same, leave the CMS to the >> CMS and put your django apps under an app. subdomain to make the >> experience more ore less seamless. >> >> Just my thoughts, I hope that helps some. >> >> Good luck and let us know what you end up doing, >> >> - Scott >> >> On Fri, Feb 14, 2014 at 10:35 AM, Jason Bengtson >> wrote: >>> I agree with Josh. In the end it's really going to come down to >> balancing priorities. On my personal site I don't use any kind of content >> management system and have no interest in adopting one. This has left me >> free to do as I please without jumping through hoops to try and get things >> work with an often intentionally limiting CMS. At my last University we >> started with nothing but moved institutionally to Cascade Server (a >> horrible mistake if ever there was one). Still, as rotten as CS is, I was >> able to shoehorn a lot of web code through various mechanisms and the >> campus web team simply kept all the good apps and such on an application >> server and linked to them as needed. Of course, that meant that the pages >> of the site itself were pretty static and standardized, in most cases, to >> the point of McDevelopment, but it also allowed departmental admins to make >> cha
Re: [CODE4LIB] Python CMSs
Here's a little digression, getting away from talk about the underlying technology... Most CMSes, rather than being *content *management systems, are actually *page *management systems. They provide a few different page templates -- blog posts, about pages, product descriptions, etc. -- but when you get to the point of creating of creating or editing content, you are asked to fill in a form that, other than requiring a title, author, date, and simple tags or categories, is mainly just a big-old-chunk-o-unstructured-text. Read the following post by Christopher Butler, a web developer, that describes this problem and proposes a new way of thinking about content management. http://www.newfangled.com/the_way_you_design_web_content_is_about_to_change AFAIK, none of the CMSes mentioned in this thread so far do anything that approaches what this article is talking about. Drupal is constantly restructuring itself to be more modular. I keep having hope. But it remains cumbersome to reuse content in Drupal or any other CMS I've looked at. Ultimately, CMS modularity is still tied to page templates. The one exception seems to be LibGuides. I think the reason that librarians and libraries like LibGuides is the ease of creating modules of content that it offers. In the process of building a guide (a suite of pages on a topic), you are largely creating boxes of structured content. In those boxes, you can create links that can be shared and reused in other guides; you can have a user profile that can be slotted into any page; and even the most unstructured content, the "rich text box", can be cloned into other pages or guides. Entire pages or guides can also be cloned and reused. With the forthcoming LibGuides 2, which offers even more structured and reusable content -- e.g., assets in the form of links, RSS feeds, documents/files, book entries, media widgets, database listings, and icons -- it looks even more modular. Their new approach to building boxes by assembling them from reusable components is also a step forward. You can't do everything with LibGuides that you can with "real" CMS systems; some content types are purposely withheld -- e.g., event and calendar entries, blog/news posts, image galleries, etc. -- but does any "real" CMS even come close in terms of modularity? What I'd like to see is a modular CMS, with reusable components and, ideally, some sort of API to further extend reuse. Tom On Fri, Feb 14, 2014 at 11:39 AM, Sarah Thorngate wrote: > I second Jason's approach. Even though I'd have more fun using a framework, > I'm currently implementing a CMS (Drupal) for our main site content. If > your non-technical library colleagues are anything like mine, they will > want LibGuides-level simplicity for editing content. My thinking is that > it's worth a little extra pain now to make sure I'm not the only one who > can make changes to our content in the future; that can be a huge time > suck, and prevent you from moving on to other projects. > > Sarah > > > On Fri, Feb 14, 2014 at 10:08 AM, Scott Turnbull < > scott.turnb...@aptrust.org > > wrote: > > > We used Django and Python extensively while I was at Emory. > > > > First let me answer your question. If Django interests you then > > DjangoCMS is a pretty good choice https://www.django-cms.org/en/ > > > > I know a few folks who use it and like it quiet a bit. That said I > > know a lot of the community is trending toward Flask for simple apps > > in python so it depends on how deep you want to go with what you need > > to develop. > > > > In terms of what I'd add, I would reflect what a lot of people have > > already said here. My own philosophy is that the CMS problem has > > already been solved and it's not a great fit for a custom framework > > unless you have very strong use cases that prove it isn't. I suggest > > you consider taking care of straight up content with whatever CMS you > > want to use (Drupal, Wordpress, etc) and reserve Django and python for > > custom apps that need to sit under it. > > > > You can theme the sites so they look the same, leave the CMS to the > > CMS and put your django apps under an app. subdomain to make the > > experience more ore less seamless. > > > > Just my thoughts, I hope that helps some. > > > > Good luck and let us know what you end up doing, > > > > - Scott > > > > On Fri, Feb 14, 2014 at 10:35 AM, Jason Bengtson > > wrote: > > > I agree with Josh. In the end it's really going to come down to > > balancing priorities. On my personal site I don't use any kind of content > > management system and have no interest in adopting one. This has left me > > free to do as I please without jumping through hoops to try and get > things > > work with an often intentionally limiting CMS. At my last University we > > started with nothing but moved institutionally to Cascade Server (a > > horrible mistake if ever there was one). Still, as rotten as CS is, I was > > able to shoehorn a lot of web code through va
[CODE4LIB] Job: Software Test Engineer at ProQuest
Software Test Engineer ProQuest Seattle As a Software Test Engineer you will be an integral team member responsible for testing multi-tiered applications. You will participate in Scrum for assigned projects, working with great Technologist to ensure consistent levels of software quality. Some of what you'll be doing; • Participates in Scrum for assigned projects • Works closely with Development to define, research, correct, and retest defects • Performs acceptance testing to mitigate risk during project and during release windows • Writes, reviews, and executes test cases • Works with Customer Service to drive customer satisfaction • Represents QA in software requirements and design review inspections • Prepares technical and business reports and documentation as required What you'll have experience with: • Bachelor's Degree and 2+ years of experience in software testing or related position, or equivalent combination of experience • Experience with Linux and Windows operating systems • Must have analytical problem solving skills • A history of effectively working through conflicts to reach effective solutions Go to: http://ch.tbe.taleo.net/CH17/ats/careers/requisition.jsp?org=PROQUEST&c ws=1&rid=1212 to apply directly Here's what you want to know about the Seattle office Fantastic people: Where smart is the norm and unique is welcome Fun location: Coffee houses, restaurants and right across the street from Fremont's best pub Great benefits: Plus some unique stuff like monthly transportation subsidy, on-site events, flexible scheduling and wellness programs Awesome office environment: Nice office, jeans are the norm and (well behaved) Fido is welcome Amazing company: Annual compensation reviews, generous bonuses, and active "Green Team" and good morale About ProQuest ProQuest connects people with vetted, reliable information. We provide seamless access to and navigation of more than 125 billion digital pages of the world's scholarship, delivering it to the desktop and into the workflow of serious researchers in multiple fields, from arts, literature, and social science to general reference, business, science, technology, and medicine. The company is currently rolling out the all-new ProQuest® platform, which moves beyond navigation to empower researchers to use, create, and share content-- accelerating research productivity. If this position isn't quite your fit, check out our other positions posted on our "Career" page under About Us. ProQuest's corporate office is located in Ann Arbor, MI. www.Proquest.com Brought to you by code4lib jobs: http://jobs.code4lib.org/job/12416/
Re: [CODE4LIB] Python CMSs
I second Jason's approach. Even though I'd have more fun using a framework, I'm currently implementing a CMS (Drupal) for our main site content. If your non-technical library colleagues are anything like mine, they will want LibGuides-level simplicity for editing content. My thinking is that it's worth a little extra pain now to make sure I'm not the only one who can make changes to our content in the future; that can be a huge time suck, and prevent you from moving on to other projects. Sarah On Fri, Feb 14, 2014 at 10:08 AM, Scott Turnbull wrote: > We used Django and Python extensively while I was at Emory. > > First let me answer your question. If Django interests you then > DjangoCMS is a pretty good choice https://www.django-cms.org/en/ > > I know a few folks who use it and like it quiet a bit. That said I > know a lot of the community is trending toward Flask for simple apps > in python so it depends on how deep you want to go with what you need > to develop. > > In terms of what I'd add, I would reflect what a lot of people have > already said here. My own philosophy is that the CMS problem has > already been solved and it's not a great fit for a custom framework > unless you have very strong use cases that prove it isn't. I suggest > you consider taking care of straight up content with whatever CMS you > want to use (Drupal, Wordpress, etc) and reserve Django and python for > custom apps that need to sit under it. > > You can theme the sites so they look the same, leave the CMS to the > CMS and put your django apps under an app. subdomain to make the > experience more ore less seamless. > > Just my thoughts, I hope that helps some. > > Good luck and let us know what you end up doing, > > - Scott > > On Fri, Feb 14, 2014 at 10:35 AM, Jason Bengtson > wrote: > > I agree with Josh. In the end it's really going to come down to > balancing priorities. On my personal site I don't use any kind of content > management system and have no interest in adopting one. This has left me > free to do as I please without jumping through hoops to try and get things > work with an often intentionally limiting CMS. At my last University we > started with nothing but moved institutionally to Cascade Server (a > horrible mistake if ever there was one). Still, as rotten as CS is, I was > able to shoehorn a lot of web code through various mechanisms and the > campus web team simply kept all the good apps and such on an application > server and linked to them as needed. Of course, that meant that the pages > of the site itself were pretty static and standardized, in most cases, to > the point of McDevelopment, but it also allowed departmental admins to make > changes without knowing a stitch of web code. I was in bad position there > because I had little access to anything but t! > he CMS, so I had to find ways to shoehorn web apps I built into the CMS > and get them to work within its strictures. It didn't help that we had an > upper leadership element that didn't understand the difference between a > web page on our site and a purpose-built web app. > > > > Here at RMB, we don't currently use a CMS, but my predecessor built > what, in some ways, amounted to a kind of CMS for some of the content using > ColdFusion. We're evaluating a move to a CMS to put broader content editing > in the hands of departments so that they can take charge of more than news > items and the addition of database links. We'll see how that goes. Needless > to say, the good stuff will be kept far away from the CMS. The biggest > advantage to that arrangement on the computing side is that someone coming > in to replace me wouldn't really need to have an in-depth understanding of > php (which is the main server-side script I use) to get a handle on the > majority of the site. When I was hired I quickly discovered that it was > fortunate I had some ColdFusion in my background, or a lot of what our site > did and how it worked would have been inaccessible until I got up to speed > on the language. > > > > I guess what it comes down to for me, as we look at this decision, is > how much CMS flexibility and tweakability I need for the main site, vs what > I want in place for the real web apps that have been built or are underway > (which I can locate separately and build using whatever framework I see > fit). As such you may want to use Django as your framework on a separate > application server, while employing a more normative CMS for most of your > site content. > > > > Hopefully at least some of that wasn't too trite. > > > > Best regards, > > > > Jason Bengtson, MLIS, MA > > Head of Library Computing and Information Systems > > Assistant Professor, Graduate College > > Department of Health Sciences Library and Information Management > > University of Oklahoma Health Sciences Center > > 405-271-2285, opt. 5 > > 405-271-3297 (fax) > > jason-bengt...@ouhsc.edu > > http://library.ouhsc.edu > > www.jasonbengtson.com > > > > NOTICE: > > This e
Re: [CODE4LIB] Python CMSs
We used Django and Python extensively while I was at Emory. First let me answer your question. If Django interests you then DjangoCMS is a pretty good choice https://www.django-cms.org/en/ I know a few folks who use it and like it quiet a bit. That said I know a lot of the community is trending toward Flask for simple apps in python so it depends on how deep you want to go with what you need to develop. In terms of what I'd add, I would reflect what a lot of people have already said here. My own philosophy is that the CMS problem has already been solved and it's not a great fit for a custom framework unless you have very strong use cases that prove it isn't. I suggest you consider taking care of straight up content with whatever CMS you want to use (Drupal, Wordpress, etc) and reserve Django and python for custom apps that need to sit under it. You can theme the sites so they look the same, leave the CMS to the CMS and put your django apps under an app. subdomain to make the experience more ore less seamless. Just my thoughts, I hope that helps some. Good luck and let us know what you end up doing, - Scott On Fri, Feb 14, 2014 at 10:35 AM, Jason Bengtson wrote: > I agree with Josh. In the end it's really going to come down to balancing > priorities. On my personal site I don't use any kind of content management > system and have no interest in adopting one. This has left me free to do as I > please without jumping through hoops to try and get things work with an often > intentionally limiting CMS. At my last University we started with nothing but > moved institutionally to Cascade Server (a horrible mistake if ever there was > one). Still, as rotten as CS is, I was able to shoehorn a lot of web code > through various mechanisms and the campus web team simply kept all the good > apps and such on an application server and linked to them as needed. Of > course, that meant that the pages of the site itself were pretty static and > standardized, in most cases, to the point of McDevelopment, but it also > allowed departmental admins to make changes without knowing a stitch of web > code. I was in bad position there because I had little access to anything > but t! he CMS, so I had to find ways to shoehorn web apps I built into the CMS and get them to work within its strictures. It didn't help that we had an upper leadership element that didn't understand the difference between a web page on our site and a purpose-built web app. > > Here at RMB, we don't currently use a CMS, but my predecessor built what, in > some ways, amounted to a kind of CMS for some of the content using > ColdFusion. We're evaluating a move to a CMS to put broader content editing > in the hands of departments so that they can take charge of more than news > items and the addition of database links. We'll see how that goes. Needless > to say, the good stuff will be kept far away from the CMS. The biggest > advantage to that arrangement on the computing side is that someone coming in > to replace me wouldn't really need to have an in-depth understanding of php > (which is the main server-side script I use) to get a handle on the majority > of the site. When I was hired I quickly discovered that it was fortunate I > had some ColdFusion in my background, or a lot of what our site did and how > it worked would have been inaccessible until I got up to speed on the > language. > > I guess what it comes down to for me, as we look at this decision, is how > much CMS flexibility and tweakability I need for the main site, vs what I > want in place for the real web apps that have been built or are underway > (which I can locate separately and build using whatever framework I see fit). > As such you may want to use Django as your framework on a separate > application server, while employing a more normative CMS for most of your > site content. > > Hopefully at least some of that wasn't too trite. > > Best regards, > > Jason Bengtson, MLIS, MA > Head of Library Computing and Information Systems > Assistant Professor, Graduate College > Department of Health Sciences Library and Information Management > University of Oklahoma Health Sciences Center > 405-271-2285, opt. 5 > 405-271-3297 (fax) > jason-bengt...@ouhsc.edu > http://library.ouhsc.edu > www.jasonbengtson.com > > NOTICE: > This e-mail is intended solely for the use of the individual to whom it is > addressed and may contain information that is privileged, confidential or > otherwise exempt from disclosure. If the reader of this e-mail is not the > intended recipient or the employee or agent responsible for delivering the > message to the intended recipient, you are hereby notified that any > dissemination, distribution, or copying of this communication is strictly > prohibited. If you have received this communication in error, please > immediately notify us by replying to the original message at the listed email > address. Thank You. > > On
Re: [CODE4LIB] Python CMSs
I agree with Josh. In the end it's really going to come down to balancing priorities. On my personal site I don't use any kind of content management system and have no interest in adopting one. This has left me free to do as I please without jumping through hoops to try and get things work with an often intentionally limiting CMS. At my last University we started with nothing but moved institutionally to Cascade Server (a horrible mistake if ever there was one). Still, as rotten as CS is, I was able to shoehorn a lot of web code through various mechanisms and the campus web team simply kept all the good apps and such on an application server and linked to them as needed. Of course, that meant that the pages of the site itself were pretty static and standardized, in most cases, to the point of McDevelopment, but it also allowed departmental admins to make changes without knowing a stitch of web code. I was in bad position there because I had little access to anything but the CMS, so I had to find ways to shoehorn web apps I built into the CMS and get them to work within its strictures. It didn't help that we had an upper leadership element that didn't understand the difference between a web page on our site and a purpose-built web app. Here at RMB, we don't currently use a CMS, but my predecessor built what, in some ways, amounted to a kind of CMS for some of the content using ColdFusion. We're evaluating a move to a CMS to put broader content editing in the hands of departments so that they can take charge of more than news items and the addition of database links. We'll see how that goes. Needless to say, the good stuff will be kept far away from the CMS. The biggest advantage to that arrangement on the computing side is that someone coming in to replace me wouldn't really need to have an in-depth understanding of php (which is the main server-side script I use) to get a handle on the majority of the site. When I was hired I quickly discovered that it was fortunate I had some ColdFusion in my background, or a lot of what our site did and how it worked would have been inaccessible until I got up to speed on the language. I guess what it comes down to for me, as we look at this decision, is how much CMS flexibility and tweakability I need for the main site, vs what I want in place for the real web apps that have been built or are underway (which I can locate separately and build using whatever framework I see fit). As such you may want to use Django as your framework on a separate application server, while employing a more normative CMS for most of your site content. Hopefully at least some of that wasn't too trite. Best regards, Jason Bengtson, MLIS, MA Head of Library Computing and Information Systems Assistant Professor, Graduate College Department of Health Sciences Library and Information Management University of Oklahoma Health Sciences Center 405-271-2285, opt. 5 405-271-3297 (fax) jason-bengt...@ouhsc.edu http://library.ouhsc.edu www.jasonbengtson.com NOTICE: This e-mail is intended solely for the use of the individual to whom it is addressed and may contain information that is privileged, confidential or otherwise exempt from disclosure. If the reader of this e-mail is not the intended recipient or the employee or agent responsible for delivering the message to the intended recipient, you are hereby notified that any dissemination, distribution, or copying of this communication is strictly prohibited. If you have received this communication in error, please immediately notify us by replying to the original message at the listed email address. Thank You. On Feb 14, 2014, at 8:30 AM, Joshua Welker wrote: > There are two conflicting issues here. If you want ease of development, > you want a framework. If you want ease of content creation, you want a > CMS. As a developer, it's always my preference to go for ease of > development and use a framework. Designing plugins and modules just sucks. > A simple plugin like displaying dates on a page is stupidly complicated > when you have to integrate it with the entire CMS rendering engine. But I > have to acknowledge that it is better for me as the developer to do a > little extra legwork than requiring all the non-techie content creators to > do the extra legwork. That said, it isn't _too_ hard to implement a basic > wysiwyg editor like CKeditor in most frameworks that would eliminate much > of the difficulty for content creators. > > The bigger issue for me is that, when you use a framework, you more or > less guarantee that anyone inheriting your code is going to be facing a > steep learning curve, possibly insurmountable depending on their level of > programming knowledge. With a CMS, there is built-in documentation and a > support community for 95% of functionality, and then you just have to > document the 5% or so of code that you custom wrote. > > Having said all that, I have to point out the amazin
Re: [CODE4LIB] Primo API access
Hi Marwah, You may also find the Opensource Umlaut framework useful. It's a Rails app that acts as a delivery aggregation system. You can configure your own connections to various library resources (e.g SFX, PubMed, HathiTrust, etc.) and even build your own adapters to services that are not included in the default installation. Hope this helps. Brian > On Feb 13, 2014, at 21:00, "Marwah Khaled H Alaofi" > wrote: > > Hi everyone, > > I'm studying at the Faculty of IT at Monash University in Melbourne, > Australia, currently for a masters degree in IT. > My research interest is in the applications of data mining and information > retrieval in education and for my masters > thesis I chose to investigate ways to personalise library search results > for coursework students. > My procedure is based on getting query-dependent results from Monash > Library Exlibris Primo as complete records (i.e > with metadata) and work from there to enhance the degree of relevance. > > In order for me to test my hypothesis I need to be able to use the API and > fetch query-dependent results. > I've asked for access from Monash Library but it is somehow taking so long! > I was told that the API is > restricted by the IP and that it is not likely I will be granted access. > Well, I'm wondering if you could perhaps direct me to > any educational library where Primo is used, preferably university library, > and of which I can obtain an access to the API. If that is not likely to > happen (or not possible in a limited time frame) I'd alternatively change > my testing environment and look for another digital library system that can > be easily accessed through a flexible API. I'll be glad to hear from you! > It's a very important step in my research and any insights or > recommendation will be highly appreciated. > > Thanks all, > > Cheers, > Marwa
Re: [CODE4LIB] Python CMSs
There are two conflicting issues here. If you want ease of development, you want a framework. If you want ease of content creation, you want a CMS. As a developer, it's always my preference to go for ease of development and use a framework. Designing plugins and modules just sucks. A simple plugin like displaying dates on a page is stupidly complicated when you have to integrate it with the entire CMS rendering engine. But I have to acknowledge that it is better for me as the developer to do a little extra legwork than requiring all the non-techie content creators to do the extra legwork. That said, it isn't _too_ hard to implement a basic wysiwyg editor like CKeditor in most frameworks that would eliminate much of the difficulty for content creators. The bigger issue for me is that, when you use a framework, you more or less guarantee that anyone inheriting your code is going to be facing a steep learning curve, possibly insurmountable depending on their level of programming knowledge. With a CMS, there is built-in documentation and a support community for 95% of functionality, and then you just have to document the 5% or so of code that you custom wrote. Having said all that, I have to point out the amazing Yii PHP framework. It is so extremely easy to build a data-driven app. If you ever want a PHP framework, use that. For Python, I'd go with Django just because it has a better support community and is slightly easier than Flask for database functionality like ORM. Josh Welker -Original Message- From: Code for Libraries [mailto:CODE4LIB@LISTSERV.ND.EDU] On Behalf Of Coral Sheldon-Hess Sent: Thursday, February 13, 2014 6:14 PM To: CODE4LIB@LISTSERV.ND.EDU Subject: [CODE4LIB] Python CMSs Hi, everyone! I've gotten clearance to totally rewrite my library's website in the framework/CMS of my choice (pretty much :)). As I have said on numerous occasions, "If I can get paid to write Python, I want to do that!" So, after some discussion with my department head/sysadmin, we're leaning toward Django. Here's a broad question, re: Python and Django: If you've made the switch, what has your experience been? Has Django (or any other Python framework) given you something cool that was lacking in your previous language/framework/CMS? Has it helped you build something awesome? Have you found it enabling or limiting in any way? If you were going to sell people on (or against) using it, what would your arguments be? I'm a relative newbie to Python, and a total newbie to Django, so even if there was a tutorial you found useful, or some caveat you learned along the way, I'm interested. :) And then a more specific question: Given the following requirements, do you have a Django-based CMS you'd recommend? (Of course, I'll also do my own research, but I'd love to see what other libraries' experiences have been and what's popular, right now.) * There's a chance we'll want to offer other editors access to it, at some point, so it would be nice if I can provide a WYSIWYG interface, which I also am going to want the option to *turn off*, for my own sanity. * We're a Springshare-heavy library with Summon and big secret API-based plans, so easy JavaScript (preferably jQuery) integration is a must. * It should play nicely with MySQL. * Because I probably won't be here forever, it's of the utmost importance that whatever we end up with is easy to maintain. * I'm used to MODx's page-ID model, where I can move pages around, and as long as I don't delete/recreate a page (thereby changing its ID), I don't have to change any links anywhere else in the CMS. I'd really like something that will work equally well, since the odds that I'll nail the information architecture on the first try are probably slim. :) (Maybe this one should go without saying, since I know WordPress and many other CMSs do this, but if you have to err, err on the side of being explicit, right?) * A nice forms-builder plugin (module?) would be a great thing to have, as well. We use FormIt in MODx, and now I'm spoiled. And, I mean, if there's a CMS on top of another Python framework you think I should be considering, feel free to throw that out as a possibility, too! Thank you! -- Coral Sheldon-Hess http://sheldon-hess.org/coral @web_kunoichi
Re: [CODE4LIB] Primo API access
Hi Marwa, Access to the APIs for every Primo installation (which the system is hosted by the customer or Ex Libris) are IP restricted by default and unfortunately there are security concerns with opening up them to anything but a few trusted clients so looking at an alternate open search API like NLM (with much richer metadata) may be the way to go for your project. Regards, Kevin Reiss On Friday, February 14, 2014 1:27 AM, jason bengtson wrote: Hi Marwa, We’re in the process of adopting Primo on the Health Sciences Campus of the University of Oklahoma. I think you may want to use a mechanism other than Primo for something like this. The reason I say this is that Primo is, essentially, an aggregator from multiple sources. As part of this aggregation process it reduces (in a very literal sense) incoming data streams in various formats, such as MARC or Dublin Core, to “PNX” records . . . essentially a proprietary XML format designed around the display and delivery needs of the Primo tool. As such, the resultant data isn’t nearly as rich or useful for your personalization purposes (I suspect) as the source data would be. Now, depending on the way the PNX is normalized by the institution using the tool, the PNX record could contain more information, or different types of information, than it would out of the box, but other than customizing location information, or similar facets of a record, there really isn’t much reason for an institution to perform significant enrichment of the PNX data set. Primo is a pretty blunt instrument. If you really want to see the PNX for an individual record you don’t need any kind of api, just add &showPnx=true to the end of the url (although that’s not a full solution for you, in and of itself, since that won’t work on the list of returns, only on single records). Beyond that, I’m not sure there is an API to do what you want. Most of the Primo apis seem to exist to augment some lacking baked in functionality. There is a Primo Central api, though I haven’t really explored it much beyond using it in our system view. Remember, Primo is the bottom of the funnel . . . what’s left of the metadata at that point is largely lowest common denominator, IMHO. If you want a richer data set to work with for purposes of experimental personalization (I’m guessing you’re building or preparing to build some kind of adaptive algorithm for this project) you would probably be better off grabbing query dependent records from research tools like the US National Library of Medicine’s PubMed (through the publicly available Entrez tool). PubMed is mainly used for medical research, and the metadata it employs is, in many areas, still kind of thin (the controlled vocabulary used, MeSH, is outstanding, but fields like author and affiliation are not well normalized), but it’s a much richer source than you’re likely to see from any PNX records. In addition, NLM offers some very robust apis that allow you to easily query and retrieve the records from a search in their full XML glory (http://www.ncbi.nlm.nih.gov/books/NBK25501/). This is just an example of course; there are other publically usable apis and plenty of vendor apis that your library might allow you some provisional access to (although that can be a big pain in the neck for them, since access to the api usually means getting you a password other than the master account password issued by the vendor and then terminating at the end of your project, assuming there’s no licensing issue). Of course, this is my opinion based on our experience to date and other folks may have a very different take on Primo. I hope this is helpful and good luck with your project. Best regards, Jason Bengtson, MLIS, MA Head of Library Computing and Information Systems Assistant Professor, Graduate College Department of Health Sciences Library and Information Management University of Oklahoma Health Sciences Center 405-271-2285, opt. 5405-271-3297 (fax) jason-bengt...@ouhsc.edu http://library.ouhsc.edu www.jasonbengtson.com NOTICE: This e-mail is intended solely for the use of the individual to whom it is addressed and may contain information that is privileged, confidential or otherwise exempt from disclosure. If the reader of this e-mail is not the intended recipient or the employee or agent responsible for delivering the message to the intended recipient, you are hereby notified that any dissemination, distribution, or copying of this communication is strictly prohibited. If you have received this communication in error, please immediately notify us by replying to the original message at the listed email address. Thank You. On Feb 13, 2014, at 11:00 PM, Marwah Khaled H Alaofi wrote: > Hi everyone, > > I'm studying at the Faculty of IT at Monash University in Melbourne, > Australia, currently for a masters degree in IT. > My research interest is in the applications of data mining and information >
[CODE4LIB] Perl and Netty project
Could you please tell me if you have any experience using http://netty.io/ with Perl? Thank you in advance