Domain: bbn.com
Stories and comments across the archive that link to bbn.com.
Comments · 58
-
Re:A few things about C++...
What I mean is that Smalltalk would be more widely accepted if there were variants that duplicated the look & feel and object model of a common C++ toolkit & framework like MFC or KDE. The idea being that developers could work in Smalltalk but produce applications that seem more native to the end user.
No one can really say if making the GUI aspects of Smalltalks more like a C++ toolkit would make it more popular among (non Smalltalking) programmers. However, it doesn't seem that it would make much sense to do that. The GUI frameworks in Smalltalk are set up to (as you might expect) work logically, consistenty, and robustly with Smalltalk. There's little reason to try to bolt things from a different langauge onto it, and as always, trying to use one language like another instead of using it like itself is not likely to produce good results. As far as producing native-seeming apps for an end user, some Smalltalks take this approach. For example, at work I use Dolphin Smalltalk, whose GUI system is based around native Windows widgets. Build an app and it looks just like it would if you built it with VC++ or VB. It would certainly be possible for a Smalltalk vendor to do this on other platforms (and in fact VW or VA may well work that way; I don't know).
I guess I think Lisp is fun because I spend all day working in procedural OO languages and get bored. However, it doesn't have blazing speed and low level control of C, the GUI friendliness of Smalltalk or Obj-C, or the industrial strength of Ada, C++, or Java.
I doubt too many people would argue that with current machines/OSes something like C is better for getting close to the machine. Of course, there are examples like the Symbolics Lisp Machine where everything was in Lisp, so that wasn't true.(As far as speed goes, that's really an implementation rather than language issue. If one knows how to optimize Lisp code properly and has an implementation with a good compiler, one can do pretty well. See, for example, CMUCL. Or this page for more pointers. I will be honest, however, and admit to sometimes coding small parts of programs in C to improve performance. With the emphasis on small.
:-) I do think Smalltalk wins hands down as far as anything I know for GUI, but particular Lisp implementations needn't be all that bad; I use Lispworks, and I don't think I'd say that I think GUI building is any harder in that than in a typical C++ or Java environment. I do think you may underestimate how suitable it is for "industrial strength" applications, though. Hang out in comp.lang.lisp for a while (or better, search the archives) and you will discover those who have built very serious, very large apps in Lisp, in part because of its suitability for such projects. -
ESRI, OpenMap, GRASS, TIGER, and Mapping
I've spent the last year developing a high volume web-based map server using Open Source tools. Note that the emphasis of this project has been vector based data (streets, rivers, shorelines, etc.), not image or raster data, so this skews my views somewhat. Sorry for the length of this post, but this really only scratches the surface of this topic.
The two best free tools I found for manipulating map data and producing maps are GRASS (www.geog.uni-hannover.de/grass/) and OpenMap (openmap.bbn.com). GRASS certainly wins hands-down for its ability to read various file formats (including ESRI Shape Files and E00 Files), but its interface is somewhat
... odd ... and I've found it very buggy when dealing with vector products. OpenMap is a very nice Java application and library that can do some very slick graphics and handle many different projections. However, because it is written in Java, it's ability to scale to the level that I needed (random access street level maps being produced in several seconds) is practically non-existant. Nevertheless, if you are looking for a "higher level" of mapping tool, OpenMap is probably the tool you are looking for.I've also looked (somewhat superficially) at the major commercial mapping programs, produced by ESRI (www.ersi.com) and MapInfo (www.mapinfo.com). At prices starting at around $25000 and rapidly going up, you'll certainly need a lot of money to get into this game.
On the data side, there's a lot of data available on the net, some of it very good, and some not so good. Finding it is tricky, but it can be done. The "Digital Chart of the World" (DCW) is available from (HREF) and provides vector outlines for all the countries in the world (circa the early '90s). Its North American utility is somewhat limited, as the lat/lon points used in the vector outlines are based on NAD27, rather than the more popular NAD83 datum. The TIGER Line Files (HREF) is an excellent source of street level data (and state and county outlines, and much more) for the United States and various territories. Once the format of this data is understood, it's fairly easy to convert the data to a more usable format. Unfortunately, there doesn't appear to be much in the way of the tools out there on the net for working with this data.
There's very little free street level data available outside the United States. This is an area crying out for an Open database, as the non-free data sources are really expensive and generally involve nasty royalities.
I have been working on a the Onamap.com project for the last year. The primary purpose of Onamap is to provide a "where is it" tool for the Internet in which anyone can enter location data, commentary, etc.. The components of this project are:
- a common text-based file format for vector data;
- tools for converting TIGER, ESRI Shape Files, and DCW to this common format;
- the location web server, written using Apache, mod_python, and MySQL; and
- a high volume map server, written using Apache, jserv, Java, and C++.The map server is fairly new technology, and the components written in Java (mainly the rendering engine utilizing Java2D) need to be rewritten in something more efficient. If you want to see samples of the maps that this engine can produce, go to http://www.onamap.com/sample.
The plan is to release this software to the public (down to the source level) in the next few months, after the code is cleaned up, debugged and documented. If anyone is interested in this project, please feel free to mail me at dpjanes@sympatico.ca.
-
Re:One way to stop the calls...
Get it here:
sit.wav. -
Web Mapping Info
I've been working on the Open GIS spec for web mapping for a little less than a year now. We've come up with a simple spec that lets you construct a URL with a map request in it. The spec describes the format of the URL and how map servers should behave when they receive one of these.
If you build a campus map server that conforms to this spec, then later on, you can build HTML pages that can request campus maps superimposed on satellite photos or other neat data.
The first place to look is at the spec. Revision 1.0 is due out "any day now" so don't get hung up on the details. Then look at what some people are doing with the spec.
Here's a sample HTML client that talks to a Web Map Server which itself then knows about a dozen or so other Web Map Servers. (What we call a "cascading map server").
Take out the nospam from my email if you want to ask more questions... (By the way, I'm also a big OpenMap fan - I open-sourced it while at BBN...)
-
Re:Moore's Law
A bit faster than "a few years", and Internet backbones get them first - cellphone networks actually have fairly low traffic flows.
You'd want a cluster of routers of that capacity at each physical POP that's connected by high-capacity fiber. Those will connect to metropolitan-area rings, and those to businesses and ISPs.
See the BBN^H^H^HGTE Internetworking fiber map. -
That is too cool! but....
Check out OpenMap(tm) (http://openmap.bbn.com) from BBN. It's all Java and Open Source(tm).
-
The GRASS GIS application
Then there's OpenMap(tm) from BBN. We released it last month.
-
TIGER stuff
Interestingly, the TIGER data forms the basis for a *lot* of data being sold by big companies. Most street level data of the US is derived from TIGER and then cleaned up/enhanced by those companies.
There was a thread on comp.infosystems.gis a while ago about starting a free data movement. And don't foget, somewhere in the past there was (don't know if it still exists) an "Open Content" movement.
There's a nifty worldwide data set called VMAP (formerly Digital Chart of the World) on 4 CDs available from the USGS.
But back at the ranch, there are some Open Source (tm) mapping systems, none of which handle TIGER as far as I know. In fact, OpenMap(tm) is one that we released just before Christmas. I'd invite the OS community to dive in and write an OpenMap LayerBean that handles TIGER data. OpenMap does handle VMAP but there's always room for improvement...