Skip to content

Recent Articles

7
Jan

Assets for San Francisco Mobile Workshop

You can download my assets for my Flash for iOS and Android session and my materials for Designing For Mobile Using Fireworks session from the San Francisco Mobile Workshop hosted at Adobe San Francisco. Included are walkthrough tutorials, configuration guides for Android and iOS, plus a sample chapter from my book Fundamentals of ActionScript 3.0: Design and Develop, available from Amazon.com or your favorite bookseller.

 

4
Jan
lynda-logo-on-blk

I’m Joining Lynda.com

I’m happy to announce that in February, I’ll be joining the amazing team at Lynda.com as Senior Content Manager for Web and Interactive courses and programs. I’m extremely excited about the role, and look forward to working with great folks like Mordy Golding, James Williamson, David Gassner, Ray Villalobos and all of their amazing staff and community authors.

While my time at Adobe was cut short, it came after a change I wanted to take my career. I was a product manager for some of their great web, interactive and developer products, but when I took a step back and looked at what I was really passionate about, it was in working with the community and trying to educate them as best as I could. Whether it was through the half million people that viewed my ActionScript 1:1 series, my books, my blog, or in person at conferences and in the classroom at San Francisco State University, I wanted to educate, excite and help people in their careers or in finding new opportunities for growth in the amazing web, interactive and mobile worlds.

In addition, as the community is embroiled in a huge shift technologically through changes to the Flash Platform, the growth of HTML5, and the growing dominance of mobile development using a wide array of native development languages or cross-platform frameworks, I needed to decide with my heart what was the best way forward. I strongly considered going back to product management at another company to make tools to help customers, or to help agencies navigate through the technology rapids, but ultimately, I wanted to do what I always love doing–help people, and make cool shit.

With this new role that I will begin in February, I’ll be working with the community to find emerging technology areas, workflow gaps, or new products and provide the education and guidance that people need to make great things. With Lynda.com, I also have an opportunity to work with products and technologies from all over the industry, including Microsoft, Google, Apple, Adobe and the numerous community-driven projects that have helped propel HTML5 and mobile design and development.

In addition to Lynda.com, I will continue teaching at San Francisco State University this semester and I have three courses this semester starting with my ActionScript 3.0 class which was recently retooled to focus on mobile application development, Advanced HTML5 which focuses on understanding how CSS3 and HTML5 Canvas works and then how to use tools like Adobe Edge to make the process easier, and a new seminar course on mobile content development covering the mobile ecosystem, design constraints and best practices for efficient design workflows. Outside of the classroom, I have recently formed a mobile application startup to help take some of the games that I have been prototyping for years and make them a reality, and I’m also starting to brainstorm on my third book which I hope to publish this year.

I want to extend my thanks to everyone that reached out after my departure from Adobe. Your wishes, words of encouragement, and offers to help were amazing and overwhelming. I’m glad to be in an industry and community that is so loving and supporting. With this new role, I look forward to continuing to help you challenge your assumptions, achieve the amazing…and maybe make a buck or two in the process.

Be amazing!

12
Dec

Learning Native Mobile Application Development

It has been a few weeks since I last blogged about Flash, recent Adobe announcements, and my departure from Adobe. Over the last few weeks I have been doing a lot of research and thinking into what my next steps are and what I wanted to focus on. I knew that I wanted to learn something new, but didn’t know which direction to go.

A few months ago, when I changed roles at Adobe to become a web community manager, I wanted to shift my focus onto mobile and tablet user experience design and development. I have always been more fascinated by applications than websites, probably because of the ability to tie directly to the computer or device and create something very immersive. Adobe AIR is a great technology to go to multiple devices; however, there is a “normalization tax” you have to pay to get this. While the costs of developing are reduced through having a largely reusable code base, the user experience needs to be homogeneous across the devices, plus it needs to be custom designed from scratch. Apple, Google and Microsoft have spent millions of dollars of research, design and usability testing into their components and user interface design. I wanted to harness this more and create applications that look and feel more like the native ecosystems that they were on. My first step was to play with Titanium from Appcelerator. It provides a JavaScript API for building applications using native components across platforms. The technology is very cool and you can quickly create native applications that look and feel like the rest of the OS, but there is still a lot of branching of code to provide the exact user experience for the platform. So I decided to dive head first.

