DIGG IT!
0
Comments Published
Monday, May 17, 2004
at
12:20 PM
.
2000 Installations took 2 months, 14 days, 18 hours and 35 minutes. Here are some Icon Builder / Central stats.&
(10%) 201 Mac Installations
(90%) 1799 Win Installation
Version 1.4 should be out in June. Image import and export make the app fairly useful for conversion of graphic formats.
I am using the graphics format for a massive multi-player game due out in July. The game uses PowerSDK SYNC server and characters were created with Icon Builder. Think platform independent Zelda times web-wide multi-player. The game will ship as a Central app.
DIGG IT!
0
Comments Published
at
6:19 AM
.
I spent the last 10 days diving in the Caymans. My wife and I were aboard the Cayman Aggressor IV and the trip was simply fantastic. Here is a flash slide show from the trip. &
DIGG IT!
0
Comments Published
Friday, May 07, 2004
at
1:41 PM
.
I am pleased to publicly announce a partnership with Christian Tismer of Stackless Python to co-develop a high performance internet server framework. The server will be presented at the Euro-Python 2004 in June.&
The project has created a reusable high performance server framework using Stackless Python. The server framework allows high performance servers to be written by simply defining the message protocol in Python. The first server in development provides presence services (instant messaging and chat) optimized for communication with Macromedia Flash called PowerSDK SYNC.
The server design is unique in that it utilizes a light thread model called tasklets. Tasklets provide a single thread in under 800 bytes of memory which operates independent of the C stack. Under this model the server can easily manage 1,000-100,000 tasklets processing data in parallel. Testing shows the servers are materially faster and more scalable than any server in the marketplace. Combined with clustering, the servers provide ample support for any scale project.
In the coming weeks we will be announcing a beta test of the SYNC Flash Client SDK. The toolset will allow developers to create Flash clients that work against a public SYNC server.
DIGG IT!
0
Comments Published
Thursday, May 06, 2004
at
6:20 AM
.
PRIM ships with support for a new type of reference called Prim.REFERENCE_PATH. Unlike plain references, a reference path always uses path to determine its value and is never frozen. Although confusing at first, I have found myself using reference path in all sorts of cases. &
// create a prim reference path in global
// set value to mirror _level0._x
_global.createPrim ( Prim.REFERENCE | Prim.PATH , "my_x" , "_level0._x" )
The key here is that every "get operation" retrieves the value of _level0._x by path and every "set operation" sets the value in the scope of the path property. Shifting _x around remotely is cool but there are far more practical uses.
// create a prim reference path in global
// set value to a path that has yet to be created
_global.createPrim ( Prim.REFERENCE | Prim.PATH , "mydog" , "_level0.dog" )
trace ( _global.mydog ) // undefined
_global.mydog = { a:23 , b:"Hello World" }
trace ( _level0.dog.a ) // 23
_level0.dog = new XML( "<hello/>" )
trace ( _global.mydog ) // <hello/>
_level0.createEmptyMovieClip( "dog" , 2000 )
trace ( _global.mydog.getDepth() ) // 2000
//global seems allot more useful now doesn't it ;)
Typically this would not be the case. As soon as you set the value of _global.mydog all association with _level0.dog is gone and changes to _level0.dog are irrelevant. The above case lets you bind 2 properties together based on path making them seemingly identical. Better still is the fact that you can chain many properties together so 5, 10, 15 properties can all point to a single value. This is especially useful in a class that needs to provide a local property yet is linked to a global property. If the property is modified in a class instance, the global property is modified transparently and changes are provided seamlessly to all other instances. Even methods of a class can be Reference Paths that execute on a different objects altogether yet seam local to the class.
DIGG IT!
0
Comments Published
Wednesday, May 05, 2004
at
8:17 AM
.
I have been busy working on PRIM, a new product from PowerSDK Software. Thanks to the contributions of the PRIM Beta team, we very close to a 1.0 release. I wanted to introduce you to PRIM and provide a discount for pre-release licenses.&
What is PRIM?
PRIM is a new primitives library for Flash. PRIM provides 50 new primitive types for use with Actionscript, compatible with Flash Player 6 or higher. The new types manage data by value through get and set operations in unique ways. It is best to think of PRIM as a library of pre-defined getter/setters with unique behavior.
Here is an example using Prim's Integer Type:
//create a prim integer
createPrim ( Prim.INTEGER , "myInt" , 34)
trace ( myInt ) //34
//set the value
myInt = 22.34243234
trace ( myInt ) //22
A key to PRIM is understanding that all functionality happens at runtime not at compile-time like AS2 strict typing. In providing new behavior, PRIM types eliminate redundant data management code from your software and generally make development more exact. The above example provides an integer that can only be an integer at runtime. If you attempt to set it to a value that is not an integer, it will convert the value to an Integer or resist the modification.
PRIM also provides a more strict version of integer that can only be set by passing a valid integer as follows:
//create a prim integer
createPrim ( Prim.INTEGER | Prim.STRICT , "myInt", 34)
trace ( myInt ) //34
//prevent set due to non-integer value
myInt = 22.34243234
trace ( myInt ) //34
//set the value
myInt = 99
trace ( myInt ) //99
PRIM supports a powerful event model to allow you to subscribe to value changes on PRIM types. The events allow you to see exactly what has occurred externally to the property.
PRIM is licensed per developer annually providing all updates and email support for one calendar year from license date. When the development team adds new types to the release, these will be available to all current licensed users without cost. In licensing PRIM, you will also get access to pre-release builds, development list-serv, and will be able to influence the development of new PRIM types.
PRIM is priced at $50 per developer annually. Currently you can license PRIM at a pre-release discount of 30% or $35.00. Pre-release licensees will receive access to the PRIM beta prior to the public release.
If you have questions or comments about PRIM, please feel free to email me at mailto:ted@powersdk.com .