My experiments...

April
---
2008




Silverlight chase game.

Silverlight Chase Game Here is another example of my forgetfulness... I saw a small, addictive Flash game somewhere and I can't find it anymore. It involved an object that you could drag and then several other objects moving around the screen.

The goal is to avoid touching any objects or the walls. Here is my attempt at recreating this small game in Silverlight 1.0 (click on the image). As usual, nothing refined, just a functional model.

You may wonder why I am not diving into Silverlight 2.0...? Well, that version is still in beta and although I have experimented with it, I don't want to post any example yet, as most folks still have the 1.0 version installed and may not want to install a beta version of the player.

Enjoy!

February
---
2008




Silverlight video slidepuzzle.

Silverlight Video Slidepuzzle With so many technologies emerging, it is hard to pick just one and spend some time on to learn. So many toys and yet so little time. Well, Silverlight is one of such toys I do not want to pass me by. I can see its tremendous potential and I am already familiar with many of its key components.

Rich Internet Applications is what customers are already demanding and AJAX can only do so much....

Well, here is a modest first attempt at some Silverlight 1.0 with Javascript. A video slidepuzzle (click on the image)... Enjoy!

October
---
2007




Developing a SharePoint 2007 Feature...
a step by step tutorial.

Developing a SharePoint 2007 Feature. One of the most important features I look for in an enterprise application is the ability for a developer to take the products and customize it to fit and fill the business need. In simple words, it needs to be extensible and it needs to be able to integrate with other existing applications.

SharePoint 2007 has greatly enhanced its capabilies in these two fields with something called SharePoint Features. In essence, "SharePoint Features" is a plug-in framework, that allows a developer to extend SharePoint in any way that it can imagine.

In this tutorial we will be walking through the entire process from the very beginning in easily explained terms.

April
---
2007




Ajax UpdatePanel, UpdateProgress and MasterPages workaround.

Convert an Atom feed to RSS with ASP.NET. There have been several technologies that have come and I have been a bit late in jumping on the bandwagon. Ajax is one of them. It has been amazing to see the possibilities of this approach (and how it has squashed any other functionality-competing non-html based approaches....Flash and Java Applets comes to mind.).

I had been experimenting with Ajax a bit and came across a problem when using the updatePanel, updateProgress and MasterPages together.

December
---
2004




Polaroid image processing with GDI+ in ASP.NET.

Polaroid image processing with GDI+ in ASP.NET. This experiment shows how take an URL of a regular image and then return a manipulated image with the looks of a polaroid picture.

In other words, loading the image provided in the textbox in memory, convert the text provided in the textbox into a graphic, add a background picture and then putting it all together. Finally, rotate the finished image and return to the browser. All this on the server and on the fly...

November
---
2004




Convert an Atom feed to RSS with ASP.NET.

Convert an Atom feed to RSS with ASP.NET. There are many popular types of feeds: RSS 0.91, RSS 0.92, RSS 1.0, RSS 2.0, Atom 0.3 and recently Atom 1.0. The original feed of the blog of this site is an Atom feed, but I still want to make the feed available to the public in the other formats.

Since the Atom feed is just plain XML, we can use XSL to transform the XML into the other popular RSS formats. We can just simply write a ASPX page that loads the XML, applies the XSL and server the XML back to the client in the RSS format requested.

February
---
2004




Consuming WebServices with Charting .NET II.

Consuming WebServices with Charting .NET II. I wanted to experiment a bit more with web services and also apply the Charting feature of the Xceed Charts for .NET. So I used a public web service that provides stock quotes to feed and populate a chart from the Xceed Charting component. Please be patient, it may take a moment to load...

October
---
2004




Consuming WebServices with Charting .NET I.

Consuming WebServices with Charting .NET I. I wanted to experiment a bit more with web services and also apply the Charting feature of the Xceed Charts for .NET. So I used a public web service that provides data of population from any of 227 countries to feed and populate a chart from the Xceed Charting component. Please be patient, it may take a moment to load...

October
---
2004




Morse code translator WebService with ASP.NET.

Morse code translator WebService with ASP.NET. I have been planning on creating a little experiment with a .NET webservice, but never had the time to get around and do it. I wrote this simple .NET webservice showing a round trip request - response.

It will simply convert the entered text into official Morse code...

October
---
2004




ASP.NET Upload feature without server-side component.

ASP.NET Upload feature without server-side component. In previous applications, I have always had to us 3rd party components, such as ASPUpload, to handle a particular upload feature.

In this ASP.NET experiment I show how to upload any type of file with ASP.NET without using any third-party or server-side components...

October
---
2003




GreetingCardBuilder.com

GreetingCardBuilder.com. I wanted to send a greeting card and could find many sites that would let me select from pre-made greetingcards. Of some, I liked the background, other the music, but no way for me to customize the card itself. Maybe I want to send the card for a special occasion with a specific meaning... So, I wrote this application called GreetingCardBuilder.com.

