2007 09 19

I am currently working on an open source project (do not ask me which since it will surface soon, and I should not talk much about it till it does ;)) that required to provide web access to apps, services, and contents. From my days fighting with Mulgara descriptors I remembered that Jetty (full-featured web server implemented entirely in Java) could be embedded into applications to provide such services. It has been two months now since I started using, and it is a nice, shiny, and slick piece of software. I used Tomcat for most of my stuff, but Jetty is definitely and amazing alternative Below I just pasted one of the ways you can embed Jetty in your app.

Server server = new Server(8080);
Context root = new Context(server,"/",Context.SESSIONS);
root.addServlet(new ServletHolder(new HelloServlet("Hello World!")), "/*");
server.start();
server.join();

Yes, that’s it. You can also embed full-fledge multiple web apps using

Server server = new Server();
XmlConfiguration configuration = new XmlConfiguration(new File("myJetty.xml").toURL()); //or use new XmlConfiguration(new FileInputStream("myJetty.xml"));
configuration.configure(server);
server.start();
server.join();

Oh, and one last cool thing. You can remove apps from the server without needing to restart it! That is pretty useful.

2007 09 05

I am sitting at the workshop on the Engineer of the Future hosted at NCSA. The workshop is part of the ETSI lecture series organized by Michael Loui and David E. Goldberg. The talks so far are very interesting. Hard to highlight all the relevant points, but I would like to mention the experience Sherra E. Kerns is sharing about their experience at Olin College. The engagement with the curriculum that students show is very remarkable. She mentioned current established curricula tend to kill innovation (and engagement). That comment resonate with my personal experience freshmen was always more rewarding and challenging than last year students.

2007 08 02

The E2K blog has moved. You can reach it at

http://dita.ncsa.uiuc.edu/e2k/

2007 07 29

DITA and ALG at NCSA have joined forces with the DISCUS team to enter the 2007 VAST contest. You can find a podcast of the entry to the contest here, and a description of the VAST contest below.

Visual Analytics is the science of analytical reasoning supported by highly interactive visual interfaces. People use visual analytics tools and techniques to synthesize information into knowledge; derive insight from massive, dynamic, and often conflicting data; detect the expected and discover the unexpected; provide timely, defensible, and understandable assessments; and communicate assessments effectively for action. The issues stimulating this body of research provide a grand challenge in science: turning information overload into the opportunity of the decade.

Visual analytics requires interdisciplinary science, going beyond traditional scientific and information visualization to include statistics, mathematics, knowledge representation, management and discovery technologies, cognitive and perceptual sciences, decision sciences, and more. Your submission should help develop and/or apply the science of Visual Analytics, clearly showing an interdisciplinary approach.

2007 07 20

Bernie just put together this beauty to load small RDF/XML files into Virtuoso’s metadata store (We are using testing the open source version).

DB.DBA.RDF_LOAD_RDFXML(http_get ('URI to the RDF/XML file'),'','Name of the graph in the store');


We have tested loading a 5Million triple RDF/XML and results are pretty nice (It took around 6 minutes to load into a dual Pentium 4 extreme edition at 3GHz with 4GB of RAM on a slow 7500rpm ext3fs). When pushing to larger files, the stream version of this is a must to reduce memory consumption. 

2007 05 22

Yesterday, today, and tomorrow NCSA is running the PSP 2007 meeting. You may find some of my blogging about it here.

2007 05 14

I needed to reset the password for a user on a MediaWiki site. Luckily, I run into this post “Reset a user password on MediaWiki - Greg’s Postgres stuff” which helps you to do so. The five-cent summary for a MySQL powered site:

UPDATE user SET user_password = md5(CONCAT('123-',md5('newpassword'))) WHERE user_id=123;
2007 05 11

This presentation covers a general overview of the goals, origins, reasearch and tools currently available for the DISCUS project. For more information please visit the DISCUS project website.

2007 05 11

Sometimes you may need to sample a dataset. You may want to get a uniformly sampled subset out of a datatset stored in a file. The perlscript below does the job for you.


#!/usr/bin/perl -w
if ( $#ARGV!=1 ) {
        print "Wrong number of arguments\n\t".
                "uniform-sampler.pl <file> <sample_proportion>\n";
}
else {
        srand();
        open(FILE,$ARGV[0]) or die "File $ARGV[0] could not be open";
        while($line=<FILE>) {
                if ( rand()<$ARGV[1] ) {
                                print $line;
                }
        }
        close FILE;
}
1;

2007 05 10

SURFACE 51 is a Urbana-Champaign graphic and web design company. You can check out their portfolio here.

« Previous PageNext Page »