Welcome!

Java IoT Authors: Liz McMillan, Yeshim Deniz, Zakia Bouachraoui, Elizabeth White, Pat Romanski

Related Topics: Java IoT

Java IoT: Article

"Make Every PC a Server" - Is That JXTA's Killer App?

"Make Every PC a Server" - Is That JXTA's Killer App?

  • Read Daniel Brookshier's regular blog

    Some technologies don't gain wide adoption until there is an application used by a large number of users. We call them killer applications because they are so compelling or in fact kill a problem dead.

    For the personal computer, it was the spreadsheet (VisiCalc was the first and it was copied by the rest) and at about the same time, the word processor. What will be the killer application for JXTA? Is it already here?

    File Sharing - Capture and Death of a Serial Killer

    Napster was a killer application. Sadly it was done in a way that wasn't legal. I won't go into the politics of record companies and free speech - the fact is that Napster was taken out of play by the courts. Yes, there are other music sharing and purchasing applications, but nothing as big as Napster. But the other problem is that it was only about music (at least the killer part). There was no real big application associated with general business or entertainment based on the P2P/Central-Index scheme of Napster.

    Don't think that there aren't other file sharing applications doing quite well. In fact, there are file sharing applications written in JXTA that support thousands of users in legitimate business applications. They may become the new 'next big thing' - but I see it as just a better way to share files rather than the ultimate killer application.

    People Like to Save Time and Effort

    Sometimes a killer application just makes things easier. Struts is making it even easier to develop Web applications. Ant makes it easier to build and maintain projects. XDoclets reduces labor via its code generation capabilities. All these examples are starting to be widely adopted because of their productivity improvements. Can JXTA make things easier?

    JXTA has all the hallmarks of reduced effort. First, there is no real server involved. Imagine the time, money, and sweat equity saved by not dealing with the monolithic server and its support system. But that's just economics - where are the savings for the common man? Let's look a little at one of the key ideas about JXTA.

    It's a Candy / It's a Breath Mint

    What makes JXTA unique? It's not about Peer-to-Peer (P2P). P2P is just a fuzzy buzzword that means computers talking to to computers. What JXTA is about is that it places the Internet inside applications rather than the browser. This also means the gestalt of the application includes a real interface, storage, and can be run 24 hours a day if needed.

    The quote below is from Juan Taylor, which covers this quite nicely:

    What's the ONE thing that P2P can do that client/server can't?

    It's that the Client can be a Server.

    WHY would the client want to be a server?

    To share information. Easily and in different and even complex (only JXTA can do this) ways, in a 'User to User' way. In anonymous file-sharing there is an innate loss of wanting to share files. In a User to User perspective, there is an immediate desire to share.

    There's the Benefit, and the complexity which only JXTA can handle.

    What this means simply is that, unlike client/server, JXTA is client/server and server/client or even server-to-server or client-to-client. The information, storage, processing, and communications can start at either end. In the world of applications this also means that I don't have to work in a world of centralized resources where there are multiple issues. The worst problem of course is just the impedance mismatch between the world of application and the world of Web applications.

    Are You Thinking Differently?

    So, what if every client was a server? Sadly it's not all about efficiency. I say "sadly" because P2P is all about wasted space and CPU cycles. The sad part is the knee-jerk reaction many have to waste. But the fact is that replicating data and the power of your own CPU versus a shared server is far safer and can be orders of magnitude more efficient in getting the job done. The waste is insignificant in terms of the modern PC with their large disks and often idle CPUs. When you trade inefficiency in an area that is monetarily insignificant, the gain in productivity is essentially for free.

    P2P Forum

    The forum interface is similar to those on Java.net. Basically a forum is a threaded discussion. The oldest version of this is the old news forum, which still exists but has been taken over by spam. Think of it as a server-based e-mail forum that anyone can read or submit messages to.

    What would a P2P Forum look like? First the history of the messages needs to be available to anyone. This a great feature of the forum because it lets you search for a conversation in the past. Guess what, that has to be on a PC since there is no server. Here comes the duplication of effort: To make this work, keeping the history on as many computers as possible increases the speed of the search. The search is really fast if you have your own copy. If the forum history is very large, and is bigger than that free 5 gigabytes on your disk, we can share different sections of the data. We still need a lot of copies because some peers may go off line.

    Thinking Until It Hurts

    Ok, does it hurt your sense of efficient computing yet? I remember being unable to use linked lists and hash tables for years because my professor in college was so anal that memory was the most important thing in the world. He put speed and ease of use far far down the list of importance.

    Waste or Efficient Use?

    Ok, now back to killer applications. What if we added a P2P forum to a development tool? First, because it is part of the tools, the focus is like a laser. The efficiency of use is very close to the tool because it is the tool. Have a weird exception? It is a click to add it versus cut-and-paste and a little reformatting. Wondering what the correct settings are for a task? What if the expert could reply with his settings which you can just use, rather than interpret a poorly formatted and worded answer? Yes I have perhaps a couple gig of messages, but I have the world's greatest integrated help system.

    These ideas are Copyright Daniel Brookshier 2004, all rights and derivative patents cannot be used by Microsoft or its agents. Free use to those that use 100% Java and JXTA to implement the solution. Ideas like this need to be free to make life less like walking on broken glass.

    Killer Instinct

    JXTA is a killer capability that will make a good application a great application. Making every PC a server seems like a good idea. Not every solution will benefit, but there are a few thousand new ideas that JXTA makes possible. Look at the world upside down. Be the server.


  • More Stories By Daniel Brookshier

    Daniel Brookshier, JXTA Consultant, is a freelance consultant, speaker, author, and Java Geek since Java 1.0. Daniel is one of the core members at jxta.org and runs several open source projects including jxta-remote-desktop at java.net. Daniel's latest book is JXTA: Java P2P Programming, but he also writes articles for java.sun.com and P2PJournal where he is an editor. Daniel's blog covers the P2P world, tips, tricks, and musings on Java and JXTA. He can be contacted at [email protected]

    Comments (8) View Comments

    Share your thoughts on this story.

    Add your comment
    You must be signed in to add a comment. Sign-in | Register

    In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


    Most Recent Comments
    Shane Isbell 04/01/04 07:10:35 PM EST

    At its heart, JXTA is a virtual layer over the underlying physical network. JXTA has its own layer 7 protocols that allow us to reroute or relay traffic. As software developers, we can use JXTA to design sophisticated, distributed systems without having to change the underlying network architecture. This offers us an enormous amount of freedom in creating a killer application that would be impractical under the existing network. How many of us, however, would ask what is the next killer TCP/IP application or what is the next the next firewall (or switch) killer application? Such a questions is equivalent to asking what is the next JXTA killer app.

    This idea of a killer JXTA app is being perpetuated because JXTA is a P2P technology, which is often associated with file sharing applications. This is looking at JXTA too narrowly. JXTA provides the underlying building blocks to build systems that could take years to do by modifying the physical topology of the network. JXTA provides us speed and flexibility because the physical network will no longer be a bottleneck in our design and applications. It will also allow us to do things that the designers of the network don''t want us to do or can''t do. By bypassing these constraints, we might actually do something cool along the way. The power of JXTA is at the network level, not the application level.

    Goldy Lukka 04/01/04 07:19:55 AM EST

    The next killer app could be GAMES

    Shane Isbell 03/31/04 01:26:34 AM EST

    Once web services peaks (and with any luck dies), we will move into the next phase of small devices and dynamic networking of services. Then the killer app will naturally emerge. Before this happens, in an effort to survive as the dominant force, web services will co-opt a lot of what JXTA is trying to do.

    Of course, no one is going to post THE "Killer App" idea in a public forum. By the way, any one know why there are only two sessions on JXTA at JavaOne 2004? There are 30 on web services.

    Douglas Mutart 03/30/04 03:55:55 PM EST

    Looks like JXTA can be a great addition to our service-oriented architecture arsenal. Since every service can be the client of any other service, everbody becomes peers on the network. Combining JXTA with SOAP would be a great application of JXTA technology. A client could easily become a SOAP server allowing for simplified client-to-client web service applications. No need for WASP or other commercial thin SOAP server implementation.

    Mozilla User Number 19783589 03/30/04 03:05:34 PM EST

    I agree with
    ccc. Please
    at least
    preview the
    articles
    posted in
    Mozilla
    before putting
    them on the
    public website.

    Reading the
    articles in
    a narrow column
    is not at all
    pleasant.

    (This narrow
    column
    formatting is
    intentional.)

    Street 03/30/04 11:33:33 AM EST

    WebSiteRobot is a java app that turns every PC into a server. It''s not based on JXTA, but it probably achieve the same objective. There is a wide range of possible use for the Robot from simple File Exchange to E-Commerce:
    http://www.netforall.com/servlets/ShowSite
    The author may want to comment on it.

    Thanks!
    Street

    Hiroshi Iwatani 03/30/04 06:45:27 AM EST

    Great article. But every people on earth have to have symmetric broadband connection and WILL to do open communication.

    ccc 03/30/04 03:19:33 AM EST

    how about supporting mozilla in a decent way

    IoT & Smart Cities Stories
    DXWordEXPO New York 2018, colocated with CloudEXPO New York 2018 will be held November 11-13, 2018, in New York City and will bring together Cloud Computing, FinTech and Blockchain, Digital Transformation, Big Data, Internet of Things, DevOps, AI, Machine Learning and WebRTC to one location.
    @DevOpsSummit at Cloud Expo, taking place November 12-13 in New York City, NY, is co-located with 22nd international CloudEXPO | first international DXWorldEXPO and will feature technical sessions from a rock star conference faculty and the leading industry players in the world. The widespread success of cloud computing is driving the DevOps revolution in enterprise IT. Now as never before, development teams must communicate and collaborate in a dynamic, 24/7/365 environment. There is no time t...
    When talking IoT we often focus on the devices, the sensors, the hardware itself. The new smart appliances, the new smart or self-driving cars (which are amalgamations of many ‘things'). When we are looking at the world of IoT, we should take a step back, look at the big picture. What value are these devices providing. IoT is not about the devices, its about the data consumed and generated. The devices are tools, mechanisms, conduits. This paper discusses the considerations when dealing with the...
    Charles Araujo is an industry analyst, internationally recognized authority on the Digital Enterprise and author of The Quantum Age of IT: Why Everything You Know About IT is About to Change. As Principal Analyst with Intellyx, he writes, speaks and advises organizations on how to navigate through this time of disruption. He is also the founder of The Institute for Digital Transformation and a sought after keynote speaker. He has been a regular contributor to both InformationWeek and CIO Insight...
    CloudEXPO New York 2018, colocated with DXWorldEXPO New York 2018 will be held November 11-13, 2018, in New York City and will bring together Cloud Computing, FinTech and Blockchain, Digital Transformation, Big Data, Internet of Things, DevOps, AI, Machine Learning and WebRTC to one location.
    Bill Schmarzo, Tech Chair of "Big Data | Analytics" of upcoming CloudEXPO | DXWorldEXPO New York (November 12-13, 2018, New York City) today announced the outline and schedule of the track. "The track has been designed in experience/degree order," said Schmarzo. "So, that folks who attend the entire track can leave the conference with some of the skills necessary to get their work done when they get back to their offices. It actually ties back to some work that I'm doing at the University of San...
    Andrew Keys is Co-Founder of ConsenSys Enterprise. He comes to ConsenSys Enterprise with capital markets, technology and entrepreneurial experience. Previously, he worked for UBS investment bank in equities analysis. Later, he was responsible for the creation and distribution of life settlement products to hedge funds and investment banks. After, he co-founded a revenue cycle management company where he learned about Bitcoin and eventually Ethereal. Andrew's role at ConsenSys Enterprise is a mul...
    IoT is rapidly becoming mainstream as more and more investments are made into the platforms and technology. As this movement continues to expand and gain momentum it creates a massive wall of noise that can be difficult to sift through. Unfortunately, this inevitably makes IoT less approachable for people to get started with and can hamper efforts to integrate this key technology into your own portfolio. There are so many connected products already in place today with many hundreds more on the h...
    DXWorldEXPO | CloudEXPO are the world's most influential, independent events where Cloud Computing was coined and where technology buyers and vendors meet to experience and discuss the big picture of Digital Transformation and all of the strategies, tactics, and tools they need to realize their goals. Sponsors of DXWorldEXPO | CloudEXPO benefit from unmatched branding, profile building and lead generation opportunities.
    DXWorldEXPO LLC announced today that Telecom Reseller has been named "Media Sponsor" of CloudEXPO | DXWorldEXPO 2018 New York, which will take place on November 11-13, 2018 in New York City, NY. Telecom Reseller reports on Unified Communications, UCaaS, BPaaS for enterprise and SMBs. They report extensively on both customer premises based solutions such as IP-PBX as well as cloud based and hosted platforms.