Agile IT! Experience

NFJS / Java World Podcast

User Group Events

May. 14 - Dallas, TX
10 Ways to Improve Your Code
by Neal Ford
JavaMUG - more »
May. 15 - Salt Lake City, UT
Thorough Introduction to Groovy
by Jeff Brown
Utah Java Users Group - more »
May. 20 - St. Paul, Minnesota
The Busy Developer's Guide to Scala by Ted Neward
by Ted Neward
Object Technology User Group - more »
Jun. 11 - Calgary, AB
Core Groovy
by Andrew Glover
Calgary Java Users Group - more »
Jun. 11 - Dallas, Texas
Grails - Agile Web 2.0 The Easy Way
by Jeff Brown
JavaMUG - more »

Private Events

Blogs

View all Blogs >>
  • Alex Miller

    Sr. Engineer with Terracotta Inc.

    Cliff has been working for a while on developing highly concurrent data structures for use on the Azul hardware which supports 700+ hardware... more»

  • Vladimir Vivien

    Software Engineer / Consultant

    The last day of JavaOne 2008 was heralded by the final General Session where Sun showcased several cool projects. Here are a few you maybe... more»

  • Michael Nygard

    Agile technology leader and dynamicist

    Apparently, there's a virus attack. Not a computer virus. A real virus. Hot zone instead of a hot spot.From my inbox this morning: more»

  • Ted Neward

    Enterprise, Virtual Machine and Language Wonk

    A couple of folks have taken me to task over some of the things I said... or didn't say... in my last blog piece. So, in no particular... more»

  • Jared Richardson

    Agile coach and co-author of Ship It

    It's good to read a story like this every now and again just to remind yourself how bad it is in some places. more»

  • Mike Levin

    Software Developer specializing in Web2.0 websites

    more»

  • Howard Lewis Ship

    Creator of Tapestry and HiveMind

    I spent some time yesterday revamping the Tapestry 5 Tutorial; you can see the updates at the more»

  • Pramod Sadalage

    Co-author of "Refactoring Databases:Evolutionary Database Development"

    We had a weird requirement on our project recently.. Find all the Rows in All the tables that do not comply with the Constraints more»

  • Matt Raible

    Creator of AppFuse and author of Spring Live

    In an effort to keep one of the top spots for "javaone parties", here's the updated list more»

  • Kirk Knoernschild

    Software Developer & Mentor

    It’s time to move on and show the simple elegance Spring brings to OSGi development using the HelloWorldSpec sample from the more»

  • Guillaume LaForge

    Groovy Spec Lead & Project Manager

    This is with great pleasure that G2One and the Groovy development team announce the first beta more»

  • Venkat Subramaniam

    Founder of Agile Developer, Inc.

    Earlier today I blogged about the more»

  • Graeme Rocher

    Project Lead of the Grails Project & CTO of G2One

    For those of you interested, Grails applications deploy and execute on SpringSource's new Application more»

  • Jeff Brown

    G2One Director Of North American Operations - Groovy and Grails Developer

    We have been busy preparing for JavaOne and it is finally almost here. Yay!We hope to see y more»

  • Craig Walls

    Author of Spring in Action

    I read thi s last night, but I have seen this coming for over a year. more»

  • Neal Ford

    Application Architect at ThoughtWorks, Inc.

    In the movie 200 more»

  • Andrew Glover

    Co-author of "Continuous Integration"

    On more than one occasion, I’ve been asked by various hip developers if there was a conversion script for transforming existing Ant... more»

  • Jason Rudolph

    Author of Getting Started with Grails

    Muness blogged a photographic introductio more»

  • David Bock

    Principal Consultant, CodeSherpas Inc.

    Installing CentOS 5, ImageMagick, and RMagick I don‘t normally blog about obscure, specific technical topics, mainly because 99% of more»

  • Scott Leberknight

    Chief Architect at Near Infinity

    Have you ever wondered, what is the best way to implement SOA in your organization? How can it help you? What benefits await and what are the... more»

  • Brian Pontarelli

    Brian Pontarelli - founder of Inversoft

    Found this funny. Looks like Lenovo has some issues in their pricing application today. I was planning on purchasing an X300 at some point,... more»

  • Jason Harwig

    Software Engineer

    pre { font-size:80%; } Of the trinity of web technologies, CSS is by far the worst at this stage. It's a language more»

  • Erik Doernenburg

    Principal Consultant @ Thoughtworks

    It has been in the making for some time but now the ThoughtWorks Anthology is available from the Pragmatic Programmers. The Anthology is a... more»

  • Pratik Patel

    Software Architect

    Shake off that St. Patrick's day hang-over by coming over to the AJUG meeting this Tuesday, March 1 more»

  • Pete Behrens

    Organizational Agility Coach

    Marti nig & Associates Methods & Tools group recentl more»

  • Nathaniel Schutta

    Author, speaker, software engineer focused on user interface design.

    Like pretty much any office with more than 3 people, we struggle with the ephemeral concept of more»

  • Joseph Nusairat

    Author of Beginning JBoss Seam & Co-Author of Beginning Groovy & Grails

    Today is the first day of JBoss World, I survived the first three presentations and waiting for the keynote to be  complete to d more»

  • Richard Monson-Haefel

    VP of Developer Relations, Curl Inc.

    more»

  • Brian Sam-Bodden

    Java author, Ruby geek and Open Source Advocate

    In this installment we are going to build the Dashboard page of the Tempo application. T more»

  • Mark Fisher

    Spring Integration Lead

    more»

  • Ron Bodkin

    Chief Software Architect, Quantcast

    I'm looking forward to speaking at The Rich Web Experience conference in San Jose next month. The event runs from September 7th through 9th.... more»

  • Mark Goodwin

    Web Application Security Specialist

    We've already looked at one of the two big problems posed by anti DNS pinning on Java applets; because there's rebinding on the applet and... more»

  • Scott Davis

    Author of "Groovy Recipes" & TDD Expert

    Every time I see a live show at the Denver Botanic more»

  • Brian Goetz

    Author of Java Concurrency in Practice

    Recently, Neal Gafter mused about whether we should consider removing more»

  • Romain Guy

    Java User Interface expert.

    more»

  • Ramnivas Laddad

    Author of AspectJ in Action, Principal at Interface21

    InfoQ.com has published my AOP myths and realities talk recorded at a No Fluff Just Stuff conference. InfoQ.com founded by Floyd Marine more»

  • David Geary

    Author of Graphic Java Swing and Co-author of Core JSF

    The 2006 NFJS tour kicked off t more»

  • Jason Hunter

    Author of Java Servlet Programming

    I just posted the JDOM 1.1 release for download. This release includes about 20 improvements and bug fixes. more»

  • Stuart Halloway

    CEO of Relevance

    <p>We are happy to announce that <a href='http://www.mckinneystation.co m/'>Geof Dagley</a> has joined the Relev more»


