For some odd reason, work allows me to handle phone screens and interviews. Each time I give an interview, I try to do three things. First I ask them about general programming questions. This might be OO questions. It might be methodology questions. It might be design pattern questions. Next I like to ask them more specific technologies questions, such as questions “how do you do ABC in Flex? Java?”. Lastly I want to know what they do in their spare time. What books they read? Do they code outside of work? How they go about researching new technologies? Etc.
Read more…
Marcel Best Practices, Learn This, Opinion, tutorial Best Practices, howto, Learn This, tutorial
Whenever Flash 10 came out a few months ago, they made a pretty big change to the security model which did not allow events to send files. Everything had to be handled by human interaction (AKA: MouseEvent.CLICK). Unfortunately that means that you now have to support both Flash 9 and Flash 10 in your flex/actionscript code. You never know when someone is going to upgrade to flash 10 to use your application. The problem is that in a business environment, it’s poor taste to require a business to upgrade everyone to Flash 10 to use your software. In fact, a lot of times, that upgrade is not even an option. If you compile something in Flash 10 though, your clients are greated with a nice message of ‘You must upgrade your Flash player in order to use this’. What we need to do is maintain binary compatibility with Flash 10, however not require it.
Read more…
Marcel Flex, Random Notes, tutorial Actionscript, Flex, howto, tutorial
Many times when we are designing our programs model, first thing most people, including myself, want to start doing is inheriting from other classes. This makes for a nice large hierarchical beast. Not that there is anything wrong with that, but it can lead to certain problems (from my own personal experience, it usually does). With composition, the programmer no longer has to extend from the parent class. You are able to expose only the methods you are interested in. In this article, I really want to discuss the importance of composition. I feel as programmers, many of us find inheritance easier and we often use it without thinking about the repercussions it may bring to us.
Read more…
Marcel Best Practices, Design Patterns, Opinion, Random Notes Best Practices, Design Pattern, tutorial
Most all web applications that I have worked on really break down to same types of components. There is usually a grid, perhaps a chart, maybe tab navigator at the top and, of course, a filtering mechanism. Lots of times, you will use the filtering down to the sql level to get data. However, its not always necessary to do that. The DataGrid component within flex does have a filterFunction property and there is no reason we shouldn’t take advantage of that. In some cases, depending on our object model, its tough to do that a “framework level”.
Now when I am coding up framework level components, I do try to keep application specific logic separate from just core components. (common sense. otherwise its not a framework level component). But I feel that a large amount people feel the filtering logic is all application specific and don’t necessarily take the time to write something in a more clean, reusable way. I have come up with a more usuable method of creating and adding filters dynamically at run time.
Read more…
Marcel Flex, tutorial Actionscript, Flex, howto, tutorial
In my previous tutorial on BlazeDS, I went over an example over how to setup remote objects with data push. There are however, a lot of instances where someone just wanted to receive data and they aren’t concerned with it being updated., so it turns more into a ‘client requesting data whenever it wants it’ scenario. This article will not be nearly as indepth as the last blazeDS article, but if you have not setup your environment for BlazeDS before, it will probably be in your best interest to check it out.
Read more…
Marcel Flex, tutorial Actionscript, blazeds, Flex, tutorial