| Steve's Networked Programming Newsletter
|
Making Nets Work October
2008
|
|
Thank you for subscribing to my newsletter. A number
of people graciously responded to my request for your
favorite networked programming tool in last month's
issue. Thank you for sharing your thoughts
with me! I'll discuss these further in this
issue.
I also have news about new and upcoming releases of
some of the networked programming tools that you and I
rely on.
As always, be sure to forward this note to other
people you work with to be sure they know what's
happening in the world of networked application
development.
|
Our Favorite Networked Programming
Tools
|
Last month
I noted that writing networked applications (at least,
good ones) is difficult. Writing networked applications
directly to low-level APIs is definitely "doing it the
hard way." Fortunately, among those who replied to me,
none program networked functionality down at the OS
level.
I was impressed at the diversity of
projects represented in the responses I received. SMS
routing, massive online game server, electric utility
support and image acquisition systems were among those
described. With all the variety in application domains,
a very common theme stood out in issues central to
development: efficiency and stability. Security and
scalability are also concerns, but when it comes right
down to it, the system has to work correctly and it has
to be fast.
Not surprisingly, these two top
concerns drive our choices of both implementation
language and supporting toolsets. All of the respondents
are C++ users. Not surprising at all since C++ is the
usual language of choice for performance-sensitive
systems. However, the second-most mentioned language was
Ada, which was a real surprise to me. Am I in the dark
here, or is Ada surging in popularity?
ACE is a
common choice for tools. Although this is not surprising
given this newsletter's base of ACE users, it is still
interesting to note the range of domains where ACE is
used, as well as its long lifetime. TAO and Boost were
also mentioned. There was a distinct lack of usage for
.NET (Windows or Mono) even though Windows is one of the
more popular development and deployment
platforms.
I'm really enjoying hearing about your
experiences and preferences with networked application
development environments and tools. Thank you for
writing! I'm learning a lot and would very much welcome
comments from more of you! Especially those of you who
can enlighten me on Ada's seeming
popularity...
|
Apache Qpid M3
Released
|
The Apache Qpid community is
pleased to announce the release of Apache Qpid
M3!
Apache Qpid is a cross platform enterprise
messaging solution which implements the Advanced
Message Queueing Protocol. It provides brokers
written in Java and C++ and clients in C++, Java
(including a JMS implementation), .Net, Python and Ruby.
This release features:
- AMQP 0-10 support in the Java, Python and C++
clients and the C++ broker
- Java broker supports priority queues
- Apache Derby based persistent store for the Java
broker
- Java client performance improvements
- AMQP-based management protocol and a set of CLI
management utilities
It is available to
download from http://www.apache.org/dist/incubator/qpid/M3-incubating/
Complete
release notes are available here: https://issues.apache.org/jira/secure/ReleaseNote.jspa?version=12312117&styleName=Html&projectId=12310520&Create=Create
For
those of you interested in my work porting the Apache
Qpid C++ broker and client to Windows, that will be in
the M4 release within a couple of months. It is working
pretty well now and I'm merging the changes into the
main code base. Stay
tuned.
|
ACE 5.7 Release Coming
Soon
|
The most recent ACE
micro-release, 5.6.6, was released on September 15. The
next planned full release is ACE 5.7, scheduled for
release this quarter. Some of the benefits to the new
ACE release are:
- New port to HP-UX 11iv3 on Integrity
- Improvements and very important fixes to the
Service Configurator functionality
- A new ACE_Stack_Trace class that allows you to log
the current call stack at any point
- Improvements to support for many newer compilers
and platforms
Some of these items are also
available in the ACE 5.6a Fix Kit available to Riverace
ACE Support customers. If you'd like to discuss how the
new ACE release may affect your choice of tools for an
upcoming project, please contact me any
time.
|
| Do You Need Help Designing Your
Next System? |
Nobody has to tell you that
designing a well-formed, efficient, maintainable
networked application is hard. You've had to deal with
it. The problem is that networking functionality is
usually in a supporting role to your system's main
purposes, and your skills and experience are much better
used to focus on specific business and technology
issues. It may make more sense to bring in seasoned
expertise to help design a solid networking base in your
next system.
I've helped many companies get great
networked applications built - I may be able to help you
as well. Let's talk and see if I can help take care of
the networking, and let you focus on applying your
expertise and experience to the business features
that'll really help your system stand out.
Call
me at 508-541-9180 or email me at shuston@riverace.com.
| |
|
If you have any ideas for areas of networked
programming you'd like to hear about in future issues,
please email me with your suggestions. In the meantime,
keep those nets working!
Sincerely,
Steve Huston Riverace
Corporation
| | |
| |