In the Spotlight - Douglas Crockford

Creator of JSON

Crock is a product of our public school system. A registered voter, he owns his own car. He has developed office automation systems. He did research in games and music at Atari. He was Director of Technology at Lucasfilm. He was Director of New Media at Paramount. He was the founder and CEO of Electric Communities/Communities.com. He was founder and CTO of State Software, where he discovered JSON. He is now an architect at Yahoo!.
























Douglas Crockford's The Department of Style
Media, Technology, Creative Discontent, Neandertals, and a Lot More.


Douglas Crockford's complete blog can be found at: http://blog.360.yahoo.com/douglascrockford

Thursday, March 27, 2008

Yesterday, presidential candidate John McCain said "We have incurred a moral responsibility in Iraq. It would be an unconscionable act of betrayal, a stain on our character as a great nation, if we were to walk away from the Iraqi people." We don't want to abandon the Iraqi people to the violence and confusion that we unleashed, but ordering the deaths of more American soldiers in Iraq will not bring about peace. A military solution is not possible. So in desperation, to end the loss of life on all sides, I would offer the following deal.

If the factions will agree to stop killing each other, we will immediately withdraw all troops and deliver former President George Bush and former Vice President Dick Cheney to the Iraqi High Court to stand trial for war crimes.


Tuesday, March 25, 2008

Any HTML tag that accepts a src= or href= attribute should also be allowed to take a hash= attribute. The value of a hash attribute would be the base 32 encoding of the SHA of the object that would be retrieved. This does a couple of useful things.

First, it gives us confidence that the file that we receive is the one that we asked for, that it was not replaced or tampered with in transit.

Second, browsers can cache by hash code. If the cache contains a file that matches the requested hash=, then there is no need to go to the network regardless of the url. This would improve the performance of Ajax libraries because you would only have to download the library once for all of the sites you visit, even if every site links to its own copy.


vat
Monday, March 24, 2008

The HTML environment lacks modularity. It is not possible to run guest code and be confident that it will not attack. Some of the popular attacks are XSS, XSRF, and Phishing. This deficiency is a huge source of insecurity. The <iframe> has been suggested as a sandboxed container, but the <iframe> is subject to two out of three attacks, so it is far from safe.

I have proposed that we replace <iframe> with <module>. The <module> is a vat that prohibits all three attacks (although as long as we have JavaScript and the DOM, it will still be subject to internal XSS attacks). It may be easier to provide an option that lets <iframe> and <frame> and <body> behave like vats.

If we add a vat attribute to an insecure container, then the container is locked down. It is not allowed to access the DOM tree of another container. Other containers are not allowed to access its DOM tree. Navigation (location) of other containers is not allowed. HTTP requests made from a container to sites other than the container's domain do not carry cookies or other ambient authority. A script should be able to easily determine if it is in a vat or not. The vat attribute is included in the http requests for the vat's assets.

The only local way that a vat container can interact with another container is with a communications mechanism such as Cross Document Messaging (XDM). If we had such containment, we could include components from other sites using a notation such as <iframe vat src="pirate.net/theworst.html">. The browser would then be fully minimally adequate for mashups.

It will still be a dangerous environment, and will continue to be dangerous until we replace JavaScript and the DOM. But this small improvement would move us way ahead. The construction of secure mashups will no longer be impossible, just risky.


IMG
Friday, March 21, 2008

I think the thing that made the www, despite its inadequacy, was Andreessen's <img> tag. Images gave designers the ability to make a page look like something. It was possible to create the illusion that HTML could do anything, that it was what we needed. It quickly attracted a majority of naive technologists, which attracted the herd.


Thursday, March 20, 2008

Bush used to say about bin Laden that "he can run, but he can't hide." It appears that the opposite is true: his health is poor, so he can't run, but he sure hides well, well enough that Bush can't find him. He is too sick to appear on camera, but he is still issuing videos. His latest threatens revengence against the civilized world for the behavior of Danish cartoonists. He sees the cartoons as part of a Papal crusade, and he warns that there will be terrible consequences.

If you want to see what he's so upset about, do an image search for danish prophet cartoon. My view is that bin Laden is way out of line here. There is another thing that Bush says in private that comes closer to the truth: "Fuck'em if they can't take a joke."