What's going on (from twitter)
Archive: October 2008
Savas is moving on (to search for ET Life!!!! :-)
29 Oct 2008, Updated: 29 Oct 2008
, Categories: Personal, Microsoft

After two wonderful years working for Tony Hey’s Technical Computing and then External Research teams, it’s time to find a new challenge.

I talked to various teams (inside and outside Microsoft) and found lots of interesting opportunities. At the end, I decided to do something very risky and move to Live Search :-) My intention is to learn as much as possible over the coming months on what it means to deliver a production-quality service for millions of users utilizing a huge computational/storage infrastructure and dealing with the world’s data. In the process, I hope I can contribute some fresh ideas on how to process and reason over the Web’s data.

If you are reading this blog, you probably know that I am interested in semantics and large-scale computing. My new role is going to involve both, so I am very excited.

Few notes about working for Tony

I joined Technical Computing from CSD after Tony Hey’s invitation. He wanted a technical person and I guess he found a troublemaker :-) I learnt so much throughout the last two years (it was Nov 1st 2006 when I started).

It’s been a great ride. The team managed to deliver a lot with much more to come; we worked hard and slept little but it was all worth it. I am not going to list all the projects with which I got involved but I enjoyed every single one of them, even those that didn’t actually saw the light of day. I do have some favorites, like Famulus, Chem4Word, and “Cloud Services for Science” (details in the coming weeks) but all have a spot in my heart.

I can write an endless number of blog entries about Tony’s influence in my career, about his leadership, his vision, his enthusiasm, his personality. He’s a great mentor, a great leader, a great role model. There are many things I am going to miss from ER but working for Tony is definitely the one at the top of the list. Tony, thank you for everything!!! I really can’t find the words to show my appreciation.

I have seriously enjoyed working with Lee Dirks and Alex Wade who have a fantastic portfolio of projects in the Scholarly Communication space. They are great guys so don’t lose any opportunity to interact with them.

I am going to miss the entire team. Everyone had something fantastic to share/give... Daron Green (great manager and advisor), Evelyne Viegas (clever, passionate about semantics, gives great advices, smiles), Dan Fay (great insights and all-around technology-geek :-), Kris Tolle (very passionate about her domain), Roger Barga (methodical, hard worker), Carole Poland (the most positive person ever!).

What happens to Famulus and Chem4Word

I am going to continue my involvement with those two projects. I am going to make sure that they reach the promised level of maturity and delivered to the community, as originally planned! This is my personal commitment.

What’s with the “ET Life” in the subject?

The consumer reality... the reason I consider my move to Live Search “risky”... the branding awareness...

I told a very very very dear friend of mine about my move to Live Search. Here’s how the email exchange went:

  • Me:
    ...
    Which reminds me…
    I announced to my team that I am leaving. I am joining Live Search (yes, Microsoft does have a 'search' service :-) I am going to make all the difference now :-)
    ...

  • My friend’s reply:

    ohhh those are crazy news!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! So what does it mean you are part of live search!!! you have to explain this to me - it sounds like you'll be looking for ET life somewhere!!!!!!!!!!!
    ...

:-)

Here are some of my highlights of PDC 08 – Day 3

  • I missed the Rick Rasid’s keynote because my early-morning Chem4Word teleconference overrun but it was important.
  • I attended the Windows 7 context-aware API talk, which was interesting. The accelerometer-based demo at the end was fun.
  • Lots of socializing today.
  • Attended the second half of the Oslo Quadrant session.
  • The end of the day was all about Live Mesh: architecture and programming.

Here are some of my highlights of PDC 08 – Day 2 (yesterday)

  • Keynote 1: Lots of new technologies… Windows 7, VS.NET 2010, .NET 4.0, Silverlight outside the browser (great demo Marc! :-), and Office apps in the browser.
  • Keynote 2: Don Box and Chris Anderson did a great job at going around the various dev-related technologies and showing how one could program against them using Atom and HTTP. I am not a fun of the HTTP Method->.NET Class/Method mapping but it gets people start quickly I guess.
  • Doug Purdy’s talk on Oslo was high-level but informative.
  • Don Box and David Langworthy talked about M. I like M, MGraph, and MSchema. Unfortunately their evaluator didn’t work but I am looking forward to seeing runtimes that can interpret domain-specific M graphs. There is a great opportunity for semantics-related work here.
  • Tim Mallalieu gave a great presentation on the Entity Framework-related work that is going on. I wish we had some of the upcoming features for when we were building Famulus.

