Newsletter Archive
ZeroC published 28 issues of Connections containing a wealth of information on topics that did not fit neatly into the Ice Manual. Although we no longer publish the newsletter, we continue to enhance the FAQ list and publish in-depth technical articles and white papers. You can also read our blogs for editorial content and other musings by the ZeroC staff.
Issue 28, April/May 2008
- Editorial: Terms of Service
- New Features and Changes in Ice 3.3
- Background I/O
- Highly Available IceStorm
Issue 27, November/December 2007
- Editorial: From the Laboratory
- Implementation and Interface: The ControlServer Part 2
- Every Cloud has a Silver Lining
Issue 26, September/October 2007
- Editorial: Ice—What's the Point?
- Implementation and Interface: The ControlServer
- PayPal: E-Commerce without Ice
- EBuddy: E-Commerce with Ice (Sample Code)
- Editorial: Bridge to Nowhere?
- Beyond Freeze—Persistence with Ice (Part 2: Advanced Topics)
- Who's Counting?
- Editorial: Diversity
- Beyond Freeze—Persistence with Ice (Part 1: The Basics)
- Connection Management in Ice
- Editorial: Stable!
- Proxies
- Master-Slave Replication with Ice (Sample Code)
- Editorial: Good Programmers are Rare
- An Autonomous Vehicle Using Ice and Orca
- Teach Yourself Glacier2 in 10 Minutes
- Editorial: Ice 3.2 Beta
- What's New in Ice 3.2?
- IceGrid Replication
- IceStorm 3.2
- Editorial: 80 Percent?
- Ice for Ruby
- Optimizing Performance of File Transfers (Sample Code)
- Editorial: Leaky Abstractions
- Custom Sessions and IceGrid (Sample Code)
- Teach Yourself IceGrid in 10 Minutes
- Editorial: Abstraction Layers
- Session Management with IceGrid (Sample Code)
- Write Once, Read Everywhere (Sample Code)
- Editorial: Tower of Babel
- IceGrid Security (Sample Code)
- Editorial: Plans for the Future
- Ice and Character Encoding (Sample Code)
- IceGrid Sessions and Resource Allocation (Sample Code)
- Editorial: The Emperor has No Clothes
- New Features in Ice 3.1
- API Changes in Ice 3.1
- Integrating Ice with a GUI: Part IV (Sample Code)
- Editorial: Next Generation Grid Computing
- Integrating Ice with a GUI: Part III (Code for 1st Example, Code for 2nd Example)
- The Samsara of Objects: Life Cycle Operations (Sample Code)
- Editorial: Community Spirit
- Integrating Ice with a GUI: Part II (Sample Code)
- Ice-E 1.1 : What's New? (Sample Code)
- Editorial: The History of Ice
- Dynamic Ice, Part 2: Streaming (Sample Code)
- Integrating Ice with a GUI (Sample Code)
- Editorial: The Nice Thing about Standards...
- Dynamic Ice, Part 1: Efficient Request Forwarding (Sample Code)
- Freeze Indexes (Sample Code)
- Editorial: Happy New Year!
- Using Ice in Windows Services
- Freeze Maps (Sample Code)
- Editorial: Exciting Times
- Grid Computing with IceGrid
- Migrating from IcePack to IceGrid (Sample Code)
- Editorial: At a Loose End...
- FreezeScript (Sample Code)
- Can a Leopard Change its Spots?
- Editorial: Choices...
- A Persistent Chat Server (Sample Code)
- Protocol Compression: Friend or Foe (Sample Code)
- Editorial: Caveat Emptor
- Advanced IcePack (Sample Code)
- Taxing Times (Sample Code)
- Editorial: What is RPC?
- Introduction to IcePack (Sample Code)
- Ice-E: A Preview
- Avoiding Deadlocks, Part II
- Editorial: Why Smart People Defend Bad Standards
- Asynchronous Programming (Sample Code)
- Avoiding Deadlocks, Part I
- Editorial: Invent It or Use It?
- An Introduction to IceStorm (Sample Code)
- Interpreted Ice: Distributed Application Development on Steroids (Sample Code)
- The Grim Reaper: Making Objects Meet Their Maker
- Editorial: Welcome to Connections!
- To Slice or Not to Slice
- Advanced Use of Glacier2 (Sample Code)
- Thread-Safe Marshaling
- Ice and Grid Computing
- Editorial: Welcome to Connections!
- Session Management with Glacier2 (Sample Code)
- Ice and Python—A Match Made in Heaven? (Sample Code)
Articles are grouped into the following topics:
- General Topics
- IceGrid
- Glacier2
- IceStorm
- Freeze
- Ice for C++
- Ice for Python
- Ice for Ruby
- Ice for PHP
- Ice for Silverlight
- Threads and Concurrency
- Application Integration
- E-Commerce
- Embedded Ice
- Release-Specific Articles
General Topics
- To Slice or Not To Slice
- This article examines the need for type systems and type definition languages and contrasts the approach taken by Ice with Web Services.
- Proxies
- Proxies are a fundamental concept of Ice. This article explains what proxies are and how to use them.
- The Grim Reaper: Making Objects Meet Their Maker
- This article describes how to get rid of objects that have been abandoned by clients.
- The Samsara of Objects: Life Cycle Operations
- This article explains how to implement creation and destruction of Ice objects.
- Can a Leopard Change its Spots?
- How to version deployed applications without breaking everything in sight.
- Asynchronous Programming
- Asynchronous invocation and asynchronous dispatch allow clients and servers to regain the thread of control while an operation is in progress.
- Background I/O
- New features added with release 3.3 make it impossible for a caller of an asynchronous operation to block.
- Dynamic Ice (Part 1)
- Untyped invocation and dispatch enable the implementation of very efficient message forwarding with Ice.
- Dynamic Ice (Part 2)
- The Ice streaming APIs allows an Ice application to invoke and dispatch operations without any compile-time knowledge of parameter types.
- Write Once, Read Everywhere
- How to generate documentation from Slice definitions.
- Protocol Compression: Friend or Foe
- How to effectively use protocol compression to increase throughput.
- Ice and Character Encoding
- How to use different codesets with Ice for C++.
- Optimizing Performance of File Transfers
- Performance tuning for Ice applications (not necessarily just for file transfers).
- Using Ice in Windows Services
- How to turn an Ice server into a Windows service.
- Connection Management in Ice
- A detailed look at how the Ice run time establishes and tears down connections.
- PayPal: E-Commerce without Ice
- An analysis of the ubiquitous electronic payment service's use of HTTP for RPCs.
IceGrid
- Ice and Grid Computing
- Preview article that describes the features of the initial IceGrid release.
- Teach Yourself IceGrid in 10 Minutes
- A bare-bones introduction to getting started with IceGrid.
- Grid Computing with IceGrid
- A feature overview of IceGrid with examples.
- IceGrid Sessions and Resource Allocation
- How to use the session management features of IceGrid to control access to resources by clients.
- IceGrid Security
- How to secure client access to IceGrid resources.
- Session Management with IceGrid
- How to to combine IceGrid access control and session to protect a Grid against malicious clients.
- Custom Sessions and IceGrid
- How to extend IceGrid's session management to cater for specific application needs.
- IceGrid Replication
- How to configure a replicated IceGrid registry.
- Master–Slave Replication with Ice
- How to use master–slave replication in your Ice applications.
- Migrating from IcePack to IceGrid
- Transition guide for IcePack users to move to IceGrid.
- Introduction to IcePack
- Introductory article on IcePack (now superseded by IceGrid).
- Advanced IcePack
- Using advanced features of IcePack (now superseded by IceGrid).
Glacier2
- Teach Yourself Glacier2 in 10 Minutes
- How to get started with Glacier2.
- Session Management with Glacier2
- How to use Glacier2 sessions to secure access to resources and to clean up resources when clients disconnect.
- Advanced Use of Glacier2
- Using Glacier2 to protect against denial-of-service attacks and create scalable applications.
IceStorm
- An Introduction to IceStorm
- Using IceStorm for decoupled event delivery to multiple consumers.
- Highly Available IceStorm
- Fault-tolerant features for IceStorm added for the 3.3 release.
- IceStorm 3.2
- New features in IceStorm for the 3.2 release.
Freeze
- A Persistent Chat Server
- Using Freeze to add persistence to an existing application.
- FreezeScript
- Migrating databases to new schemas with FreezeScript
- Freeze Maps
- An in-depth look at Freeze maps and how to use them.
- Freeze Indexes
- Using Freeze indexes to speed up data access.
Ice for C++
- Who's Counting?
- An explanation of how Ice smart pointers work and how to use them effectively to easy memory management of C++ applications.
Ice for Python
- Ice and Python—A Match Made in Heaven?
- Getting started with Ice for Python.
- Interpreted Ice: Distributed Application Development on Steroids
- Tips and tricks for prototyping, debugging, and maintenance, for Python and other languages.
Ice for Ruby
- Ice for Ruby
- An introduction to writing Ice applications with Ruby.
Ice for PHP
- EBuddy: E-Commerce with Ice
- Building an electronic payment service with IcePHP.
Ice for Silverlight
- Every Cloud has a Silver Lining
- An introduction to Ice for Silverlight, a ZeroC Labs project that integrates Ice with Microsoft's new platform for interactive Web applications.
Threads and Concurrency
- Thread-Safe Marshaling
- An introduction to thread-safety issues for Ice servers.
- Avoiding Deadlocks (Part 1)
- Strategies to detect and debug deadlocks in threaded applications.
- Avoiding Deadlocks (Part 2)
- Design strategies to avoid deadlocks.
Application Integration
- Integrating Ice with a GUI (Part 1)
Integrating Ice with a GUI (Part 2)
Integrating Ice with a GUI (Part 3)
Integrating Ice with a GUI (Part 4) - Four-part series of articles on various aspects of integrating Ice clients with a GUI.
- Taxing Times
- How to integrate Ice with Microsoft Excel and Word applications.
- An Autonomous Vehicle using Ice and Orca
- How Ice was used for communications in a car that drives by itself.
- Beyond Freeze—Persistence with Ice (Part 1: The Basics)
Beyond Freeze—Persistence with Ice (Part 2: Advanced Topics) - Two-part series of articles on integrating Ice applications with relational database management systems.
- Implementation and Interface: The ControlServer (Part 1)
Implementation and Interface: The ControlServer (Part 2) - Two-part series of articles on designing a control system using Ice.
E-Commerce
- EBuddy: E-Commerce with Ice
- How to create a simple e-commerce system using Ice for PHP.
- PayPal: E-Commerce without Ice
- An overview of the PayPal payment APIs, and how to do better with Ice.
Embedded Ice
- Ice-E: A Preview
- Preview article describing Ice-E, ZeroC's embedded version of Ice.
- Ice-E 1.1 : What's New?
- New features of the Ice-E 1.1 release.
Release-Specific Articles
- New Features in Ice 3.1
- Overview of new features added to Ice 3.1.
- API Changes in Ice 3.1
- Summary of API changes in Ice 3.1.
- What's New in Ice 3.2?
- Overview of new features added to Ice 3.2.
- New Features and Changes in Ice 3.3
- Overview of new features added to Ice 3.3.