It allows anyone to create a fully customizable greeting card.

Update: the site has gone offline long ago, but the app is still up and available for anyone to use. Enjoy!

September
---
2004




Determining RGB Color from a wavelength in C#.

Determining RGB Color from a wavelength in C#. In this C# experiment I show how to calculate the RGB color for a specific wavelength and apply the color to an object. Visible wavelength ranges from aproximately 350nm to 720nm. I needed a quick application that would calculate between these units...

October
---
2003




Web Services with Flash and Remoting.

Web Services with Flash and Remoting. With all the buzz about a the new Flash 7 Player having cross domain restrictions for the built-in webservices component, it is a good thing that webservice accessibility in Flash is still available through Flash Remoting. This example show 4 simple webservices in action with Flash Remoting.

September
---
2003




Stream Video without Flash Communication Server.

Stream Video without Flash Communication Server. This has got to be one feature I love. With Flash MX 2003 and the new Flash 7 Player, you can now you can convert your movies to Flash Video (.FLV) using either Flash MX or Sorenson Squeeze and then simply stream (no preloading) it from your webserver. The code applied is ridiculously simple.

August
---
2003




Working Oscilloscope in C#.

Working Oscilloscope in C#. Using GDI+ in C# to trace a line defined by points and redrawn every millisecond with random values.

Ofcourse, instead of the random values one could use values provided by a source and display a correct trace.

July
---
2003




Streaming Flash Video in Windows Executable.

Streaming Flash Video in Windows Executable. This experiment simply tries to use the streaming video capabilities of Flash with a C# desktop software app shell or, in other words, a good ol' executable. It also uses Flash Communication Server to stream video into this desktop application.

July
---
2003




Animation in Flash vs. Animation in C#, round II.

Animation in Flash vs. Animation in C#, round II. Well, this experiment is posted to show the striking similarities between Actionscript and C#. In this case, it is a more creative example of the animation functions. A large surface, is divided in four sections. Clicking on any of the colored section moves that section into the center, applying the selected animation mode.

July
---
2003




Importing XML in Flash MX and Flash MX2004.

Importing XML in Flash MX and Flash MX2004. In this experiment I will attempt to demonstrate the ways of importing XML into Flash with Flash MX (using actionscript parsing) and with Flash MX2004 (using the new XMLConnector component).

 

June
---
2003




Simple Flash Remoting sample.

Simple Flash Remoting sample. This experiment illustrates the capabilities of Flash remoting with ColdFusion MX and compares the difference with loading data through an XML file. The content in the textfield comes from the same source (SQL2000 database) as the content in the weblog. Instead of using ASP to query a Stored procedure in the database and then feed the data into Flash as XML, that then needs to be parsed to be understood, I use Macromedia Remoting in this case. This Flash app queries a Coldfusion page that gets the data and then returns the data, without the need of any parsing or translation. Of course, it needs to be cleaned up, but the data is there.......It's quick and not too complicated.

The posibility that I never have to write an XML parser again simply is such a relief!

April
---
2003




Animation in Flash vs. Animation in C#, round I.

Animation in Flash vs. Animation in C#, round I. Well, this experiment is posted to show the striking similarities between Actionscript and C#. In this case, I have created a class that when instantiated it animates whatever object has been passed as a parameter. In the example, there is that one class and then every control (checkbox, radiobutton, combobox, tabcontrol, etc) on te screen, no matter what type, has the same eventhandler when clicked: call the tween method, passing itself, then generate some random numbers for X and Y position.

I am again amazed by the striking similarities of C# and Actionscript and encourage all as developers to take a look at this language. The initial learning curve is quite flat.

March
---
2003




Email web application.

Email web application. I have this site hosted with a reputable hosting company and have also my email boxes. The company allowd me to retrieve my email from any email client, such as Outlook Express or through a browser, with web based email. I must say that I hate checking my mail through their web based application. It is all HTML and Javascript and it is slow and hangs often. So I thought, why not create a web based email client that acts like desktop software? So, here I started creating a web application that would look as real to the original 'desktop' application as possible.

It is in progress and not near finished. The data comes from an XML file, but I am not sure how I am going to display any other content other that regular text. (i.e. HTML). The HTML support is extremely limited in Flash textfields and unless I write some sort of interpreter of HTML to translate it into actionscript textFormat properties, I do not know how to do this yet.

February
---
2003




Flash Communication Server Experiment.

Flash Communication Server Experiment. Simple streaming video experiment from Flash Communication Server. Video is streamed from server to client.

Quality is very poor, but that is intended. As usual it is just feasiblity that is intended...I need to keep my data transfer down. Actionscript code is included.

January
---
2003




Dynamic Flash Banner from XML data.