Lots of technologies.

Here are some of my highlights of PDC 08 - Day 1

  • Keynote (Ray Ozzie, Bob Muglia). Windows Azure and Azure Services Platform were announced. The technology is great. Ray’s appearance was very good (he’s come long ways from the first time I saw him present) and Bob’s was energetic. Unfortunately, Amitabh’s appearance needs improvement.
    Windows Azure and the Azure Services Platform are great and definitely a step towards the right direction for Microsoft. External Research is closely following the developments in this space and you’ll soon see some ideas of how we think Cloud Computing, and Windows Azure specifically, will support researchers worldwide, something that we term as “Cloud Services for Science”.
  • A lap around Windows Azure. Basic intro to Windows Azure. If you are new to the technology, you should check the video when it becomes available online.
  • Hugged Don Box again. It was nice to catch up with him even if it was only briefly. I am soooo excited to see him present again and also look forward to the Oslo stuff.
  • The future of C# (Anders Hejlsberg). That was the best session of the day. Some amazing new features coming in C#-land. Of particular note:
    - Dynamic typing
    - Co- and contra-variance for generic types… I can finally pass as an argument an object of type IEnumerable<string> to an IEnumerable<object>
    - Meta-programming (beyond C# 4.0). Now, this last part of the session was really really cool. Anders used the title “compiler as a service” for his last demo. One of the coolest things I’ve seen for a while. When the session is available online, you should definitely check it out!
  • A lap around the Azure Services Platform (John Shewchuk, Dennis Pilarinos). It’s great to see Dennis’ stuff in action. Service bus, federated authentication, SQL Services, workflow in the cloud, etc. I know how hard he’s worked so I am really pleased for him and the entire team. We are going to be using the services for our “Cloud Services for Science” work. Stay tuned.
  • Developing and Deploying your first Windows Azure Service. Technical session on how to program against Windows Azure.
  • This must have been announced at a parallel talk to the ones I attended... Live ID is now an OpenID provider. This is great news for interoperability, especially for research/academic organizations, which use OpenID.

Going to socialize with people now. More tomorrow.

In LA for PDC08
27 Oct 2008
, Categories: Travel, Microsoft

I am sooo excited :-) Lots of technology-related announcements. A geek’s dream :-)

PDC 08.

I am yellow
24 Oct 2008
, Categories: Personal, Microsoft

I went through a psychometrics evaluation recently as part of a group activity in Microsoft. It was extremely interesting to find out about the characteristics of different personalities. Of course, we should always treat such tests with a grain of salt. We are all individuals with our unique characteristics. We constantly get input about our personality and behavior from our environment, our friends, our family, our colleagues. My approach to improving myself personally and professionally is to aggregate all the input and make it my own, try to benefit/learn from it rather than blindly follow everything that I am told. Most importantly, I am a believer in admitting the mistakes I make and then try to learn from them; and yes... I’ve done lots of mistakes :-) However, I have also met people who refuse to admit that anything they do could be considered a mistake. Oh well.

The analysis is based on Carl Jung’s work and is supposed to be an alternative to the Meyers-Briggs method for psychometrics.

So, who am I? According to the evaluation, here are the main points. It’s amazing how they got many aspects of me right, just from the few questions they asked.

Personal Style

Savas has a real zest for living and enjoys company. He should take care to include the practical details in his projects and continually try to look at situations from an objective viewpoint rather than just his own perception. He is a good improviser who will go to great lengths to please others. He is strong on initiative and creativity, but may often be weak on the completion of projects. He tends to be light-hearted and sunny, and because he constantly seeks to avoid painful experiences, he tends to steer away from personal anxieties.

Quick to see the possibilities of new ideas and projects, Savas is outstanding at initiating these and persuading people to support him. Exhibiting a tendency to become concerned and hurt if his ideas are met with indifference or criticism, he may take conflict and rejection personally. Socially adept, even-tempered and tireless in his efforts to bring about peace and well-being, he tends to hold the perfect relationship as the ideal. He is inventive, independent and can be extremely perceptive of the potential contained within the views of others. Savas enthusiastically and co-operatively joins in activities and can juggle several activities at once.

Savas radiates goodwill and enthusiasm. He is optimistic about life in general and human potential in particular. He is motivated by approval and reacts unfavourably to indifference or rejection from others. Savas is sympathetic, empathic and affable. As he puts as much energy into maintaining personal relationships than into maintaining tasks, Savas likes to keep a wide assortment of relationships alive and kicking. Seen by others as spontaneous and charming, Savas is persuasive, loves surprises and enjoys finding unique ways of bringing delight and unexpected pleasure to others.

Savas can be very effective in using his concern for others to ensure involvement. He is comfortable letting others manage the more technical aspects of a project so he can devote his full energies to creating a co-operative, comfortable environment. He may lose interest and move on to the next thing, once a job becomes routine or dull. His mental processes operate best when he is in contact with other people. He is an imaginative and creative visionary who is a source of inspiration to most.

Ingenious, enthusiastic and outgoing, Savas has great personal charm and can be successful in a variety of roles. At times, events can overwhelm him and he may find it almost impossible to say “No”, even when the demands are unreasonable. He is used to doing several things at once, but others may view some of this as superficial activity. Learning how to use accepted methods of organisation and time management will help him to overcome a tendency to want to procrastinate.

He may have had personal experience of the view that worthwhile success comes only after suffering significant misfortune.

Interacting with Others

A creative thinker, Savas is generally warm, enthusiastic and confident of his own abilities. He makes stimulating company with his witty and interesting conversational style. He does not appreciate critical comments about his personal qualities as he sees these comments as personal attacks on his integrity. He may become possessive of people in whom he has invested a lot of his emotional energy. He is motivated to help other people in what he sees as real and practical ways through direct action and co-operation. The easy-going nature and good humour that Savas displays makes him an attractive companion. Consequently he is known by a large number of people and enjoys a wide circle of acquaintances.

The gift of sheer adaptability means that Savas has an uncanny skill for making life into an enjoyable performance, juggling many activities and people and usually enjoying the limelight. He prefers to be active and working with like minded people. He may become rather over-emotional when stressed. Savas is very co-operative and articulate, communicating sympathy, concern and a willingness to become involved. He prefers democratic and participative processes rather than written instructions or autocratic systems.

Savas is outgoing and makes things more fun for others by his pure and unreserved enjoyment of the moment. Placing a high value on his harmonious relationships, it is not surprising that people turn to Savas for encouragement, nurture and support. Even-tempered and tolerant, Savas constantly tries to be the diplomat. He excels in promoting harmony around him. Usually verbal and persuasive, he will seek or wish to withdraw quickly from confrontation unless provoked to the extreme, when he may go “off the deep end” verbally. As a result of his natural desire to please, he can be seen as overly concerned with others' needs.

Decision Making

Savas's natural curiosity for new ideas will bring new and fresh ways of thinking to the group. He recognises judgements that rely heavily on logical analysis, but then may ignore this in making his decisions. He may get bored quickly and tend to ignore significant detail in his desire to move on to more exciting things. Decisions made on the basis of logic alone are not highly valued by him. He prefers tasks or projects which allow flexibility of scheduling.

He needs to learn to consciously delay making decisions until he has considered more information as he may have overlooked sounder alternatives. Through his intuitive feeling personality, he may have difficulty in limiting himself to a single project and usually prefers to keep many balls in the air. He is a quick decision maker and considers people within the context of the result of the task. He is likely to decide in favour of the solution that brings the highest level of approval from others. Others may see his decisions as unrealistic in certain circumstances.

He may choose to change his decisions if it turns out that someone may be adversely affected by them. He tends to make choices around his own personal feelings which may be as important to him as more objective data. If everyone can be involved in a project, he will ensure that they are. He may unconsciously manipulate the process to get his own way. He is prepared to make decisions through group consensus.

Key Strengths

  • Understands the importance of “style” in presentation.
  • Strong sense of humour and fun.
  • Fluent and reassuring.
  • His glass is usually half full.
  • Investigative, interested and inventive.
  • Displays high levels of energy.
  • Accommodating and will provide help where needed.
  • Articulate and communicative.
  • Adaptable and adventurous.
  • Imaginative and dynamic.

Key Weaknesses

  • Becomes impatient with routine and repetition.
  • Generates so many ideas that chaos often ensues.
  • His outwardly directed energy can be overpowering to some.
  • May not finish everything he starts.
  • Has to work hard to maintain a specific focus.
  • De-motivated by routine tasks.
  • Fails to appreciate the seriousness of certain situations.
  • Feels that some who may be modest are justified in their modesty!
  • Easily distracted from the routine.
  • Loses interest when the initial challenge has gone.

image  imageimage

 

Obviously I need to try to apply more of the “blue” qualities in my work. The evaluation did show that I am trying to compensate in that aspect (the third diagram showing the areas in which I invest energy in order to compensate), but I think I need to be doing more.

 

There is much more in the evaluation but I think the above gives you an idea. The more interesting thing of the entire exercise was to find out the characteristics of others and the category in which they belong. Finding out what’s the best way to interact with them was very useful.

Concert updates
21 Oct 2008, Updated: 21 Oct 2008
, Categories: Personal

I recently went to see Sigur Ros with friend who had an extra ticket. I really enjoyed it. Good energy and great show. Photos below.

Tonight I am seeing Death Cub for Cutie again (loved them at Sasquatch) supporting Neil Young... what a weird combination, but “hey hey, my my” :-) I decided that tonight is all about the music so there’ll be no photos.

Then, in November I am seeing Alanis Morissette. Can’t wait!

 

(Sigur Ros concert, Oct 10, 2008)

IMG_7624 IMG_7635 IMG_7638
IMG_7641 IMG_7643 IMG_7646
IMG_7655 IMG_7661 IMG_7671

Paul Miller from Talis interviewed Alex and me the other day. You can listen all about our Research Output Repository Platform (codename “Famulus”) and the rest of our tooling in the podcast.

We got requests for a binary release. So I tried creating an installer (checked in) and uploaded the first build. If you encounter problems, let me know. Feel free to go and change the code if you want :-)

OfficeSWORD codeplex project.

I am soooo excited to announce the first public beta release of the Research-Output Repository Platform (codename “Famulus”)*. It’s been a lot of fun working on Famulus for the last few months and the entire team is extremely excited to make it available to the community. Here’s the intro from the download page.

MSR’s Research Output Repository Platform (codename “Famulus”) aims to provide the necessary building blocks, tools, and services for developers who are tasked with creating and maintaining an organization’s repository ecosystem. Furthermore, it provides an easy-to-install and maintain experience for those who want to quickly set up a research output repository for their project, team, or organization. The platform is based on Microsoft’s technologies (SQL Server 2008 and .NET Framework version 3.5 SP1) hence taking advantage of their robustness, their quality support infrastructure, and the plethora of developer-focused documentation. New applications on top of the platform can be developed using any .NET language and the Visual Studio 2008 SP1 environment. The platform focuses on the management of research assets—such as people, papers, lectures, workflows, data, and tags — as well as the semantic relationships between them. Support for various services such as full-text search, OAI-PMH, RSS and Atom Syndication, BibTeX import and export, SWORD, AtomPub, and OAI-ORE are included as part of the distribution.

I’ve talked about our work around semantics and repositories before:

