Electronic Space Nintendo Rotating Header Image

My tools of choice

I just want to take the time to give props to the tools and frameworks I make use of in my daily work.

FlashDevelop 4 and free Flex SDK

It is my modest opinion that if you are a Flash-developing Windows user, there is no god damn reason on this earth not to work in Flashdevelop. Super fast, light weight, does everything, and if it doesn’t you can MAKE it do everything. Also, hey, it’s rock stable and totally free, with a truly awesome team of developers that will give you super mondo rad support on Twitter. Tweet anything with “Flashdevelop” in it and someone will respond. Wow. I write AS3, JS, Haxe and XML in FD, and while I’ve flirted with SublimeText, I return to FD for most of my basic text editing.

The free SDK is a true gift from Adobe that just keeps on giving. Free Flash development tools guys…  An entire industry spins along with its developers not paying Adobe a dime. It’s never been better to do Flash dev.

@ChevyRay’s AssetBatcher

AssetBatcher is a quick and simple AIR utility that takes a selection of files and spits out an AS3 class with class variable declarations and embed metatags. I’m hoping this will be built into FD eventually, but for now, if you have a heap of assets to embed, this tool will save you lots of annoying busywork.

Doomsday Console 2 and SLF4AS

Shameless self-promotion here ;-) but I *always* use SLF4AS and DConsole2. They’re simply indispensable tools for me, letting me get right to implementing functionality in models and services without worrying about the views until they need to get done. If you’re writing a MVC app, you can pretty much leave the V out and tie the controllers into the console. Tied into RobotLegs I get shit done so damn fast now it’s not even funny.

RobotLegs

I’m one of those jerk developers that would rather roll my own than trust someone else’s library, but RobotLegs really won me over once I actually put it to use. I’ve always favored writing lots of simple classes rather than build large and complex ones, and RL fits that philosophy like a glove. I do end up with a hell of a lot of classes, but once I get going I feel RL is there with me every step of the way to let me tie things together in a sound manner. I think it’s the best AS3 MVC framework out there.

Tonfall

Andre Michelle’s Tonfall framework is a tight general purpose audio processing framework for AS3, and it takes a lot of the frustration out of writing audio code for Flash. If you are ever going to be writing something like a music sequencer or instrument or audio effect in AS3, Tonfall is at the very least an excellent starting point. I’ve used Tonfall for all my work involving Flash audio sequencing, and probably will for the foreseeable future.

Nd2D

Of all the Stage3D 2D rendering frameworks out there, Nd2D feels the most aligned with my coding style, which has always been sort of gamey. I’ve used it for every application where I’ve needed hardware accelerated 2D, typically for large horizontally scrolling images or games with lots of sprites. The current game I’m working on is an experiment to see what kind of performance I can wringe out of AIR on my Android phone, and I’ve been working with a customized branch of Nd2D with solid results. For those moments you do have to go in there and add or remove or otherwise mess with the framework internals, the code is clean, readable and intuitive. Highly recommended.

TortoiseSVN

I always loved SVN and never had any of those apocalyptic hate-storms of SVN fuckups that I keep hearing so much about. On Windows at least, TortoiseSVN makes working with version control sharp and enjoyable. Having a hard time seeing myself transition to Git or Mercurial anytime real soon, though Mercurial is looking interesting.

Eclipse and Android SDK

Some people hate a lot on Eclipse, and I have to admit, I still don’t understand why. Performance has been good, it’s just rock solid for Java dev, and I have practically no complaints. When I pay nothing, I have a lot of lenience for the user experience side of things, but like with FlashDevelop I don’t feel Eclipse really compromises. I’ve tried NetBeans, but Eclipse remains my go-to Java IDE.

I use Eclipse for Android application development, and sometimes just messing about with Java to learn more. It’s just one of those languages I want to be better at.

VirtualDub

VDub is an open source video editor perfect for basic editing, joining and encoding videos. I often use it for making h264 videos from tons of still frames rendered from Maya or VVVV, but it’s also helped me lots in simply fixing busted aspect ratios and other such dull business. A wonderful tool, with both a GUI and a commandline client if you want to integrate it in your pipeline (that sounds dirty).