Dynamic Flash Banner from XML data. The attempt here is to prove the versatility of Flash. With just very simple (too simple) XML and a few pre-made movie clips you can create, not just dynamic text, but dynamic everything. Here I provide three XML files that just contain a few parameters. When you click on the links, it calls this same page, passing a 1, a 2 or a 3. Depending on that number, the parser then loads XML1, 2 or 3. In this XML are the parameters that specify what individual movieclips to load. And there you have it. A dynamic banner. Imagine creating a banner with many more parameters, with instructions on how to animate the text (from here to there), etc.

December
---
2002




PageMaker Application.

PageMaker Application. This Flash application allows you to build customized pages. It does not require you to learn any new skills or install any software. Anyone can use this online application. You can create a page anyway you want and then send this page "as is" to anyone with an email address. The addressee will receive and email with your comments and an URL, that when clicked on, will display the page as you built it.

This application started as a way of customizing a page by placing objects with its own properties anywhere on the screen, then store the data and somehow being able to retrieve that data, interpret it and put the items where and how they were. This would prove to be very useful for creating web based "desktop-style" applications.

December
---
2002




BusinesscardMaker Application.

BusinesscardMaker Application. This application is a spin-off of the above and resulted when I needed to make some business cards for myself. I could not find a site where I could easily design online my own business card. I was limited to a certain design, had to send in separately a logo, if I had one, and was not able to see how it looked. For this purpose, the following application would be a perfect fit. I still need to add some more graphic elements to choose from, but all in all, it has a good concept.

December
---
2002




Scale thing experiment.

Scale thing experiment. I saw something like this in some application and wondered how it was done. I tried myself and here it is. Try moving the square in the center of the grid.

Nothing spectacular to see here other than the realtime changes to a shape controlled via several slider controls.

November
---
2002




Whiteboard extension to upload shared background.

Whiteboard extension to upload shared background. Most of the components in this experiment are original Macromedia Flash Communication Server components. Here is what I did different: The whiteboard component, in conjunction with Flash Communication Server, allows multiple users to see what any of these users are drawing on their whiteboard. I.e.: Michael can see what Nicole is drawing in real-time. Now, the reason I believe this component is somewhat useless, is because all that is allowed is to draw arrows(and some cumbersome writing). If this tool wants to be a true competitor of Micorsoft's NetMeeting or Webex it will need a little more juice than that. The reason people share a whiteboard is because of the need to share and show something like a diagram, an image, a presentation, a flowchart or other such visual item. Then, you can use the drawing tools to point out and remark items on the whiteboard.

In this experiment, I allow any user to upload an .jpg image and set that as the background in the whiteboard component. As soon as the image is uploaded, all users will see that image as their whiteboard background.

November
---
2002




Back button solution in Flash.

Back button solution in Flash. Finally, the browser back-button problem in Flash solved with Actionscript, Javascript and ASP. In Flash you can simulate pages by assigning frames to the different pages. So when, you click on a button, this button will instruct the Flash playhead to go to a different frame and redraw trhe screen with different content. But....

To the browser, this is still one page that contains a Flash movie. The browser does not know about the frames in Flash. If the user wants to go back in the Flash movie, insitinctively they may click on the browser back button, which will take them to the web page they were before and not the previous Flash page.

I have seen similar solution somewhere on the net, but here is mine: a page variable gets set on every page. A setInterval constantly checks for a change in this variable. Every time you switch pages, a hidden .asp page gets loaded into a hidden browser frame. This page carries the value of the page variable that gets then sent back to Flash through Javascript. Nothing new sofar. Now, the browser keeps a history of every page loaded in the hidden frame. If you click on the browser back button, it will load the same asp page, but with the previous variable. The asp page then calls a javascript function that sets the variable into Flash. Voila, Flash recognizes the change and forces the playhead to move to the framenumber just passed.

October
---
2002




Simple Flash-email greeting application.

Simple Flash-email greeting application. This application allows the user to send a note with a pre-defined background to another user. The user will receive an email, that when clicked on, will display the greeting with the background and the note. It is fully functional, so try it out. It a simplified PageMaker experiment where the XML gets stored in a local text file.

August
---
2002




XML dynamic navigation bar.

XML dynamic navigation bar. This XML driven navbar parses one XML file (below) and then starts building the main items and the corresponding sub items. It is intelligent enough to re-arrange the positions and spacing of all items dynamically cretaed, according to the amount of items or subitems. I have included 3 sample XML files below. Compare them and see that any XML fed to this app will work, as long as it is correctly structured. Also the attributes in the main items specify whether the item is clickable and what to do, i.e.: getURL or gotoAnStop at a particular frame. This navabr is great for variable menu items, like when different users receive different options according to their rights or something. The XML can then be fed by a XML database stream tied together with their login authentication process.

Also, regarding the animation, there is only one frame in this application. All animation is scripted in Actionscript.