As per our original commitment, Famulus will be available at no cost to the community. With this beta release, we hope to get a lot of feedback so we can improve it. There is still sooooooooo much that needs to be done and I am sure there are problems with this beta release. Please let us know of the issues you encounter as you try out Famulus and as you attempt to write applications on top of the platform. I’ll try my best to blog about samples and simple scenarios related to the development experience. We have set up a discussion/support forum and a feedback mailing list. We encourage you to use them.

I believe we are taking the right first few steps in enabling an ecosystem of tools and services for repositories on top of the Microsoft platform. As I’ve mentioned in the past, interoperability with community formats and protocols is amongst our primary goals. I think this is evident from the protocols we are already supporting and there is more to come.

We have already started working on the next coding milestone, which is going to bring significant improvements to the Web UI functionality and experience, basic submission-related workflow support, and RDF/RDFS support (amongst other things). RDFS support is going to be a very important step for Famulus since we are going to be building on top of the experience we have gained in order to enable a great development experience for arbitrary domains and their data models.

You can slowly see our promise for free tools and services to support the Scholarly Communications lifecycle materialize: Famulus, Chem4Word, eJournal service, Conference Management Tool, Article Authoring plugin, Research Information Center, Creative Commons plugin, samples (e.g. OfficeSWORD, myExperiment integration), etc.

Scholarly Communication Lifecycle

Well done to the team, Lee Dirks, Alex Wade, the Persistent team, and Anthony Hanses who have all been fantastic!

 

* Final name will be announced with the next release.

SWORD plugin for Word 2007
7 Oct 2008, Updated: 8 Oct 2008

When we started thinking about what we could do to support researchers with tools and services, interoperability with existing formats, protocols, and services was amongst our primary goals. The Conference Management Tool (CMT), eJournal, Chem4Word, Creative Commons plugin for Office 2007, “Famulus”, etc. are all trying to implement as many of the community standards that are out there (as time/resources allow us of course). We also wanted to support the entire research lifecycle, from client tools to services.

The research repository community has been working on an AtomPub-based protocol, called SWORD, for remotely depositing material in an interoperable fashion. “Famulus”, which is going to be released today in public Beta* supports SWORD. We’ve also worked closely with arXiv.org in their implementation of SWORD and the integration with CMT and our upcoming eJournal Service.

During discussions with the Fedora Commons and DSpace communities, it was suggested to us that an open source plugin for Word 2007 that talks with any repository service through SWORD would be a good idea. I finally managed to put some time aside to develop such a plugin and upload it to Codeplex. You’ll need VS.NET 2008 SP1 to load the code and run it (there is currently no separate installer I am afraid but we are working on one). Please let me know if you have any issues. I am sure the code is not perfect and it only covers the basic cases. I hope that the community will pick it up and evolve it.

Codeplex project: WordSWORD.

Update: Well, after John’s comment, I decided to rename theCodeplex project to OfficeSWORD and add the same functionality to PowerPoint as well. I’ll try to write the code as soon as possible but it’s coming.

Update 2: Update done. Now PowerPoint is supported as well.

image

 

* More on that as soon as the download link goes live.

Oh dear...
7 Oct 2008
, Categories: Microsoft

