|
|
||
Daniel Brookshier's BlogCommunity: Mac Java Community ArchivesJXTA at 5 Years OldPosted by turbogeek on April 07, 2006 at 04:37 PM | Permalink | Comments (3)JXTA is just about to turn 5 years old. Hard to imagine. Those internet years at 7 to 1 seem to be in play, at least with my memory. A lot has happened in 5 years. I got involved with JXTA soon after it was announces. Anything with the mark of Bill Joy had to have something smart associated with it, so I jumped in head first. I quickly started writing applications and doing small things. I learned a lot. Soon after things started, I got a call from Sams Publishing to do a book on JXTA. It was a difficult book. Though I had some experience, we were still struggling with how to best write P2P applications. P2P is not the easiest thing in the world. The idea of publish pipes and all that was not an easy thing to wrap your mind around. The ping example in the book went on for many pages - now I can write ping in one. One of the key advances was simply an understanding of how to write P2P applications. One of the best is just the simplistic well-known-ID or WKI for lack of something shorter. For all the indexing and advertising, there are simpler applications of WKI that make it very simple to implement many P2P applications. The JXTA spec and platform evolved too. The original version was painfully slow. Just connecting to the network could take a couple of minutes. Now average boot and connect to a JXTA network is a couple of seconds. Transfer speeds are also way up. The C version of the platform is also doing well and had a lot of heavy rewriting. Nothing better than a little refactoring, except more refactoring. The protocol changed slightly, making up for some of the speed. The key advances were in how the Rendezvous worked. But it seems that a lot of things sped up with little changes here and there over a few years. None of this was without a lot of dedication from the platform team. The next bit of advancement was the addition of a Socket wrapper for JXTA. One of the tough problems with the base API was working with an API that was unfamiliar. The socket API is very familiar and it is easier for the average developer to understand what's going on. The socket also hides things like reliability a bit better. There has been a lot of churn in the design of the code under the wrapper, but those changes are completely transparent. The business viability of JXTA also continued to improve. I have been employed by several companies that were using JXTA, including many fortune 500's. I have also worked with several startups. JXTA makes sense for a lot of applications and businesses see that quite clearly. There are still a few things that big business needs like out of the box presence, identity management, and a true P2P database. We do have presence in our commons project, but there is room to grow. The market for P2P is still growing and JXTA is still the only viable multi-purpose solution. Don't get me wrong, there is a lot of P2P out there, but mostly for file sharing and not writing business critical applications. The only alternative is Groove and that's owned by Microsoft. It also costs quite a bit. JXTA is open source and it is simple to set up your own P2P network for pennies on the dollar. Where is the market? Where are the applications? They are in a lot of places from the military to telecom. I have consulted with a bunch of companies, plus there are many listed at jxta.org. The latest startup I've been working with is called Kerika. They have a really cool tool that is best described as a graphical wiki. The workspace is sort of like a drawing tool mixed with the ability to add text, images, and documents but also relate them with connecting lines. The symbols can be clicked to reveal an even deeper view. Sort of like mind mapping, but this tools also adds collaboration and sharing to the mix. I think it is one of the coolest applications for P2P and it is written in 100% Java with Swing, but has its own look that is very clean and professional. They have just started their beta program, so the product is free, so check Kerika out. Overall, it has been an amazing 5 years. JXTA is out in the real world and is doing a great job. We have a lot to grow. But that also means there is opportunities everywhere! Quick Links
Kerika - http://www.kerika.com/
JXTA in Belgium!Posted by turbogeek on March 22, 2006 at 08:41 AM | Permalink | Comments (0)JaDiMo is a very cool application that can do various things from finding an open parking space to booking a hotel room. It is written with JXTA and Java plus runs on everything from cell phones to desktops. What is really amazing is the number of business use cases they cover. They have very cleverly moved from their original goal of finding an open parking space to multiple patterns of time/space availability and reservation like hotel rooms.
I spoke with Steven Palmaers of the JaDiMo project to learn more about their application and the future of the project. So, on with the interview:
JaDiMo is a research project at the XIOS Hogeschool Limburg (http://www.xios.be), which is an institute for higher education in Belgium, comparable to a college in the US. The project is co-financed by IWT and some commercial partner companies. IWT is the Institute for the Promotion of Innovation by Science and Technology in Flanders and was established by the Flemish government in 1991. They have a yearly budget which they use to support companies and research institutes financially. The JaDiMo project is financed by the so-called HOBU programme, which primary purpose is to research new, promising technologies. The proposed projects can have different subjects, such as medics, biology and ICT of course. The main goal of the project is to research the use of JXTA in combination with J2ME. Most of the use cases have to do with the mobility problem. There is for example a carpooling system, a system to locate parking garages in a city and a system to locate restaurants or hotels. Most of the applications come as a web version, a desktop version and a J2ME version (both MIDlet as Personal Profile). The main purpose of the project is to provide our partners with a proof of concept of JXTA and P2P in general. Tell us about yourself and the team. The JaDiMo project team consists of three people: Marina Luwel, Nicky Eichmann and Steven Palmaers. Marina is the project leader, she’s also a Java teacher at the XIOS Hogeschool Limburg. Nicky and Steven work full-time on the project. Nicky and Steven graduated two years ago. Nicky holds a BS in Computer Science and Steven holds a MS in Computer Science. How did it all get started? What made you think of the idea and use JXTA and P2P? As we wanted to submit a HOBU project proposal, we were looking for a new, promising technology to do research in. A Belgian Sun employee pointed us towards JXTA, which was quickly becoming popular at that time (late 2002, early 2003). So the sentence “in the beginning there was JXTA” pretty much sums it all up. Once we had our technology, we had to think of possible applications. We defined several use cases, which all have something to do with the mobility problem. We also decided to use J2ME technology, as we wanted our applications to be usable on mobile phones and PDAs. After we submitted the project proposal, a jury rated the different project proposals. The JaDiMo project was one of the projects selected. January 2004 we started working on the project. All HOBU projects have a maximum duration of 24 months, so the project ends December 2005. One thing that struck me as genius was how many of the modules are very similar like parking slots and hotel rooms. Do you look for matching patters to fit your first module or did you design your modules to fit multiple patterns? As I stated before, in the beginning there was JXTA. We then looked at possible applications that could be developed in a P2P way. The first application we came upon was our carpooling system. This makes it possible to find a carpooling partner in real-time, without having to go through a cumbersome registration process on a website. One of our partners is an organization that organizes carpooling, lift services and home exchange services. So our first application can basically be seen as an electronic, mobile version of their system. The difference however is that our application is ad-hoc. As soon as I realize that I need to go somewhere, I take out my mobile phone or PDA and can immediately find other people travelling to the same destination. Most other applications are also concerning mobility. For example finding a parking garage, finding a hotel or restaurant. So as it turns out, most applications can be send as “search and get” applications, which happen to be focused towards mobility. But it would be equally possible to create a self-organizing P2P dating agency. In fact it’s maybe not a bad idea to make the core functionality of our applications publicly available at the end of the project. Another application that we developed is a bus application, that can be used by the bus companies to send delays to bus stops, track different buses (using a GPS receiver), … On your web page, you list a lot of partners. What are you doing with them?
The project is co-financed by the Flemish government and some partners. We have one scientific partner, the Expertise Centre for Digital Media (http://www.edm.uhasselt.be) which is a research institute of the Hasselt University (http://www.uhasselt.be). The other partners are commercial companies or public organizations with up to 50 employees. In general those companies don’t have a budget to do research themselves. So in fact, we are investigating a new, promising technology, JXTA in this case, on their behalf. After the project finishes, the partners are free to use the applications that we developed. They can further adapt them to their needs and possibly commercialise them. Other partners simply see our research project as a ‘proof of technology’.
Has working with the partners helped the development and commercialization prospects for JaDiMo?
The primary purpose of our project partners, as outlined before, is to provide feedback during the user committee meetings. Our partners also have the right to further develop or adapt our applications to their own needs and possibly commercialise them.
How do you describe P2P and JXTA to your clients and partners? As we are a pure research projects, we do not have clients. Since JXTA is one of the main subjects of our project, we describe JXTA to our partners as a solid framework to develop P2P applications. We also organized a JXTA technology day, were our partners’ employees could follow a course to learn the basics of JXTA. So our partners have a good understanding of what JXTA is and what its possibilities are. Most people we talk to, and tell about P2P, almost always think of (illegal) file sharing or instant messaging when P2P comes up. We try to explain them that JXTA is much more than that. What are you currently working on with JaDiMo? At this time, we are fine tuning most of our applications. We are also working on some smaller applications that use JXTA. During the last weeks, we have also been working on a system for ‘event pooling’. The meaning is to reduce traffic problems around rock concerts, football stadiums, … Our system will allow people to register on a website or by mobile phone and enter their details (address, car available, …). The system will then automatically match users and send an e-mail or a text message to their mobile phones. They can then travel together to the concert or the sports event and so help reducing the traffic congestion that normally occurs. This application will be commercialized next year by one of our partners. It will probably be launched together with one of the major rock concerts in Belgium. JXTA technology only plays a small role in this application. What are your plans for the coming years for JaDiMo? The JaDiMo project ends December 2005, so we only have a few months left. After that, the project partners can further develop our applications to their own needs and possibly commercialise them. Unfortunately there will be no further active development on the JaDiMo applications. We will however keep an eye on the JXTA community evolutions. Are you looking for help or certain types of partners for JaDiMo? Currently, as the project is about to end in a few months, the primary aspect we are looking at is finishing the project up. So we are not actively looking for help. What gets you excited about what you are doing with JXTA and P2P? When we first looked at JXTA we didn’t really have a clue about what it was and what its possibilities were. Now, almost two years later, it’s amazing to see how many people are involved in the JXTA community and how much interesting applications are being developed. I hope that by working on our project, we can help to make JXTA more known in Belgium, and to prove that P2P is so much more than illegal file sharing. A lot of people just don’t realize that P2P can be applied in a lot of applications and domains. Are you working on any other projects besides JaDiMo? Currently we are not working on another project. However, when the current project ends, we are starting a new research project, again for 24 months. The (long) title of this new project is ‘OSGi as a framework for context-aware monitoring and updating software for mobile and embedded systems’. The short name will be OCoMIS. This project is in collaboration with the Expertise Centre for Digital Media, our current scientific partner. The primary purpose of the project will be to research the practical use of OSGi (release 4 specifically) combined with interactive television, mobile devices and domotics.
About the interviewer: Daniel Brookshier is seasoned Java veteran that is now a P2P/JXTA specialist. He has written several books on software and is currently working on a book about P2P patterns. He is on the board of directors for http://www.jxta.org and runs the P2P user group in Dallas.
Swing Set 3 - The Rotary Bazooka T-Shirt launcherPosted by turbogeek on July 02, 2005 at 02:32 AM | Permalink | Comments (0)Tossing a t-shirt is not as easy as it looks. Especially if you are a software developer. That is at least what the Swing Set 3 team tells me. Looking at the flesh wounds of one of the members, it is a bit dicy (or rather the launcher bytes). The Swing Set 3 team only garnered second place this year. I was quite surprised. The winning entry was closer to the Bluetooth of Danish Viking and King, Harald Blåtand, not the Bluetooth related to Java ME device (BTW Java ME is the new branding for J2ME). Swing Set 3 on the other hand was a marvel of electronics, old bycycle parts, and sharp pointy bits that together flung t-shirts to the back of the auditorium. Ok, here is the team: o Matt Quail (http://madbean.com) - The software guy and master of the GUI interface
o Brendan Humphreys (http://opencurly.com) - Aluminum expert, T-Shirt Artisan
Just a bunch of software guys trying to hardware, the same way they do software. That means bugs and crashes, right? But let's look at the technology now because it is quite impressive.
Features
o Secondary low-volume/high-range t-shirt release boom - This one sent a t-shirt to the back of the room.
o Mac 15 inch 1.5gHz PowerBook - Command and control center I love their visual interface. But as you can see by their photos, they really should stand a bit farther back from the imager.
Based on the speed, the software calculates the best time to release. That's the theory anyway and the hardest part. Time for physics. A 200 gram t-shirt, spinning at 200 RPM, at a radius of 80 centimeters has an effective weight of 10 kilos. So forty kilos of t-shirt! That is a lot of shirt. The latches have to hold the 10 kilos and still be able to open in milliseconds or the trajectory will be wrong. Now for the real problem. Inadequate code coverage unit testing in a real environment. The highly precise infrared sensor set to 850 nanometers are key to making the device wok. In fact testing in the auditorium was done to be double sure. Unfortunately these super accurate sensors were susceptible to broad spectrum source (like a reporter's camera flash). The end result was that the system did not have an accurate idea of where all the spinning bits were and let fly whenever a reporter's camera went off. Another manifestation of Murphy's law and perhaps one to remember. If you have a very accurate measurement tool, the world will throw noise at you that looks like clean and accurate data. Beyond the 28 hours a day that each member contributed to the effort to chuck a shirt, they also work for Cenqua. Cenqua has two tools; Clover and FishEye. Clover is a code coverage tool for Java (a great product but lousy for t-shirt launch testing). it tells you what parts of you code are not being tested by your unit tests. FishEye is a tool that provides a web based interface into your source code repository, allowing sophisticated searching, RSS feeds and much more. http://www.cenqua.com/ The build pictures are here http://flickr.com/photos/pte/tags/tshc Yes, another Apple/Intel Blog... and you want to read this one.Posted by turbogeek on June 17, 2005 at 01:20 PM | Permalink | Comments (0)In his blog, John Kheit, gives us some very interesting points about Apple's switch to Intel. Most of the points are on the negative side (seems like he is hoping for the best as a Mac fan, but he is worried). There is something missing in his commentary: Fans of the Mac and the experience of the Mac. Let's look at the fans first. My girlfriend's mother, Grace, is a Mac fan. John Kheit gives the impression that a switch to Intel will affect her. I can say in no uncertain terms that her iMac, purchased a year ago, will last her for at least 5 more years. John has pointed to software incompatibilities, support and other reasons why a consumer is going to be put into a bad place. Grace does not go to CompUSA or even Fry's. The only software she has purchased is a solitaire game. She may buy some Genealogy software soon, but it is difficult to see more than that. Is this a lost customer? Actually this might be an average customer for Apple. When we are 5 years down the line and Apple is end-of-life on this G4 computer, the children and in-laws will be helping her pick out her next computer (only because we want a faster computer when we visit). Simply, a new Intel based Apple will be purchased by this loyal consumer. My girlfriend just got a new iMac G5. I bought it for her birthday. It replaced a 1/2 Ghz G4 that was on its last legs. Becky is an artist and also working on an online business. She uses web tools and the suite from Adobe. The G4 had a lot of OS9 applications, including Adobe. It is far better to run the new Adobe than the OS9 version for both features and speed. It seems strange to try running OS9 on OSX and I cannot see why any but those locked into a piece of software would want to. But back to Becky, she will only need an Intel Mac if this one catches fire. Within 5 years, she might get another birthday present with Intel inside. At that time, just like now, she needs to upgrade her software. Such is the computer business. Where is the trauma? Now to myself. I am a developer and writer. I have a 1Ghz 17 inch Powerbook and a 2X2Ghz G5. I also have a 20 inch Apple Cinema Display. I am very very happy with the power of the Dual G5 and reasonably happy with the powerbook. I suspect the Dual G5 will last me a couple of years before I outgrow it. I will be laying down cash for an Intel Mac without even thinking twice when the high end is rolling out for the 2007 model year. The Powerbook... I will dump it the moment Apple gets a significant upgrade. That Powerbook is indeed a risk to Apple. The current crop is not a significant upgrade for me. A better display, a couple tens of megahertz will not impress me. Apple must be aggressive to sell me. What will I buy? If Apple can get me a dual core G4, I am a happy customer. Who cares about Intel? Dual processors are one of the better ways to get power/heat performance for the notebook. Thoughts of a G5 Powerbook are just not worth my time. Dual processors seem to be better for your performance than the 64 bit bus. Look at the numbers and you will see I am right. Benchmarks of 32 verses 64 bit computing shows it is only marginally faster for the average application. What really counts is throughput. That means you need either megahertz or parallel paths executing multiple tasks. Sign me up for a dual core G4. I'll take a screamer Intel if Jobs can make it happen. I won't be switching to a MS notebook and will wait two years if I have to just to get that significant upgrade. But what of my software? Hey, I write Java software. Java on Intel is a screamer and gets faster every release. I have no problems there. My other primary software is open source or supported by some of the larger companies in each of their industries. I do not fear obsolescence. In the next few years, and give the track record for laptop upgrades, a G4/G5 purchase tomorrow is not even close to an issue for this developer. Now to that thing we call the Mac and the Apple experince. It is about the packaging and the operating system. In no way does switching out the engine going to change those two key features. I love my Mac. When you love something, you do not abandon it when things get rough. But as I have said, we just have time against this relationship, but a known time. I am happy to look at the goals of Apple and live with what I have. But is there really some moment where the Mac experience changes my experience? Is there a threat to our perfect love? Let's look at a recent example, the move from G4 to G5. Where was the doom and gloom of moving from G4 to G5? The change included an almost complete design for ddesign replacement of the hardware. Was there a problem for those upgrading? There was not but a peep. Yes, faster and 64 bit, but the story was that we were sort of still on the same horse. To tell the truth, the move to Intel will NOT change the Apple experience. 99% of the Mac experience is the OS and the design of the hardware that surrounds the CPU - not the CPU itself. The only visible change we might have to live with an Intel Inside sticker and the reincarnation of Intel Bunny Man haunting TV commercials (the horror!). So, are the points made by John Kheit inaccurate? No, but they apply to very few consumers and I believe to a few vendors. They are not loyal Apple fans. The reason there is no hew and cry against the trauma of change is that there is none for many of us. The only reason most of us are rather mad at Apple is that there was no super Intel Powerbook introduced at the same time. We are only mad because we have to wait for those new toys. Those that need a new Apple right now will be slow until the rumors confirm how far out the boxes are, but it should be minor. Given that packaging an Intel is simple and the G5 case seems to be compatible already with an initial version, we do not have long to wait. I'm sure Apple can sell a few more iPods to make up for the shortfall. This was by far the best time to do it while they are strong. But I am also very happy for this change in another way. As was pointed out during the announcement, Java applications will run without change. That means that if it's Java, it is 100% insulated from the move (excepting the minor bugs of course). This also means that Apple can take better advantage of Sun's Intel version of Java. That's a good thing too! Better still, this is another reason to move to Java. Face it, this proves that Java insulates you from the larger moves in the market. Years ago when companies were faced with rewriting OS2 when IBM gave up on it, many chose Java rather than do more C/C++. The move there proved to be great too because Windows went through many changes from 3.1 to 2000 and now XP and someday Longhorn. After 10 years of writing Java, I still feel that I have made the right choice. No other language is as well supported in the community and in industry. To summarize, go Apple on Intel. Java is ready and waiting! One more thing, can we avoid putting an "Intel inside" logo on the Mac? I am happy to assume the "i" in iMac or rename the Powerbook to iPowerbook. The i stands for Intel - is that a plan? I want my 5.0 - A Mac user's lamentPosted by turbogeek on September 30, 2004 at 10:04 PM | Permalink | Comments (12)I am an Apple-based Java developer. I love my Apples (17 inch powerbook and a Dual G5) and the really love the way that Java performs. But where is Java 1.5 when you need it? Versions of Java 5.0 are released for Linux, Solaris, and MS. When will Apple release 5.0? Not really sure, but the rumors are that the sometime next year when Apple releases their next release of OS X. That's a long wait for someone that needs to be building products with the latest and greatest. One of the fastest growing customer segments for Apples are Java developers. You can see them all over the place - even at Sun. So, where is all the Apple love at Apple? If they want to sell more machines, why not get a preview out the door ASAP? Is it resources? If it is, Apple needs to shift gears and get over the fact that Java is a growing developer segment. There are a lot of Java developers out there. We need to get together and let Apple know we need Java 5.0 now. Can nothing be done to get Java 5.0 on my Apple? Let me know what to do or how I can help the cause! | ||
|
|