All! It's a special CF8 Launch party!!!!
NGA.net, Level 2, 17 Raglan St, South Melbourne
8th of August, Meeting starts at 6:30, so get there before hand -
** Please note, we are starting a little bit early this time, due to the crossover between states.
This is the official ColdFusion 8 Launch Party!
We will have presentations from Ben Forta via Connect, crossovers between the launch parties at all the other CFUGs across Australia and New Zealand, and prizes from Adobe for those people that attend!
Everyone is welcome, and if you haven't attended a single CFUG meeting yet, now is the time to come down!
If you are going to attend, please RSVP to mark [dot] mandel [at] gmail [dot] com.
See the CFUG Melbourne Calendar at:
Or add to your Google Calendar - search for 'CFUG Melbourne'.
As per usual, we'll grab pizza during the evening, so we have
something to scoff down!
Look forward to seeing you all there.
This is a FAQ that was first written back in 2004, and has been
updated ever since, but outlines what I believe to be the best way to
ask questions on technical forums.
I think it's important to post it up, every now and again, so that people remember that it exists for a reason ;o)
How to Ask Questions the Smart Way
I've started using Pownce
mainly these days, instead of Twitter
. While I do like Twitter, Pownce just has a more polished feel to it, and has some far better functionality.
If you want to reach me on Pownce, you can catch me at: http://www.pownce.com/Neurotic/
Here is a quick rundown of the things I like about Pownce, and some of the things I don't.
Things I love about Pownce
- The ability to send anything is SO much better than Twitter
- being able to set to 'sets' of people is great
- So easy to send someone a direct message, without anything weird to type (D name... wtf?)
- Threaded conversations! Very nice!
- You can delete messages once they have been sent!
- Multiple versions of privacy
Things I'm not liking / would like improvements for
- The search functionality is bad, if search for 'Mark Drew', I get everyone whose first or last name has 'drew' in it, which means I get way too many results, and in the wrong order
- I can't run the AIR application, as AIR isn't supported on Linux
(which I think is a silly move on Adobe's part considering the trend
for developers to move away from Windows to either Mac or Linux, but it
may be just something they had no choice on, as I believe the Flash 9
plug-in for Linux is not quite up to par yet...)
- It would be great if events showed up, automatically converted to my time zone
- I can't Pownce from my mobile (I'm sure it will come)
- I kinda miss the IM bot that Twitter has, but I probably wouldn't complain if I could run the AIR app
- I would like to be able to see replies to Pownce's load up under the initial Pownce, rather than having to click in.
If you add me on Pownce, you may even get quick glimpses of what I'm doing with Transfer.... now isn't that special ;o)
Nick Tong over at Succor
has posted a Fusebox lexicon for using TQL
! Pretty neat stuff!
If you like Fusebox
, and you like Transfer
, I suggest having a look.
I have to say, it's really cool watching all these framework work together... ;o)
Yes, it's true, I've finally succumbed, and put ads on my site, and
switched out the wishlist for a PayPal donate button. I have finally
turned to the dark side.
Do not fear! There are reasons for this!
First of all, the Amazon wish list, didn't really work out. I'm sure
people thought 'I'll buy Mark something from the wishlist, he'll like
that', and then quickly realised it can be up to $30 to send stuff to
Australia, and that whole idea quickly went out the window.
Second of all, I really want to get out to more conferences overseas.
Unfortunately, while living in Australia is wonderful, we are about as
far away from anyone as can possibly be. This means that travelling
can be really expensive
. So this is to say that any revenue
and/or donations that I receive from the ads, or from PayPal, will go directly to funding conference travel costs, and
also to general open source development costs.
So if you do like the work that I've provided for you guys, please feel
free to click the PayPal donate button, its always appreciated, and
allows me to come out to more conferences, and put more resources at
Me as a Simpsons Character....
...the resemblance is uncanny. :oD
Last week we had Robin Hilliard of Rocketboots
into the office to help us get the biggest bang for our buck performance wise with the Transfer
application, and I have to say it was a great session all around.
Apart from imparting upon us a great many ideas for aspects of our
application we could cache, and various other pearls of wisdom, we
turned on Report Execution Times, and managed to find several key
places in Transfer that were sometimes called over 500 times in one
request (we do a fair amount of data movement per request).
For one thing, in all honesty, I had completely forgotten about Report
Execution Times. I had turned it off when it was making my CFC heavy
applications go into a slow paced crawl, and had quite literally left
it for dust.
However, after turning it on, and just running it over just a few
requests, the key areas of Transfer that would provide significant
performance increases became very apparent very quickly.
This is where all those small, finicky, performance 'tricks' come to the fore very quick -
- using else/if statements rather than case statements
- replacing the use of iterators with for() loops that use a counting numeric index
- playing with different Java Collections for different operations - i.e. ArrayList vs LinkedList
- Assigning method results to variables before large looping operations, rather than evaluating them every time.
- ..and other such things
It should be worth noting, that by doing some of these things, the code
ended up looking rather ugly, but with testing, performs faster than
before. So this is not to say that I went through the entire Transfer
codebase and switched out everything I could find to being the most
efficient I could possibly, in fact that couldn't be further from the
truth. There are many places in Transfer that use case statements,
even knowing that else/if statements are faster - simply because I find
case statements are more readable, and they are not in places of the
system that are called in numerous succession. By the same token, I
make extensive use of Java iterators to loop over my collections in
Transfer, as they provide a high degree of abstraction away from what
sort of Collection is being used behind the scenes, but those places
are now limited. However, by specifically pin pointing aspects of the
system that are critical to the performance of the framework, the
necessary tweaks to the framework could be discovered and acted upon.
So say thanks for Robin for the new performance improvements for Transfer that can now be found in SVN.