It’s about time for another upgrade to PRX.org and this one is wicked awesome as we say in New England. Our newest tech wizard Becca has spent the past few weeks developing a brand new audio player for our piece pages that makes them easier to listen to, more secure and generally just makes the page a heck of a lot nicer to look at. We also worked on a number of other fixes, enhancements and all around goodness including:
Fixes to notifications and tracking of piece listens
Piece page long description fixes
Administrative changes to how comments are handled
A few language changes to that clear up some confusion
A total of 37 changes and tickets were resolved in this release
We’re in the planning stages for additional improvements to the piece page so stay tuned for those.
We’ve been listening and once again our Tech Director Andrew and Developer Dan have worked their magic to improve the performance of PRX.org. A big undertaking was researching, designing and implementing a complete Data Warehouse, which isn’t a trivial task, to speed up a number of the areas of the site that we use for providing reports and analytics back to listeners, producers and stations.
Another area that we paid close attention to was improving search. Search is a big, difficult topic, Google spends vast amounts of money on the problem. We’re not Google but we do the best we can with our search tool Solr. We spent time tweaking the user interface so results are easier to scan, improved people searching results (NOTE: We’re still finishing up indexing all the people on the site so results might be inconsistent over the next day or so.), and overall made 20+ changes to the search system.
Thanks to the code wrangling of Andrew and Dan and the ticket testing of Genevieve and Emily PRX.org 3.4 is out the door. This two week design, develop test cycle included 49 individual bug fixes, improvements and all around general goodness. Some of the highlights:
You can now be notified of new pieces being added and pieces being bought on prx via twitter, just follow “prx” here: http://twitter.com/PRX or http://twitter.com/PRX_On_Air
General UI clean up for Internet Explorer, specifically piece creation and search results
Fixes and enhancements to notifications sent from PRX to you
Networks BETA code finalized and ready for BETA testing
Enhancements to playlists and how you can manage them
AIR discounts can now be applied at time of payment
Improvements to series creation workflow
Again thanks to the PRX team for a great release, now it’s time to get started on 3.5 search related improvements.
It turns out that the more we do (i.e. rewriting prx.org, creating the next version of the Public Radio Tuner iPhone app, managing top notch podcasts, audio streams, and a satellite radio channel), the more help we need.
I know, I’m as surprised as you are; I thought we would just drink more coffee (or maybe stronger coffee?).
Instead, we’re looking to hire another full-time technologist to make PRX go whiz bang.
If you think PRX might be right for you, consult your physician, or just send a resume or CV to prxdeveloperjob AT prx DOT org. Not right for you? Maybe next time, but please pass this along.
Here’s the full job description:
You: Live on planet earth, are human, creative and a motivated developer.
Us: Super cool nonprofit public media company in Harvard Square. Yes – we said super cool AND public media.
Job posting: Web/Rails Application Developer
Location: Harvard Square – Cambridge, MA
Type of Position: Full-time with benefits
Start date: Immediately
We’ll ask you for your opinion and expect you to have one.
You have the ability to pick up new technologies in days and weeks not months and years.
We’ll have you write code with the language that best matches the job.
You’ll query and tune databases with millions of records.
We’ve got great sysadmin support, but if you can build packages from source, all the better.
Occasionally the phone will ring, you’ll pick it up and talk to our users in a calm and sensitive manner.
Contribute ideas, suggestions, observations to operations and strategies as a whole.
We are looking for an enthusiastic and creative engineer with a passion for building robust, scalable applications with simple, powerful interfaces, and who is comfortable working in a dynamic, changing environment.
You’ll work closely with our other developers and staff on all phases of the development cycle including planning, development, testing, deployment, and maintenance.
This position reports to the Technical Director, Andrew Kuklewicz.
Our development stack
We work with Ruby on Rails (ActiveMessaging, acts_as_solr), develop and drive the #2 application in the iTunes App Store (Public Radio Tuner), PHP (WordPress), and a smattering of Java running on dedicated and cloud hardware.
Think internet start up but without annoying buzz words and we actually have a service our users love.
We have high ceilings, large windows, bright walls and exposed wood beams, now mix in public radio and oh yeah a foosball table.
Candidates with interest and experience in open source, audio engineering, social software, public media, and community sites are encouraged to apply.
To Apply for this Opportunity
Please email a resume and cover letter to prxdeveloperjob AT prx DOT org.
Job location is Cambridge, MA
The Public Radio Exchange (PRX) is a fast-paced entrepreneurial environment, and the Web Application Developer will need to be adaptable, flexible and persistent, with the ability to manage multiple tasks and communicate with the team about timelines and development priorities. It requires a person who is able to successfully maintain a complex suite of web applications for high uptime and reliability. The position requires technical and organizational skills, a commitment to the vision and mission of the Public Radio Exchange, and an understanding of its dynamic role as an emerging service in the public media field.
PRX is an equal Affirmative Action/Equal Opportunity Employer. Salary based on experience.
Our team is pleased to announce that we’ve released version 3.1 of PRX.org which focuses mainly on performance improvements, we use the site every day so we felt your pain, and over 25 improvements and bug fixes. We’re diligently working on the next release, 3.2, and hope to have that wrapped up in a few days. In the meantime here are the highlights of what we worked on for the 3.1 release:
Major improvements to the “More like this” section found on each piece page. Now when you’re looking at a piece you can easily navigate to other similar pieces. You can find this section on the right hand side of the piece page below the “Additional Information”.
We’ve tweaked database queries, added HAProxy to better balance requests and server load and have been looking at other areas to improve site performance. Bottom line, we constantly look at ways to improve the performance of the site, but things have gotten much better with this release.
During high website usage periods some MP2 files were taking a while to be converted to MP3. Andrew put two changes in to reduce the chances of this happening again.
We cranked out another release to http://www.prx.org on Saturday night and there are over 60 improvements and fixes included. We’re listening and reviewing each and every item that you report to us so please check the list for fixes and improvements you’ve requested.
Faster, faster, faster – Andrew has tweaked even more site performance out of the website.
Thanks to Dan, Andrew and Nathan search is working much better – searching for “Quirks and Quarks” or “Love & Radio” now returns all the results. Also searching for producer names will return all the pieces for those producers.
Pieces are now sorted most recently published first for tones, topics and formats.
When your streaming audio isn’t ready we now display a message on the piece page which informs people that the file isn’t ready but that they should check back soon.
Migrated user profiles now is using the 2.0 bio field
Removing a station member from a station is now working
Royalty links working for 3rd quarter
The list to a users comments now shows all of the comments not a subset.
If you are still encountering issues with using the site please email help [at] prx [dot] org – we are tracking and responding to every report.
In the meantime we’re continuing to work day and night on improving the site, and appreciate your patience and support.
Over a year in the making, we’re thrilled to present the new PRX.
If you want a glimpse of the action-packed moment of actual launch, watch our behind-the-scenes video from the PRX HQ in Cambridge MA:
So this is version 3.0 and will soon be followed by 3.1, 3.2 and so on. One of the big reasons we rebuilt the PRX web application from top to bottom (moving from Java to Ruby on Rails, for the technofriendly you can see more of what’s under the hood on 3.0 here) was so we could more easily expand and improve the site and incorporate ideas and suggestions from stations, producers and listeners.
As with any major construction project there have been some redesigns, some delays, some of the original concrete wasn’t mixed properly, we forgot to put a window or a banister here or there. We know of a few things that are missing or confusing and are on our list to be fixed for 3.1, and we hope and expect you will find some too. Please tell us!
At the bottom of this post we’re keeping a running list of known issues with 3.0, which we will continue to update as we fix or discover things. If you find something you think is broken or just funky, email feedback<at>prx<dot>org and we’ll be obsessively checking it over the coming days and weeks. If you need help with your account on PRX just email help<at>prx<dot>org, we’re on top of that one too.
However if you just want to say glowing and celebratory things, please comment on this post so the world can see!
For a taste of what our top-notch tech team was doing over the last 12 hours or so, here’s an excerpt from one of Andrew’s 4 a.m. emails:
——– Original Message ——–
Subject: [Staff] update 2
Date: Sat, 22 Nov 2008 04:08:27 -0500
From: Andrew Kuklewicz
Things are getting there. The data and files are migrated, and ftp is reconfigured and accepting files, so good stuff.
To give some notion of what I am talking about, there are some 31,241 mp2 files, and of those 22,889 are not orphaned, and are working – for example, pieces which have a single version, and no promos, are fine.
That leaves 8352 files to be resolved. I expect to have a working script within an hour, and then crank up a bunch of amazon ec2 instances to correct this in parallel, so hopefully it can be resolved within a few hours – once I have it running, I’ll have a better notion of how long until it will be fixed. I am moving a bit slowly due to lack of sleep, but I’m doing what I can to fix this asap.
We have lots of people to thank and credit for getting this baby off the ground. First and foremost the PRX dynamic tech duo Andrew Kuklewicz and Matt MacDonald, with big coding help from Nathan Woodhull and Dan Choi, migration wizardy from Robert DeBenedictis, design deliciousness from Paul Irish and Paul Krasnoo, and an all-out effort by the PRX staff, in particular Genevieve Sponsler who masterfully reworked help documentation, John Barth and Kerri Hoffman who have shaped and supervised critical areas of the new site, Emily Corwin for all kinds of support, and Rekha Murthy who joined PRX just in time to provide essential efforts in the final 3.0 push.
And a big thank you to the funders that supported PRX throughout – the Corporation for Public Broadcasting, the MacArthur Foundation, the Ford Foundation, the Surdna Foundation, and the National Endowment for the Arts. Major props!
Continuously Updated List of Known Issues
These are issues that we know about and are actively working to fix, if you’ve found one not listed or crossed-out here please email email@example.com. If you need help or have a question about your account(s) on PRX send an email to our Technical questions email address.
[PRXMJ-650] Searching for multiple keywords does not return results. For example “Quirks” returns results but “Quirks and Quarks” doesn’t. We’re working on this one and it’s the highest priority as search is the way most people find pieces on PRX.
[PRXMJ-373] Missing RSS feeds for: New Pieces, New Reviews, New
Producers, New music pieces, New news pieces, New documentaries
[PRXMJ-620] series with period in the title does not get displayed correctly
[PRXMJ-322] Various Internet Explorer 6 CSS, image and user
interface issues, we will fix these but you should really update your
[PRXMJ-14] Missing CSV/XLS/PDF export for royalty statements
[PRXMJ-347] Search Results Should Persist When User Clicks “Back” From a Piece
[PRXMJ-544] Piece Creation UI Minor Defects on IE 7 Windows
[PRXMJ-457] Series added to Favorites does not appear in Favorites Playlist
[PRXMJ-550] Advanced search date range not filtering
[PRXMJ-510, PRXMJ-509, PRXMJ-507] Various People search related bugs
Karen Everhart of Current catches up on a new project that PRX is helping pull together – an iPhone application for public radio.
To be released early next year: a CPB-funded adaptation of the APM player to be developed by a partnership of NPR, APM, PRI, Public Interactive and Public Radio Exchange (PRX).
The jointly developed player will probably offer even more stations plus additional capabilities. It aims to let users find a local station by using the cell phone’s global positioning system capability, according to Jake Shapiro, PRX executive director. And it will allow searches for pubradio stations by format.
We’ll be posting more on this soon, it’s an exciting project that charts new territory by bringing NPR, APM, PRX, PRI and Public Interactive together to collaborate in developing applications for public radio. The aim is to manage the resulting code and related parts in an open source approach that invites other public media partners to make use of what we’re building.
In the spirit of sharing information with our public broadcasting peers I thought I’d delve a bit under the covers of the new Public Radio Talent Quest site that we just launched. This post will focus on the decisions that were made and how we got to where we are, part 2 will focus on more of the technical details. Planning the project started in the fall of 2006, we talked about features, rules, user roles and permissions while investigating our technical options. We’re primarily a Java development shop, PRX.org is built on Apache/Tomcat/MySQL but we have PHP, Python, Perl and increasingly more Ruby and Rails code everyday. Our development staff is comfortable wading around in any of these languages, so our technical implementation options were wide open.
A few things that we had to keep in mind when deciding on our technical approach.
Time – As a result of the mind boggling way grants work we had to hold off on starting our implementation until the grant start date. That gave us about 2 months to start the technical work and get the site live on February 28th.
Money – Yes the grant is for $250,000 but we’re giving a substantial chunk of that money to the contestants and others on the project, leaving a fairly small pool of money for the technical implementation.
People – Talent Quest is a one year grant, it’s a project and not the core of the PRX business model. Counting me we have 3 technical resources and I don’t want to even talk about how little code I get to write now.
So we looked at our options to build out our contest focused site:
Build the app from scratch
3rd party contest sites
Customize an existing web application platform
Build the app from scratch
To a group of developers this was the most attractive, we’d get to build every component, have complete control over features and APIs. This option was so attractive that we started to prototype the project out using Rails, just to get a handle on what it would take to get the project done. We made good progress on the prototype but I knew that it would take huge developer time, and we had a lot going on with our development efforts and staffing. If we fold PRTQ into the core PRX business model this option definitely gets re-evaluated.
3rd party contest sites
We looked at companies like, Bix, KickApps, Ning and Gather. All had possible solutions for us, but some were dropped from the list due to timing others for lack of control over the presentation of the contest site and still others for lack of features. Given our time and money constraints this was a worthwhile investigation but things just didn’t line up.
We ended up with customizing an existing web application platform
Many developers and managers know of the 80-20 rule. Choosing an application platform to modify means understanding the level of difficulty involved in implementing the 20% that you deem most important. The ability to create and manage an audio contest was the feature that we needed most.
Another major concern that I had was choosing a platform that would provide me with a pool of people to work on the project. Given that we are a non-profit, finding talented people, working below industry wages in this employee focused market was of primary concern. I can’t run out and hire people with the promise of stock options and huge salaries, and the public radio benevolence card can only be played so often.
So what did we end up doing?
We looked at a number of open source CMS options to customize and build on – Plone, Drupal, WordPress. We settled on Drupal. It has a large developer community, gave us 90% of the things we needed by installing additional modules, functionality that we needed could be added using custom modules and PHP/Drupal developers can easily be found. The custom contest module is well on it’s way and will be released to the Drupal community once we complete it.
Hopefully that provides some insight into our decision making process, next post I’ll get into the details of how we are using Drupal, what modules we installed and customized and our experiences working with it. If you have Drupal experience and want to help our efforts please drop me a line at matt at prx dot org.