It’s time to learn native development.

Now, I have been an ActionScript and JavaScript person for over ten years, so the thought of starting over and learning native app development felt very daunting and overwhelming. But after doing some research, I found that my understanding of the fundamentals of how ActionScript works makes it much easier to learn native development. It is like learning a spoken language. If you learn Spanish, you understand how to conjugate verbs, how to work with feminine, masculine or neutral nouns and how to construct sentences, commands or questions. The vocabulary or syntax build on these basic fundamental items. After learning Spanish, you can make the jump to Italian, French, or Portuguese with a lot less difficulty than it took you to originally learn Spanish. The same applies to computer languages. Learning the fundamentals of ActionScript makes it much easier to learn Java, Objective-C, or C#. The concepts are the same, but the syntax is a little different. This is one reason why when I teach ActionScript I teach HOW the language works, and not just run through a bunch of code snippets. Knowing these fundamentals allow you to transfer these skills to other languages, which in this industry is a huge advantage to have.

So I have been working with a number of books that have been teaching me about my three favorite mobile and tablet platforms: Android, iOS and Windows Phone.

I like to learn in multiple ways…I go back and forth between video based training and written books. For topics like programming, I tend to prefer written books since it forces me to type and code to see the progress that happens in the book. I find it is too easy for me to watch the video, miss a step and then just watch the video through instead of stepping backwards and finding where I took a mis-step. When it comes to books, I am pretty mobile, so carrying around bunch of heavy programming books gets cumbersome. Also, when it comes to tech books, after a year the books can become dated and take up a lot of space, so I became a subscriber to Safari Books Online and use the iPad app. You get thousands of tech books and they are easy to work with in the iPad app.

In addition to learning how to author apps for these platforms (and hopefully make a buck or two), I wanted to see how the various authors that are teaching each platform start a user out at the beginning first steps to help define how I can teach these platforms in the classroom. I love teaching and would love to cover classes around these ecosystems in the coming future and seeing how different people introduce topics like application lifecycle, workflow, best practices, and other topics is helpful to know more about the platform.

I have been jumping first into Android, but I hope to go through all three of the platforms in time. Here is the book lineup that I have decided to go with:

Android

I wanted to start with Android. I have heard that Java is very similar to ActionScript in many ways and thought it was a good place to start. I have been working with the following book:

Sams Teach Yourself Android Application Development in 24 Hours, Second Edition; Lauren Darcey and Shane Conder

iOS

Clearly iOS is the most dominant platform in terms of app sales, so that was next on the list. I have heard that Objective-C is quite a bit different in terms of syntax than other C-style languages, so I wanted to start more at the basics and see where the path goes. I decided to go with this book:

iOS SDK Programming: A Beginner’s Guide; James Brannan and Blake Ward

Windows, Windows Phone and XBOX

I have a Windows Phone. I love my Windows Phone. I want to make apps for my Windows Phone. Clearly Microsoft is pushing big for Windows Phone, but when combined with Windows 8 and the XBOX 360 console, it is a pretty powerful ecosystem to author for. I decided to try and learn all of them, but start with the desktop first. I noticed that a lot of Windows Phone books ask that you already know C#, so I got a basic C# book to start, then cover Windows Phone, then dive into XBOX 360:

Stephen’s C# Programming with Visual Studio 2010 24-Hour Trainer; Rod Stephens

Windows Phone 7 Application Development 24-Hour Trainer; Brian Faucher

Microsoft XNA Game Studio 4.0; Rob Miles

Wrap-up

So with all of that, I have a lot of reading (and coding!) to do over the next few weeks. I really am excited about learning something new—and to do something that is purposefully not Adobe to try and fully immerse myself within mobile.

I’ll provide more information along the way on how I’m doing with all of this training. For now, it’s off to Android and Java!

12
Nov

Flash Community: “Keep Calm & Carry On”

Since I can’t seem to help myself, I’m going to continue being an un-official community manager and provide a little more of my view of what is going on for people to consider over the weekend.

This week has been a struggle to say the least, but I know that tomorrow I need to go into my classroom and in front of all of my students give them answers that will make sense to them for their education and careers. This same information is relevant to anyone who has clients or customers that rely on us to make sound technology decisions to help them have successful businesses.

First, adopting Flash and AIR as a platform to build content is still a sound and strong platform for customers and to teach our students. This week though, the types of projects that you build with the platform has changed significantly from what we have been used to for the last several years. With this, where to take our customers and students now has multiple paths.

As I mentioned before, Flash in the desktop browser isn’t going anywhere. In fact, it is going to only get better when Stage3D ecosystem frameworks become more popular and available to the community. Projects like Starling are a perfect example of how Flash is a great platform for desktop browser gaming.

Next, AIR is an amazing platform to create custom experiences for the desktop, Android, iOS and Blackberry, and soon when Stage3D support comes to AIR, we will have a kick-ass gaming platform for mobile that uses our existing ActionScript skills to create great apps that can be monetized through app store and in-app purchases. With Adobe’s Creative Cloud Touch apps built using Adobe AIR, it is a safe bet that Adobe is investing in this technology for the long haul.

The Flex team at Adobe announced today that they are moving to an open development model, merging with the Spoon project and contributing the project to an open source foundation. The contributors at Adobe and Spoon will continue to collaborate to develop the technology. In a group chat tonight, a number of the Spoon project board members joined in and talked about some of the specifics of how Spoon got involved with Flex. They are a great group of dedicated community professionals, smart engineers, and otherwise awesome people who understand the world of enterprise, browser and mobile development and have been part of the Flex community for several years. One thing that was mentioned was the desire and need to have the Flex framework target more than just Flash. As someone else said—it is drawing bits on the screen, and with work, it could be adapted for other runtimes or ecosystems.

This type of outlook with Spoon and Flex is something of a shock to a lot of us in the Flash community. But now there are other technology options for the community, and from the messages of Adobe there is an underlying message that has been pretty consistent: that HTML5 will become the dominant platform for expressivity, and Flash and AIR are focusing on gaming and mobile applications.

When I face my students, that is exactly what I’m going to tell them and that they should burn this week’s news into their heads, because it is a perfect example of how technology changes affect a community at a dramatic level. What is happening right now—right in front of us, is historic. The unfolding of a technological change of this magnitude does not happen often. But at the same time it teaches us something, and it is this type of change that keeps us in this industry—because our skills and expertise are what allow our customers, clients and students to be successful and navigate the waters of technology and software.

As I said tonight in the chat, the Flash community has taking a beating this week—and they deserve some time to rant, yell, kick and scream to get it out of their systems. But we are also an amazing community that evolves and changes as the need arises.

This week, we have a new need for evolution and change, and it is within our opportunity and responsibility to do the most with it.

10
Nov

Thoughts on Stuff and Things + Adobe

So it has been quite a week…but I wanted to pass along my thoughts to everyone in the community around the news from Adobe.

First off, I want to thank everyone for all of their messages, e-mails, texts and thoughts on my behalf. Leaving a company you love is always hard, being laid off from a company you love is even harder. I was very shocked on Tuesday when I heard the news about my fate, but you have all helped me get through the week and I am very excited about my future and the opportunities that lie ahead. Layoffs suck, but they aren’t personal—they are business, and while you and I may not agree with the decision, it was made for business reasons, and I’m not angry with Adobe or any of my former co-workers and peers.

Whenever you get laid off, there is always a mixture of emotions. Happiness, relief, grief, anger and fear. That is hard enough, but when you combine that with Adobe’s news on Wednesday, the way it was communicated, and the community reaction, the emotions were exponentially magnified. Now, that being said, while I want to just sit on the sidelines (or my couch) and tune it all out, I can’t—because of my love for this technology and the community that I have tried to support for many years.

I also find myself in this weird middle ground. I am no longer officially working as a community manager or product manager at Adobe; but there are NDA restrictions that prevent me from sharing the how and why of the week’s news. While I might not have my Adobe badge anymore, that in my eyes does not take away any of my responsibility as a leader in the community and speak on your behalf to the stakeholders that are at Adobe. Which brings me to an important point—the product managers, evangelists, community managers, and developer relations team members found out the news and the way it was communicated at almost the same exact time you did. They are wrestling with the news and your reaction in real time—so please be supportive of them as they dig through everything. They really really have your back and are working hard to bring your reactions and feedback to the people that need to hear it.

So, on to the news itself:

First, let’s look at the facts of yesterday’s announcement. The announcement stated that Flash Player for mobile browsers was no longer going to be developed internally, and the technology and product teams at Adobe are focusing on Adobe AIR applications for application development, and continued investment in the desktop browser plug-in.

From an engineering perspective, getting one platform to behave nicely is hard enough, but when you consider the number of devices, operating system fragmentation, and wide range of device hardware, it was going to be a huge mountain to climb. The Flash Player and AIR teams implemented a number of changes to how they make their products and how they release them to try and meet this demand; but when you look at it from a ROI perspective, the investment outweighed the benefit.

Now those are the facts of the announcement—the part that was missing and was handled poorly by communications was around the technologies and roadmaps that go into it. The flow of the information started with a press release from Adobe, that went to the press who want to get attention from their readers, so they linked the “reason” to the Steve Jobs message around Flash, which was read by all of our clients, investors, backers, and then ultimately, us. All of these individuals contacted you, the designers and developers of the platform, and wanted an explanation; however Adobe didn’t prepare the community with information that would be helpful to defend our technology choices and expertise. This then compromised our integrity to our clients; the factual technology announcement didn’t matter—it was communication flow that backed the community into a corner.

The other side of this is the perception and the fundamental value proposition of Flash: to normalize user experiences across platforms, browsers and devices and make it more efficient for designers and developers to create amazing stuff. This gap of not having the mobile player directly hits that value proposition.

Now, let’s look at this from another point of view. HTML5 on desktop browsers is a mess—low adoption, inconsistencies, etc. On mobile, the support is far better and consistent, but the app technologies and languages are the biggest hurdle now between Objective-C, C#, Java and C++. So for Adobe, the choice was to continue to help normalize the developer experience for desktop browsers, and offer the same benefit for app development using AIR. With HTML5 being “better” (not perfect—I know better than to say that), the benefit and more profound impact that Adobe could bring to the community was better tooling support for HTML5 and to have a seat at the table for those that are charting its path. That is what has driven new products like Edge and Muse that I am proud to have played a hand in their early days.

The challenge that Adobe faces with Flash, Flex and AIR is to communicate a roadmap that is reliable and long term to the community to understand and trust and take it to their clients and know that they have Adobe’s 100% commitment behind it. It is this roadmap that I feel will be difficult to deliver, since for a number of the community that work with enterprise know—the roadmap needs to be long term between three to five years. In addition, it needs to be within the mobile and device ecosystem, which has become so volatile that any roadmap will need to have significant shifts and changes since the platforms themselves haven’t provided clear roadmaps of their own. It is the silence around the lack of a road map that has been deafening—but the teams are working hard to give you the information you need to do your job and run your businesses.

Last week I started a new semester teaching ActionScript 3.0 at San Francisco State University. One of the first things I said, and I said that my recent book reflect this, was that the biggest opportunity for new developers to the Flash Platform was in making apps for the smartphone and tablet markets through multiple app stores and ecosystems. The announcements this week are a validation to that belief. In a couple of weeks, I’m also going to start my new HTML5 course where I will be featuring Adobe Edge and JavaScript instruction for creating content for browsers. As an educator and a community leader, this is where I see technology going.

Say what you will about the way the message was communicated, but know that the teams at Adobe believe in you, support you and go to bat for you every day.

I know that I do…

…and always will.

7
Nov
Barnes & Noble Nook Tablet

SFDesigner:DW’s Weekly Mobile Wunderlist #003

The last week was a mixture of announcements from a number of platforms, frameworks and manufacturers. In general news, there were a number of Q3 shipment reports. The first is from IDC, that stated that total global number of mobile shipments increased by 12.8% year-over-year, which is higher than the 9.3% that they predicted. When examined at the company level, Samsung and ZTE were the biggest jumps in the quarter, increasing 23% and 57.9% respectively. Apple slipped down to fifth place. LG had the worst report, with shipments declining by nearly 26%.

In other industry reports, Canalys also published their Q3 shipment report for smartphones. The report confirms previous reports with Samsung leading globally, however in the USA, HTC beat Samsung and Apple with a shipment of 5.7 million smartphones.

Links:

  • “IDC: Samsung, ZTE see jump in mobile shipments…” / Engadget
  • “Canalys: HTC overtakes Apple as top smartphone vendor in US” / Electronista

Read more »

4
Nov
iStock_000017541294XSmall

Tablets, User Experience and Fragmentation – Part 2

In my last post, I discussed the realities of platform and operating system fragmentation across smartphones and tablets. This also illustrated the difference in strategies the major platforms are taking to own this growing market. First, with Apple and Google having a similar strategy of taking their mobile platform wins and bring them to tablet devices. Counter to this is Microsoft’s strategy of building from their base on the desktop and that do the tablet with Windows 8.

But with these platforms comes the need to have strong user experience for these applications. One of the promises for cross-platform development has been the “write once, deploy everywhere” concept, where an application would take itself and then adapt completely for a different device. I think that this can work, but only within classes of devices. In this article I’ll show some examples where this can break down and ultimately hamper your overall experience, in the next post we’ll take this further, reviewing the development options for the varying platforms as they relate to user experience. Read more »

31
Oct
iStock_000017541294XSmall

Tablets, User Experience and Fragmentation – Part 1

Over the last few months I have been working with tablets in various form factors and platforms. My first dive into the form factor was with the iPad, and then I started working with Android tablets using a Dell Streak 7 and then a Galaxy Tab 10.1, which was running Froyo and Honeycomb respectively. Most recently I bought a Dell Inspiron Duo, a convertible netbook that becomes a (really thick) tablet, and have been using Windows 7 and the new Windows 8 Developer Preview on it.

Each of these have components that have worked well for me, and some that have not. So I wanted to share some of my experiences to see if others can benefit and to try and drive better user experience for tablet applications. Read more »

28
Oct
Nokia Lumia 800

SFDesigner:DW’s Weekly Mobile Wunderlist #002

The last full week of October saw a number of additional hardware announcements from Nokia, unveiling their new Windows Phone devices, and Samsung which held their Galaxy Note launch event in London. Read on for more information on the events of the week. Read more »

24
Oct

Fundamentals of ActionScript – Instructor Guide

I recently published Fundamentals of ActionScript 3.0: Design and Develop with PeachPit, which is available in print or via e-book formats like the Kindle or through Safari Books Online. To help instructors integrate the text into their classroom materials, I have prepared a set of student and instructor guides to accompany the book for use in a classroom setting.

The instructor guide provides a synopsis of each chapter with helpful tips on speicifc topics that I have found need special attention when working with new students to ActionScript. In addition, the student guide provides additional project assignments for each chapter that build on previous chapters to help reinforce the learning objectives of the chapter. Finally, there are code troubleshooting sections that will help identify common syntax pitfalls.

The documents are available at the links below. If you have any questions or need further assitance, please contact me at doug@sfdesignerDW.com

Instructor Guide

Student Workbook

 

Follow

Get every new post delivered to your Inbox.