I wonder if this guy, if he can’t quite kill somebody else, could fix my laptop?
http://www.rationalistinternational.net/article/2008/20080310/en_1.html
In other news, villagers kill a witch. Or just beat the crap out of one on TV.
Self satisfaction, not happiness, is the goal of life
I wonder if this guy, if he can’t quite kill somebody else, could fix my laptop?
http://www.rationalistinternational.net/article/2008/20080310/en_1.html
In other news, villagers kill a witch. Or just beat the crap out of one on TV.
Why the security types have such concerns about users – here’s a big reason
http://www.techcrunch.com/2008/03/25/save-the-developers-stop-using-internet-explorer-6/
http://www.w3schools.com/browsers/browsers_stats.asp
IE 7’s been the standard from Microsoft for what, 2 years? The purpose of the post to tell you how hard it is for web developers (Ajax developers) to code for all these old browsers out there, thus a campaign to get people to upgrade.
Interesting that IE 5 still has a market share comparable to that of Opera and Safari. Firefox’s adoption seems to have tapered off in the past 4 – 6 months.
Corporate IT departments can be the biggest laggards of them all. I know companies where IE 7 cannot be used yet. There are places that don’t use Windows XP yet for that matter.
Odds not so good for yet another major release of IE (didnt MS say at one time that IE 7 was it??) and Ballmer’s diabolical plans to corner Web 2.0.
Definitely an issue though with using Ajax (AJAX?) in general, as is freely admitted. Compatibility and lack of features in older browsers have to be dealt with in writing public web applications.
Update: Dump IE 6 campaign battle
Does being open source imply having some sort of licensing? If so, then not. But the leading public domain software’s author says it is. You decide
http://www.news.com/underexposed/8301-13580_3-9881858-39.html?tag=head
By request….
Waffle uses JSP, or template based views. Controllers can be written in java or jruby.
RIFE is a full stack framework. It uses HTML for its views.
View
W: 9 R: 9
AJAX support
W: 2 R: 4
Documentation
W: 8 R: 10
Backward compatibility
W: 3 R: 3
Support
W: 7 R: 11
Database integration
W: 5 R: 7
Integration
W: 5 R: 7
Internationalization
W: 3 R: 3
How complex is it
W: 10 R: 8
Abstraction
W: 3 R: 3
Separation of concerns
W: 6 R: 6
file upload
W: 4 R: 4
plug in SSO
W: 1 R: 1
final:
Waffle 66 RIFE 76
Helma is server side Javascript, so it requires JS knowledge. It appears to be fairly well supported. Good support for layout.
Expresso hasn’t had a new release in over two years, its original corporate sponsor may no longer support it.
Neither really has AJAX support.
<pre>
View
H: 10 E: 6
AJAX support
H: 4 E: 3
Documentation
H: 11 E: 7
Backward compatibility
H: 3 E: 3
Support
H: 12 E: 6
Database integration
H: 4 E: 8
Integration
H: 7 E: 5
Internationalization
H: 3 E: 3
How complex is it
H: 7 E: 11
Abstraction
H: 2 E: 4
Separation of concerns
H: 6 E: 6
file upload
H: 4 E: 4
plug in SSO
H: 4 E: 1
final:
Helma 79 Expresso 67
Cocoon is designed around having flexible views from transforming XML.
Jzeno doesn’t use view templates, all UI generated by java code.
<pre>
View
C: 12 J: 6
AJAX support
C: 3 J: 4
Documentation
C: 11 J: 7
Backward compatibility
C: 2 J: 4
Support
C: 13 J: 5
Database integration
C: 8 J: 4
Integration
C: 6 J: 6
Internationalization
C: 3 J: 3
How complex is it
C: 7 J: 11
Abstraction
C: 3 J: 3
Separation of concerns
C: 5 J: 7
file upload
C: 4 J: 1
plug in SSO
C: 1 J: 1
final:
Cocoon 78 Jzeno 62
Click
ORM integration out of the box with Cayenne (JPA)
Velocity as primary view technology
Simple to develop in
Limited out of the box Ajax support
Struts 1
Tied more to HTTP model
Strong support, documentation, usage in the wild
no native Ajax support
View
C: 11 S: 7
AJAX support
C: 5 S: 2
Documentation
C: 4 S: 14
Backward compatibility
C: 3 S: 3
Support
C: 4 S: 14
Database integration
C: 7 S: 5
Integration
C: 7 S: 5
Internationalization
C: 3 S: 3
How complex is it
C: 11 S: 7
Abstraction
C: 5 S: 1
Separation of concerns
C: 7 S: 5
file upload
C: 4 S: 4
plug in SSO
C: 1 S: 1
final:
Click 72 Struts1 71
Shale is built on top of JSF and provides more a traditional controller function to create an MVC architecture.
Aranea seems to require JSP for its view. Aranea allows different MVC frameworks to “plugin”, I suppose to maintain legacy applications with it, or to use Aranea as a glue framework. Only native Aranea facilities are considered here.
<pre>
View
A: 8 S: 10
AJAX support
A: 3 S: 4
Documentation
A: 7 S: 11
Backward compatibility
A: 3 S: 3
Support
A: 7 S: 11
Database integration
A: 5 S: 7
Integration
A: 7 S: 5
Internationalization
A: 3 S: 3
How complex is it
A: 12 S: 6
Abstraction
A: 3 S: 3
Separation of concerns
A: 6 S: 6
file upload
A: 4 S: 4
plug in SSO
A: 1 S: 4
final:
Aranea 69 Shale 77
VRaptor looks like a combo of Seam, Spring, JPA.
Turbine hasn’t been actively developed in several years.
View
V: 9 T: 9
AJAX support
V: 6 T: 1
Documentation
V: 6 T: 12
Backward compatibility
V: 3 T: 3
Support
V: 9 T: 9
Database integration
V: 8 T: 4
Integration
V: 8 T: 4
Internationalization
V: 3 T: 3
How complex is it
V: 11 T: 7
Abstraction
V: 3 T: 3
Separation of concerns
V: 7 T: 5
file upload
V: 4 T: 4
plug in SSO
V: 1 T: 1
final:
VRaptor 78 Turbine 65
Verge appears to be essentially unsupported, so releases since 2004. It is now called JCatapult?? I admit, this probably shouldn’t have made the field.
<pre>
View
V: 6 W: 12
AJAX support
V: 2 W: 5
Documentation
V: 3 W: 15
Backward compatibility
V: 2 W: 4
Support
V: 3 W: 15
Database integration
V: 4 W: 8
Integration
V: 4 W: 8
Internationalization
V: 2 W: 4
How complex is it
V: 7 W: 11
Abstraction
V: 2 W: 4
Separation of concerns
V: 6 W: 6
file upload
V: 1 W: 4
plug in SSO
V: 1 W: 4
final:
Verge 43 Wicket 100
Struts 2 is a clean break from Struts 1, really an upgrade of WebWork.
maverick has been widely used and touted, but hasn’t been maintained actively snce 2004.
View
St: 9 M: 9
AJAX support
St: 6 M: 1
Documentation
St: 12 M: 6
Backward compatibility
St: 3 M: 3
Support
St: 15 M: 3
Database integration
St: 9 M: 3
Integration
St: 8 M: 4
Internationalization
St: 4 M: 2
How complex is it
St: 8 M: 10
Abstraction
St: 3 M: 3
Separation of concerns
St: 7 M: 5
file upload
St: 4 M: 1
plug in SSO
St: 4 M: 1
final:
Struts2 92 Maverick 51
Spring MVC is a part of the Spring Framework. Ajax support is possible, but not baked in.
Parancoe is a full stack, perhaps ROR inspired framework based on Spring and JPA. Strong controller/DAO design. Appears to be slow development on it. Documentation is sparse, some nice tutorial docs. Parancoe integrates DWR for Ajax support. View technologies limited to the HTML generated by the framework?
Spring here is essentially then competing with itself, in that Parancoe makes certain integration choices (DAOs, Ajax). This makes for a metaframework? For example, to use Ajax with Spring, you have many choices (as long as one can be decided upon and is supportable).
<pre>
View
S: 11 P: 7
AJAX support
S: 3 P: 4
Documentation
S: 14 P: 4
Backward compatibility
S: 3 P: 3
Support
S: 14 P: 4
Database integration
S: 6 P: 6
Integration
S: 6 P: 6
Internationalization
S: 3 P: 3
How complex is it
S: 8 P: 10
Abstraction
S: 2 P: 4
Separation of concerns
S: 5 P: 7
file upload
S: 4 P: 1
plug in SSO
S: 4 P: 4
final:
Spring 80 Parancoe 66
RSF used plain HTML through its own templating engine. Has development slowed on it? (last update on website, Sept 07). Spring integration as well.
Trails – based on Tapestry, Spring. Uses Tapestry templates. Acegi integration
<pre>
View
R: 10 T: 8
AJAX support
R: 1 T: 6
Documentation
R: 11 T: 7
Backward compatibility
R: 4 T: 2
Support
R: 9 T: 9
Database integration
R: 7 T: 9
Integration
R: 6 T: 6
Internationalization
R: 3 T: 3
How complex is it
R: 8 T: 10
Abstraction
R: 3 T: 3
Separation of concerns
R: 10 T: 8
file upload
R: 4 T: 4
plug in SSO
R: 1 T: 4
final:
RSF 77 Trails 79
Phobos is a Sun Glassfish project. It uses server side Javascript for all coding, including views.
Lift uses the Scala language( means it has to be learned). Inspired by ROR. Uses plain XHTML for views.
View
P: 11 L: 7
AJAX support
P: 5 L: 2
Documentation
P: 10 L: 8
Backward compatibility
P: 3 L: 3
Support
P: 9 L: 9
Database integration
P: 6 L: 6
Integration
P: 7 L: 5
Internationalization
P: 3 L: 3
How complex is it
P: 11 L: 7
Abstraction
P: 3 L: 3
Separation of concerns
P: 6 L: 6
file upload
P: 1 L: 1
plug in SSO
P: 1 L: 1
final:
Phobos 76 Lift 61
Mentawai supports Velocity as well as JSP for the view.
Stripes is an improved Struts in a way, with Ajax support, and Spring integration. Leans toward JSP for views.
View
M: 10 S: 8
AJAX support
M: 4 S: 3
Documentation
M: 7 S: 11
Backward compatibility
M: 3 S: 3
Support
M: 8 S: 10
Database integration
M: 6 S: 6
Integration
M: 5 S: 7
Internationalization
M: 3 S: 3
How complex is it
M: 10 S: 8
Abstraction
M: 4 S: 2
Separation of concerns
M: 7 S: 5
file upload
M: 4 S: 4
plug in SSO
M: 1 S: 1
final:
Mentawai 72 Stripes 71
Jucas is hurt because it has not been actively maintained since 2003.
<pre>
View
G: 11 J: 7
AJAX support
G: 6 J: 1
Documentation
G: 14 J: 4
Backward compatibility
G: 3 J: 3
Support
G: 14 J: 4
Database integration
G: 8 J: 4
Integration
G: 7 J: 5
Internationalization
G: 3 J: 3
How complex is it
G: 10 J: 8
Abstraction
G: 4 J: 2
Separation of concerns
G: 6 J: 6
file upload
G: 4 J: 1
plug in SSO
G: 4 J: 1
final:
Grails 93 Jucas 49
JSF
Loom
View
JSF: 11 L: 7
AJAX support
JSF: 4 L: 3
Documentation
JSF: 14 L: 4
Backward compatibility
JSF: 2 L: 4
Support
JSF: 15 L: 3
Database integration
JSF: 8 L: 4
Integration
JSF: 7 L: 5
Internationalization
JSF: 3 L: 3
How complex is it
JSF: 6 L: 12
Abstraction
JSF: 3 L: 3
Separation of concerns
JSF: 7 L: 5
file upload
JSF: 4 L: 1
plug in SSO
JSF: 4 L: 1
final:
JSF 88 Loom 55
J(Ruby on Rails)
XX uses XSL / XML processing to create the view via JSPs.
View
ROR: 10 XX: 8
AJAX support
ROR: 6 XX: 1
Documentation
ROR: 14 XX: 4
Backward compatibility
ROR: 3 XX: 3
Support
ROR: 15 XX: 3
Database integration
ROR: 8 XX: 4
Integration
ROR: 7 XX: 5
Internationalization
ROR: 3 XX: 3
How complex is it
ROR: 8 XX: 10
Abstraction
ROR: 3 XX: 3
Separation of concerns
ROR: 7 XX: 5
file upload
ROR: 4 XX: 1
plug in SSO
ROR: 4 XX: 4
final:
JROR 92 XX 54
Much like college hoops, the tech world can be competitive at times. Sometimes companies can co-exist in the same space, but sometimes market share comes down to win or go home. Have a look at how we think the security bracket stacks up.
http://www.eweek.com/c/a/Security/March-Madness-Security-Brackets/
It’s Easter Monday
http://www.polamjournal.com/polka/dyngus.html
http://en.wikipedia.org/wiki/Easter_Monday
Rob Enderle actually has an interesting post, in that he addresses the phenomenon of older workers trying to make IT their second or third career, and how such folks often have delusions.
Interesting links in the post, in case you are heading in the opposite direction
http://techjobssuck.com/
http://blog.billeisenhauer.com/2007/03/04/why-it-sucks/
Then again, you may want to keep working
http://www.webmd.com/healthy-aging/news/20051020/early-retirement-early-death
Original source: http://www.theregister.co.uk/2008/03/20/hundt_cloud_carr/
Reed Hundt, former FCC chairman, has written a review of Nicholas Carr’s latest book, The Big Switch. He argues that the large data centers being created by Google, IBM and I suppose now Microsoft will eventually need to be regulated by the government. If of course, Carr is correct on his predictions for the cloudy future.
Nick Carr (visionary or idiot, depending on your point of view) has a response .
Article from 2000 that looks at why, among other things, why the percentage of women in IT had dropped through the 1990s. I don’t think things have changed much in the past 8 years.
Anecdote: I work for a large financial institution that has done a great deal to promote hiring diversity. I was at a meeting with some 150 IT persons from said institution. There were perhaps, 2-3 women there (indeed no African Americans or Hispanics either). Yes, I make it a point to mentally look at gatherings such as things and take stock of who’s there.