I got punk’d at 360|Flex (in my own session!)

So there I was at 360|Flex giving my presentation. I guess when you call your session “Cool Shit” you’re just asking for people to fuck with you 🙂 So I’m going through some example applications and I’m near the end of the session and I get to the grand finale. The demo I was about to show was an augmented reality demo, combined with some head tracking stuff too. And I figured since it’s called “augmented” reality I’d do a demo that really captures that word, so while standing there in front of a packed room of developers I take off my shirt to reveal an augmented reality marker on my chest. When I step in front of the webcam the video detects the marker and shows a big muscular chest instead of my wimpy geek body. As I was doing body builder poses and taking silly pictures, suddenly *whack* – I get hit in the face with a flying object. Not quite sure what the fuck just happened, so I keep going on with the presentation like normal (for some reason the fact that someone threw something that hit me in my face didn’t seem all that abnormal). Then suddenly there’s a massive barrage of projectiles raining down on me. It takes me a while to figure out what’s going on, and then finally I understand: the audience is pelting me with little bouncy balls. What the fuck?

This video of part of my session has been floating around a bit, and if you don’t know this back story you probably have no idea what the hell is going on. But check out the video, and when you see me posing with my muscles and then suddenly recoiling in pain, and then you hear everyone laugh, that’s when I start getting hit with a shitload of bouncy balls.

So it turns out that some devious developers (I believe led by Nate Beck) were out drinking at some place where you play games and get tickets that you can redeem for prizes (aren’t you boys a bit old to be at Chuck E Cheese?). So they get a bunch of tickets and what do they decide to cash in for? Bouncy balls. All bouncy balls. Then the next day they come in to my session, and I have no idea how they pulled this off without me noticing, but they hand out these little bouncy balls to everyone in the first few rows of the room. Apparently the instructions were: when Doug takes off his shirt, let the balls fly. Awesome. I guess word had gotten out enough that I was doing something that involved getting partially naked (either from my tweet or just from me spilling some details when I was out drinking). And you gotta admire the guy who threw the first one (and hit me right in the face no less), that takes balls (pun obviously intended).

So that’s the story behind that video for anyone who saw that and had no idea what the hell was going on. Nate, I admire your creativity, you got me good. But you better watch your back, I’m going to be sure to be in the front row of any presentation you might be doing 🙂

P.S. I’m working on posting all my slides and code from my session, hopefully I’ll get all that up tomorrow.


My foray into tweetcoding

I finally broke my Twitter silence and tweeted so I could participate in the tweetcoding competition that Grant Skinner launched. Here’s the code of my amazing entry:

if(!i++) { o=new Loader(); o.load(new URLRequest([“http:”,,”is.gd”,”kUV9″].join(“/”))); } if(o && o.width) { stage.addChild(o); }

And here’s the link to the auto-generated SWF produced by that code.

So for those of you who have been following me on Twitter waiting for me to say something, I hope a dorky joke made of code is everything you expected and more. My entry is kind of cheating I suppose, but it’s all for a good laugh 🙂

The tweetcoding competition is really cool, and people who are taking it seriously (obviously myself not included) are making some really impressive stuff in 140 characters. If you haven’t perused the entries, go to this page and explore. Anything tagged with #tweetcoding is shown in that list, and all the entries submitted are automatically compiled.

And as a tip to others, if you’re going to do an entry, make sure to write it and test it in Flash. I first tried just doing an AS3 project in Flex Builder, but running code in an AS3-only Sprite-based project is quite a bit different than running code on the timeline. It wasn’t until I installed Flash CS4 and tested on the timeline that I got an entry that the tweetcoding compiler would compile correctly (I submitted 3 entries that didn’t compile).


What my work day looks like

I’ve been using RescueTime recently to track my computer usage during the work day. I’m not really trying to curb bad behavior or specifically stop wasting time on particular tasks, I just kind of like to see how I work. For those that don’t know about RescueTime, it’s a little time tracking app that runs on your computer and logs what applications and websites you visit and how much time you spend. Then you can see some cool reports to visualize where your time goes.

This chart shows the time I spent on the computer yesterday:

So you can see I woke up a bit past 8 and had a bit of a slow start to the day. Between making coffee and dilly-dallying I managed to waste most of the 9am hour. But then I got into the swing of things. I think the 10am hour is one of my most productive all day. My brain’s well rested but awake (thank god for that coffee) and I have very few interruptions. We do a daily scrum call at 11, so I usually have until then before I get sidetracked with phone conversations and other things that start cropping up. Then I took a 45 minute lunch a bit before 1 and then was back at work until 6.