I am seriously embarrassed that Microsoft produced this video :-( And I am scheduled to attend PDC08 :-(

Bill de hÓra made a comment on Stefan Tilkov’s post about our “How to GET a Cup of Coffee” article...

Q205: “I feel that I have learned a lot from the discussions with the REST folks and together with Jim we hope to move that understanding forward to service-oriented computing with our upcoming MEST paper.” http://savas.parastatidis.name/2005/03/12/505b74f7-d5d3-4b94-95d4-65129ce2bf2b.aspx

Q205: “MEST - Embraces the SOAP processing model as its fundamental architectural constraint. The SOAP processing model is prevalent throughout the architecture of applications built using this style. SOAP messages flow from sender through intermediates to ultimate recipients which are applications. Applications deal with SOAP messages as a first-class constructs and are utterly agnostic about how messages are transported from semantic viewpoint.” http://jim.webber.name/2005/04/16/26e0bdcf-65de-4cce-9c0b-1f35bc43620e.aspx

Q308: “In fact, we’ll show how Web techniques can be used with all the dependability associated with traditional EAI tools, and how the Web is much more than XML messaging over a request/response protocol”

What happened to MEST and “processThis”? And why doesn’t the example use SOAP? I think if we’re going to be looking to experts for guidance, some rationale on an architectural shift would be good to see ;)

Jim posted a reply with his view. Here are mine...

As far as I am concerned, the main ideas around MEST, especially the concepts of message-orientation, multi one-message-based  interactions, declarative distributed computing, luck of directly bindable state, etc. still thrive when building large-scale distributed applications (at least some mixture of them :-). Just have a look at how Amazon, Google, Microsoft, etc. build their 100s-of-thousands-of-nodes infrastructure and services. The goal behind MEST, an architectural style like REST, was to capture the architectural tenets of service-oriented distributed systems that concentrated on messages exchange. We used Web Services as the natural set of technologies to explain how those tenets could be realized. We even came up with SSDL to explain some of the thinking.

We really wanted to imitate REST’s attempt to abstractly capture the architectural principles of the Web and HTTP, which focus on resources. Our “sandbox” at the time was full of services and messages and the ecosystem of Web Services technologies represented the “toolbox” available to us to demonstrate the ideas. We came up with “MEST” (MESsage Transfer) as a way to indicate REST’s influence in our thinking.

Do I believe that the MEST ideas are still valid? Absolutely. Do I see the ideas taking off as part of an ubiquitous ecosystem of Web-Services-(i.e. SOAP-based)-supported technologies on the Internet? Most likely not. As Jim suggested, the middleware vendors have focused too much on hiding the message-oriented nature of the technologies behind object-oriented tooling, forgetting years of discussions around the issues related to hiding remoteness of operations (Waldo’s paper). The Web has emerged as the most attractive platform for application integration and hosting (perhaps until the next “big thing” :-)

So, has there been an “architectural shift” as Bill suggests? I personally don’t feel that I have “shifted” as much as Jim has :-)[1] Has there been a clear winner in the technology space? Oh yes! The Web seems to rule.[2] So, how do we bring the MEST ideas of application conversations, state machines, declarative computing to the Web? How can we discuss about good practices and good use of the technology toolsets available to us?

As technologies I believe we need to monitor what is going on around us and provide ideas, feed the discussions, adapt. As I said in the past... provided we are informed, we should use the right tool for the right job. At this point in time, the focus is on the Web. I am sure something else will come up in the future.

If you notice carefully in this later article, the idea of conversation state is apparent throughout. There is an implicit state machine representing the possible steps during a particular conversation. Wouldn’t it be nice if we could declaratively describe such a state machine and return it as a resource? Wouldn’t it be nice if we could GET the series of available HTTP-based interactions with an endpoint in a way that is understood by our middleware platform? The article demonstrates how an application could be implemented but if we had a common language to describe the possible state transitions (e.g. “SSDL for the Web”), then we could further improve the development experience. Yes, the state machine description cannot be static and there is no reason it has to be. But I divert into deep technical thinking now :-)

Architectural thinking evolves, adapts to the environment, makes use of the best tools, the best techniques, the best material. If it didn’t, we would have been still constructing pyramids (well, it seems that in Las Vegas they are still doing that :-). The same is true with software architecture. As Software Philosophers, we should never stop thinking, reason about the world, share our opinions and questions :-) So, keep it coming everyone.

Thanks Bill! It’s been a long time since I felt I wanted to blog about this topic :-)

 

[1] Here’s where I disagree with Jim, which must be a first for us (at least in public since we disagree in private ALL THE TIME :-)

[2] I admit that I thought SOAP, when used correctly, would become the basis for distributed applications on the Internet. I was wrong!

“How to GET a Cup of Coffee”
2 Oct 2008
, Categories: Web

My “web book” co-authors (Jim and Ian) and I worked on a fun article for InfoQ about how Web technologies could be used to support a “cup of coffee ordering” scenario. It was really fun working on the article and I am pleased with the ideas conveyed. Your comments/feedback are more than welcome!

“How to GET a Cup of Coffee”