CCNC, CES, Coolio, LinuxWorld.NYC and Letterman ... JXTA Tour de Force.
Demo Time ... living large!
Some of our Sun JXTA team members will be at LinuxWorld January 21-23 talking about the technology at the Sun booth. If you're in the New York area, please stop by and let us know what you are up to.
Here is an architectural model that I use often in my serverside programming efforts. Read the full weblog for further details which include an example pipeline followed by source code for some sample parts.
>Nowadays "type" is an important programming language construct. A type gives a certain authenticity and a certain gurantee and a certain solidity to the programming practice, not to mention the metadata aspects of it while using IDEs. By the same token it binds you to that contract and could prove to be inflexible at times. In the web world things are fluid: hashtables, dictionaries, xml, hierarchical data sets, relational databases. All of these structures seem to be horizontal and non-specific in nature. In this web log I want to think aloud to see if an idea that I call "type faces" will serve some needs.
Exceptions is one area where opinions differ considerably. Not only about the usage of exceptions but also about the need and utility of checked exceptions. I hear arguments from various sides. They all seem valid in their own right. I use interfaces heavily in my coding practice. Particularly in my J2EE tool Aspire. Over time I paid dearly for not declaring exceptions on these interfaces. Primarily because I would start out thinking that this interface is too simple and not declare an exception. Subsequent implementation of these interfaces will necessitate apis calls that throw checked exceptions. With out changing the interface either I need to throw a converted chained runtime exception or change the interface to include a politically correct middle of the road exceptions suitable for that interface
Like many other I-will-do-it-myself programmers I have ended up with my own blogging software at about the same time as the OSCON 2003. I had been planning on adding seemingly simple enhancements since then. While I have rejected (temporarily) the "feedback" and "shortcuts", I did implement the "masterpages" during these holidays. The result can be seen at the following URL
Knowledge Folders of Satya Komatineni
If you are curious about the story click on the weblog to read in full
Filters is an architectural concept that works hand in hand with factories. When factories create object or objects a filter provide an option to post-process these object or objects. This ability may not be as important in procedural and OO coding but place an important role in declarative programming. Because "declarative programming" when used as a supporting architecture for OO programming, postpones the need to program. In such a scenario filters provide another place to configure and reuse a given programming asset.
Another great release, now with clipboard support.
Want to see JDS? There's a webcast coming & they are giving away free evals...
Microsoft is redefining the application interface around rich clients, and if Java does not have an answer, it faces being cut off from end users. The answer lies in matching Microsoft's richness while trumping it on security
NeoOffice/J now starts & runs fast enough to make it a must-have for Mac users.
Recently I wanted to create a block menu in my html pages. I want this block menu to have a header indicating the category of the menu and a set of menu items. There may be more than one way of doing this exercise. There may also be a better way of doing the same. But here is how I have done it and it seem to work well for now.
Lomboz - a J2EE plug-in for Eclipse - has become open source. That is great news for the Eclipse and Open Source communities.
While working with CSS recently I have found that a quick list of CSS selectors is handy. Take a look at this item if you are keen.
As I have spent a good bit of the last 3 years in developing Aspire/J2EE, my discussions involuntarily drift towards floating this name. Foes ignore and friends, out of pure courtesy mainly I suspect, ask me what is Aspire/J2EE. I start, real fast (before they have a chance to retreat), and explain that it is a RAD tool for Java and J2EE ingeneral and you can do real cool things with it. And I point them to AKC and tell them how wonderful it is and how I even use it to teach my kinder garten daughter (perhaps an unsuspecting child, what does she know anyway). But as you, the observant reader might have rightly guessed, I am usually accosted with a broad grin that seem to say "sure". So I have decided to draw a picture. If you are still here click on the web log link above to see it and read more about it
Java Web Services and XML
Suppose you have an USB device and an USB port. How do you connect them? Would you create two adaptors, attach one to the device and one to the port and add extra hardware between them just to get them connected, for no logical reason? Does it seems ridiculous to you? Tell it to most people using webservices out there...
Some thoughts, and links to other discussions, inspired by a speech given by Adam Bosworth last week. Topics touched on include the KISS principle and its breakdown in the XML world, hopes that Father Darwin wil set things right, the challenges of effectively using low-powered mobile devices in an internet optimized for fat pipes, and spins off into a discussion of the ideas behind JXTASpaces as an alternative to the competing distributed object and REST approaches to this kind of application.
Global Education and Learning
Jedit, wordml, xaml, jxpath, InfoPath, XForms are some of the names that I have jotted down in 2003 to take a look at in the future. Hopefully I will get to some of these in 2004. The following knowledge folder named "Research" explores these ideas a bit further and provide additional references.
Research Knowledge Folder
Discrete event simulation is not just a way to write academic papers it is a great way to get distributed applications debugged. Java makes writing in-situ simulation envirnments relatively simple.