Here’s the chart that shows the % of each hour that was taken up by Flex tasks, which I’ve basically defined as Flex Builder or debugging in Safari.

So that shows that for the majority of the day I’m either using Flex Builder or using Safari specifically to debug Flex apps. One thing that I found interesting, however, is to compare the time spent on my top 10 activities:

So clearly you can see Flex Builder and Safari rising to the top of the list. Note that RescueTime logs my local testing as file:// since it thinks it’s a web page, but it doesn’t know how to deal with local pages I guess, so that file:// means I was running a Flex app in Safari. One thing that struck me was the total time spent in any particular app didn’t seem that high. Out of an 8 hour day I spent 3 and a half hours in Flex Builder itself. I spent another hour or so testing/debugging in the browser. So about 56% of my total time during the day is actually spent writing code/debugging. The rest is management tools (FogBugz is issue tracking, we use Google sites for project documentation, gmail for email, Adium for IM) and news reading (MXNA, some random article on Washington Post that took me 5 minutes to read). The other thing that made it into my top ten yesterday was watching a demo video of cyn.in, which I was checking out since it seemed like we might be able to use it for project management at work. And to round out the list, pgadmin is a database tool for Postgres databases.

The hour I spent on email should probably get cut down. Since I work remotely, there is a lot of communication over email, but I certainly need to do a better job managing my email time instead of popping back over to gmail every few minutes (although if Flex compile times were sped up I bet my email time would get cut in half). The time on IM (Adium) is essential since the way I communicate with my team is through IM all day long, so that can’t really get cut down at all.

It’s also interesting to see how the little things factor in. If you add up my top ten list there, you end up with about 7 and a half hours. That’s almost my complete work day, which means that all the other crap I might have done, reading blog posts, watching dumb videos, etc only took up a very small amount of aggregate time. That makes me feel good about my overall productivity. There are about 90 total entries in the RescueTime log for yesterday, but most of them take up only seconds of time (scanning blogs, quick Google searches, etc).

So that’s what my day yesterday looked like. I know this isn’t directly related to Flex, but I thought it was kind of interesting and I need to get back into blogging one way or another, so bear with me while I get back on the blogging bandwagon. If I made New Year’s resolutions then getting back to blogging like I used to would be at the top of my list.


Why did I stop blogging?

I haven’t been blogging like I used to. It’s been a month since my last post (and that was just a silly cartoon). I’ve been thinking about why this is, and there are some typical expected reasons (busy work schedule, extra non-work commitments, a recent move, etc etc). This is all part of why I’ve fallen off the blogging wagon, but it’s not the whole story. This post is a bit of a dive into my psychology, trying to get at why I blog and where I’m trying to get to in my life. This isn’t a technical post and it’s not really even about Flex. It’s about me and my brain and my feelings. So if you don’t like mushy crap, you can stop reading.

First, the standard stuff:

  • Intense work
    I took a full-time gig with Universal Mind and we’re about to launch the product that I’ve been working on for a very long time. It’s one thing to work on a consulting gig where you walk in, do your shit, and get out. This is different. This product has so much of my time and energy invested in it. It’s my baby, and because I’m so invested, it consumes more of my mental time than any consulting project ever did. It’s not like I work 100 hour weeks for UM, I work normal hours. But my head doesn’t shut off when I commit my night’s changes and walk away from the computer. So that means I’m thinking about Flex for a huge portion of my non-work hours.
  • Writing Flex for Dummies
    Flex For Dummies basically took over my weekends for 7 months of my life. I wrote from Friday night to Sunday night (our deadlines were Monday and I usually turned in a chapter around 1 am). I didn’t go out, I didn’t go on weekend trips. And the last thing I wanted to do was blog. But that process is over and the book’s about to come out! I now have my weekends back, but I also have a new appreciation for my free time. I used to do a lot of blog posts over the weekends, now sitting in front of the computer is the last thing I want to do.
  • Moving in with my girlfriend
    It’s been about a month since I moved from San Francisco to Berkeley and moved in with my girlfriend. So I was dealing with the whole packing and moving thing, and also adjusting to the new living situation. Things have been fantastic since moving in, and this is another reason I’m not blogging as much. After a day of work I’d much rather go to dinner with my girlfriend and spend time hanging out with her instead of sitting in front of my monitor writing code.

