So they are closing down libraries in the UK. I guess that comes as no surprise, but still a sad story. Branches have been closing in many towns and cities in the States for years. The library was once the sole entity bringing open knowledge into these communities. With the growth of the web that role has rapidly diminished.
The real driver diminishing the need for libraries as we know them is the advent of eBooks. It is only a matter of time before all books are digitized. And so beyond a public space in the community to bring people together (a great value by itself) what is the role of libraries going forward? How do they redefine their niche?
It is essential that institutions remain to provide open access to books and knowledge. To lose this in the digital age would be a great tragedy. Just because the need for the four walls of a library disappear the concept of what a library represents certainly should not.
The Mission
Here are a few mission statements of local libraries:
- The Howland Public Library provides materials and services to help community residents obtain information meeting their personal, educational and professional needs. Special emphasis is placed on supplying adults with current reading materials; on providing reference services to students (at all academic levels).
- The Mission of the Beekman Library shall be to assure effective, expanding, free library service for the community of Beekman and to lead citizens in anticipating their future needs for library services.
- It is the mission of The Alice Curtis Desmond and Hamilton Fish Library to provide access to the world of social and cultural ideas to the community by offering a wide variety of materials and programs. The Library has a special mission to young children and their parents to encourage a love of reading and learning.
The mission of the library is more important than ever in the modern web world. Web sites are rife with incomplete or worse completely misleading or slanted information. Is this the only type of information access we want to provide to our children?
Super Libraries
New super-libraries are not the answer. There are a number opening or planned to open in the UK such as the one in Birmingham. The description of the new library has a glass building wrapped in delicate metal filigree. Sounds more like a mall than a library. Should a library become more like a Borders or a Starbucks to survive? Maybe, until you realize that Borders is struggling and likely to go under. The victim of Amazon and the ever expanding online world.
As the world all around us changes why do we have such a hard time adapting our concepts from the past to this new world of the future. Why does a library have to have four walls at all?
Running a successful public library in the 21st century is tough. Foot traffic is down and book loans are massively down. In the UK only 14 of 151 local authorities have libraries that offer eBooks. Rather than investing in building these new monstrous libraries shouldn't the investment be geared toward digitizing libraries across the country and making them available online. Working with DRM providers to allow books to be checked out to an iPad or Netbook for three weeks before being removed. This serves all interested parties from publishers to libraries to readers. Libraries must "move with the times to stay part of the times" and if you care passionately about libraries and the mission of libraries then embracing the obvious future with a new goal and mission for libraries must strike a chord.
Digitizing Libraries
Many books today have been digitized. A significant portion of research is already digital. As the eBook initiative continues to build momentum in the scholarly community with the UPeC and UPSO it is only a matter of time before books are something we find in antique stores.
I am of a generation that loves the look and feel of books. But after watching my son lug 12 pounds of books in his backpack to school every day I am sure when the day comes he will not miss them one bit. I wait for the day when our local Charter school sends me the bill for a Kindle or iPad... The next generation simply has embraced an all digital world and lets face it there is really no looking back.
There is indeed an opportunity here. If the Birmingham library has 2.5M books stretching over seven floors at the disposal of residents all over the city imagine what a digital library could present. All the world’s libraries with billions of books available to every student on the globe with online access. Imagine putting that many books at the fingertips of every man, woman, and child in your community. If the goal of a library is to truly make knowledge available to the public then this new vision should be broadly embraced as rapidly as possible.
The Online Library
If we can contribute anything toward this inevitable revolution it should be how people use and interact with a digital library online. In a web 2.0 world this is a great opportunity to shape that future in a way that contributes to the knowledge of all participants. How will we search these vast repositories of digital libraries? How will we participate? That is the question we should really be asking ourselves.
Will advertising and commercial interests take over library research? Will pop-up ads for Halo become the norm when searching for books on Winston Churchill or more scholarly research for Tyrosine Phosphatase Receptors? I don't know about you but my kids are already exposed to enough. Commercialism and teaching are an uncomfortable mix. Access to the worlds libraries should remain unrestricted and commercial free. And Jumper can help you build a great app to find and share information resources without ceding more control over information access to ... (insert megalomaniacal privacy selling software company here). Whatever platform you choose a combination of open source tools published under the GPL would best serve the needs of research and public libraries as they strive to meet the digital challenge.
Computers are not the enemy of the library. They are its greatest opportunity. It seems only a matter of time before we move completely to an app driven world. The laptop, Windows, Web world we know today will be swept away. I already rely on apps for countless services instead of searching the web for this information. The Google portal will be the big sacrifice in this transition and with it a significant portion of their ad revenue. Don't weep for Google as they will be Apple's prime competitor with the Android platform.
If search becomes just another app then how will our use of search change? No doubt search will become increasingly specialized and segmented. Hmm a search app for each need and audience. OK so here is my pitch for a library app. Just because the need for the four walls of a library disappear the concept of what a library represents certainly should not. It is time to replace foot traffic with eyeballs just as the rest of the world is doing.
Read Part 2 Next >
Showing posts with label Jumper. Show all posts
Showing posts with label Jumper. Show all posts
Tuesday, February 15, 2011
Saturday, January 29, 2011
Making Jumper 2.0 a Non-Profit Public Entity
Over the holidays it seems we never have enough time. The demands of life pile up around us; work, entertaining, parties, shopping, my relationship, the kids… the list goes on and on. It was over this holiday season that the demands of Jumper became a little too much to manage.
With my consulting career growing at an ever faster pace it was already difficult to manage new clients and keep up with the demands of running the Jumper project. Throw in all the holiday pressures and I had one of those moments. No not a break down, as any of you who talked to me during the holidays probably guessed… a moment of clarity – a hard realization.
Jumper needed to follow a new organizational path. It was not working as a commercial entity. Despite my Herculean efforts to wear every hat it was becoming impossible to keep up with the demands. The popularity of our software is growing rapidly, downloads continue unabated rapidly approaching 10,000, hits to the website continue to grow at over 300% for 2010, calls and emails for support are keeping pace with this growth. In fact, they seem to grow exponentially as I typically provide this support for free.
It was simply time to reorganize. To transition from a private to a public entity that could continue to promote the benefits of collaborative search and universal (as in any information) bookmarking that I believe in so much. It was time for Jumper to become a non-profit foundation that could begin to grow on its own. This will free-up the many community members to make their own ideas happen, give you control of the direction of the software, and of course allow you to actually put your participation formally on your resume. And yes I have done my share of reference letter in the last two years…
As a non-profit foundation we will invite community members to fill one of six board seats that will be open each year. This annual term allows a broad range of community members to participate over time, each adding their own unique contributions. If you would like to be a Jumper Foundation Director please reach out to me and let me know. Eventually each board member will be nominated and elected annually as is defined in the foundations charter, however, in the beginning as we get this up and going I will be appointing the first board members. As a board member you will have access to all of the Jumper forums; you will be an admin on Jumper Sourceforge and on the Jumper Developers Group, a blogger in the Jumper 2.0 blog, with access to post on the Jumper Twitter and Facebook pages.
Any person may apply to be a member of the project and be eligible to be a member of the Association under our new Rules. All affairs of the Jumper Association shall be managed by the Board. There shall be no designated officers of the Association. All nominated or elected board members shall govern in a round-table forum with decisions made only by majority vote. Any three members of the board meeting via conference call or online meeting constitute a quorum for the conduct of the business of a meeting of the Board. Pretty informal and relaxed and completely fitting with our beach front digs.
I have corresponded with many of the community members over the holidays before making this change and have received unanimous support in this new direction. The consensus has been that the Jumper project is about people producing free and open software and contributing to something as a team for the benefit of others. To quote some of the emails “the Jumper project reflects the spirit of collaboration and fun and thrives on strong community feedback”, “we need better governance that allows for diverse businesses and organizations to confidently invest in its use and further development”, “it is important that it remain open to the participation of anybody who can contribute value and is willing to work with the community.” All of these comments, reflected in numerous emails received from community members, express the goals that will be better served by organizing Jumper 2.0 as a non-profit public entity open to everyone around the globe.
Perhaps most importantly this change is aimed squarely at meeting the concerns of the core development teams. Many of you have come and gone from the project over the last two years expressing dissatisfaction about Jumper Networks commercial control of the software. You have felt you had no voice in its government or the future direction of Jumper 2.0. This was never my intention and I regret the arrogance of this thinking. The contributions of all the developers is vital and by changing our organization to empower our community, to cede control of the core development more fairly to all of the developers will allow their skills and expertise to lead the project forward in a new direction. As it should be.
Jumper Networks Inc will cease to exist. It will transition all its assets to the Jumper 2.0 Foundation whose charter will be published on our new website www.jumpersearch.com. We will continue to develop and improve this award-winning software project and ensure that it continues to be released under the GNU General Public License. I will of course remain a part of the development team going forward and continue to provide free support to anyone who emails or calls. But more importantly I look forward hearing from many of you who wish to take a more active and decisive role in the project.
Thanks,
Steve Perry
With my consulting career growing at an ever faster pace it was already difficult to manage new clients and keep up with the demands of running the Jumper project. Throw in all the holiday pressures and I had one of those moments. No not a break down, as any of you who talked to me during the holidays probably guessed… a moment of clarity – a hard realization.
Jumper needed to follow a new organizational path. It was not working as a commercial entity. Despite my Herculean efforts to wear every hat it was becoming impossible to keep up with the demands. The popularity of our software is growing rapidly, downloads continue unabated rapidly approaching 10,000, hits to the website continue to grow at over 300% for 2010, calls and emails for support are keeping pace with this growth. In fact, they seem to grow exponentially as I typically provide this support for free.
It was simply time to reorganize. To transition from a private to a public entity that could continue to promote the benefits of collaborative search and universal (as in any information) bookmarking that I believe in so much. It was time for Jumper to become a non-profit foundation that could begin to grow on its own. This will free-up the many community members to make their own ideas happen, give you control of the direction of the software, and of course allow you to actually put your participation formally on your resume. And yes I have done my share of reference letter in the last two years…
As a non-profit foundation we will invite community members to fill one of six board seats that will be open each year. This annual term allows a broad range of community members to participate over time, each adding their own unique contributions. If you would like to be a Jumper Foundation Director please reach out to me and let me know. Eventually each board member will be nominated and elected annually as is defined in the foundations charter, however, in the beginning as we get this up and going I will be appointing the first board members. As a board member you will have access to all of the Jumper forums; you will be an admin on Jumper Sourceforge and on the Jumper Developers Group, a blogger in the Jumper 2.0 blog, with access to post on the Jumper Twitter and Facebook pages.
Any person may apply to be a member of the project and be eligible to be a member of the Association under our new Rules. All affairs of the Jumper Association shall be managed by the Board. There shall be no designated officers of the Association. All nominated or elected board members shall govern in a round-table forum with decisions made only by majority vote. Any three members of the board meeting via conference call or online meeting constitute a quorum for the conduct of the business of a meeting of the Board. Pretty informal and relaxed and completely fitting with our beach front digs.
I have corresponded with many of the community members over the holidays before making this change and have received unanimous support in this new direction. The consensus has been that the Jumper project is about people producing free and open software and contributing to something as a team for the benefit of others. To quote some of the emails “the Jumper project reflects the spirit of collaboration and fun and thrives on strong community feedback”, “we need better governance that allows for diverse businesses and organizations to confidently invest in its use and further development”, “it is important that it remain open to the participation of anybody who can contribute value and is willing to work with the community.” All of these comments, reflected in numerous emails received from community members, express the goals that will be better served by organizing Jumper 2.0 as a non-profit public entity open to everyone around the globe.
Perhaps most importantly this change is aimed squarely at meeting the concerns of the core development teams. Many of you have come and gone from the project over the last two years expressing dissatisfaction about Jumper Networks commercial control of the software. You have felt you had no voice in its government or the future direction of Jumper 2.0. This was never my intention and I regret the arrogance of this thinking. The contributions of all the developers is vital and by changing our organization to empower our community, to cede control of the core development more fairly to all of the developers will allow their skills and expertise to lead the project forward in a new direction. As it should be.
Jumper Networks Inc will cease to exist. It will transition all its assets to the Jumper 2.0 Foundation whose charter will be published on our new website www.jumpersearch.com. We will continue to develop and improve this award-winning software project and ensure that it continues to be released under the GNU General Public License. I will of course remain a part of the development team going forward and continue to provide free support to anyone who emails or calls. But more importantly I look forward hearing from many of you who wish to take a more active and decisive role in the project.
Thanks,
Steve Perry
Tuesday, November 16, 2010
Connecting the Dots
Over the weekend I read Kevin Rivette's book “Rembrandts in the Attic,” which outlines the lost value buried in distributed documents, and what this underutilized intellectual property costs companies. A subject near and dear to my heart. But it wasn't until Sunday, when my 6th grade son asked me to review his paper on Francis Drake's journey in the south seas, that I connected the dots. As I read how they explored and discovered new islands and peoples. How they charted, documented, and mapped not only everything they found, but everywhere the went. That all their charts and maps got me thinking.
Why don't we do this for our information? We document the output of a hypothesis or experiment, capture the data, and if the project is abandoned or failed we file it away. Often forgotten. Explorers make maps to capture what they learn so that the next visitor can find where they have been and go a little farther, learn a little more, avoid the same mistakes. Why can't we see information the same way? Apply a few tags to provide the "lay of the land" as it were to an information asset. Capture the context, meaning and value of it. A simple step, yet one that can make all the difference in discovering and leveraging our forgotten assets.
We are drowning in data. Every year, Berkeley researchers tell us, we generate 30% more information every year. The sequencing of the human genome over the past decade has led research centers in both the private and public sectors to place huge orders for thousands of servers and storage systems capable of handling terabytes of the new genomic, proteomic, drug, and health care data generated hourly.
Privately, we all struggle with this issue each day. Finding the information we're looking for. Few industries suffer more from this data deluge than pharmaceuticals. Many gifted and well-paid scientists and engineers spend 15% of their time trolling through federated storage or file servers for the data or documents they need. Sometimes they never find them, triggering rework, redundant tests, and the loss of untold millions of dollars each year. Despite significant investments in information technology, knowledge-based pharma remains “knowledge poor” in its day-to-day
operations, at every step of the value chain, from discovery through distribution.
Big data has led to flexible storage solutions that scale massively, easily, and
relatively cheaply, if you call pay as you go cheap. However, while the storage
industry has met the challenge, pharmaceutical companies are realizing they are not making as much progress as they thought investing in genomics, proteomics, and
informatics research. They're not getting the returns on investment. It is the tumultuous world of bioinformatics that has not fully met the challenge of the genomics revolution-in-waiting.
But why are we still struggling to connect the dots?
The real challenge is that the research process itself still remains personally competitive, often isolated, and widely distributed. Information exists, but unconnected. At a surprising number of firms, R&D teams are literally re-inventing the wheel, duplicating research that the company has already done, whose lessons are buried in some obscure and forgotten file. Knowledge is generated and then abandoned when research leads in a different direction.
These assets, both the data and the knowledge remain just as isolated, distributed and unconnected. Dumped into bench-side databases or file servers. Even if they are effectively consolidated in a warehouse or content system they remain unconnected and without context. And the sheer growing volume of the data, papers, and images makes it increasingly difficult to find and discover a specific resource when you need it most. How we manage this information must change. And it must change before it is too late. We must change before it becomes impossible and costly to retroactively fix the error of our ways.
The knowledge exists about all of this information. These small “Rembrandts” exist everywhere. The day it is stored in a database or filed away in a digital landfill the person that created it, the project team that worked on it, and the admins that manage it have that knowledge. They know what it is, why it was created, how it was created and what was learned from it. Yet that knowledge quickly evaporates. People move on to other projects, get excited about something else, or leave the company. What we know about the informational context and value begins to fade - like all memory. And every day more and more of this knowledge is lost. These small “Rembrandts”, that the organization paid dearly for, are being lost every day because no one can find them. Even if someone was lucky enough to stumble upon the data or the file in a year or two they often cannot interpret it correctly, or put it in the right context necessary to maximize its value.
Think of how easy it would be to apply just a few tags to that data table to make it more findable. A small description, a little provenance information, a link to a few seemingly unrelated papers to provide the missing “context”. Informational threads, human insight and experience, provided by another scientist can make all the difference in the world. But this demands that we change the way we think about
information. We must view it not as an output of a project or hypothesis that was abandoned, but for what it really is... a learning process. Explorers make maps. Why don't researchers?
The visible world may be known, but the unseen world is just begining to be explored. Why don't we see information for what it really is? An output of the exploration. Applying just a few tags to capture the context, meaning and value of your work will make all the difference. And while that benefit may at first appear to be for someone else, like karma, it may perhaps one day benefit you.
Why don't we do this for our information? We document the output of a hypothesis or experiment, capture the data, and if the project is abandoned or failed we file it away. Often forgotten. Explorers make maps to capture what they learn so that the next visitor can find where they have been and go a little farther, learn a little more, avoid the same mistakes. Why can't we see information the same way? Apply a few tags to provide the "lay of the land" as it were to an information asset. Capture the context, meaning and value of it. A simple step, yet one that can make all the difference in discovering and leveraging our forgotten assets.
We are drowning in data. Every year, Berkeley researchers tell us, we generate 30% more information every year. The sequencing of the human genome over the past decade has led research centers in both the private and public sectors to place huge orders for thousands of servers and storage systems capable of handling terabytes of the new genomic, proteomic, drug, and health care data generated hourly.
Privately, we all struggle with this issue each day. Finding the information we're looking for. Few industries suffer more from this data deluge than pharmaceuticals. Many gifted and well-paid scientists and engineers spend 15% of their time trolling through federated storage or file servers for the data or documents they need. Sometimes they never find them, triggering rework, redundant tests, and the loss of untold millions of dollars each year. Despite significant investments in information technology, knowledge-based pharma remains “knowledge poor” in its day-to-day
operations, at every step of the value chain, from discovery through distribution.
Big data has led to flexible storage solutions that scale massively, easily, and
relatively cheaply, if you call pay as you go cheap. However, while the storage
industry has met the challenge, pharmaceutical companies are realizing they are not making as much progress as they thought investing in genomics, proteomics, and
informatics research. They're not getting the returns on investment. It is the tumultuous world of bioinformatics that has not fully met the challenge of the genomics revolution-in-waiting.
But why are we still struggling to connect the dots?
The real challenge is that the research process itself still remains personally competitive, often isolated, and widely distributed. Information exists, but unconnected. At a surprising number of firms, R&D teams are literally re-inventing the wheel, duplicating research that the company has already done, whose lessons are buried in some obscure and forgotten file. Knowledge is generated and then abandoned when research leads in a different direction.
These assets, both the data and the knowledge remain just as isolated, distributed and unconnected. Dumped into bench-side databases or file servers. Even if they are effectively consolidated in a warehouse or content system they remain unconnected and without context. And the sheer growing volume of the data, papers, and images makes it increasingly difficult to find and discover a specific resource when you need it most. How we manage this information must change. And it must change before it is too late. We must change before it becomes impossible and costly to retroactively fix the error of our ways.
The knowledge exists about all of this information. These small “Rembrandts” exist everywhere. The day it is stored in a database or filed away in a digital landfill the person that created it, the project team that worked on it, and the admins that manage it have that knowledge. They know what it is, why it was created, how it was created and what was learned from it. Yet that knowledge quickly evaporates. People move on to other projects, get excited about something else, or leave the company. What we know about the informational context and value begins to fade - like all memory. And every day more and more of this knowledge is lost. These small “Rembrandts”, that the organization paid dearly for, are being lost every day because no one can find them. Even if someone was lucky enough to stumble upon the data or the file in a year or two they often cannot interpret it correctly, or put it in the right context necessary to maximize its value.
Think of how easy it would be to apply just a few tags to that data table to make it more findable. A small description, a little provenance information, a link to a few seemingly unrelated papers to provide the missing “context”. Informational threads, human insight and experience, provided by another scientist can make all the difference in the world. But this demands that we change the way we think about
information. We must view it not as an output of a project or hypothesis that was abandoned, but for what it really is... a learning process. Explorers make maps. Why don't researchers?
The visible world may be known, but the unseen world is just begining to be explored. Why don't we see information for what it really is? An output of the exploration. Applying just a few tags to capture the context, meaning and value of your work will make all the difference. And while that benefit may at first appear to be for someone else, like karma, it may perhaps one day benefit you.
Labels:
biotech,
bookmarking,
collaborative search,
Jumper,
Jumper 2.0,
pharma,
research,
science,
search
Thursday, August 19, 2010
Jumper in China?
I was browsing some web stats recently and happened to find a Jumper installation in China. Normally that would not be unusual. China is, after all, our second largest volume of traffic after the US. In fact, this was the third one that I have found in China this month. What was unusual is that it was not in some Chinese company I had never heard of, no, this one had a public IP address. It was on the public web in China!
This has been an increasing phenomenon over the last several months with public sites literally popping up all over the world (India, Poland, Estonia, Russia, Germany just this month). However, no one had yet posted one online in China. But yet there it was, a Jumper search engine in what I think is Mandarin, on the Internet inside China. Wow.
What did it mean? Was someone bypassing the government? It is light-weight and portable so that users could easily move it to another address when needed. Or was it simply small enough to fall under the governments radar? My head was spinning for a second...
It is really quite astonishing to me. This little software program has been nothing short of amazing since I first created it. Jumper started as a simple tagging engine to enrich metadata in a small project with a very limited budget. After the project I added a search page to it and posted it on Sourceforge thinking that was it.
I returned to the same life sciences company a few months later (on another consulting engagement) and was pleased to see the tagging engine was still integrated into their Intranet search. When I reached out to the original project team several told me, to my surprise, that they had since deployed the full Jumper 2.0 software in their department. When I asked why the answer surprised me. “If I know where to look I can usually find what I’m looking for - the problem is when I have no idea where to look, then it is almost impossible.” OK, so I paraphrased a little. The point being it was the discovery aspect of the software that they loved. Enterprise information is distributed. You need to know where to look. With Jumper they could find all kinds of information that they never knew existed. Tagging was merely a means to an end.
And now Jumper could bring down governments? OK so my imagination got a little carried away with the possibilities… But this I certainly never saw coming. Jumper has always been an enterprise search engine. I was fascinated at this new use of the software. When I inquired with one of these deployments what I found were users alienated from the traditional search model. Jumper gave them the tool to create a culturally friendly search engine. Created by users like themselves. One that met their unique interests. Lawyers in Estonia could create a search engine that met their culturally unique and local legal needs in a way no vertical or general search engine ever could. Scientists at a University in Germany could do the same, so could programmers in Russia, developers in India. The potential seems unlimited.
A new global economic and technical infrastructure is emerging, built on networked, social computing. In the next ten years a billion new people around the globe will gain a productive foothold in this economy and become an increasingly significant online force. They will be young and will look to do things differently. The old model of monolithic search provided by a few companies will no longer meet all of their needs. They will be culturally splintered, with vastly diverging interests, and will look for a more flexible search model that will better meet their unique needs. They will shatter the current search model into millions of pieces; culturally unique, community based, and socially oriented pieces.
From a simple project two years ago too an emerging global phenomenon? Well, perhaps not yet. We still have a long way to go, but things are starting to get very interesting.
This has been an increasing phenomenon over the last several months with public sites literally popping up all over the world (India, Poland, Estonia, Russia, Germany just this month). However, no one had yet posted one online in China. But yet there it was, a Jumper search engine in what I think is Mandarin, on the Internet inside China. Wow.
What did it mean? Was someone bypassing the government? It is light-weight and portable so that users could easily move it to another address when needed. Or was it simply small enough to fall under the governments radar? My head was spinning for a second...
It is really quite astonishing to me. This little software program has been nothing short of amazing since I first created it. Jumper started as a simple tagging engine to enrich metadata in a small project with a very limited budget. After the project I added a search page to it and posted it on Sourceforge thinking that was it.
I returned to the same life sciences company a few months later (on another consulting engagement) and was pleased to see the tagging engine was still integrated into their Intranet search. When I reached out to the original project team several told me, to my surprise, that they had since deployed the full Jumper 2.0 software in their department. When I asked why the answer surprised me. “If I know where to look I can usually find what I’m looking for - the problem is when I have no idea where to look, then it is almost impossible.” OK, so I paraphrased a little. The point being it was the discovery aspect of the software that they loved. Enterprise information is distributed. You need to know where to look. With Jumper they could find all kinds of information that they never knew existed. Tagging was merely a means to an end.
And now Jumper could bring down governments? OK so my imagination got a little carried away with the possibilities… But this I certainly never saw coming. Jumper has always been an enterprise search engine. I was fascinated at this new use of the software. When I inquired with one of these deployments what I found were users alienated from the traditional search model. Jumper gave them the tool to create a culturally friendly search engine. Created by users like themselves. One that met their unique interests. Lawyers in Estonia could create a search engine that met their culturally unique and local legal needs in a way no vertical or general search engine ever could. Scientists at a University in Germany could do the same, so could programmers in Russia, developers in India. The potential seems unlimited.
A new global economic and technical infrastructure is emerging, built on networked, social computing. In the next ten years a billion new people around the globe will gain a productive foothold in this economy and become an increasingly significant online force. They will be young and will look to do things differently. The old model of monolithic search provided by a few companies will no longer meet all of their needs. They will be culturally splintered, with vastly diverging interests, and will look for a more flexible search model that will better meet their unique needs. They will shatter the current search model into millions of pieces; culturally unique, community based, and socially oriented pieces.
From a simple project two years ago too an emerging global phenomenon? Well, perhaps not yet. We still have a long way to go, but things are starting to get very interesting.
Tuesday, August 3, 2010
Building Social into Solr
We have had a number of customers inquire about customizing specific aspects of Solr search with Jumper.
There are really two approaches: one is to build Jumper tagging into your search engine interface allowing users to tag documents or content when it is stored. The second is to import Jumper tagging fields into solr using the DataImportHandler. This is done using basic JDBC connectivity. Tags stored in the Jumper search engine then are imported into the Solr index and attached to a document and returned when searched. Using faceted_fields you can allow users to filter search based on the knowledge tags applied by other users.
This is perhaps the easiest method. The two services can be bundled in a single web interface. In this way you are removing the Jumper search engine and replacing it with Solr. This gives you the benefit of both worlds – full text searching and user tagging – to deliver better more detailed search results.
If you prefer to embed custom search paths into Solr the primary method is using facet-fields. A Jumper tagging interface can be added when storing documents. The Jumper tag fields are then stored as facet_fields that Solr will search in addition to its full text parsing of the document. This is done on indexed rather than stored values.
This requires that we add a number of Jumper tags to the Solr index separately and add a custom sort to Solr search. Adding a new Jumper tag field to the search results requires two very small hook implementations: hook_apachesolr_update_index() and hook_apachesolr_modify_query(). To start, let’s just add the keyword tag field to the Solr index.
/**
* Implementation of hook_apachesolr_update_index()
*/
function mymodule_apachesolr_update_index(&$document, $node) {
// Index field_keyword_tag as a separate field
if ($node->type == 'profile') {
$user = user_load(array('uid' => $node->uid));
$document->setMultiValue('sm_field_keyword_tag', $user->tags);
}
elseif (count($node->field_keyword_tag)) {
foreach ($node->field_keyword_tag AS $keyword) {
$document->setMultiValue('sm_field_keyword_tag', $keyword['filepath']);
}
}
}
All we do is add the data to the index by adding it to the $document object, which is passed by reference. We used the setMultiValue method since the tag field can have multiple values, but if we were just adding one field, we would just use the addField method. The field name is simply the 'sm_' dynamic field name pattern with field_keyword_tag appended, since the field contains a keyword string, and the sm_ field type represents a small string.
Now that the data has been added to the index, we also need to add it to the query so it can be returned with the search results:
function mymodule_apachesolr_modify_query(&$query, &$params, $caller) {
$params['fl'] .= ',sm_field_keyword_tag';
}
And that's all there is to it… This can be repeated for each of the Jumper knowledge tags that you want to add. All you're doing is some basic PHP string concatenation and appending your newly indexed field to the fields to return array (['fl'])of the $params object. Although, we are simplifying the detail a little bit on the format of $params for the sake of brevity in this post.
In general, adding Jumper social tagging features into your Solr search is pretty easy, and can deliver some very powerful capabilities to your search functionality.
There are really two approaches: one is to build Jumper tagging into your search engine interface allowing users to tag documents or content when it is stored. The second is to import Jumper tagging fields into solr using the DataImportHandler. This is done using basic JDBC connectivity. Tags stored in the Jumper search engine then are imported into the Solr index and attached to a document and returned when searched. Using faceted_fields you can allow users to filter search based on the knowledge tags applied by other users.
This is perhaps the easiest method. The two services can be bundled in a single web interface. In this way you are removing the Jumper search engine and replacing it with Solr. This gives you the benefit of both worlds – full text searching and user tagging – to deliver better more detailed search results.
If you prefer to embed custom search paths into Solr the primary method is using facet-fields. A Jumper tagging interface can be added when storing documents. The Jumper tag fields are then stored as facet_fields that Solr will search in addition to its full text parsing of the document. This is done on indexed rather than stored values.
This requires that we add a number of Jumper tags to the Solr index separately and add a custom sort to Solr search. Adding a new Jumper tag field to the search results requires two very small hook implementations: hook_apachesolr_update_index() and hook_apachesolr_modify_query(). To start, let’s just add the keyword tag field to the Solr index.
/**
* Implementation of hook_apachesolr_update_index()
*/
function mymodule_apachesolr_update_index(&$document, $node) {
// Index field_keyword_tag as a separate field
if ($node->type == 'profile') {
$user = user_load(array('uid' => $node->uid));
$document->setMultiValue('sm_field_keyword_tag', $user->tags);
}
elseif (count($node->field_keyword_tag)) {
foreach ($node->field_keyword_tag AS $keyword) {
$document->setMultiValue('sm_field_keyword_tag', $keyword['filepath']);
}
}
}
All we do is add the data to the index by adding it to the $document object, which is passed by reference. We used the setMultiValue method since the tag field can have multiple values, but if we were just adding one field, we would just use the addField method. The field name is simply the 'sm_' dynamic field name pattern with field_keyword_tag appended, since the field contains a keyword string, and the sm_ field type represents a small string.
Now that the data has been added to the index, we also need to add it to the query so it can be returned with the search results:
function mymodule_apachesolr_modify_query(&$query, &$params, $caller) {
$params['fl'] .= ',sm_field_keyword_tag';
}
And that's all there is to it… This can be repeated for each of the Jumper knowledge tags that you want to add. All you're doing is some basic PHP string concatenation and appending your newly indexed field to the fields to return array (['fl'])of the $params object. Although, we are simplifying the detail a little bit on the format of $params for the sake of brevity in this post.
In general, adding Jumper social tagging features into your Solr search is pretty easy, and can deliver some very powerful capabilities to your search functionality.
Saturday, April 17, 2010
Jumper and Sphinx - integrating the best of both worlds
We had a customer who requested some direction on integrating the Jumper 2.0 tagging feature into a number of very large distributed databases. The customer had just implemented the Sphinx search engine on each of these databases.
Many of these SQL databases contained very large numbers of tables. The primary challenge was that many of these tables contained cryptic table and column names that made it very difficult to interpret exactly what the data was in the tables.
They wanted to integrate the Jumper 2.0 bookmarking engine into the Sphinx search engines so that users could apply knowledge tags to the legacy database tables. In this way users could search locally for data and then tag the data they had searched with relevant knowledge tags. In the initial design meeting it was determined that integrating the Jumper tagging fields directly into the Sphinx search interface would be the best approach and storing the tags to a central Jumper mySQL index. Provided below is a quick example of this integration.
The first thing created was a simple form in HTML.
<-html->
<-head->
<-title->Jumper Tagging Fields<-/title->
<-/head>
<-body->
<-form method="post" action="jumper_update.php">
User Name:<-br />
<-input type="text" name="creator_id" size="10" /><-br />
Table Name:<-br />
<-input type="text" name="title" size="40" /><-br />
Description:<-br />
<-input type="text" name="body" size="300" /><-br />
Database Hostname:<-br />
<-input type="text" name="url_title" size="255" /><-br />
Keywords:<-br />
<-input type="text" name="meta_keywords" size="200" /><-br />
Database Location & Access:<-br />
<-input type="text" name="meta_location" size="200" /><-br />
Realted Data:<-br />
<-input type="text" name="meta_link" size="200" /><-br />
Type of Data:<-br />
<-input type="text" name="data_type" size="30" /><-br />
Date:<-br />
<-input type="text" name="date_posted" size="30" /><-br />
// Next we need to add the submit button to the web page. //
<-input type="submit" value="Update Database"
<-/form>
<-/body>
<-/html>
The next step is to create jumper_update.php file. This will update the database with the new knowledge tags that have been applied to the database tables. Create a new file called jumper_update.php
$creator_id = $_POST['creator_id'];
$title = $POST['title];
$body = $POST['body'];
$url_title = $POST['url_title'];
$meta_keywords $POST['meta_keywords'];
$meta_location $POST['meta_location'];
$meta_link $POST['meta_link'];
$meta_datatype $POST['meta_datatype'];
$date_posted $POST['date_posted'];
mysql_connect("localhost", "username", "password") or die ('Error: ' . mysql_error());
mysql_select_db("s_jmp_entry");
$query="INSERT INTO Table (id, creator_id, title, body, url_title, meta_keywords, meta_location, meta_link, meta_datatype, date_posted)VALUES ('NOT NULL','"$creator_id."','"$title."','"$body."','"$url_title."','"$meta_keywords."','"$meta_location."','"$meta_link."','"$meta_datatype."','"$date_posted."')";
mysql_query($query) or die ('Error updating database');
echo "Database Updated With: " .$creator_id. " ".$title." "$body." "$url_title." "$meta_keywords." "$meta_location." "$meta_link." "$meta_datatype." "$date_posted ;
?>
We are working on inserting the knowledge tags directly into the Sphinx index so that users can search data by both full-text and knowledge tags to improve discoverability of the legacy data. We will keep you posted.
-apology for the all the hyphens it was the only way to get the blog to accept the HTML.
Many of these SQL databases contained very large numbers of tables. The primary challenge was that many of these tables contained cryptic table and column names that made it very difficult to interpret exactly what the data was in the tables.
They wanted to integrate the Jumper 2.0 bookmarking engine into the Sphinx search engines so that users could apply knowledge tags to the legacy database tables. In this way users could search locally for data and then tag the data they had searched with relevant knowledge tags. In the initial design meeting it was determined that integrating the Jumper tagging fields directly into the Sphinx search interface would be the best approach and storing the tags to a central Jumper mySQL index. Provided below is a quick example of this integration.
The first thing created was a simple form in HTML.
<-html->
<-head->
<-title->Jumper Tagging Fields<-/title->
<-/head>
<-body->
<-form method="post" action="jumper_update.php">
User Name:<-br />
<-input type="text" name="creator_id" size="10" /><-br />
Table Name:<-br />
<-input type="text" name="title" size="40" /><-br />
Description:<-br />
<-input type="text" name="body" size="300" /><-br />
Database Hostname:<-br />
<-input type="text" name="url_title" size="255" /><-br />
Keywords:<-br />
<-input type="text" name="meta_keywords" size="200" /><-br />
Database Location & Access:<-br />
<-input type="text" name="meta_location" size="200" /><-br />
Realted Data:<-br />
<-input type="text" name="meta_link" size="200" /><-br />
Type of Data:<-br />
<-input type="text" name="data_type" size="30" /><-br />
Date:<-br />
<-input type="text" name="date_posted" size="30" /><-br />
// Next we need to add the submit button to the web page. //
<-input type="submit" value="Update Database"
<-/form>
<-/body>
<-/html>
The next step is to create jumper_update.php file. This will update the database with the new knowledge tags that have been applied to the database tables. Create a new file called jumper_update.php
$creator_id = $_POST['creator_id'];
$title = $POST['title];
$body = $POST['body'];
$url_title = $POST['url_title'];
$meta_keywords $POST['meta_keywords'];
$meta_location $POST['meta_location'];
$meta_link $POST['meta_link'];
$meta_datatype $POST['meta_datatype'];
$date_posted $POST['date_posted'];
mysql_connect("localhost", "username", "password") or die ('Error: ' . mysql_error());
mysql_select_db("s_jmp_entry");
$query="INSERT INTO Table (id, creator_id, title, body, url_title, meta_keywords, meta_location, meta_link, meta_datatype, date_posted)VALUES ('NOT NULL','"$creator_id."','"$title."','"$body."','"$url_title."','"$meta_keywords."','"$meta_location."','"$meta_link."','"$meta_datatype."','"$date_posted."')";
mysql_query($query) or die ('Error updating database');
echo "Database Updated With: " .$creator_id. " ".$title." "$body." "$url_title." "$meta_keywords." "$meta_location." "$meta_link." "$meta_datatype." "$date_posted ;
?>
We are working on inserting the knowledge tags directly into the Sphinx index so that users can search data by both full-text and knowledge tags to improve discoverability of the legacy data. We will keep you posted.
-apology for the all the hyphens it was the only way to get the blog to accept the HTML.
Labels:
indexing,
Jumper,
Jumper20,
open-source,
php,
sphinx,
sphinx search engine
Wednesday, March 31, 2010
A new model of a Trusted Web and Decentralized Search
Ask most users and they will tell you in no uncertain terms that enterprise search sucks. Why is it generally so frustrating? Why does it fail to meet most user needs? Why can’t it find the information you are looking for?
Because it is a general search tool when what you are often looking for is something highly specialized. The result of a general tool and a specialized need is an extremely frustrating user experience. Finding the right information is exactly like a finding a needle in a haystack. You need to get lucky.
But good search should not be about getting lucky. Although we could all use a little luck. It should be about delivering on your unique needs. When you have a specialized need you reach for a specialized tool. One that is perfectly adapted to the job at hand. That is exactly what a personalized search engine delivers.
A Personalized Search Revolution
Jumper is a revolution in Enterprise Search precisely because it is a personalized, specialized, and trusted engine. It contains an index of searchable information that has been provided by trusted colleagues, who share a common interest, and are working toward a common goal.
At Jumper we believe that each person’s ability to drive trust into every search is the animating force that moves us from centralized search paradigms to a new, decentralized one. In this new model, we will be able to search better because trusted communities are doing search for you. They collectively share this highly specialized information and knowledge to build a better personalized search engine.
We can better trust search results because people we know had good experiences with specific information resources and then share that experience with others. We get better search results because the community of users that built the search index is like us; they share our interests, our passions, and speak our language.
Personalized search is discipline specific, much like vertical web search engines, it is focused on your specific industry or research. However, it delivers universal search across all information sources allowing you to learn about new things and ideas based on personal recommendations from a community of people who are similar to you.
The New Model of Trusted Search
Traditional monolithic enterprise search is limited by its very generality, its one-size-fits-all indexing approach, its rigid global taxonomies, its ambiguous metadata. The biggest problem is changing semantics and antiquated metadata. The differences between one word or acronym, and the other, can vary widely by user, profession, location, or industry. The word web, for instance, can have entirely different meanings in different contexts. Even if, across all different forms, locations and languages, you are looking for the word web, what is the context you want to place it in? By personalizing search the context is always relevant and decided by the community of users.
This new proactive model of creating trust is not some future, far off concept. It is happening right now with Jumper 2.0. It delivers personalized, specialized, and trusted search precisely because it is easily deployed to smaller groups of users. It is light-weight, portable, web-based, and license-free. It is easily customized and adaptable to meet the unique needs of departments and divisions, research groups and project teams. It is a point solution search approach that is highly flexible and very dynamic.
Jumper leverages social knowledge tagging that makes it easy and intuitive for users to apply tags, descriptions, definitions, classifications, almost anything you want to apply to make information easier to find and more usable. This reputation system is based on user input and expertise that allows us to better trust verified content, media, or data and to rely on the knowledge attached to that information resource. We use trust based rating systems to determine what information is considered the best and what is not worth your time.
The explosive growth of Jumper community search demonstrates how people are frustrated with traditional enterprise search. All they really want is an effective search tool. One that works for them. They are proactively creating trusted search through shared interests.
Because it is a general search tool when what you are often looking for is something highly specialized. The result of a general tool and a specialized need is an extremely frustrating user experience. Finding the right information is exactly like a finding a needle in a haystack. You need to get lucky.
But good search should not be about getting lucky. Although we could all use a little luck. It should be about delivering on your unique needs. When you have a specialized need you reach for a specialized tool. One that is perfectly adapted to the job at hand. That is exactly what a personalized search engine delivers.
A Personalized Search Revolution
Jumper is a revolution in Enterprise Search precisely because it is a personalized, specialized, and trusted engine. It contains an index of searchable information that has been provided by trusted colleagues, who share a common interest, and are working toward a common goal.
At Jumper we believe that each person’s ability to drive trust into every search is the animating force that moves us from centralized search paradigms to a new, decentralized one. In this new model, we will be able to search better because trusted communities are doing search for you. They collectively share this highly specialized information and knowledge to build a better personalized search engine.
We can better trust search results because people we know had good experiences with specific information resources and then share that experience with others. We get better search results because the community of users that built the search index is like us; they share our interests, our passions, and speak our language.
Personalized search is discipline specific, much like vertical web search engines, it is focused on your specific industry or research. However, it delivers universal search across all information sources allowing you to learn about new things and ideas based on personal recommendations from a community of people who are similar to you.
The New Model of Trusted Search
Traditional monolithic enterprise search is limited by its very generality, its one-size-fits-all indexing approach, its rigid global taxonomies, its ambiguous metadata. The biggest problem is changing semantics and antiquated metadata. The differences between one word or acronym, and the other, can vary widely by user, profession, location, or industry. The word web, for instance, can have entirely different meanings in different contexts. Even if, across all different forms, locations and languages, you are looking for the word web, what is the context you want to place it in? By personalizing search the context is always relevant and decided by the community of users.
This new proactive model of creating trust is not some future, far off concept. It is happening right now with Jumper 2.0. It delivers personalized, specialized, and trusted search precisely because it is easily deployed to smaller groups of users. It is light-weight, portable, web-based, and license-free. It is easily customized and adaptable to meet the unique needs of departments and divisions, research groups and project teams. It is a point solution search approach that is highly flexible and very dynamic.
Jumper leverages social knowledge tagging that makes it easy and intuitive for users to apply tags, descriptions, definitions, classifications, almost anything you want to apply to make information easier to find and more usable. This reputation system is based on user input and expertise that allows us to better trust verified content, media, or data and to rely on the knowledge attached to that information resource. We use trust based rating systems to determine what information is considered the best and what is not worth your time.
The explosive growth of Jumper community search demonstrates how people are frustrated with traditional enterprise search. All they really want is an effective search tool. One that works for them. They are proactively creating trusted search through shared interests.
Wednesday, May 20, 2009
Jumper 2.0 is an Open Community
The Jumper 2.0 Open Source Project is a community effort. We invite open participation in this blog. Anyone who is currently using the Jumper 2.0 platform, is currently doing development on the platform, or has just installed the platform please feel free to contribute. To become an author contact sperry@jumpernetworks.com and we will extend author privileges.
Labels:
enterprise-bookmarking,
Jumper,
jumper-networks,
Jumper2.0,
open-source,
tagging,
tags
Thursday, April 2, 2009
Jumper 2.0 System Requirements
Jumper 2.0 is open source software. It was developed on Sourceforge as a community effort, led by Jumper Networks, devoted to building and maintaining the open source version of Jumper, the award winning, ground breaking and revolutionary Enterprise Bookmarking platform.
Jumper 2.0 has certain technical requirements that must be met (i.e. installed and/or configured) on your server before you attempt to install it.
Web Server
Apache
Apache (Apache 1, Apache 2) is the most popular web server in the world, and is the one recommended by the Jumper Development Team for use with Jumper 2.0. It can be downloaded from the Apache HTTPD Project's site
IIS
Microsoft's IIS (Internet Information Services) web server has also been known to work. But there are some limitations. See Known Issues for details. Short URLs work, but Jump redirects are not yet supported for IIS.
Zeus, ...
There are a lot of alternative web servers. Jumper should work on any web server that can run PHP. But short URLs / Jump redirects (URL rewrite module) probably do not work with all of them.
PHP
Jumper is written in PHP (recursive acronym for PHP: Hypertext Preprocessor). It is one of the most popular, free web-based languages in the world today. It can also be downloaded gratis from the PHP Project's site.
PHP Version Compatibility
Jumper requires at least version 4.3.0 (or more recent) or 5.x (5.0.4 or more recent) to function properly.
Note:
PHP 5 is highly recommended - PHP will not release any security updates for PHP 4 after 8/8/2008. If your webhost is still running PHP 4, please ask them to switch to PHP 5 as soon as possible for security reasons (not just for Jumper, but for all PHP applications).
PHP Settings
In addition to a basic PHP installation, Jumper requires certain PHP settings to be setup correctly in order to function optimally.
PHP settings can be changed in php.ini, as described in the PHP documentation available at http://php.net/mysql
MySQL is not enabled by default, nor is the MySQL library bundled with PHP. In order to have these functions available, you must compile PHP with MySQL support.
Database
Jumper can only be installed and run on the MySQL 3.x or 4.x, 5.x database management systems (DBMS).
Note:
This applies only to the database that Jumper runs on. The Jumper server has drivers for back-end integration into any JDBC or ODBC compatible database server.
As such Jumper has drivers for integration into:
MySQL 3.x or 4.x, 5.x
PostgreSQL 7.x, 8.x
Oracle 9i or 10g, IBM DB2 8.2
Microsoft SQL Server
http://www.jumpernetworks.com/
Jumper 2.0 has certain technical requirements that must be met (i.e. installed and/or configured) on your server before you attempt to install it.
Web Server
Apache
Apache (Apache 1, Apache 2) is the most popular web server in the world, and is the one recommended by the Jumper Development Team for use with Jumper 2.0. It can be downloaded from the Apache HTTPD Project's site
IIS
Microsoft's IIS (Internet Information Services) web server has also been known to work. But there are some limitations. See Known Issues for details. Short URLs work, but Jump redirects are not yet supported for IIS.
Zeus, ...
There are a lot of alternative web servers. Jumper should work on any web server that can run PHP. But short URLs / Jump redirects (URL rewrite module) probably do not work with all of them.
PHP
Jumper is written in PHP (recursive acronym for PHP: Hypertext Preprocessor). It is one of the most popular, free web-based languages in the world today. It can also be downloaded gratis from the PHP Project's site.
PHP Version Compatibility
Jumper requires at least version 4.3.0 (or more recent) or 5.x (5.0.4 or more recent) to function properly.
Note:
PHP 5 is highly recommended - PHP will not release any security updates for PHP 4 after 8/8/2008. If your webhost is still running PHP 4, please ask them to switch to PHP 5 as soon as possible for security reasons (not just for Jumper, but for all PHP applications).
PHP Settings
In addition to a basic PHP installation, Jumper requires certain PHP settings to be setup correctly in order to function optimally.
PHP settings can be changed in php.ini, as described in the PHP documentation available at http://php.net/mysql
MySQL is not enabled by default, nor is the MySQL library bundled with PHP. In order to have these functions available, you must compile PHP with MySQL support.
Database
Jumper can only be installed and run on the MySQL 3.x or 4.x, 5.x database management systems (DBMS).
Note:
This applies only to the database that Jumper runs on. The Jumper server has drivers for back-end integration into any JDBC or ODBC compatible database server.
As such Jumper has drivers for integration into:
MySQL 3.x or 4.x, 5.x
PostgreSQL 7.x, 8.x
Oracle 9i or 10g, IBM DB2 8.2
Microsoft SQL Server
http://www.jumpernetworks.com/
Subscribe to:
Posts (Atom)