I took the advice of a
friend of mine and
steered clear of the
'normal' movie theaters
and went a little out of
the way to go to a DLP
movie theater. The
experience of comparing a
regular movie theater to
a DLP movie theater is
like comparing standard
def analog TV with a
1080i HDTV signal. The
movie itself was awesome.
I was pleasantly
surprised. I expected,
wrongly so, another
loosely connected chain
of high-impact special
effects moments like most
of the other recent comic
book adaptations have
been.
There are 8,909 books
listed on Amazon.com with
the word 'Investing' in
the title; there are(!)
27,146 books with the
word investment in the
title. Without having
looked at a
representative sample, I
can be confident that
Sturgeon's Law applies -
I suspect if I sampled
enough of them I would
find that 90% greatly
underestimates the amount
of junk in this
particular area.
This book is an update of
an earlier version that
was written for SQL
Server 2000. It employs
the Murach approach of
dual pages that repeat
and enhance the concepts
being presented on each
page. If you're new to
SQL Server 2005 you'll
gain a lot from this
book. It has three goals:
to teach T-SQL (Transact
SQL), introduce you to
the new .NET CLR
integration, and
introduce you to the new
graphical user interface
called SQL Server
Management Studio that
replaces the enterprise
manager and query
analyzer that were part
of the SQL Server 2000
package of software
tools.
Reviewers overuse the
phrase 'required
reading,' but no other
description fits the new
book 'Ajax Security'
(2007, Addison Wesley,
470p). This exhaustive
tome from Billy Hoffman
and Bryan Sullivan places
the specific security
concerns of the AJAX
programming model in
historical perspective.
It demonstrates not only
new security threats that
are unique to AJAX, but
established threats that
have gained new traction
in the Web 2.0 era. It
then details both the
specific technical
solutions and - more
importantly - the mindset
that are necessary to
combat such threats. If
you call yourself a
professional web
developer, you need this
book.
In my many years of
programming, almost 20
years now, I have used
countless integrated
development environments
(IDEs). I have used
everything from a simple
text editor all the way
up to the high-end IDEs
that Sybase, IBM, and
Oracle use. More recently
I have come to embrace
the open source movement
and development in Web
environments. My
programming language of
choice for these days is
PHP, so it stands to
reason that I would be
looking for an IDE. Like
so many other developers
I followed the path of
looking for the pinnacle
of IDEs for PHP. I
started with basic text
editors, moved into text
editors with code
colorizations, and then
into project-based
development environments,
and finally to a fully
robust IDE. The one that
I've been using for a few
years now is Zend's
Studio Professional.
It's hard to overestimate
the importance of having
a good logging facility
when you develop
distributed applications.
Did the client's request
reached the server-side
component? What did the
server send back? Add to
this inability of using
debuggers while
processing GUI events
like focus change, and
you may need to spend
hours if not days trying
to spot some
sophisticated errors.
That's why a
commercial-grade logger
is a must if you work
with an application that
is spread over the
network and is written in
different languages such
as Adobe Flex and Java.
The Java development
platform always provides
limited support for
application development
based on a graphical user
interface, an area where
more traditional
languages and integrated
development environments
(IDEs) such as Visual
Basic or Delphi have
based their success.
The folks at Active
Endpoints carefully
thought through how to
support users in their
move to WS-BPEL 2.0. This
resulted in the ability
of BPEL 1.1 and WS-BPEL
2.0 processes to co-exist
during design, test, and
execution in both the
designer and the engine.
This lets users migrate
their processes at their
own pace. I've been
burned in the past by
products that required a
big bang conversion so
the ability to support
1.1 and 2.0 processes
easily is a huge win.
Service-oriented
architecture is an
architectural approach to
building software
applications as a
collection of reusable
business services.
Interest in SOA is
growing within the
business community. To
address the need for an
infrastructure to enable
the building of
service-oriented
applications, a new breed
of SOA suites is
emerging. Vendors such as
Oracle, BEA Systems, and
IBM now provide platforms
specifically focused on
SOA applications. In
established, complex IT
environments with diverse
applications - including
legacy applications that
are tied together with
custom adapters, and
business scenarios that
demand extensive partner
interaction - the move to
SOA may appear
challenging. However, new
SOA suites make it easy.
We at Sierra Atlantic
decided to review one of
them - Oracle SOA Suite.
Real-time data validation
is one of the advantages
of AJAX technology. By
applying this technology,
the struts validation
framework will enrich the
struts MVC and move the
Web application closer to
the desktop application.
The validation framework
is used to validate
fields. There are many
ways to do validation on
a Web application. It
falls into two
categories: server-side
and client-side. A struts
validation framework is
one of the best
frameworks for a
Java-based Web
application environment.
It can configure the
application using
server-side validation
and employ the error
message that renders on
the validation process
invoked during the
request processing time,
or it can do client-side
validation by using the
JavaScript rendered on
the requested page.
As the saying goes you
never get a second chance
at a first impression. In
general, that's true, but
if you've been thoroughly
revitalized, matured, and
cosmetically
re-engineered, shouldn't
you get a second shot at
that first impression?
I'd argue that's true of
Oracle's Java/J2EE
Workbench, Oracle
JDeveloper.
An event-driven
architecture (EDA)
reflects the real world
in which businesses
operate. The real world
is constantly changing,
chaotic, and
unpredictable. An EDA
enables organizations to
make sense out of all the
events occurring within
their business, and to
detect anomalous business
situations by drawing
together a number of
indirectly related or
independent events.
Furthermore, EDA builds
decision-making
capabilities directly
into business processes
by using analytical
insights to drive
decisions. EDA offers
organizations the ability
to track events in real
time, thus gaining an
early awareness of
issues, improving
productivity, and
reducing manual
intervention and errors.
Berkeley DB XML (BDB XML)
is a popular native XML
database. It can be
accessed through the
shell or within another
program. This month I
will show you how to use
BDB XML in Java. BDB XML
has similar APIs for all
supported languages such
as Java and C++,
therefore the ideas
presented in this article
apply to all supported
languages. I have been
closely following BDB XML
from the very first
release, and there have
been tremendous
improvements in this
product.
In terms of unit testing
and code compliance,
Jtest is a real
heavyweight in the arena.
For those who haven't
come across Jtest before,
it's an application that
will analyze your Java
application code for you.
At present Jtest has 700
built-in rules and 100
security rules and it
will autocorrect 250 of
those rules for you. It
provides Parasoft SOAtest
hooks for testing of
SOA/Web services and Web
apps. The reporting
engine is also built-in
so once tests are run,
you can view and print
results via a Web
browser. There are some
new features such as
improved J2EE testing and
the Bug Detective, which
I will cover later in
this review.
When MailReader - an
example application
bundled with the Struts
Action framework - was
created six years ago,
most Java developers had
yet to discover unit
testing. Consequently
neither the Struts
framework nor the
MailReader were created
test-first. Since then,
we've bolted a few unit
tests onto the Action
framework, but the
MailReader for Struts 1.2
still has no developer
tests at all.
By nature Web Services is
a distributed technology.
With distribution comes
great flexibility for
architectural topologies.
Components can be
strategically placed in
different physical
locations to optimize
performance, maintenance
and business processes.
In large organizations
one physical location may
handle sales services,
while another delivers
contract management. As
organizations build
Service Oriented
Architectures that stitch
together these physically
dispersed services,
distributed development
becomes an interesting
challenge to overcome.
Many collaborative
technologies exist today
to facilitate better
communications and
information sharing among
workers, but it's rare to
find a distributed
development environment.
I recently had the chance
to evaluate the
next-generation Fiorano
SOA Platform 2006 suite
from Fiorano Software,
Inc. As an architect and
developer who's worked
with previous versions of
the kit over the last
three years in addition
to several competitor
offerings, I looked
forward to sitting down
with Fiorano's latest
release.
Sharp tools make software
development quicker and
more productive. They
automate manual tasks to
speed development. They
provide useful
information intuitively
to enhance productivity.
Eclipse, the powerful and
well-designed IDE, is
such a tool. Few Java
developers would want to
return to a text editor,
command-line compiler,
and standalone debugger
after experiencing the
power of this integrated
development environment.
In the same way that an
intuitive and elegant IDE
aids modern software
development, a
cutting-edge yet robust
software configuration
management (SCM) tool
enables successful team
software development.
JasperReports is a
valuable and viable
reporting solution for
Java Web applications. It
simplifies report
generation through the
use of XML report
templates that are then
compiled using the
JasperReports engine for
use in reporting modules.
These compiled report
templates can be filled
by data received from a
variety of sources
including relational
databases. JasperReports
can be integrated into
Web applications and
create reports in several
file formats including
PDF and XLS.
You can create a
sophisticated application
that implements complex
algorithms, but in many
cases you sell its GUI
part to your users. The
presentation layer of
plain vanilla
HTML/JSP-based Web
applications is usually
pretty basic unless you
use specialized software.
Today we are testing the
charting engine
WebCharts3D 5.0 from
GreenPoint.
The hardest single part
of building a software
system is deciding
precisely what to build.
No other part of the
conceptual work is so
difficult as establishing
the detailed technical
requirements?Therefore
the most important
function that software
builders do for their
clients is the iterative
extraction and refinement
of the product
requirements.'
As an independent
software
developer/consultant
starting my career in the
early '90s, I was exposed
to a large number of
different working
environments and
challenges. My specialty
for a while was HP C++
and Motif (often using
Interface Architect) on
HP-UX, but over the years
I migrated towards Sun's
C++ and GCC compilers
along with X Designer on
Solaris.
The latest issue of
SYS-CON's quarterly IT
Solutions Guide unveiled
at JavaOne in San
Francisco. The current
issue of the ITSG offers
IT solutions from the
leading i-technology
companies, including
ClearNova, EV1 Servers,
Extentech, GraphOn,
Hosting.com, Synaptris,
InterSystems, JadeLiquid,
MapInfo, Parasoft, PDF
Tools AG, Quest Software,
Verio, and Visual
Paradigm.
Java Technology completed
its 10-year anniversary
recently. Sun announced
that there are over 4
million developers using
the Java language, with
thousands more joining
their ranks. While a
small percentage of
developers can be called
experts or skilled in the
complete software
development life cycle, a
vast majority of them
typically try to
understand the
requirements handed down
to them and code to meet
such requirements. Most
projects (about 60%) go
above budget and time,
which places additional
pressure on the
developers trying to
deliver an application.
The expression 'Jack of
all trades' ends 'and
master of none,' but in
the case of the dotJ
Custom Tag Library
produced by dotJ
Software, it should end
'master of some.' The
dotJ tag library is the
Swiss Army knife of tag
libraries. It provides
tags for many different
areas of development,
from Model-1 form
validation to file
uploading and text
formatting.
Oracle has impressed most
of us with its database
products and, in my
opinion, they offer an
impressive J2EE
infrastructure as well.
To select the right
technology for migrating
the popular Alamo Rent A
Car Web site from its
generation-old Microsoft
platform to a
state-of-the-art J2EE
stack, we took a close
look at Oracle's latest
product, Oracle
Application Server 10g,
in conjunction with the
well-integrated Oracle
JDeveloper Integrated
Developer Environment.
There is an old joke in
which a man is seen
coming from a
conservation area with a
hefty catch of fish.
After noticing the
proficiency of the
fisherman when others had
come back empty-handed, a
park ranger decides to
tag along with him. When
they get to a specific
location, the fisherman
lights a stick of
dynamite and throws it in
the water, retrieving a
huge quantity of fish.
When vendors start
charging more than
$10,000 for a single
tool, you know that the
product category is about
to heat up. Since Java
IDEs have multiplied, I
recently took Oracle
JDeveloper 10g for a test
drive - perhaps you
didn't realize this
vendor had a serious Java
IDE.
Sometimes as J2EE
application developers we
feel like we are in a
darkened room. We know
that something is wrong
with our application, but
we have no idea where the
problem is. Application
performance management
(APM) tools, such as
VERITAS i3 for J2EE, has
helped us 'turn on the
lights' by enabling us to
see exactly where in the
application our problem
really is.
The value of a single
application platform that
connects people,
information, and systems,
both within and across
organizational
boundaries, is
self-evident. The
critical component to
developing such a
powerful enterprise
solution is selecting the
right business-process
automation tools that can
deliver on the promise of
a connected enterprise.
On Symbian smartphones
such as the Nokia 6600,
reports Michael Yuan, the
Java runtime does not
integrate well with the
underlying platform.
However with the Nokia
6630, the first consumer
phone from Nokia that
supports JSR 75, things
have finally changed, he
says.
Anyone who develops
production applications
eventually spends some
time profiling. JFluid is
an experimental new
technology for profiling
Java code. It was
developed at Sun
Microsystems Laboratories
and can be a handy tool
in your profiling
toolbox.
Just as the Web has
revolutionized
information distribution
and retrieval, instant
messaging is
revolutionizing
communication. Instant
messaging is a powerful
tool that few enterprises
or application developers
have fully harnessed.
Despite its pervasive use
by millions all over the
world, few businesses
have yet to exploit it.
Remote Swing or
server-side Swing - this
is the most concise
characterization of
Canoo's UltraLightClient
library (ULC). ULC offers
server-side peer classes
for Swing. For each Swing
widget, there's a peer
ULC class with
essentially the same API.
It's unnecessary but
true: a lot of Java
programmers still debug
by putting
System.out.println()
statements in their code
to find out what the
program is really doing
and where the problems
are. To overcome this
antiquated approach I've
tried several debuggers:
Sun's JDB is free but
cumbersome and hard to
work with. Visual
SlickEdit, my favorite
IDE, has integrated
debugger support but is
also difficult to run.
The integrated
development environment
(IDE) is a big part of
the toolkit of a modern
software developer. Java
projects have complex
development processes,
especially if the project
is going to be developed
using open source and
J2EE technologies. A
smart and efficient IDE
plays an important role
in making developers more
efficient and productive
in doing their tasks and
meeting project
deadlines. This review
discusses one such smart
IDE - IDEA 4.0.
DevPartner Java Edition
is a profiling tool from
Compuware that helps
developers envision the
reality of their designs
and implementations. It
clearly shows the
performance, memory, and
code coverage of various
modules in your project.
If you always wondered
how your particular
implementation would
behave and want to buy a
tool to show the
profiling statistics of
your project, this review
should interest you.
Tired of using that Web
access e-mail client?
Going crazy filling out
those expense reports
using a clunky Web-based
system? Missing the
superior and responsive
desktop application?
You're not alone!
In today's society, it's
second nature to contact
family, friends, and
colleagues via e-mail.
E-mail has become so
integral to our daily
ritual that we cannot
stay away from it as we
make use of personal
digital assistants (PDAs)
and other pervasive
devices to have it
readily available.
Javassist is a powerful
new library in the field
of bytecode engineering.
It allows developers to
add a new method to a
compiled class, modify a
method body, and so
forth. Unlike other
similar libraries,
Javassist enables this
without knowledge of Java
bytecode or the structure
of a class file.
I took the advice of a
friend of mine and
steered clear of the
'normal' movie theaters
and went a little out of
the way to go to a DLP
movie theater. The
experience
There are 8,909 books
listed on Amazon.com with
the word 'Investing' in
the title; there are(!)
27,146 books with the
word investment in the
title. Without having lo
This book is an update of
an earlier version that
was written for SQL
Server 2000. It employs
the Murach approach of
dual pages that repeat
and enhance the concepts
Reviewers overuse the
phrase 'required
reading,' but no other
description fits the new
book 'Ajax Security'
(2007, Addison Wesley,
470p). This exhaustive
tome from B
In my many years of
programming, almost 20
years now, I have used
countless integrated
development environments
(IDEs). I have used
everything from a simple
text edi