VVVV and PureData

VVVV and PD are modular visual programming tools, or “patchers”, both free for non-commercial use with VVVV offering a fair (IMHO) set of licensing options for commercial application. While not as superficially slick or popular as something like Max/MSP, I find them super satisfying to work with, and endlessly inspiring.

VVVV is focused on high performance visuals with built in support for distributed rendering and a frankly stunning set of modules for signal analysis and processing. It’s also THE best way to get stuck in and learn how to write HLSL shaders that integrate well with a larger application.

PD offers some visual processing, but is philosophically more aligned with audio processing, and offers a ton of modules for both creating musical instruments, and also for processing live audio.

Both VVVV and PD integrate well with Flash and others through tcp or udp sockets; I’ve used PD for pitch detection analysis for an exhibit where users sang into a mic and the recording was turned into midi data that played back a chosen instrument. I’m still learning VVVV, but plan on using it much more in the future. This is a toolkit where you can load a flash movie and draw it to a texture you can use in a shader on an animated 3d model in just a few clicks. It’s pretty radical.

Renoise


You need to a flashplayer enabled browser to view this YouTube video

Renoise is the best music tracker in town, if not the only one worth keeping tabs on. A truly professional music sequencer built around the tracker paradigm, with all the latest bells and whistles, including bonkers things like a full on LUA API. I’ve been using it for almost a decade now for most if not all of my music and audio editing, integrating well with Ableton Live through ReWire for specific uses (mostly working with vocal tracks). Dirt cheap, awesome, cross plat.

Autodesk  Maya

Maya is such a god damn joy for me… I’m not really interested in what 3D package is “better”, but Maya is the one that spoke clearly to me from the start. The big realization was that Maya is really a pretty small executable with a shit ton of scripts attached, and all those scripts are something you can mess with or add to. From the smaller things like splitting a joint into a forearm twist, automatically pre-scripted to self manage its rotation, to ridiculous idiocy like writing little games running in the editor, Maya scripting makes (and often breaks) the software. It’s one of the most personal tools I use, because I’ve invested much in making it personal. Few packages are so willing to give up their identity, but Maya is glorious anarchy.

I’ve been lucky to be able to talk my employers to buy me licenses (they are expensive), and I’ve used it since 4.5, for anatomically correct rigging and animation of human characters, 3D asset creation and texturing for games (it plays so nice with Unity, oh boy), and also some procedural geometry generation. I can’t wait to start building stuff for VVVV <3

Early thoughts on Prototype 2 (and game pricing)

Aw yeah, more poorly dressed jerks exploding fools

Cautiously picked up Prototype 2 on PS3. The first one was one of my favorite games of 2009, and that game in turn was pretty much a rehash of one of my favorite sandbox games of all time, Hulk: Ultimate Destruction. Guess what: Prototype 2 is more Hulk: Ultimate Destruction. Just massive, unending chaos and destruction. If you want some pure focus to your open world violence, Prototype is still the wildest it gets. High five Radical.

The problem here is, of course, that it’s more of the same. At $60.

It’s not hard to see the amount of work that was put into this game, and it’s not hard to understand why these guys want to go full price. But Prototype is a “B-game”, no two ways about it. It’s always been an indulgent, superficial toybox of stuff to waste your time with. In vaguer terms, Prototype isn’t “important”. We unfortunately live in a time where some games are important and some are not. Games have progressed this far, and Prototype is “dated” insofar as it has no purpose other than to entertain you.

I am having an absolute ball with Prototype 2, but I can’t recommend the $60 purchase to anyone, at all. It’s just too much. At $30 or $40, this would be so much easier to push on friends, and to be honest, Activision would probably make more money back from a lower price point.

I’m just talking out of my ass here, regarding the profit margins, but anecdotally games simply sell more when they aren’t full price. Why do publishers still insist on the $60 mark for games that clearly aren’t big tentpoles with established audiences?

Oh for fucks sake gamers…

It feels kind of wasted to have spent all this time defending video games against the criticism that they desensitize people to violence, when all kids can do when commenting on Youtube videos of Apache gun cams is reference Battlefield or Call of Duty. Real videos of real people getting shot to bits (Why the hell is this okay to put on youtube again?), and the video game references just fly.

