Monthly Archives: September 2008

Haskell Monads on the web

Yesterday I spent some time reading about Haskell implementations of Monads because I want to prepare some exercise. I share some links and snippets. http://www.haskell.org/tutorial/monads.html http://www.haskell.org/haskellwiki/Monad Laws & syntax Monads in other languages Philip Wadler / Monads The essence of functional programming This paper explores the use monads to structure functional programs. No prior knowledge … more

Posted in Blogs | Tagged |

Autocomplete in Silverlight

I’ve written a simple class to allow adding autocomplete to a TextBox. An example of how to use it is: In the XAML file: <TextBox x:Name=”uiText” Width=”100″ Height=”30″ manas:Autocomplete.Suggest=”DoSuggest” /> In the class file: // The texts we want to suggest private string[] options = new string[] { “Al”, “Amiko”, “Angla”, “Anglujo”, “Ankaux”, “Antaux”, “Atomo”, … more

Posted in Blogs | Tagged , |

OneDay Santander at Microsoft Argentina on 09/15/2008

Last Monday I had the opportunity to join Brian Cardiff at OneDay Santander to give a conference on ASP.NET and Ajax. OneDay Santander was an event organized by Microsoft Argentina attended by Banco Santander’s IT team. It was a great experience, which let me learn a lot from an outstanding speaker like Brian and be … more

Posted in Blogs | Tagged |

Controls Contract

An interesting feature of Silverlight is how the interaction between visuals and logic (this is, between designers and developers) is handled. It uses a so-called Parts and States Model, which is ensured by a contract specified with attributes in the control class. Jesse Liberty has made an excellent short post on this subject, which I … more

Posted in Blogs | Tagged , |

Embedding YouTube videos in Silverlight

There’s no straight way of embedding YouTube videos in Silverlight. What you can do, however, is to create a floating div over the Silverlight plugin, whose content will be the YouTube video control. For this purpose, I wrote a simple class to make it easier to do this. The usage is simple: // ZCcedd9EfHI is … more

Posted in Blogs | Tagged , |

Facebook and Elders

Creating a test user in facebook, I attempted to enter 1900 as birth year (which is mandatory), and was greeted with a red banner reading “Please enter your real birthday”. Considering that the birth year is a combobox and its minimum value is 1900, why having an invalid option in the range of options to … more

Posted in Blogs | Tagged |

Explicit Substitutions, or Substitutions If You Need to Implement Them

As I told you before, performance is something desirable when programming a λ interpreter. The sustitutions we saw are made in one step. I will note the beta step as →β and a substitution step as →. For instance, (λx.x) z  →β  x[x/z]  →  z. The computations of the traditional lambda calculus are always: T … more

Posted in Blogs | Tagged |

Visualizing multi-dimensional data

A couple of days ago we started working on a new visualization for Riff’s acitivity. The requirement was to find a way of representing the relationship between items tag with two or more tags, the users who were tagging and the evolution of the tags along time. With the help of our designer Luigi and Juan we crafted a nice visualization.
more

Posted in Blogs | Tagged , , , , |

Positioning a Google Map according to a set of coordinates

The Google Maps API provides a number of methods to make it easier to accomplish this task. One only has to take the time to explore them and think how to combine them to get the solution. It’s not a hard thing to do, but in case you’re a lazy guy, here goes a short … more

Posted in Blogs | Tagged , |

Saturation variable function for treemaps

For those of you not familiar with a treemap, it is simply a bunch of boxes somehow arranged inside a bigger box; each of them also contains its own set of smaller boxes, and so on. Each box has an associated weight that determines its size. Take this one as an example from another blog… … more

Posted in Blogs | Tagged , |