Archive for the ‘thinking’ Category

Moving on

January 30th, 2010 9 comments

Yep, I decided to leave Adobe and move on. Last year the Adobe evangelist team got restructured, I ended up working in engineering and finally got a little time to breathe. I mean evangelism was a hell of a ride for an ‘introverted geek’ and it stretched me to the limit. But I must admit that I loved doing this … well maybe except the crazy traveling.

One Sunday morning I woke up, sat on the edge of my bed and asked myself: “Now WHAT?”. I realized that I really love coding but I also like giving presentations, teaching and what you can generally call ‘knowledge transfer’ activities … and I like also the business side of the technology too. Thus the engineering side only filled up half of it … maybe a little more cause I really love coding :) .

So I decided to stop, take a break (as I realized that I’ve spent none of my last year’s legal holidays) and look for a new challenge. That’s because I just couldn’t come up with a good answer to the “now what?” question and I realized that I might need to do some experiments to find out.

Categories: thinking Tags:

Hard Play – No Flash on the iPhone – yet…

October 6th, 2009 9 comments

Last night Adobe announced Flash Player 10.1, which will support a lot of devices including Windows Mobile, Symbian, Android and WebOS (you can find more details in the official press release).
Sounds cool except of course … there is no iPhone there?

I am wondering why that is and what is Apple’s strategy? Everywhere I go people ask me, When will you guys be releasing Flash for iPhone? Why are you not releasing Flash for iPhone? And I don’t know what to tell you, but from what it seems Adobe is going for every smart phone out there. I mean there has been only fingerpointing so far: Apple saying Flash is not good enough, Adobe saying it is and now is delivering it for every other smart-phone.

Now I am wondering what Apple’s strategy is about that. I mean currently let’s face it: iPhone is by far the only significant smart phone out there with a design that was really innovative not only from the hardware point of view. The whole iPhone business ecosystem was way far ahead anything any competitor had put up forward.

But once Apple “got it right” now the spell is broken. Now, the entire industry not only knows what customers want, they are pressured to deliver it fast if they want to still be in this business 5-10 years from now. I think the whole game will change now into a long slog, a down in the trenches fight between Apple and the other big phone hardware manufacturers and telecom operators. Why do I think it will be a long slog? Well Apple did a big blow in the phone market with iPhone but I don’t think they will get 30% of the smart phones market very soon. And even if they get it I doubt that Apple will get 80% of the mobile phone market. And I don’t think they want it. Apple’s strategy is to get the most profitable 10-20% segment of the market, after that the profitability drops and it doesn’t look that nice.

Now back to the trenches. By leaving Flash out of the iPhone, Apple is keeping iPhone out of Flash and it’s betting on its own API to deliver applications and RIAs (I doubt they will adopt Silverlight :) ). With Flash and Silverlight pushing hard for all other smart-phones (which by the way are getting cooler and cooler) I expect that pretty soon they will get to be quite popular. So if Apple insists on using its own API, it will make application development for their platform expensive. If you have the coolest phone put out there, this makes perfect sense. But if the other phone manufacturers get their act together they will soon bridge that gap. With Flash, and soon AIR, support they will be able to reuse development skills and even running code to get people to make applications for their platforms. By making development more expensive on iPone than for the other platforms, Apple will position iPhone as a niche product. This clearly is not a mainstream strategy and playing the niche market with iPhone is a tricky strategy. And with Flash Player 10.1 on all the other phones, it kinda makes iPhone look a little strange because you can’t play video on it.

I wonder what Apple’s move or statement will be especially now that you will be able to compile Flash applications to get them run as native apps on the iPhone.



Categories: ria, thinking Tags:

On how I got a ‘relationship’ with ColdFusion 9

July 13th, 2009 Comments off

ColdFusion 9 is now in Beta, on labs. But I will not go over all of the new and shiny features instead I want to tell you a little bit of the story about my ‘relationship’ with ColdFusion 9 :)

When I joined Adobe about 3 years ago I thought CF was a dying language. I joined the Adobe Evangelism team about 1 year ago and … I was still thinking that CF was a dying (if not dead) language. During my ‘baptism’ as an evangelist I needed to watch a ColdFusion presentation, just to know about this product was all about. So Ben Forta gave me an one-hour presentation about what ColdFusion is NOW. And I emphasize NOW because around the last quarter of that hour something hit me: Hey, this ColdFusion thing is one of the best Enterprise Service Buses I’ve seen and one of the best glue technologies for heterogeneous enterprise infrastructure.

Now this might sound like corporate b$$t and it might have sounded the same to me if I hadn’t had a particular experience a few years ago. I was working as a consultant for a big Saudi bank on a project to integrate a few of their systems. And boy those where heterogeneous. Just for start: in that building were four kinds of electric plugs with two voltages. You don’t want to imagine how their IT systems were: all technologies from all ages from everywhere on this earth. I spent half of my coding time there configuring connectors and writing adapters for the most exotic datasources and services implementations.