I’m a military aviation enthusiast, and a ridiculously dedicated gamer for over 20 years, and I still don’t think it’s cool to watch what is essentially military snuff footage, and I don’t think it’s cool for video games to exploit the power fantasy FLIR gun cams and heavy artillery can inspire. It’s just a sickening warping of the reality of war.

Youtube should be blocking this shit, or at the very least age gating it. And people drawing parallels between reality and BF/CoD should be starkly ashamed of themselves. Epic compassion fail.

Why Adobe’s 9% cut bothers me

Update 1: Just in case you didn’t know what this is all about. Flash player premium features.

Update 2: Surprised by some of the comments, and the leniency towards Adobe. There seems to be a misunderstanding that Alchemy/C++ and the use of fastmem are not one and the same; They are. Suffice to say that while I understand the *corporate* politics behind the strategy Adobe has adopted, I still consider it a real dick move in essence. Like Mark Griffin said to me yesterday, if Adobe had announced fastmem/Stage3D as premium features in public beta right from the get go (the combination of these two features and the certain specific circumstances under which they are “taxed”  make this particularly awkward), there would never have been a controversy at all. It’s a huge PR blunder, and all my ire is, in the end, directed at how Adobe have ended up talking to its most dedicated user base. It’s just not well done.

Original post follows:

Keith Peters made the joke on twitter yesterday that hey, remember when we were all up in arms about Adobe’s bundling of the Yahoo toolbar with the Flash player?

It’s funny to think of things like that in hindsight, but I still think what they did then was wrong. The argument then for me was that the toolbar was opt-out, not opt-in. It was less about what the actual Yahoo toolbar was, and more about what Adobe were saying to its user base.

So, while we’re throwing a whine party, I can look back and laugh at my own rage back in the day, but I can’t deny the bits about Adobe’s latest and greatest that poke me in the side in much the same way. We’ll see how it pans out, but this is where the rub is for me:

1. The first taste is free

Though never formally announced as a product, Alchemy has essentially offered the world a free “first taste”, which has enspired enterprises to explore the platform, resulting *directly* in technologies like UnrealEngine3 and Unity running in the player. Worse, Alchemy makes a strong kind of sense to the most technically inclined among our community, allowing technologies like haXe to leverage new low level Flash Player functionality to attain performance levels that have required C++ conversion through Alchemy otherwise.  I’ve never actually used the fastmem opcodes in any form, but when Joa Ebert and Nicholas Canasse assure me of their importance, I’m inclined to take their word for it.

So what has happened here is that Adobe, hot on the heels of Joa Ebert’s now infamous FOTB09 session, where he tore the player apart from a performance point of view, has not only failed to improve the flash player in these critical fundamental ways, but have added new features on top of it, in some cases, as with Stage3D, escaping the performance issues with the Flash Player altogether by relegating much of the execution to the GPU. At its core, the issues intrinsic to the player remain the same, to the chagrin of any of us NOT inclined to jump on the GPU bandwagon until absolutely necessary. They have, apparently, ignored or pushed back fundamental improvements to the compiler that would make the use of fastmem opcodes natural, rather than an artificial “hack” to attain acceptable performance for uses such as DSP.

Bear with me here, but isn’t it kind of a dick move to take an improvement to the player that could benefit everybody, and artificially tax its usage?

2. The 9% cut.

It’s not a big cut. Actually, it’s negligible. I have accepted way worse deals in the past. So the number attached to the cut is not important. It is natural for Adobe to want to monetize their platform, especially considering how many free open source tools can build for it; they simply can’t rely on their tooling to pay for the platform development, and I think this is fair.

What bothers me is that this cut comes attached to functionality I feel should be intrinsic and thoroughly interwoven with the Flash player. Adobe tells me if I use these two technologies that allow low level access to hardware (memory and gpu), I am a special case, and I should expect to have to pay. I think low level access to hardware should be the absolute base line. I think stage3d and fastmem should be marquee features of the player as it evolves, and everyone should come to the player and not have to think of these two things as somehow “heavier” to implement. Stage3D and GPU integration should be a weighted optimization the developer can choose to implement versus his or her budget (time or otherwise), not a long term caveat. The 9% adds an unnecessary rub to the joy of implementing high technology that I personally feel is more akin to Adobe sneaking some fingers in the cookie jar just for the hell of it. The small size of the cut they are taking somehow makes it even worse; what kind of money are they actually  hoping to earn here?