So that’s all the stuff that I’d tell you if you asked me why I haven’t been blogging. “Man, I’ve just been so busy, I can’t find the time.” There’s a lot of truth to that, I certainly don’t want it to sound like I haven’t been busy. But largely the “I’ve been busy” excuse is bullshit. So why haven’t I been blogging?

I’m not hungry anymore.

Now we’re getting to the meat of this. I’ve been thinking about what drives me to blog and reflecting on the past year and a half. I’ve had a crazy ride. I went from being an unknown kid learning ActionScript and Flex to being a semi-famous-within-a-very-specific-geek-circle, book-writing, highly-paid, influential expert (and yeah, clearly you can tell that it’s all gone to my head). And it all happened in a year. My salary multiplied, I was speaking at conferences, I had a book deal. That’s some seriously crazy shit. That wasn’t entirely my plan from day one, although as things started picking up steam I started aiming higher and higher. I wanted to be famous. I wanted people to think I was good. I wanted to be in demand, to be sought after.

And so now what? What’s the next step? I’ve got a stellar job, I make bank, my book’s about to come out, I’ve got a reputation I’m proud of, and I’m being flown halfway around the world to speak at a conference. The people that I thought were rockstars, that I learned so much from while I was getting started (and still do every day); they all know who I am now (some of them are even good friends).

I used to be so hungry to prove myself. If someone had a coding problem they couldn’t solve I wanted to be the guy who showed everyone how to do it. I wanted people to stop and say “woah, where the fuck did this guy come from?” And now that I got that I guess I feel a bit drained. That fire to be the best, to be known, is dampened. I’m not saying I’m the best, I’m just saying I no longer care like I used to.

The Tech
There’s also a technology aspect to this. I’m starting to feel like I’ve taken Flex as far as it will go. I started proving small things; how to make little components, or how to hack some piece of the Flex framework. And I rode that until I knew Flex inside and out. I hit every brick wall (I climbed over or busted through some). And it was all so challenging and rewarding. I was unlocking secrets, uncovering things people didn’t know. But in terms of intellectual curiosity I’ve exhausted Flex 2 and 3. Of course there’s always new stuff in Flash Player 10 and Flex 4 that is going to be really interesting. But my interest has been shifting. I don’t want to solve small problems with a component or with a framework. I want big problems. I want new problems. I want real problems. I want to solve something that’s not just a technical detail.

I’m not ditching Flex or ActionScript. On the contrary, I feel like I’ve gotten to the point with the technology that I’m supposed to be: Flex and ActionScript are just tools to solve problems, not problems in themselves. When I started blogging Flex was a problem I was chipping away at, hacking together examples and tweaking the framework to get it to serve my needs. Now I want to move beyond that, and take on problems that are information problems on their own, and Flex just happens to be the best tool I have at my disposal.

The Next Step
I’ve been reading a good bit about information visualization as a field of research and soaking in as much as I can. The product I’ve been working on for Universal Mind takes geographic information visualization to a level that nobody’s done yet on the web (I put the “on the web” qualifier there, but I hope we’re working on stuff that pushes limits for any software, online or offline). And that’s just scratching the surface. There’s a ton room for innovation in the geo space. It’s a field that has so much potential but is stifled by a few big players and their ideas about how things are supposed to work. So I’m hoping I can help shake that up a bit. But geospatial information is just one small piece of the whole pie. I want to visualize everything. I want to create new ways of seeing data. And this is a field without limits. There is no end to the possible innovation.

So in the months ahead I hope to use this blog as an experimental proving ground for my forays into data visualization. I’m doing a lot of this for work, which is awesome because that means I get paid to do interesting work, but it has the downside that I often can’t share code. I imagine there will be more posts that are examples of what we’ve done (videos or live apps) that don’t show exactly how we did it. That sucks, but I think there’s still a lot to be said for showing off inspirational stuff. I’m also going to be trying to refocus on blogging small experiments in data visualization.

So if you’ve made it this far I’m impressed you read through my psycho-babble ramblings (or maybe you just skipped to the end looking for something worthwhile). From here on out I’ll probably keep the “dive into Doug’s head” type of posts like this to a minimum, and get back to blogging cool tech.


A picture of my sent email box

Recently I haven’t been blogging at all. I’ve largely fallen off the face of the earth. Take a look at my sent emails from the past week and see if you can figure out why.


I use colored labels in gmail to help easily categorize emails. The blue just means it was an email I received to my personal email address (as opposed to the green which is to a work address). The grayish means it was sent to a mailing list (I responded to one thread on the papervision list and 3 on flexcoders). The green is for work (3). And then there’s the red. The red is anything that has to do with the Flex For Dummies book that we’re wrapping up.

So if I haven’t gotten back to you I apologize. The red consumes my life. But we’re close.


Where are the dope Silverlight demos?

There’s a lot of buzz about Silverlight 2.0 right now, and people are expecting some big announcements at MIX soon. But where the hell are the cool Silverlight demos? Offline support would bring Silverlight closer to competition with AIR, and it’s looking like SL 2.0 is going to be an actual competitor with Flex now that it’s going to have a framework of controls (SL 1.0 wasn’t even close to a Flex competitor, it was more a Flash Player competitor). All that sounds sweet, almost makes me want to download Expression Blend and try it all out, but again, where’s the cool stuff?

I figured the first place I’d look for the kick ass Silverlight demos would be the silverlight.net showcase page by Microsoft. I mean, there HAS to be sweet stuff shown there right? Um, not so much. I checked out each of the demos on the main silverlight.net page and here’s what I found:

  • screenshot013.jpgInfragistics Silverlight demos
    This site has a few screenshots of some charting stuff in Silverlight. The charts look pretty good in fact (heh, at this point anything that doesn’t look like the default Flex charts feels “fresh”). But the Infragistics demo site itself (which is a Silverlight app) is slow as balls and doesn’t impress me at all. It feels clunky, the animations are rough, and is just kinda boring.
  • screenshot018.jpgSilverlight book flip effect
    On the Microsoft Action Pack (wtf is that?) product page they use Silverlight for that amazing book flip effect. I won’t rail on this too hard, but suffice it so say I think the book flipping thing is an awful idea 99.99% of the time (that .01% of the time it was actually useful was the anatomy example Ely Greenfield did, that was the only time I’ve ever thought book flipping was useful). The Silverlight flip effect was super slow (like in the unusable way).
  • screenshot014.jpgMicrosoft Dynamics
    I think the only use of Silverlight on this page is for a non-interactive animation. Consider me unimpressed. But maybe I’m missing something since the site’s in Italian. Does this Silverlight demo do more than simply play a short video?
  • screenshot015.jpgSanremo Anche Noi
    This app’s actually pretty sweet, it’s a well designed video showcase. It’s simple, basically just lets you browse various videos, but does a good job at showing good quality video is designed well. There’s nothing jaw dropping here, but it’s a solid, well designed experience.
  • screenshot016.jpgZebrakho
    This is a store that sells animal skins and heads and stuff. And as much as I want a big animal head mounted on my wall… But seriously, the site uses Silverlight for a few small animated effects, but it comes off feeling like an old, poorly made Flash site, complete with that scrolling news-ticker thingy to show product specials.
  • screenshot017.jpgVodafone Interactive TV
    Another video site, complete with a skip intro movie! Ahh, back to the good old days. Seriously guys, if you want to do the whole “better than Flash” thing then don’t take us back to the skip intro era. The site itself is pretty simple, again just showing off a bunch of videos.

Yes, I am aware of the Silverlight showcase, and I’ve been browsing through a little bit, but it’s hard for me to wade through so many apps in order to find that one amazing example that blows me away (yet to be found). I did find this example though, which was cooler than the ones on the front Silverlight showcase page.

  • screenshot019.jpgMicrosoft TechDays
    This is a pretty cool design that lets you drag around polaroid looking photos that play video. Cool concept, except it runs pretty slow on my machine, which destroys the smooth dragging and resizing effects. I can almost guarantee I could make the same concept that would feel smoother and slicker as a Flex app.

screenshot011.jpgI also tried the Microsoft download center, since I had seen some people blogging about that Silverlight app. My overall impression? It feels like an Ajax app. The animations are limited to the simplest of dropdowns and even those feel slow and choppy (click on the “Browse Downloads” button). I don’t see anything I haven’t seen with JavaScript stuff, and the overall site just feels like DHTML, even if it’s not.

This all feels like old, bad Flash
I feel like I’m in a time warp. These example apps all feel like old Flash sites to me. They feel clunky and slow (is that because I’m on a Mac?). They even have design elements that people used to use but have since been demonized and cast aside (skip intro, news ticker).

Show me something I can’t do
I have yet to see a single thing that I can’t do with Flash/Flex. Now I’m not saying that Silverlight is worthless unless it has sweet features above and beyond what Flex (or Flash Player) can do. Having a competitor is a good thing, it’ll keep Adobe on its toes (H.264 anyone?) and drive innovation. But for all the hub-bub about how Silverlight is going to be awesome, I have yet to see anything awesome being created. It all feels slow, clunky, and poorly designed (that last part isn’t Microsoft’s fault obviously). I just want one thing that makes me sit back and say “Holy shit! THAT’S what you can do with Silverlight?” Just give me that, throw me a bone.

I had that moment when I saw Pavan Podila‘s WPF example of doing 3D layouts with WPF. That blew me away (he made it back in June) and I realized that WPF ain’t nothing to fuck with. If you get 3D out of the box and can create such fluid layouts, I may just have to start learning WPF. Granted, you can do very similar things with Flash, but Pavan’s videos are just so damn smooth and responsive. BTW, Pavan’s a really cool guy, I met him at 360Flex just recently, and he’s one of the few guys I know who rocks both WPF and Flex. We’re lucky to have him on the Flex side (Pavan’s on the Degrafa team) because not only is he a smart ass dude, but he has a whole different perspective because he knows how they do things in WPF. For those that haven’t seen, here’s a video that Pavan made to show off 3D layouts in WPF:

So I know most of the people who read this blog are Flex devs, and that the crossover is pretty slim, but in case anyone knows of the dopest, most jaw dropping Silverlight demo they’ve ever seen that would make me mess my pants, send me an email. I don’t necessarily mean an actual application, I just want to see something cool. Maybe there’s some sweet stuff hidden away on blogs (I know there are tons of cool Flex demos on people’s blogs). Bonus points if you have something that does cool data visualizations stuff. And yeah, I’ve seen the tafiti demo, don’t send me that one. And super double bonus points if the app wasn’t made or funded by Microsoft.


My Favorite Blog of 2007

Was not a Flex blog at all. It was John Nack’s blog. John Nack is a Photoshop dude at Adobe. He posts frequently on tons of design topics. Sometimes he blogs about Flash experiments, sometimes typography, photography, etc etc. I’ve come across some of the most inspirational stuff by reading his blog. John posts a lot about cool data visualization stuff, which is incredibly applicable to the Flex/Flash world. His typical post includes a half dozen or so links to cool shit. I’ve never been disappointed by clicking through any of the links he posts.

John Nack's Blog

I read a ton of Flex/Flash blogs. If you write about Flex and you’re on MXNA, I read your blog. But sometimes you have to get out of the Flex bubble to get your ideas. Sometimes we get too insulated, and forget that there’s a world outside of Flex. On one level or another we’re all designers and artists when it comes to making applications. Sometimes the most influential ideas come from photographs or typeface experiments and not ActionScript code samples.

In this same vein I should really start reading some of the Microsoft blogs out there. At the moment almost all the blogs I read regularly are in the Adobe sphere of influence. But that means I miss the cool shit from the other camp. Unfortunately I just don’t have the background software knowledge to make most of the MS posts interesting. If someone wanted to put together a monthly collection of MS-related blog posts that apply to RIA design or that would be interesting to Flex devs, I’d read 🙂

Anyway, thank you John for consistently posting cool shit.


I’m a full-time employee with Universal Mind

Universal MindI have recently decided to make the move from an independent subcontractor to a full-time employee with Universal Mind. This is a big decision for me, one that I’ve been debating for a while now. I’ll try to explain my thinking a little. My official job title will be Principal Software Engineer, pretty pimp huh?

Building the team
We’re building a badass team to dominate the Flex world. Honestly, we’re bringing together the best developers, no question about it. One reason I decided to come on full time is so I can have more influence over that team. One of the best parts of my job is getting to work with some of the smartest guys I know. Guys who teach me new stuff every day on a project. The full time move gives me more pull to attract developers I want to work with. It shows I’m committed to what we’re doing and that there’s a reason to come work with us rather than some other Flex company. Now I really get to build this team. I have a say in who we hire. The biggest draw for me is the chance to work with rockstar developers, and at one point I thought maybe the best option was to branch out independently and get a kick-ass group of guys together to do our own thing. Then I started to realize that we already have a pretty badass team at UM, and in the last month we’ve brought on some ridiculous talent. So if I want to work with the best guys, we seem to be pulling them into UM already, so I might as well take that and run with it.

LaunchPADThe product and intellectual challenges
We’re going to be raising the bar for mapping applications. If you think the ability to plot points (oooh, different colors even!) on a Google map is the definition of awesome mapping technology then we’re going to blow you away. I’ve been working as a subcontractor for the past 8 months and a lot of my time has been spent on a project dubbed LaunchPAD. We’re taking mapping to a whole new level. I made a video a month ago showing off some of the stuff I’ve been working on. That’s just scratching the surface. You ain’t seen nothing yet.

One of my biggest concerns about taking a full time job is that the day to day work will get stale. The consulting world offers a unique opportunity to work for short periods on varied projects. Some people like this, some people don’t. I found that it was a great fit for me mentally. I got to go into a random company, learn about the cool stuff they’re doing, and help them out. Then a few weeks later I got to go to a completely new project in a completely different field and solve different problems. If you ever get bored with a project you only have to deal with it for a few weeks or months, then you get to leave the poor suckers who work full time on the project to deal with it for the rest of their lives while you go off and do something fun (I’m not actually speaking from experience here, I loved all my projects, but I always viewed this aspect as a big plus for consulting).

The full-time move with UM is a bit more than a simple shift in employment status. It also represents a shift from being a normal consultant (ie jumping project to project) to focusing primarily on the mapping stuff we’re doing. When I was first considering this my immediate concern was that I would get bored working on the same project for more than a few months. Now, after digging in deeper in the online mapping/GIS space I’ve become confident that there’s enough breadth within this area to hold my interest and keep me challenged. Figuring out how to leverage mapping for a police department is quite different than for a farming company, or a public health organization. There are a lot of fundamental technical challenges (like how to draw client-side heatmaps, or how to visualize millions of data points) that are common to many of the scenarios, but each implementation brings unique things you can’t anticipate. And the fact that my software is going to be used in a police department just makes me feel badass.

And I won’t be spending 100% of my time on the same project. I forget the proposed split, but it’s understood that I’ll have a certain number of weeks allocated to consulting for clients (gotta help UM pay the bills somehow…). So I’ll get to focus on mapping, but still jump on fun consulting projects throughout the year.

The lifestyle and commitment issues
The move to full time won’t actually have much of an effect on the lifestyle I’ve grown to love while being a subcontractor. I’ll still be working from home in San Francisco. I’ll still have flexibility in setting my daily schedule. One big difference is that I’m now expected to work a certain amount throughout the year. I have allocated vacation time, which is good because I get paid for doing nothing, but bad because I’m expected to not take much more than the time I get. As a subcontractor I could decide to take time off between projects for as long as I wanted. Sure, I wouldn’t get paid for these breaks, but I had the flexibility to take a few weeks off and travel, or just chill out.

One of the biggest mental hurdles for me was the shift in thinking about time. The time scale for a decision like this is in years, as opposed to weeks or months when I was a subcontractor. Before, I would go from one project to another, but often wouldn’t know what I would be doing next after my current project was over. I might have some time off, I might jump straight onto another project. There was a certain unknown aspect to that lifestyle that appealed to me. I don’t have kids, I don’t have a mortgage. I don’t need to know that I have work lined up for the next few years. I don’t like planning. For most things in my life I don’t plan beyond a month or two. I just bought my plane tickets to Europe for Christmas last week. I knew I was going for months. I just don’t like planning. I won’t try to psychoanalyze myself here (my girlfriend is a psychologist, so that’s her department), but I’ll just say that the shift in time scale was a difficult mental challenge for me.

So what does this mean?

  • It means Universal Mind is badass. We got some of the best Flex talent in the world, no question (and I’m not being an egotistical ass, I’m referring to everyone else working with UM). I won’t even tell you how ridiculous the Flex job market is right now. If you know Flex you can get a bazillion jobs anywhere. If you’re the best you can come work with us.
  • It means Flex mapping is going to explode. We’re going to make some crazy shit.
  • It means you can call me a sell-out for taking a full time job, but you have to do so to my face, not like a wuss in the comments.
  • It means the emails about new jobs or consulting gigs can stop coming in now… thanks. I’m spoken for.