So with this experience in mind, while watching Ben Forta going through various features of CF that thought came into my mind. And I realized that what’s cool about CF is not that it has some unique capabilities but that it integrates everything so nicely. It had only one major drawback for me: the CF language itself. I mean when you have programmed for 10 years in C/Java style languages an XML language like CF just gives you a little bit of an instant organic rejection.

But now here comes CF 9. They made CFSCRIPT a first class citizen so now you can take advantage of all the services and connectors under the hood with a JavaScript-like language. This made me give ColdFusion a first try a few weeks ago. I chose a very ‘simple’ scenario: join two tables (one in a MySQL database and one in an Excel file) and push the result through a third one. I must admit that I had no CF experience whatsoever, but half a day and about 20 lines of code later I managed to finish my task. In this time I’ve gone through some old CF features (like the built-in database engine that helps you join heterogeneous datasources)  and some new ones (like the Excel connectors or the new and nice Hibernate ORM stuff). And after a couple of hours I exposed a web services from which you can download a PDF of the aggregated data. So after my first day as a CF developer I felt pretty … advanced :)

And looking at the developer data, I’ve seen that there are more who think like me :) … as the CF population has grown about three times larger in the last 4-5 years to around a healthy 800k. Doesn’t look like a dying technology at all.

Now getting serious, I think that if you have to do some serious integration project in your company you might want to take a look at ColdFusion 9.  Not as merely a language, because this is not the old CF that 14 years ago pioneered the web development revolution. That is already history. But you might want to look it as a tool that is very suitable for integration projects and RAD development on top of your existing IT infrastructure.

Categories: coldfusion, thinking Tags:

Experience Designer – from blocks to something more

May 26th, 2009 1 comment

p>A few days ago, while heading to the Adobe offices here in Bucharest, I noticed (again) the grey communist buildings. I don’t know why, but this communism thing keeps inspiring me to think about the software industry.

umbraBlocuriJust to give you a hint: communist blocks are not the nicest type of buildings. Here in Romania they were ordered mainly by Ceausescu to displace a lot of people from rural areas into cities so that his plans of urbanization and industrialization could be sustained. So these buildings did just that … and nothing more. Very functional, that’s it. Not too much creativity, one model copied hundred of times in a row. More an engineering task than an architect’s job.

Now, if you ask a software engineer, this might sound like an efficient way to build houses, with a lot of component and design pattern reuse. If you ask people that are living in these blocks (including me) I would prefer moving. I can’t really because these are practically the only available blocks in Bucharest.

And this brings me back to the software industry and how we are building software, especially business software. Actually the verb for this is ‘engineer’: we are engineering software. And as engineers we are striving for efficiency. As a result there is tons and tons of software that is extremely … well let’s put it blunt: crappy to use. However, much of this software provides a lot of value. Like communist buildings, I would prefer using ‘crappy’ software to get a process going rather than push some paper.

But as the industry matures, the fundamental efficiency problem moves away from ‘build these two functionalities with the minimum amount of money’. As applications move more and more into our lives, they become like buildings and demand a touch of the ‘elusive’ design. For thousands of years architects have added the ‘experience’ value in the construction industry. That’s what the new Experience Designers for applications strive to do for the software industry. (They might also be known as Interaction Designers as we still struggle to define their work).

You can say that these guys make applications look nice, but I would say that it’s more than this. You can’t really put this into words, but if you come and take a walk among the grey communist blocks in Bucharest you will understand.

Categories: thinking Tags:

Can Flash Player help your research project?

March 23rd, 2009 Comments off

Last autumn I gave a talk at RoCHI ( a Romanian academic conference about human computer interaction. I wasn’t very excited to attend the talks there since I didn’t have very high expectation about the research activities in Romania. Well, I was very wrong. About half of the subjects and presentations there left me “mouth open’” .I also  had the pleasure to meet Mr. Sabin Buraga who I can say is a true Teacher 2.0 :) and who was one of the main responsible for putting together that inspiring conference.

But there is one subject in particular that I want to talk about: Augmented Reality. Because at that little conference I had the pleasure of staring at some extremely cool augmented reality demos. They were based, I think, on some versions of ARToolKit, also a joint research effort from multiple universities. And I was thinking: How can this technology be put to use on some real projects? How can it be evangelized?

Then I forgot about it until a colleague of mine showed me this demo. It was made with a Flash port of ARToolKit called FLARToolKit by Saqoosha. How cool was that, augmented reality in Flash!

And then the creative agencies got them and now it seems to be a fad:

and I think that BMW is preparing one for Mini.

I realized that once the ARToolKit algorithms got to run in Flash Player and thus reach 98% web audience and some creative agencies figured out they could do something with them, the technology just got free advertising worldwide. I am thinking that if you are working on the next graphical or visualization algorithms you might really want to consider them running on Flash Player. Just for the sake of a cooooool demo that can be seen by everybody. Not to mention that with Alchemy you can still have all or part of your algorithms written in C or C++ and compile them to run on Flash Player.