The shitty thing for anyone offering anything for free, is that people get used to having them for free, and at that point, taking the thing away or attaching a price to it feels like a gip. It’s a textbook recipe for a community and PR backlash. Adobe could not win here, there would be outrage regardless, even if the cut was %1.

But even if Stage3D and fastmem are philosophically “separate” technologies to traditional Flash development, I can’t shake the feeling that this is just Adobe trying to monetize what they already have, rather than offer something genuinely new to justify the premium, or tax, or whatever you want to call it.

What I would personally have liked to see from Adobe is genuine premium features, such as the use of a unified Xbox Live style backend for Flash games, with leaderboards, multiplayer, friends list and the like integrated on a low level in the player. Done well, this would be a genuine premium feature, where they could offer functionality and performance its free competitors could not, in a package that nonetheless would be easy for developers to ignore should they not require it.

Adobe profess a dedication to games, but what they have done here is penalize the hardest core of game developers, no matter which way you turn the dime; A prospective penalty is still a penalty.

It’s a shame they couldn’t announce genuinely innovative premium features for Flash game developers, and instead chose to ride on the coat tails of the developments  of its most dedicated and driven community members.

Short book review: The Angry Right by S.T. Joshi

My first Joshi book not concerning Lovecraft, I was pleased to read a work with a little bit more bite and personal inflection to it. I picked it up on a whim and had a hard time putting it down.

Joshi decides to make his argument against the conservative right by establishing a rogue’s gallery of public conservative figures, including blithering crazies like Ann Coulter (who I suspect may just be an incredibly tenacious troll) and Sean Hannity, before spending a frankly obsessive number of paragraphs tearing their arguments apart one by one. The general argument, and purpose of the book, is that the conservative is by its nature doomed to compromise, and parodically prone to end up defending the ideals it once fought tooth and nail against. “The liberalism of today is the conservatism of tomorrow”. By examining the history of a writer’s output, Joshi demonstrates a historical drift towards the left for even the furthest right.

Being Norwegian, I have somewhat of a skewed perspective on the subject matter: Over here, the American conservative right is commonly seen as kind of crazy, and few if any right wing commentators with any actual clout would be caught dead exhibiting some of the views that are expressed by some of the people torn down in this book. Then again, being a social democracy, it’s baffling to see the conservative fear of “socialism” reach the frenzied level it does. It simply lacks a basis in reality, and has little nuance. Character assassinations on people that spend the most part of their lives being absolute d**kheads is a bit like shooting fish in a barrel, and some of the chapters here drag on as Joshi presents insane quote after insane quote that require little more than common sense to debunk, and then flowers up his debunking with more quotes and analysis. In short bursts, this approach is delightful, as Joshi possesses a dry wit and penchant for insidious sarcasm that frankly made me giggle with joy at times just from the sheer pleasure of the writing itself. But for a full book, this begins to grate… I found myself having to stop reading at times simply because the pattern was repeating too much.

It’s also a pity that Joshi’s personal views can obscure his objectivism at times. While I think the force of language used in most of the rhetoric he examines to be unconstructive at best, there is still room for discussion on certain topics, though Joshi is so enraptured with taking down his mark that he can write off arguments that, while clumsy, still could stand up to some debate. In a sense he doubly proves his point; The fury and stubborn tenacity of the conservative makes debate a sisyphean undertaking to consider; You can’t take a discussion seriously the moment you start accusing the opposition of wanting to kill anyone that disagrees with them (this is a quote from the book), and the liberal point of view – though to be honest I don’t fully understand what “the liberal” means although I assume I’m one of them – becomes cloyingly defensive in return. It’s just a terrible environment for discourse.

I’d recommend this book to anyone I know, though I assume the conservative rightist would implode if attempting to scale it. It’s not perfect, but an entertaining, smooth read with lots of neat anectotes.

Amazon