
PHP-Québec, Montréal-Python, Ruby Montréal, W3Qc, and OWASP Montréal are organizing the first edition of the ConFoo.ca conference, which will be held in Montreal on March 10th through 12th at the Hilton Bonaventure Hotel.
With over 500 expected attendees, Confoo.ca is the largest Web development conference in North America.
We are looking for the best speakers willing to share their experience and skills with programmers, managers, marketers and decision makers.
The conference is divided into two major parts:
1. A technical part, encompassing different aspects of Web development: PHP, Python, Ruby, security, project management, CMSs and frameworks, databases, systems administration, Web standards, accessibility and agile methods.
2. A decision-making part: referencing (SEO), Web marketing analysis and social networking.
Presenters can decide to present in English or French. Presentations are roughly one hour long. These may be recorded for later broadcast in digital format.
All relevant details concerning the conference are available on the confoo.ca website.
See you there!
Tags:
I’ve been supplied a 2D sketch of what my 3D world (PaperVision3D) will look like. The hardest part was matching the perspective by carefully positioning the camera. Having no other way than trial and error and a total of 7 different parameters, I quickly went nuts. This is a time consuming task: changing the values, recompiling, testing.
I wrote a tiny utility that allows you to position/rotate/zoom the camera visually, saving hours and possibly days of tweaking.
How to code it
Easily. Pass the camera object to the constructor and add the whole thing to your display list:
var cameraControl:pv3dCameraControl = new pv3dCameraControl(_camera);
addChild(cameraControl);
How to use it
Click and drag the desired text field and your camera will move, updating text field’s value. Once satisfied with the result, write down the numbers!
Also position objects
A second, similar utility I wrote allows to position objects in the viewport.
var objectControl:pv3dObjectControl = new pv3dObjectControl(viewport);
addChild(objectControl);
Click on an object in the viewport, then drag the desired text field.
Have fun.
pv3dCameraControl.as
pv3dObjectControl.as
I had an interesting Flex bug to solve a day before the project deadline. I was showing a progress bar while some images were preloading in the background. The application was only allowed to fire applicationComplete event once these images have finished loading.
The client complained that the progress bar stalls the first time you run the app in the browser. Refreshing the page causes the application to start immediately, as if everything has been loaded. I reproduced the bug with bandwidth throttling. That made me think: “the assets are being fully loaded, but the progress bar doesn’t seem to care”.
With further investigation, I realized that I solved the same problem over a year ago. When one creates Loaders on the fly, such as in a loop, one often does not keep any reference to these Loaders outside of the scope of the function. Since it is a good habit to make event listeners weak, it is possible for the garbage collector to flag these Loaders for removal before they even have a chance to fire their complete event.
So to make sure that the progress bar does not stall, I needed to keep a reference to the Loader that I create within my loop. I simply pushed every Loader to an array. Once everything finished loading and the application started, I cleared the array to allow the garbage collector to take care of the rest.
Problem
Progress bar stalls while preloading images.
Cause
Loaders with weak event listeners and no references to them within the application.
Solution
Use an array to store references to the Loaders until all of them have finished loading.
Recent comments