Categories: alchemy, Flash Player 10, thinking Tags:

Obama and Video on Internet

February 2nd, 2009 1 comment

As you probably have read by now, the US House passed Obama’s $819 billion stimulus package. Now I am not a very big fan of US politics but reading through the news I’ve found out that some of this money will be going in infrastructure spending. From that, 6 billion will go to expand broadband Internet access. Through its “Digital Britain” program, the UK is looking to put high-speed Internet all around the country. As far as the media covers other rich states are directing part of their stimulus packages to the same area.

Reading all these reports, I was struck by an all too obvious fact. If all this money will make broadband more prevalent in the next few years, this means that video (one of the Internet media formats most limited by current broadband penetration) will have a lot of new technical space to expand. Isn’t it cool that more than 80% of Internet video is delivered through Flash Player?

That being said I imagine that DRM will be a hot topic in the next year since big media companies will not want to release their most precious bits unprotected. Currently only AIR has DRM so I can’t but urge the Player team to get that into Flash Player as well.

So … Stay tuned!

Categories: thinking, video Tags:

Words are not enough – On how experience changes the way we use the Internet

January 26th, 2009 2 comments

Every once in a while I think we all go into this ‘future prediction’ mode. So I’ve philosophized a little over the weekend about … well about the future of the Internet and how this will shape our society. If you remember back in the 90s when the Internet craze began a lot of voices predicted that printed stuff would go away. Well, not only did the book industry not go away but book sales reportedly grew year over year both by volume and in value. It was not stellar growth, around 10%, but it was definitely not a retraction. It’s true that lately daily newspapers have started feeling squeezed by electronic news delivery but glossy magazines are still by far our reading preference when sitting in our ‘private moments’. However it is also true that the amount of words delivered in the electronic format has grown at an impossible pace. In only 20-30 years this has transformed us from information hungry into information overloaded (by the way, we still have problems adapting our brains to this).

But not only the information is now easily available, an increase in computing power helped us make better models and thus solve more complex problems. And with solution to these complex problems, guess what, even more complex problems emerged and a new level of complexity came into our life. But hey, we had the Internet so we started to use it not only to deliver information but to deliver applications. Now people not only exchange information using email but also use shared calendars over the web to plan and keep track of group activities (and these are only two of the most common examples).

As information exchange and complexity grow well over our brains’ capacity to deal with, we built applications that help us manage that. But of course, for these applications to be helpful, they need to require less effort to learn and use than to manage the underlying complexity directly. In other words they need to be intuitive. Or better, they need to match our expectation. But what if these expectations are not coded into words? What if these expectations are about how the computer behaves? Up until now, the engineering of information (the driver of the Internet) was a very … engineering occupation. We’ve known for ages how to codify information with words, also from ages we codified the words into writing. Now we digitized everything and spread it using Internet. We are very good with words and almost all the experience we had now with information and information management was mostly word-related (with a little help from the typography). But now a new beast come into play. With the new runtimes like the DHTML engine in browsers (people call it AJAX), Flash, or Silverlight we activate a new set of awareness and thus create a new kind of expectation: the cinematic expectation.

As humanity we have a long history and lots of experience with words and how to codify information in words. We also know how to codify spatial information although is a harder task: architecture and graphics are really hard but we have a lot of experience here also. But the democratization of the application will demand yet another skill: cinematic. And this is one of the newest skill and more difficult to get right: theatrical experience is hard and making movies is even harder.

One of the difficulties that architecture and movies share in common is the difficulty of codifying their language. This comes from the fact that a lot of their language can’t be expressed in words. That’s why they’re called arts, no?

Now spatial representation, sounds, and cinematic presentation is starting to get mainstream as applications get into our everyday life. Suddenly the computing industry, where a bunch of engineers like me where dealing with problems that had a decent formalism to be communicated (words, mathematical language, etc.), are faced now with problems that require more and more artistic stuff. And the more you (well it’s usually a team) get all these right the more efficient the application will be. What we generically call usability is now a melange of words, script, cinematic … even sound. And this is going mainstream. And we don’t have a decent codification for a lot of this stuff. Smells like making Rich Internet Application is becoming more an art than an science. And because good applications have proved valuable in this highly complex world this means that businesses will need to adapt to create and consume this kind of art. 

Just as books and a lot of printed press have not been wiped away by the Internet, I think the new use of the Internet to deliver applications will not challenge the current way we use it: to distribute information or ‘The Know What’. I can however state that we will now start to use the Internet to distribute one of the most difficult piece of knowledge to distribute so far: The Know How.  We clearly see the benefit in this but we have barely glimpsed the challenges that lie ahead.

So I say to myself: What a wonderful world … for a good  Information Architect or a good Interactive Designer !

Categories: ria, thinking Tags: