Austin Kottke's Code Site

Thoughts about Architecture – Java, C/C++, JS, Objective-C, Swift, Groovy, Grails, (RIP Flash)
Archive for the ‘Uncategorized’ Category

For some reason, companies like Microsoft, Google do not seriously believe javascript is a great programming language. I have constantly been working in javascript and see the pros and cons. I see that because of it’s amazingly dynamic nature you can do almost anything. However, because of this dynamic nature it makes it prone to errors almost immediately. Most recently Microsoft unveiled it’s new language called Typescript, which converts an object oriented scripting language with Interfaces, Classes, constructors into javascript. Now look at Google Dart which by the way is in full swing and it does nearly the same thing except with an actual VM. Some people thought it died, but they are working on a milestone 1 release. So the big question is, which one is going to DIE first??? Or is Apple going to come up with their own intermediary language and pose another type of intermediary language that converts to JS. Ahh, I miss the days of Flash being King. Where you had one tool to do amazing stuff and never needed to worry about browser dependencies. I was knee deep into an HTML5/CSS3 book about 8 months ago and the opening introduction said “We need to infer to our clients that the project will not look the same on multiple browsers.” Wow, seriously? It’s because of this problem and competing vendors that we have this issue. Why cant vendors just work together one on project and support it? There is very little money in open source tools. Wouldn’t it be nice…

Anyone who has done RIA development, back-end development and worked with a myriad of languages that include strong typing and compile time checking knows that Adobe’s announcement of the non-existence of a mobile flash player has set the entire flash development community backwards into a realm of using javascript and shitty compilation standards. HTML5 is cool, but for real – it comes down to javascript. Don’t get me wrong I love javascript, for little things here and there and working on a page. But a usual flash application can be up to a 100,000 lines of front-end code. I sought out to prove to myself that javascript could be a force to be reckoned with so I set myself up with Aptana again and downloaded all of the latest libraries, jquery, mootools etc. I then decided to create classes using mootools. To my dismay creating a class is at run time only so guess what: 1. If using new frameworks to create classes instead of the usual prototype BS, you will thoroughly disappointed that you will have no compile time checking. 2. Thus if you have an error in your class you will never know until you run the app. 3. console.log doesnt work in IE 8. Thus from my deduction the only logical approach to this is the fact that you must use prototype to create your classes and not rely on strong typing. Even then, if you use prototype to create a class AND then use another class within that class all compile…

I would like to get feedback from developers from using Adobe’s Mobile Development toolset, particularly in flex sdk 4.5. Can some developers provide some pros and cons in using it? Speed of performance, android phones, tablets. Also, Ive tried some apps on an Iphone 3GS and found them really slow. How is the speed now? What can and cant be done?

So now all of us awesome developers who have been developing and programming for the adobe flash platform for years now have an opportunity to write some awesome apps for mobile platforms. The big question that we as developers have and need answered are – what are the drawbacks of developing with Adobe’s tools as opposed to developing with something like the android SDK or the Iphone SDK. What challenges and problems are we going to encounter. My questions for adobe: 1. What is the roadmap and to-dos on the Air Mobile SDK 2. Native controls – how do you access these using the Air Mobile SDK 3. How do you program in 3D for IOS/Android using native GL graphics calls. Is this possible? 4. Is there some way to leverage advanced APIs for IOS and Android 5. Can you actually use APIS on the IOS platform via a “hack” or some way… what if a company invests millions of dollars and the adobe tools are selected as the platform of choice and we need to do an advanced task that is not in the AS3 Air Mobile SDK? What do we do? I think that a lot of developers have these questions and it would be good to get some light on this before talking to the higher ups on the pros and cons. Thanks =)

Something that I think should be done for the flash player, now that HTML 5 is gaining ground, is an inline HTML renderer that should be packaged as part of the download. Potentially it could be an optional download. I mean the core code base is already a part of the AIR packager. How hard would it be to make an external RSL that gets cached or make it part of the flash player 11 installation with a checkbox to download this in addition. If there is an update to the web kit renderer, it then flags this in the flashplayer download manager… Just a thought to make flash player 11 completely blow away. We’ve got 3d support, but how about a little HTML 5 renderer as part of the flash player?

So, the new flash player is out. And the one thing Im thinking is – AWESOME. So, I’ve been looking at the API docs and the program code and all that looks hot. Stencil Buffer, Depth Buffer, Vertex Buffer – they basically made it almost identical to NVidia’s C++ CG, CGFX. However I did not see profiles, but Im sure this is going to be a smart solution done. So the wheels are turning and Im only thinking to myself, If Adobe, NVidia, and Microsoft can get together to develop some kind of HLSL (High Level Shader Language) that all three can use – a simple wrapper – MAN we’re going to be in heaven as 3d developers. Then, the shaders for say your favorite PC game can be loaded directly into a flash game, and the same shaders can apply to the model. Because you’ll be using a PC for all types of development. The only issue this poses is when you export to mobile – a lot of the same shaders will have to be dummied down – so adobe will need to come up with some kind of profile mechanism – similar to how CGFX does it where it loads back up shaders if the hardware cannot support the shader. Are you excited about this? I think this is going to kick ass!!!

For the last few years I’ve been developing in flex. One of the very nice features is RSLs to save on file space, but no matter how much optimization work you end up with a huge SWF right? Which is why developers end up using flash for web development. How many times have you wanted to use the RPC components but ended up scrapping them because they bloat your SWFs? I’ve had to resort to custom AS3 soap libraries, or even have had to hack an existing AS3 web service implementation because it wasn’t compatible with ALL SOAP specs, as in each server has little nuances which can potentially break an AS3 implementation. The joys =) Ive been doing a lot of flash dev recently, and one option which I think a lot of flash developers miss over is the fact that they compile assets within assets that are shared across multiple SWF files. E.g. you have the Pure MVC framework or cairngorm classes compiled into 5 swfs, when really, all you need to load in a single shell SWF and all future SWF files can reference the classes normally WITHOUT compiling in the entire framework. So how do you do this? How do you make your other SWFs not compile the entire framework such as ui components and buttons and flash? Well, instead of doing all the runtime instantiation and non strong typing – you know like var myClass:* – which is prone to errors, use mxmlc -load-externs. So the steps are as follows:…

There is a new article from the blitz agency on how to use papervision with 3dsmax to skin properly. Check out the article here

January 31st, 2007

Papervision – 3d car

No Comments, Uncategorized, by austin.

Carlos just posted a really cool demo on 3d in papervision. It looks like it has some neat effects: Carlos car demo

January 29th, 2007

Charting library in as2

No Comments, Uncategorized, by austin.

Darren cook has released an open source project on source forge for charting. It looks pretty interesting. You can see it here: