Archive for the 'Silverlight' category

SWFSheet – create sprite sheets from SWFs

[EDIT: Just released a beta of SWFSheet 1.1 here: http://www.bit-101.com/blog/?p=2948]
[EDIT: Version 1.1 final released: http://www.bit-101.com/blog/?p=2977]

SWFSheet is a program I created in most of a day back in late December. I finally polished it up this week and it’s now ready for release. The idea is to take an animation created in Flash, and generate a sprite sheet from it. A sprite sheet, for those of you who may not be familiar, is a single large bitmap containing several frames of an animation, usually layed out in a grid. These can be loaded in very efficiently by games, and each frame shown to recreate the animation.

I had the idea for this program while attempting to port some Flash stuff to the iPhone. And later while making other mobile games, I found that Flash was still the best tool to create animations. It has a powerful time line, easy to use drawing tools, tweens, 3D, and of course, powerful scripting with ActionScript. However, getting a nice looking Flash animation into a sprite sheet that could be used with cocos2d on the iPhone/iPad or with XNA for Windows Phone 7 was not so easy. I did it by hand a couple of times, and it wasn’t very fun. Thus, SWFSheet was born.

SWFSheet is an AIR application and has been tested on Windows and Mac. You create your SWF however you want. Flash CS5 or earlier, Flash Builder, or anything else that outputs a SWF. It doesn’t matter how it’s created. Then you load the SWF into SWFSheet.

swfsheet screenshot

Immediately, you’ll see the live loaded SWF running in the upper left panel. The program will then capture an image of the SWF on each frame for the number of frames you have specified (default 15) and arrange them in a grid on the bitmap. Once that is done, it will then animate this bitmap using the same techniques you would use to animate a sprite sheet in a real game. This is seen in the lower left panel. You can adjust how many frames you want to capture to make sure you get your whole animation and have it loop smoothly. And you can adjust the frame of exactly how much area is captured in each frame, to maximize space on the bitmap. If there is not enough space to capture all frames, you can choose a larger bitmap. After any changes, you need to click “Capture” to re-capture the frames based on the new settings.

Often when scripting animations, you will have various transformations or other changes happening in an onEnterFrame type of loop. This can sometimes cause a glitch, as the first frame is captured before the first enterFrame handler fires, and thus does not have the initial transformations applied. There is a “Skip first frame” checkbox which handles this situation. There are also options for smoothing, which may or may not make any difference in a specific animation, and for transparency. By default, a loaded in SWF will have a transparent background, but you can override this to make an opaque bitmap with any color background you want. And you can change the preview frame rate – of course this doesn’t change the bitmap at all, but can give you an idea what your animation will look like at your target frame rate.

Note that there are a limited number of sized of bitmaps. Sprite sheets can almost always take advantage of extra efficiency when created in power-of-two sized squares – 64×64, 128×128, 256×256, etc. Thus, these are the only choices. A future version may make possible custom sizes if enough people ask for it.

Here’s the AIR installer:

SWFSheet Installer

And here are some test files to get started with:

Test Files

Enjoy!

ps. Another tool you might be interested in is Mike Jones’ Sprite Sheet Maker, which is more geared to making sprite sheets from a series of separate image files. Similar outcome, different use cases, depending on what kind of input you are starting from.

76 responses so far

Good bye 2010

As usual, it’s time to make my year end post. I’ll keep it relatively brief.

A few changes this year. This spring, I got kind of fed up with Apple, their control-happy policies, and the general direction they are heading. After 3 years of being 100% Mac, I switched back to Windows. It is an action that I not only do not regret the tiniest bit, but as Apple continues to evolve in the same direction, I’m happier than ever that I switched when I did. This is not to say that I’ve abandoned all iOS development and have thrown away my Mac. I still own two Apple computers. Both are plugged in and booted up and ready for action at all time. I have an iPhone, and iPad, an iPod Touch and a 5G iPod. They aren’t going anywhere. But the machine I open up in the morning and use all day long is my Sony Vaio, and I’m very happy with it. I’m not shoving it down your throat. If you’re happy with Apple, far be it from me to try to change your mind. I’m OK, you’re OK, right?

Around the same time I switched back to Windows, I also came into the ownership of a Google Nexus One. It took a while to really get used to it, as it’s definitely not the polished experience that the iPhone is. But I forced myself to stick with it for a week or so and really started to love it. From my viewpoint, the main difference was that it was MY phone, not Steve Jobs’. I could do pretty much whatever I wanted with it. Change the lock screen, change the task switcher, add memory, change the battery, put my icons where I want them, install unsigned apps, have live gadgets on the home screen, etc. etc. Once I got used to it, the iPhone just seemed unbearably sterile. Unfortunately, the model I had was a T-Mobile version, so I couldn’t get 3G on it with my AT&T sim. I suffered with Edge for a several months, but finally the wifi connection and even the Edge connection started getting really flaky. One day in September, just couldn’t connect to anything, so it was back to the iPhone.

Coming back to the iPhone, I have to admit, I really did appreciate the slickness of the UI. But I didn’t fall back in love with it. To be honest, I knew it was only a stopgap until the new Windows Phones came out. I got a Samsung Focus as soon as they came out and I absolutely love it. It is without a doubt the best phone I’ve owned. Note – it’s far from perfect. It’s a v1 product and it shows in many ways. But regardless of all that, there is so much RIGHT about what Microsoft did with it. I’m really excited to see where it goes in the coming years. I don’t expect it to overtake or even match Android or iOS any time in the near future, if at all, and I don’t really care. As long as I can continue to own one and see it improve, I’m a happy camper.

As for mobile development, I didn’t do much at all most of the year. But this autumn and winter I worked on one major and one minor iOS projects at Infrared5. After being away from Objective-C for so long, it was pretty bizarre trying to get back into it. It took a couple of days before it stopped feeling like I was typing with my toes, but eventually I got back in the groove. I played with Android dev briefly, but never really dove into it that much. But in October, I got my hands dirty with Windows Phone dev, with both XNA and Silverlight, and it has blown me away. I might even say it’s revitalized me as a developer. For a large part of the year I was on a very tough, frustrating project. It wore me down quite a bit. But with Visual Studio and C#, it’s like starting from scratch – in a good way! All the excitement without the learning curve. After many years of Flash development, writing ActionScript is almost second nature to me. But after just a couple of months in Visual Studio, I feel like I’m more at home with C# than I ever was with ActionScript. It’s a very, very similar language. If you took AS3 and removed all the little things that annoy or distract you and pull you out of the “flow” of coding, and replaced them with a whole bunch of little things that just work exactly the way you would expect them to, you’d have C#. And if you took Flash Builder and … no, that’s just not going to work. There’s no comparing Eclipse to Visual Studio.

Speaking of IDEs, after working in VS for a few months, and then going back to XCode… it really dawned on me just how bizarre an IDE that really is. I’m really trying not to bash any particular technology, but I can’t help feeling like XCode was designed on an anti-matter planet in an alternate universe by some bizarre aliens on really strong acid. I’m not even talking about the language – just the IDE. I sometimes find it hard to believe that it was created by and for programmers. I know it’s not “wrong”, just different. Most IDEs are relatively similar, like most western human languages are pretty similar. I may not speak Spanish, but I can see it and read the words even if I don’t know their meaning, and can catch a bit of a hint of what’s being said. Same with most IDEs – you can quickly find your way around them for the most part. But diving into XCode is like being dropped in an Asian or Middle Eastern country where everything just looks like random scratchings or scribbles to your unfamiliar eye. That’s what XCode is like – just a completely foreign programming paradigm. Again, not saying it’s bad or wrong. You live with it long enough and you become fluent in it. But boy is it different.

Also in the summer I got into Processing quite a bit. Far more than I ever had before. I’ve kind of drifted from it again, but it was a great experience. I’m sure I’ll drift back around to it again before long. This largely came about from my conference session for 2010, “Programming Art”, in which I covered a bunch of different tools and languages for creating algorithmic and generative art, including Context Free Art, Structure Synth, Processing, the Hype Framework, and others. I also really enjoyed getting my head around Structure Synth, and got a bit revived on it just recently with the newly released integrated raytracer. Fun stuff!

On a personal basis, it was a year of health. I ran over 1000 miles, lost a good deal of weight, and reverted the trend of my blood sugar and blood pressure, which were edging into borderline problem areas. I think I also did more travelling this year than I have in any previous years, with trips to San Francisco, Minneapolis, Kortrijk Belgium, Toronto, Japan, back to San Francisco, and Edmonton.

Well so much for keeping in brief. In summary, it was a year of trying new things and going back to old things, learning new platforms and languages. Going forward, I don’t think it’s possible, at least not for me, to be a “Flash Developer”, or an “iPhone Developer” or be stuck in any single platform. Now more than ever, there is just too much diversity and you have to have a foot in every camp. If someone needs a game or an app these days, they can’t really just release a single version of it. They’re going to need an iPhone version, and Android version, eventually a Windows Phone version, and some kind of web presence with it. Are you going to just ask for one slice of that pie? Are they going to farm out their app to 4-5 different shops, one for each platform? As a company at the very least, you need to be able to do it all. Ideally as a developer as well, you need to be able to do as many of those as possible. I know that’s where Adobe is trying to be strong with the iPhone and Android packagers for Flash. I’m still not convinced those are the solutions for most projects though. Native will always win.

As for 2011, I assume the fist good chunk of the year I’ll be doing a lot more WP7 dev. And since the XNA codebase is 99% the same for WP7, Windows, and XBox games, I look forward to releasing some stuff for Windows desktop and XBox as well. I’m sure I’ll also play with the new Mac App Store stuff, and more iOS stuff too. The WP7 game I’m working on now will definitely need an iOS port. But who knows where I’ll go from there?

8 responses so far

PaceCalc for Windows Phone 7

Nov 25 2010 Published by under Silverlight, Uncategorized, Windows Phone 7

As many of you know, I’ve been running for the last year and few months, and completed a few races here and there. One of the first things you start to focus on when you sign up for your first race is your pace and predicted finish time. It’s a simple calculation of pace = time / distance. You might be thinking, “wait, speed is distance / time”, but runners usually measure pace in minutes per mile or kilometer, rather than kilometers or miles per hour. So if you know the length of your race and how fast you can run, you can predict when you’ll come in. Or if you have a goal for when you want to come in, you can calculate how fast you need run to meet that goal. Last, and probably least, if you know how fast you’ll be going and how long you’ll be running, you can predict how far you will go.

There are pace calculators all over the web, but none yet for Windows Phone 7. So I figured it would be a fun project to create one. It would give me a real world reason to use some of what I’ve been learning about Silverlight too. On the outset, it looked really simple. Three text boxes for time, distance, and pace, and three buttons. The toughest part was all the time conversion and formatting. I decided to break up the text boxes for time into separate ones for hours minutes and seconds. I added some preset distance buttons and a toggle for miles or kilometers. Here’s the final result:

I’m really impressed with Silverlight. I’ve done enough Flex work so that this was quite simple. Flex has never really grown on me, but I find I’m actually starting to like Silverlight. It feels much more robust and mature and well thought out than Flex.

Anyway, the whole app took just a few hours to code. I started it when I got home from work on Tuesday and it was done before I went to bed. Wednesday morning I made up a crappy icon, took a screenshot and submitted it to the WP7 marketplace. Wednesday evening I got an email saying it was approved and the next morning (today) it was live and available for download. After having waits of up to 3 weeks for iOS app store approval, this blew my mind. Of course, the MS marketplace is young and lower traffic and will feel its own stress points as it grows. But I’m willing to bet that it remains a much more streamlined experience. Developers, developers, developers! Right?

I think this app will continue to be a great way for me to learn more about Silverlight and tweak things. I already worked a bit on input validation. When you enter an input field, a keyboard comes up just like on other devices. I had made it so that a telephone numeric keyboard comes up since you only enter numbers there. But there are still invalid characters that one could enter, such as “,+=#”, space, or “.” in the time fields. So I just did an update that restricts those characters and limits the number fields to two digits. I also started working on better layout using a few grids in key spots. I may even experiment with changing it to a panorama control, adding another page for maybe calculating splits (where you’d have to be at each mile or kilometer to be on track for your goal time), or other useful info.

Long and short of it, I’m having fun. The app is free by the way, so it’s totally for fun and learning, and of course because I find it a useful app personally. I’m also forming an idea for another game. Having fun is fun!

10 responses so far

On the “death” of Silverlight

Oct 31 2010 Published by under Flash, Silverlight, Technology

This week, Microsoft announced their changing strategy regarding Silverlight. You can read more about that here:

http://www.zdnet.com/blog/microsoft/microsoft-our-strategy-with-silverlight-has-shifted/7834.

[Edit: 10/01/2010]
Note, this post just came out today, which clarifies things a lot. http://team.silverlight.net/announcement/pdc-and-silverlight/
[/Edit]

The key points are that going forward, Silverlight’s focus will be as the framework with which you will create Windows Phone 7 applications. As for Rich Internet/Interactive Applications on the web, Microsoft is going to start pushing HTML 5 as the solution.

A number of my friends on Twitter and elsewhere, members of the Flash community, were virtually high-fiving and toasting to the death of Silverlight. It’s certainly nice to see Flash alive and kicking as yet another “Flash Killer” leaves the ring. But I think I saw things in a bit of a different light.

I don’t think there was any meeting where Microsoft execs sat around saying, “You know, Flash is just too good and popular. We’re never going to be able to compete with it. Let’s just give up. They win.”

I think it was probably a bit closer to this: “You know, in terms of RIAs, HTML 5 does just about everything you need to do. All the best RIAs are made in HTML. And it’s only going to get better. It doesn’t make sense to have a heavy, proprietary web plugin that tries to do the same thing. Let’s just embrace HTML 5.”

I’m talking specifically about applications here. Although they tried a bit in the beginning, Silverlight never really made it into the gaming or more creative types of applications. If anything, it was really a contender to be a Flex killer more than a Flash killer. And while I think HTML 5 has a long way to go in terms of being a real contender for games and more creative types of Flash apps, I think for most common web applications, it’s the real answer. I think every web application I currently use is HTML based. I’m writing this blog post in WordPress, a very complex HTML based app. I make heavy use of Google Documents and Windows Live Office docs. I use GMail and Google Reader, Google Calendar and Google Maps. I use Flickr for photos, Garmin Connect and Daily Mile to log my running, BaseCamp, Bugzilla, and Pivotal Tracker for software projects, etc., etc. All are completely or almost completely HTML. I can’t think of any straight up Flex or Silverlight apps that I use on any kind of regular basis.

Of course, there are video sites, in which Flash and Silverlight is still pretty strong. I’m the furthest thing from an expert in video, so I’m in no position to evaluate how close HTML 5 video is to being a real competitor to Flash / Silverlight video. According to some, it’s there, according to others, not close. But I imagine that any weaknesses it has will soon be shored up.

Again, I still think HTML 5 has a way to go to catch up with much of what Flash can do in terms of rich interactivity. But I feel that in the world of everyday apps, it has won. Rather than taking Silverlight’s “death” as a victory, I think the Flash world, particularly RIA devs, should take it as a warning.

66 responses so far

Things I like this week

Sep 19 2010 Published by under General, Silverlight, Technology

1. Internet Explorer 9. Go ahead, laugh. It’s a good browser. Just made it my default. 24 hours in and I don’t miss Chrome yet.

2. Fences. Organize your Windows desktop icons. Killer feature – double click desktop and all fences with all icons vanish. Mmmm… cleanliness. I popped for the $9.99 for the pro version, but have received no confirmation or any download link yet. Hmm… I’m sure it will come soon.

3. Windows Phone 7. The WP7 RTM (release to market) tools were, well, released to market this week. You can now download them and start developing Windows Phone 7 apps in the simulator. I just did the two beginner tutorials – one for Silverlight app dev, and one for XNA game dev. Both were very approachable and simple to get up and running in no time. All the code and UI creation was very straightforward. I love the fact that they have two separate frameworks – one for apps and one for games. Brilliant. Really well thought out. I can see myself with a Windows Phone 7 Phone (poor naming though) in the near future.

Overall, I’m pretty excited about what’s going on at Redmond. MS had a pretty big fall from grace and many have not been taking them seriously the last few years. But they have learned some important lessons and are poised for a big comeback. Windows 7 is a great OS. So many good things going on there. IE9 really is a good browser. WP7 has an awesome developer story and everything I’ve heard about the OS itself is overwhelmingly positive.

2 responses so far

Flash, what is it good for?

Aug 29 2009 Published by under ActionScript, Flash, Silverlight

There seems to have been a lot of Flash bashing, both within the community and without, in the last few weeks. In terms of the external criticism, I refrained from a knee jerk reaction: “Flash sucks? Well, YOU suck!” and actually took a look for myself at the state of Flash. Of course, there are some on the outside who would say that there is no excuse for Flash anywhere ever. They refuse to even install the Flash player plugin on their machine. On the other end of the spectrum are those who think that Flash is the be-all and end-all. If it can’t be done in Flash, it isn’t worth doing.

I like to think I fall somewhere in the middle. OK, probably somewhat towards the Flash fanatic side, but not too far. Flash is not the right answer for every problem. There is definitely the phenomenon of “when all you have is a hammer, everything starts looking like a nail” at work. So what IS Flash good for? Well, first, let’s look at what you CAN do with it, and then see how suitable it is for those purposes.

Web Sites
Yes, you CAN make a full web site in Flash. Should you? I don’t want to say resoundingly NO, but if you do so I think you should have a damn good reason for doing so. And when I say “Flash” I mean Flash, Flex, whatever. A SWF-based site. First of all, there are sites that should never be done in Flash. This category includes most, almost all, sites.

My reasoning for this goes back to a local Macromedia event in Boston way back in 2004. Mike Downey, who was kind of new on the scene, was in town talking about Flash. This was when MX 2004 was coming in and the word “Rich” was starting to mingle with the word “Application” and we were about to get RIAs rammed down our throats. 🙂 But Mike was talking about richness and experience. That talk really stuck with me. Flash is awesome for creating experiences. The possible richness of it – the media, the motion, the interactivity – draw you in and make you part of what’s going on.

That’s awesome, but not always appropriate. For the vast, vast majority of sites, the user is going there to get some information. He or she wants to click a link or type a URL, have the site show up fast, see the directions, the business hours, what’s on the menu and how much it costs, etc. and get out. He doesn’t WANT an EXPERIENCE. he wants data. Fast. A preloader stands right between the user and the data he is there to get. So does an intro. So does a page transition if it takes longer than just changing pages. Animation, music, and sound effects are mostly distractions to the information the user is there to get. That’s not to say that a purely informational site has to be ugly or Jakob-Neilson-bland. I think decent aesthetics make a site easier to use. But most of that rich experience stuff people use Flash to create is misused if used for most web sites.

So are there any web sites where Flash IS a good choice? Yes, I think so. Anything where the site is about an experience more than information, Flash gives you great tools to create that experience. Artists’ web sites (musical, visual, or otherwise) are great candidates. If you’re going to check out a band’s or a singer’s web site, there’s a good chance you are looking to see what that artist’s music is like – what the experience will be like. Flash is one of the best ways to incorporate music into a site (custom aesthetic controls, rather than generic, fugly Quicktime embedded ones), and also allows you all kinds of visuals that can go along with the music to create an atmosphere that really advertises that artist. Still, you have to ask if it makes sense to do a full Flash site, or just do certain parts in Flash.

A photographer’s or other visual artist’s portfolio site is also a good candidate for a well done Flash site too. I’m not saying that every artist should do their site in Flash, or that there are no other alternatives. Just saying that these are the kinds of sites where it can make sense to do a Flash web site.

Now, I’m walking a fine line here, because the company I work for, Infrared5, has a full Flash web site. 🙂 But I think there is some justification there too. Basically, we are a company that does very visual Flash stuff. The site really is a portfolio piece of the work that we have done and the kind of work we can do, more than somewhere someone would go to get information. However, if I were going to change it, I would probably have an initial simple HTML splash page with the company name, info, address, phone number, etc. and a button to enter the full site. That way, if someone wanted just that info, we’d be putting nothing in their way.

This brings up another category – pure advertisement sites. Movie sites, TV show sites, new car brand sites. Sadly, most of these are done pretty poorly, but all are designed to deliver an experience that makes you want to buy car x, or watch such and such a show. From my experience, the problem with most of these sites is they are designed by ad agencies by the same people who are doing the print and media campaigns, and don’t know that web interaction design is something different.

OK, other than web sites, what is Flash good for.

Video

Of course, this is the killer. It’s almost safe to say that video on the web IS Flash. Love it or hate it, you can’t deny that Flash video has pwned the web. I know some of you are raising your hand and dying to shout out Silverlight or tell me about the zillions of Quicktime files floating around the net. I will freely admit that Silverlight video is awesome. The quality is great. Various sports franchises and broadcasting networks keep flirting with it, going back and forth between SL and Flash. But say you want to deliver web video. What are you going to do? If you are big enough that Microsoft thinks it will look good to have you as a Silverlight Video customer, they’ll probably build your whole solution for you. Note, that Adobe would probably do the same thing. But if you’re not that big, what are you going to do? There are no solutions for Silverlight (yet) like there are for Flash. Just want to throw up a bunch of video for cheap? Youtube and Vimeo. Make an account, upload your content, you have decent quality video available for the world in minutes. Want to get more serious? Brightcove offers a full service – content management, syndication, scheduling, georestriction, advertisement, etc. I’m sure they have competitors too. As far as I know, if you go Silverlight, you’re building your own solution, or paying someone to build it for you.

Of course, this will change. Silverlight is new in the market and growing and maturing. It will get there. As a matter of fact, back when Silverlight was first coming out, Brightcove announced itself as a Microsoft partner with the intent to bring Silverlight solutions on board. Not sure what happened with that, but I have no doubt it will happen eventually.

Then there’s been a lot of buzz about HTML 5 and video. Can’t say I know much about it. At any rate, it’s something to keep an eye on, but not any kind of viable option in the marketplace at the moment.

Games

OK, this post is getting longer than I wanted, but I have to say that Flash pretty much rules the web in terms of games too. If you want to make a game and put it on the web, chances are you are going to do that game in Flash. End of story really. yes, there’s Unity, I know. We’ll see if it gains ground. Developers are excited about it right now, but I don’t see any hugely popular Unity based games out there yet. (Not saying there aren’t any, just haven’t heard.)

Education/Visualization/Artistic

Another huge potential here. The visual aspect of Flash along with its interaction and data handling capabilities make it ideal for data visualization and learning activities. For data vis, look no further than gapminder: http://graphs.gapminder.org/world/

A few years back I was working for an educational software company and did some really great learning activities for web-based learning tools. At the time, doing it in anything other than Flash really would have been unthinkable.

On the artistic front, I look to my own Art From Code web site (ctually, there’s no Flash there, but it’s all created from Flash), or people like Erik Natzke, Dr. Woohoo, Jared Tarbell, etc. Here, Flash is just one tool among many for creating algorithmic art.

Rich Internet Applications

This is a tough one. My gut feeling tells me that there must be some killer examples of these, but I can’t think of any Flash based RIAs that I use on a regular basis. My feeling is that most RIAs are actually made for companies and used in house. I know many of the RIAs my company has worked on fall into this category. The one Flash App I do use regularly is my desktop Twitter client, which actually falls into the next category.

Desktop Apps

Here we are talking AIR. Again, the only AIR app I use on a daily basis is TweetDeck. Before that, Twhirl. Somehow Twitter emerged about the same time AIR did and the two got married and had a few dozen AIR-based Twitter client babies. Other than that (and my own KClipper app I use now and then for my Kindle) though, I don’t think there are any other AIR apps I use. I think this is one area that’s in danger of falling into the “hammer” analogy mentioned above. Developer knows Flash. Developer wants to make a desktop app. Developer makes desktop app with Flash. Quick and easy solution? Yes. Best solution? …maybe. In some ways I feel that Adobe has encouraged the hammer philosophy by making desktop apps another nail you can hit with the Flash hammer. However, the one huge selling point of AIR is its cross platform capability. I don’t know of any other app solution that currently delivers on the “write once, run anywhere” promise as successfully as AIR does today.

OK, I’m done, almost. I guess my a main point is that when most people go off the handle about how much Flash sucks, they almost always seem to be referring to Flash web sites. I tend to agree with them there. But that doesn’t mean Flash is dead or has no use.

The other point I wanted to address before I end off this monster post is that there are other technologies that are coming into play, or growing and maturing. I’ve seen some stuff done in JavaScript in the last year or so that is pretty mind blowing. Certainly not what I thought JavaScript was capable of. Both in terms of application development and interactive graphics and animation. Definitely an area to watch. Just wanted to acknowledge that so nobody accuses me of having my head in the sand.

OK, enough, my fingers are tired. Looking forward to comments.

67 responses so far

Going to the Dark Side

Apr 01 2008 Published by under Flash, Silverlight

[EDIT – OK, now that it is April 2nd, enough heart attacks. The following is an “April Fool’s” joke. This is an odd American custom where we lie to our friends on April 1st. :)]

As many of you know, last year I got invited out with several other bloggers to Microsoft for a full day briefing, culminating in a pretty intimate one-hour meeting with Bill Gates. As I kind of expected, a couple of people spoke to me about the possibility of working for Microsoft. At the time, I politely turned them down, not being overly interested in working with Silverlight or MS products. But, I did get a free copy of Visual Studio and Expression Suite, and played around a bit. You saw some of my postings at that time, and I wasn’t too impressed overall.

However, the conversation has continued, and Silverlight 2.0 is here and really has blown me away. As much as I love the Flash community and platform, and as much as I owe it my success to date, I have to consider the long term and where the future lies in this industry. I don’t think there’s any question that Silverlight is just going to get bigger and bigger, and I’m not sure Adobe has what it takes to keep its platform going strong in the face of that.

With all that in mind, I have decided to accept a job offer. I’ll be working directly with the Expression Blend team, hopefully brining some of the great experience making capability of Flash over to the Silverlight platform. Don’t hate me. You, too, will see the light eventually.

57 responses so far

FlashForward sold to Beau Ambur

Mar 11 2008 Published by under Flash, General, Silverlight

Just got word of this.

http://www.flashforwardconference.com/press_release/23

I guess Lynda is committing her time to Lynda.com and the training materials there.

It will be interesting to see where this goes. I’ve posted some criticism of FlashForward over the last year or so, mostly due to their high cost of admission, and spending so much money on food and fancy parties, rather than keeping the price lower and concentrating on the content. However, the Boston event this year was very well attended, sold out I heard, and got pretty good reviews.

On the other hand, I’m kind of puzzled why Beau would purchase a Flash conference. It’s my understanding that he’s moved over to mostly a Silverlight shop, and has been a speaker at the last two MIX events. I’m curious to see if FlashForward will continue to be completely Flash-oriented, or will start to be a Silverlight/Flash conference. I’m not attempting to start any rumors or bash Silverlight or MS. Just curious to see how the next conference shapes up, which is already scheduled for August in San Francisco.

3 responses so far

I guess I need to make my Adobe "why" video…

Mar 03 2008 Published by under Flash, Silverlight

… now that I just received one of these in the mail:

http://www.theflip.com/

Thanks Adobe!

4 responses so far

Silverlight again

Dec 16 2007 Published by under Flash, Silverlight

Oh, the weather outside is frightful
So I’ll stay in and play with Silverlight…

ahem…

Anyway, results from next experiment were a bit discouraging. I took the last experiment, and instead of just a single ball, made an array and 100 balls. Scaled them way down and gave them random velocities to start out with, removed the gravity. Here’s the result:

http://www.bit-101.com/silverlight/msm02/TestPage.html

Now, whereas the last one ran smoother on my Mac than on the PC where it was developed, this one runs fairly decently on the PC, but reeeeeeally slow on the Mac. What’s more, it pretty much maxes out both CPUs on my Mac Book Pro, while the PC’s single CPU averaged around 50%. Note, this is a rather low end, older PC, an AMD Turion 1.8 GHz CPU, with less than 1 GB of RAM. By all accounts, the Mac Book Pro should blow it out of the water. Could it be that Silverlight works better on Windows???

I’d be interested to hear comparative results from other users. The particles should shoot out pretty fast and most should hit the edges in just about one second. On my Mac, it takes at least 3-4 seconds til they hit, and it’s very jumpy. Odd.

[Update]
I noticed one process syslogd running on the Mac whenever I ran the file. It was taking a bunch of CPU time. I realized that I had left a System.console.Write() command in the file, so it was apparently trying to log something a whole lot. I removed that and the CPU hit on the Mac is way less, but still about 50% on both CPUs and waaaaay slower than the PC.

It could still be that I’m doing something wrong. If any Silverlight gurus want to check out the code, just ask.

22 responses so far

Older posts »