Catch up on stories from the past week (and beyond) at the Slashdot story archive

 



Forgot your password?
typodupeerror
×
Games

Palm Pre and WebOS Get Native Gaming 49

rboatright writes "WebOS developers have been waiting, and with the 1.3.5 release, Palm's open source page suddenly listed SDL. Members of the WebOS internals team took that as a challenge and within 24 hours had a working port of Doom running in SDL on the Pre, in a webOS card. 48 hours later, they not only had Quake running, but had found in the latest LunaSysMgr the requirements to launch a native app from the webOS app launcher from an icon just like any other app. At the same time, the team demonstrated openGL apps running. With full native code support, with I/O available via SDL, developers now have a preview into Palm's future intent with regard to native code SDK's, and a hint of what's coming."

Comment Re:We already have one (Score 2, Informative) 358

Did you miss the "Free data" link on the website http://www.ncdc.noaa.gov/oa/mpp/freedata.html? NCDC tries to limit the charging of "$$$$" to only commercial and private entities in order to help offset the enormous cost of ingesting, archiving, and processing one of the world's largest datasets; we're not fully funded by Congress.

Charging for data is a touchy subject around here, though--the scientists, developers, customer service people, and management would all love to give away as much of our data as possible (and we give away a lot of it), but the money is always an issue.

Comment Re:Looks like Python (Score 1) 168

Here is a writable closure for some KML:

def kmlDocument = new groovy.xml.StreamingMarkupBuilder().bind{
    mkp.xmlDeclaration()
    mkp.declareNamespace('': 'http://www.opengis.net/kml/2.2')
kml{
Document{
    Folder{
        name('*** stations')
        description('http://some.place.on.teh.webs/qry')
        open('1')
        stationTypes.each({type ->
            Folder{
                name(type[0])
                description('Station Type: ' + type[0])
                type[1].each({platform ->
                    Folder{
                        name(platform)
                        description('Platform: ' + platform)
                        stations[type[0] + platform].each({station ->
                            Placemark{
                                name(station.name)
                                description('http://some.place.on.teh.webs/qry/station?idtypeabbr=stnid&idvalue=' + station.stnidnum)
                                styleUrl(station.getIcon())
                                Point{
                                    coordinates(station.coord)
                                }
}})}})}})}}}} //lameness filter ate my whitespace; doesn't look like LISP in real life
def f = new File('doc.kml')
f.delete()
f << kmlDocument

The cool thing is that I get all this plus seamless Java integration (i.e. every class in the standard library -- GregorianCalendar, for instance), all my Java tools work, and I can replace lots and lots of boilerplate Java code with one and two liners of Groovy.  So:

ArrayList<String> list = new ArrayList<String>();
list.add("Blah");
list.add("Blah");
list.add("Blah");
list.add("Blah");
System.out.println(list);

Becomes:

def list = ["Blah","Blah","Blah","Blah"]
println list

And hey, with closures, if you want to do something like capitalize the first character of each string in that list it's really easy:

println list.collect({
    it[0].toUpperCase() + it[1..it.length() - 1] //there's a better way to do this; I'm being pedantic
})

Which is not to say that Python couldn't do all that, but Groovy makes life for Java monkeys much easier.
The Courts

Harvard Law Professor Urges University to Fight RIAA 180

NewYorkCountryLawyer writes "Distinguished Harvard University Law School Professor Charles Nesson has called upon Harvard University to fight back against the RIAA and stand up for its students, writing 'Seeking to outsource its enforcement costs, the RIAA asks universities to point fingers at their students, to filter their Internet access, and to pass along notices of claimed copyright infringement. But these responses distort the University's educational mission. ...[W]e should be assisting our students both by explaining the law and by resisting the subpoenas that the RIAA serves upon us. We should be deploying our clinical legal student training programs to defend our targeted students.'"

Slashdot Top Deals

You knew the job was dangerous when you took it, Fred. -- Superchicken

Working...