<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-14425481</id><updated>2024-09-02T10:01:55.965+02:00</updated><title type='text'>mario::blog</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://msopena.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14425481/posts/default?alt=atom'/><link rel='alternate' type='text/html' href='http://msopena.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Mario Sopena Novales</name><uri>http://www.blogger.com/profile/02908691739480745570</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>12</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-14425481.post-4901869205497797409</id><published>2008-04-05T18:40:00.012+02:00</published><updated>2008-04-06T12:34:25.414+02:00</updated><title type='text'>Monodoc internals and a little annoying fly</title><content type='html'>If anyone out there still does not know, &lt;a href=&quot;http://www.mono-project.com/Monodoc_Contributing&quot;&gt; Monodoc&lt;/a&gt; is the mono documentation system. It is the core that allows the &lt;a href=&quot;http://www.go-mono.com/docs/&quot;&gt;mono documentation web&lt;/a&gt; and the &lt;a href=&quot;http://www.mono-project.com/Monodoc&quot;&gt;mono documentation browser&lt;/a&gt; work. Well, it is also behind a handful of other nice tools like &lt;a href=&quot;http://www.mono-project.com/Generating_Documentation#Generating_static_HTML_Documentation&quot;&gt;monodoc2html&lt;/a&gt;. Once the presentation are done let&#39;s move on...&lt;br /&gt;&lt;br /&gt;Monodoc works with several different sources of documentation. It renders API documentation, but also C# compiler errors, the Ecma specification and, in the past, even the monkeyguide (which was obsolete and removed). The nice thing is that it keeps a uniform documentation tree no matter where the documentation comes from (API, man pages, error references, ...)&lt;br /&gt;&lt;br /&gt;This tree is generated from a skeleton and feed with different documentation sources. This skeleton is defined in a file called monodoc.xml which is something like this:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;&amp;lt;node label=&amp;quot;Mono Documentation&amp;quot; name=&amp;quot;root:&amp;quot;&amp;gt;&lt;br /&gt;    &amp;lt;node label=&amp;quot;Class Library&amp;quot; name=&amp;quot;classlib&amp;quot;/&amp;gt;&lt;br /&gt;    &amp;lt;node label=&amp;quot;Mono Libraries&amp;quot; name=&amp;quot;classlib-mono&amp;quot;/&amp;gt;&lt;br /&gt;... (more contents here)&lt;br /&gt;    &amp;lt;node label=&amp;quot;Various&amp;quot; name=&amp;quot;various&amp;quot;&amp;gt;&lt;br /&gt;        &amp;lt;node label=&amp;quot;DiaCanvas Libraries&amp;quot; name=&amp;quot;classlib-diacanvas&amp;quot;/&amp;gt;&lt;br /&gt;        &amp;lt;node label=&amp;quot;NUnit Libraries&amp;quot; name=&amp;quot;classlib-nunit&amp;quot;/&amp;gt;&lt;br /&gt;        &amp;lt;node label=&amp;quot;Tao&amp;quot; name=&amp;quot;tao&amp;quot;/&amp;gt;&lt;br /&gt;    &amp;lt;/node&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;/node&amp;gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Then, when monodoc starts, it looks for all the *.sources files it founds and feeds its contents to the nodes:&lt;br /&gt;&lt;br /&gt;&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjZfuXeULaMUVZW2rHsibz3OoALDSeLZ5Iw6I9SdjJNWEGpDDxtdcesGisPYKi183ZvzVy88sdzSrji3Y0vyQWik-7gwakfLnVh-SeYWE0qqUFVJ_3W45FaxToDB6xAGBZmg2Or/s1600-h/monodoc-explicacion.png&quot;&gt;&lt;img style=&quot;display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjZfuXeULaMUVZW2rHsibz3OoALDSeLZ5Iw6I9SdjJNWEGpDDxtdcesGisPYKi183ZvzVy88sdzSrji3Y0vyQWik-7gwakfLnVh-SeYWE0qqUFVJ_3W45FaxToDB6xAGBZmg2Or/s320/monodoc-explicacion.png&quot; border=&quot;0&quot; alt=&quot;&quot; id=&quot;How monodoc sources are feed in the documentation skeleton&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;In the image above, the &quot;Class Library&quot; node is feed with the contents of netdocs.source, the &quot;C# Compiler errors reference&quot; with cs-errors.source and the &quot;NUnit Libraries&quot; with nothing, because that documentation is not currently installed on my system.&lt;br /&gt;&lt;br /&gt;And that&#39;s it. That&#39;s how monodoc manages the documentation tree.&lt;br /&gt;&lt;br /&gt;Well, there is this little annoying fly I&#39;m sure everyone using monodoc has met at least once. What happens if you click on &quot;NUnit Libraries&quot; node which has no documentation:&lt;br /&gt;&lt;hr&gt;&lt;br /&gt;&lt;h4&gt;Unhandled URL&lt;/h4&gt;&lt;br /&gt;Functionality to view the resource &lt;i&gt;root:/classlib-nunit&lt;/i&gt; is not available on your system or has not yet been implemented.&lt;br /&gt;&lt;hr&gt;&lt;br /&gt;That is the problem of having a static skeleton for documentation which is filled with the *.source files found. I know, the problem is not big, one possible solution is to purge those entries which does not have documentation (no *.source file was found), and that is exactly what is done as of r99894.</content><link rel='replies' type='application/atom+xml' href='http://msopena.blogspot.com/feeds/4901869205497797409/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/14425481/4901869205497797409' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14425481/posts/default/4901869205497797409'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14425481/posts/default/4901869205497797409'/><link rel='alternate' type='text/html' href='http://msopena.blogspot.com/2008/04/monodoc-internals-and-little-annoying.html' title='Monodoc internals and a little annoying fly'/><author><name>Mario Sopena Novales</name><uri>http://www.blogger.com/profile/02908691739480745570</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjZfuXeULaMUVZW2rHsibz3OoALDSeLZ5Iw6I9SdjJNWEGpDDxtdcesGisPYKi183ZvzVy88sdzSrji3Y0vyQWik-7gwakfLnVh-SeYWE0qqUFVJ_3W45FaxToDB6xAGBZmg2Or/s72-c/monodoc-explicacion.png" height="72" width="72"/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14425481.post-112894401201464431</id><published>2005-10-10T12:54:00.000+02:00</published><updated>2005-10-10T14:18:09.126+02:00</updated><title type='text'>Documenting is a Good-ThingTM</title><content type='html'>I&#39;ve been cleaning and writing some documentation on the Wiki regarding Monodoc. The problem is that, lately, my english is more broken that it should be (probably due to my year in Germany and that I haven&#39;t study english since..since..a lot).&lt;br /&gt;&lt;br /&gt;Well, the thing is that someone please check the pages I modified. Here is the list:&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;http://www.mono-project.com/Monodoc&quot;&gt;http://www.mono-project.com/Monodoc&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;http://www.mono-project.com/Monodoc_Editing&quot;&gt;http://www.mono-project.com/Monodoc_Editing&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;http://www.mono-project.com/Generating_Documentation&quot;&gt;http://www.mono-project.com/Generating_Documentation&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;http://www.mono-project.com/Monodocer&quot;&gt;http://www.mono-project.com/Monodocer&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;http://www.mono-project.com/Monodoc_Contributing&quot;&gt;http://www.mono-project.com/Monodoc_Contributing&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Of course, I will also appreciate all types of comments: style, things not clearly explained, things that lack. The Monodocer page should be reviewed a lot and, also, I have to add an Assembler page (the link is there but I didn&#39;t write the page yet).&lt;br /&gt;&lt;br /&gt;I recommend you to grab the SVN version of monodoc and mono-tools as some minor bugs are corrected. They were little annoying things that appear when using uncompiled sources from monodoc (the ones being created by monodocer). The bug that hanged Gecko-sharp when visiting big pages is also corrected.&lt;br /&gt;&lt;br /&gt;There is yet &lt;a href=&quot;http://bugzilla.ximian.com/show_bug.cgi?id=76054&quot;&gt;one more bug&lt;/a&gt; that makes Monodoc browser to hang, which is really difficult to track. It doesn&#39;t reproduce in the same docs (at least, the docs of the bug review doesn&#39;t hang monodoc for me, but the same error appears in other places) and is due to a cast from an String somewhere in Gtk. The point is that, the same code is used once and again (setting the title label, near the back/forward arrows) and nothings happens until you enter some specific docs. I will need to sit down and spend some time on this.&lt;br /&gt;&lt;br /&gt;Just one last question. Why don&#39;t try monodocer/monodoc for &lt;a href=&quot;http://www.mono-project.com/Generating_Documentation&quot;&gt;documenting&lt;/a&gt; your libraries?&lt;br /&gt;&lt;sup&gt;&lt;/sup&gt;</content><link rel='replies' type='application/atom+xml' href='http://msopena.blogspot.com/feeds/112894401201464431/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/14425481/112894401201464431' title='9 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14425481/posts/default/112894401201464431'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14425481/posts/default/112894401201464431'/><link rel='alternate' type='text/html' href='http://msopena.blogspot.com/2005/10/documenting-is-good-thingtm.html' title='Documenting is a Good-ThingTM'/><author><name>Mario Sopena Novales</name><uri>http://www.blogger.com/profile/02908691739480745570</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>9</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14425481.post-112790987161334785</id><published>2005-09-28T13:24:00.000+02:00</published><updated>2005-10-04T16:25:54.523+02:00</updated><title type='text'>Welcome to the Real World</title><content type='html'>The other night I went out with some friends and decided to wear a new-awesome-incredible T-Shirt I have. Luckily there was some &lt;span style=&quot;font-style: italic;&quot;&gt;paparazzi&lt;/span&gt; around who could register everything:&lt;br /&gt;&lt;br /&gt;&lt;div style=&quot;text-align: center;&quot;&gt;&lt;img src=&quot;http://personales.ya.com/msopena/blog/imgs/mono-shirt.jpg&quot; /&gt;&lt;br /&gt;&lt;span style=&quot;font-style: italic;&quot;&gt;Thanks miguel!!!&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt; In the monodoc camp there are little steps going on. First, and thanks to Rafael Ferreira, we have printing support now. The printing is performed by the GtkHTML widget even when using gecko, since gecko-sharp doesn&#39;t support printing by now; that means the printed documentation won&#39;t be so sexy as the rendered one (just substitute sexy with CSS-enabled). But, hey, it will be updated when gecko gets improved.&lt;br /&gt;&lt;br /&gt;Other recent addition is that you don&#39;t have to create the indexes using a command-line option anymore (the search and the normal index) because monodoc handles it with a nice and simple GUI addition. However, the indexes created from inside the browser will be only accesible to that user, since there are created in the config folder. To try this, download a fresh SVN version of &lt;span style=&quot;font-style: italic;&quot;&gt;monodoc&lt;/span&gt; and &lt;span style=&quot;font-style: italic;&quot;&gt;mono-tools&lt;/span&gt;, remove from the monodoc directory the file &lt;span style=&quot;font-style: italic;&quot;&gt;monodoc.index&lt;/span&gt; and the directory &lt;span style=&quot;font-style: italic;&quot;&gt;search_index&lt;/span&gt; and start monodoc.&lt;br /&gt;&lt;br /&gt;There is also an interesting &lt;a href=&quot;http://lists.ximian.com/pipermail/mono-docs-list/2005-September/001452.html&quot;&gt;conversation&lt;/a&gt; in the monodoc mailing list about whether it would be positive or negative for contributors the integration in the monodoc browser of the &lt;a href=&quot;http://bmaurer.blogspot.com/2005/08/msdn-browser.html&quot;&gt;msdn-browser&lt;/a&gt; from &lt;a href=&quot;http://bmaurer.blogspot.com/&quot;&gt;Ben Maurer&lt;/a&gt;. What do you think?&lt;br /&gt;&lt;br /&gt;The other day I was at the &lt;a href=&quot;http://beagle-project.org/Beagle_UI_Hackfest&quot;&gt;Beagle hack-fest&lt;/a&gt; in IRC. I had a lot of fun, special thanks goes to &lt;a href=&quot;http://www.gympoh.edu.sk/%7Elipka/&quot;&gt;Lukas&lt;/a&gt; for organizing everything. At the end, I contributed with the first version (so far) of the &lt;a href=&quot;http://personales.ya.com/msopena/sshot.png&quot;&gt;search sidebar&lt;/a&gt;. At least it is more or less what Garret &lt;a href=&quot;http://beagle-project.org/images/4/4e/Searchmockup.png&quot;&gt;drawed&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Aside from Mono, I finished my degree and now, in the Real World, I&#39;m looking for a job. I would love getting some response from these &lt;a href=&quot;http://www.ds2.es/&quot;&gt;guys&lt;/a&gt;; meanwhile, I will be sending my CV everywhere. Do you need a Telecommunications Engineer?&lt;br /&gt;&lt;br /&gt;Just an advice to finish the post. The other day I went to see &lt;a href=&quot;http://www.mayumana.com/&quot;&gt;Mayumana&lt;/a&gt;. If they go near to you, &lt;span style=&quot;font-weight: bold;&quot;&gt;don&#39;t miss them&lt;/span&gt;. Is one of the most awesome things I&#39;ve seen in the last months.</content><link rel='replies' type='application/atom+xml' href='http://msopena.blogspot.com/feeds/112790987161334785/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/14425481/112790987161334785' title='8 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14425481/posts/default/112790987161334785'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14425481/posts/default/112790987161334785'/><link rel='alternate' type='text/html' href='http://msopena.blogspot.com/2005/09/welcome-to-real-world.html' title='Welcome to the Real World'/><author><name>Mario Sopena Novales</name><uri>http://www.blogger.com/profile/02908691739480745570</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>8</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14425481.post-112553835203423000</id><published>2005-09-01T03:10:00.000+02:00</published><updated>2005-09-01T03:32:32.070+02:00</updated><title type='text'>SOC ends</title><content type='html'>The SOC is over. The &lt;a href=&quot;http://msopena.blogspot.com/2005/08/contributor-experiencetm-revisited.html&quot;&gt;dialog&lt;/a&gt; wasn&#39;t finally added to Monodoc. However, there is the list of contributions at the home page and a new &quot;Restore&quot; button next to &quot;save&quot; and &quot;close&quot; buttons, that lets you delete your contribution and restore the old text.&lt;br /&gt;&lt;br /&gt;Also, the Monodoc search patch is waiting approval at the mailing list. Just for the curious, here is an screenshot:&lt;br /&gt;&lt;br /&gt;&lt;div style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;http://personales.ya.com/msopena/blog/imgs/search.png&quot;&gt;&lt;img src=&quot;http://personales.ya.com/msopena/blog/imgs/search-mini.png&quot; alt=&quot;&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;At the end I wasn&#39;t able to finish all the desired features like Comments or downloading new documentation. However, I plan to continue contributing, so they will come, sooner or later. I don&#39;t know yet how many free time I will have, but I&#39;m sure I will find some to work with mono.&lt;br /&gt;&lt;br /&gt;After reading &lt;a href=&quot;http://primates.ximian.com/%7Elluis/blog/pivot/entry.php?id=42&quot;&gt;lluis&lt;/a&gt; post I decided to play a little bit with Inkscape and, then, I realized why I spend more time programming than designing:&lt;br /&gt;&lt;br /&gt;&lt;div style=&quot;text-align: center;&quot;&gt;&lt;img src=&quot;http://personales.ya.com/msopena/blog/imgs/baboon.png&quot; alt=&quot;&quot; border=&quot;0&quot; /&gt;&lt;br /&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;well, at least, the guys at &lt;a href=&quot;http://www.simios.org/&quot;&gt;simios.org&lt;/a&gt; seem happy with the logo I made for them.&lt;br /&gt;&lt;/div&gt; &lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://msopena.blogspot.com/feeds/112553835203423000/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/14425481/112553835203423000' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14425481/posts/default/112553835203423000'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14425481/posts/default/112553835203423000'/><link rel='alternate' type='text/html' href='http://msopena.blogspot.com/2005/09/soc-ends.html' title='SOC ends'/><author><name>Mario Sopena Novales</name><uri>http://www.blogger.com/profile/02908691739480745570</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14425481.post-112505816583985345</id><published>2005-08-26T13:31:00.000+02:00</published><updated>2005-08-26T14:09:25.876+02:00</updated><title type='text'>Contributor-experienceTM revisited</title><content type='html'>Hey, the &lt;a href=&quot;http://lists.ximian.com/pipermail/mono-docs-list/2005-August/001429.html&quot;&gt;people&lt;/a&gt; still read the monodoc mailing list. hehehe, just kidding. I&#39;ve improved the contributor-experience&lt;sup&gt;TM&lt;/sup&gt; with a nice dialog to deal with your contributions:&lt;br /&gt;&lt;br /&gt;&lt;div style=&quot;text-align: center;&quot;&gt;&lt;img src=&quot;http://personales.ya.com/msopena/blog/imgs/contribwin.png&quot; /&gt;&lt;br /&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;From that dialog you are able to open and remove your contributions and upload the selected ones.&lt;br /&gt;&lt;br /&gt;The problem is that contributions made before the patch will not be listed here nor in the root page (however, a message appears at the root page telling you have xx old contribs pending). Also, old contributions will be automatically uploaded with your next upload.&lt;br /&gt;&lt;br /&gt;The uploaded contributions are controlled by a serial number (I&#39;ve realized that was already done after implementing one myself) that acts like an ACK. Every time you upload a contribution, you get a new serial number so new contributions are marked with it and, both, the server and you, know which ones are new contributions and which ones are contributions already uploaded. This way, contributions not being uploaded (not selected) get its serial number updated after a successful upload.&lt;br /&gt;&lt;br /&gt;Now, it&#39;s time to concentrate in the search thing that I&#39;ve postponed for a month or so.&lt;br /&gt;&lt;/div&gt; &lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://msopena.blogspot.com/feeds/112505816583985345/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/14425481/112505816583985345' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14425481/posts/default/112505816583985345'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14425481/posts/default/112505816583985345'/><link rel='alternate' type='text/html' href='http://msopena.blogspot.com/2005/08/contributor-experiencetm-revisited.html' title='Contributor-experience&lt;sup&gt;TM&lt;/sup&gt; revisited'/><author><name>Mario Sopena Novales</name><uri>http://www.blogger.com/profile/02908691739480745570</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14425481.post-112466475495866144</id><published>2005-08-22T04:23:00.000+02:00</published><updated>2005-08-22T04:24:08.900+02:00</updated><title type='text'>Back to work</title><content type='html'>At the moment I&#39;m dealing with two aspects of monodoc: searching and contributions.&lt;br /&gt;&lt;br /&gt;The searching is almost done (it searches and highlights the results), but while I was polishing things, I introduced a bug I&#39;ve not been able to repair yet. I&#39;m getting a &lt;i&gt;NullPointerException&lt;/i&gt; from a line of code that is almost the same as before. It is one of those bugs you end up thinking if your computer is pulling your leg.&lt;br /&gt;&lt;br /&gt;For improving the &lt;span style=&quot;font-style: italic;&quot;&gt;contributions-experience&lt;/span&gt;&lt;sup&gt;TM&lt;/sup&gt; I&#39;ve added to the home page a text that says if you have made any contributions (which are not uploaded yet) or explains a little bit how to make a contribution. The point is that I wanted a list with links to all the contributions, but that was more difficult to obtain than I thought. The information being saved with every change was not enough to get those links, so I&#39;ve added a nice URL to every change being saved in chageset.xml.&lt;br /&gt;&lt;br /&gt;The problem is that the Urls in monodoc are a little weird. In the case of ecma documentation, if you click on the TreeView, you get something like &lt;span style=&quot;font-style: italic;&quot;&gt;ecma:10#Array/&lt;/span&gt; while through the links you get &lt;span style=&quot;font-style: italic;&quot;&gt;T:System.Array&lt;/span&gt;. Depending on the place you are working you use one or another (although they point to the same doc), adding some confusion to the internals of the program. To get my desired list I&#39;ve written a new method that figures out the nice url T:System.Array when it is not available. The results here:&lt;br /&gt;&lt;br /&gt;&lt;div style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;http://personales.ya.com/msopena/blog/imgs/contrib-big.png&quot;&gt;&lt;img src=&quot;http://personales.ya.com/msopena/blog/imgs/contrib.png&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;The thing is that, in my opinion, we should revise the internals of monodoc at some point, because the design is sometimes limited or confusing. I don&#39;t mean a rewrite of the program, but a reorganization, localizing the points where we are doing almost the same thing (two different urls pointing the same doc for example) in slightly different ways and looking for a design that facilitates more the manipulation of documents.&lt;br /&gt;Tomorrow, the &lt;span style=&quot;font-style: italic;&quot;&gt;contributions-experience&lt;/span&gt;&lt;sup&gt;TM&lt;/sup&gt; patch will land the mailing lists. Stand by. Now is time to sleep.</content><link rel='replies' type='application/atom+xml' href='http://msopena.blogspot.com/feeds/112466475495866144/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/14425481/112466475495866144' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14425481/posts/default/112466475495866144'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14425481/posts/default/112466475495866144'/><link rel='alternate' type='text/html' href='http://msopena.blogspot.com/2005/08/back-to-work.html' title='Back to work'/><author><name>Mario Sopena Novales</name><uri>http://www.blogger.com/profile/02908691739480745570</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14425481.post-112263293228203897</id><published>2005-07-29T11:31:00.000+02:00</published><updated>2005-07-29T12:36:13.636+02:00</updated><title type='text'>The yo-yo</title><content type='html'>After finishing the last patch for Gecko support in monodoc I realized that some links were broken. Looking a little bit more on detail I found the problem. The nice URLs like T:System.Activator are being lower-cased by gecko to t:System.Activator, so the ecma-provider gets lost. I tried in firefox, epiphany, etc and found the same behavior. I remembered then a &lt;a href=&quot;http://blog.jefftickle.com/2005/07/19/filewhythreeslashes/&quot;&gt;post&lt;/a&gt; in monologue about URLs and following a link to the RFC-spec I found the following: &lt;br /&gt;&lt;br /&gt;&lt;pre&gt;Scheme names consist of a sequence of characters. The &lt;br /&gt;lower case letters &quot;a&quot;--&quot;z&quot;, digits, and the characters plus &lt;br /&gt;(&quot;+&quot;), period (&quot;.&quot;), and hyphen (&quot;-&quot;) are allowed. For &lt;br /&gt;resiliency, programs interpreting URLs should treat upper case &lt;br /&gt;letters as equivalent to lower case in scheme names (e.g., &lt;br /&gt;allow &quot;HTTP&quot; as well as &quot;http&quot;).&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;So I suppose gecko is just acting &quot;polite&quot; and lower-casing everything before the &#39;:&#39; for us. Thank you very much.&lt;br /&gt;&lt;br /&gt;On the other hand, I&#39;ve almost finished the search for Monodoc. I&#39;m just playing with the process to try to improve the results and I realized It would be great if the people tell me different searches they would make and the results they would expect.&lt;br /&gt;&lt;br /&gt;I couldn&#39;t resist to post this thingy Paula sent me. I&#39;m sooooooo impressed how imperfect we are.&lt;br /&gt;&lt;br /&gt;&lt;div style=&quot;text-align: center;&quot;&gt;&lt;img src=&quot;http://personales.ya.com/msopena/blog/imgs/ilusion_optica_grises.jpg&quot; /&gt;&lt;br /&gt;&lt;span style=&quot;font-size:85%;&quot;&gt;&lt;span style=&quot;font-style: italic;&quot;&gt;Hey, just open the GIMP and check it for yourself&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://msopena.blogspot.com/feeds/112263293228203897/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/14425481/112263293228203897' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14425481/posts/default/112263293228203897'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14425481/posts/default/112263293228203897'/><link rel='alternate' type='text/html' href='http://msopena.blogspot.com/2005/07/yo-yo.html' title='The yo-yo'/><author><name>Mario Sopena Novales</name><uri>http://www.blogger.com/profile/02908691739480745570</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14425481.post-112239074345449771</id><published>2005-07-26T16:52:00.000+02:00</published><updated>2005-07-26T17:12:23.456+02:00</updated><title type='text'>Return to Karlsruhe</title><content type='html'>I&#39;ve visited Belgium this weekend with Paula. We were in &lt;a href=&quot;http://en.wikipedia.org/wiki/Brussel&quot;&gt;Brussels&lt;/a&gt;, &lt;a href=&quot;http://en.wikipedia.org/wiki/Brugges&quot;&gt;Brugges&lt;/a&gt; and &lt;a href=&quot;http://en.wikipedia.org/wiki/Ghent&quot;&gt;Gehnt&lt;/a&gt;. The three of them are great places for tourism and Belgium is a nice country with three gastronomic attractions: Chocolate, Mussels and Beer. We have tried to enjoy all of them.&lt;br /&gt;&lt;br /&gt;&lt;div style=&quot;text-align: center;&quot;&gt;&lt;img src=&quot;http://personales.ya.com/msopena/blog/imgs/choco.jpg&quot; alt=&quot;Chocolate fountain&quot; /&gt;&lt;br /&gt;&lt;i&gt;Chocolate fountain&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;http://personales.ya.com/msopena/blog/imgs/mussel.jpg&quot; alt=&quot;Mussels and Beer&quot; /&gt;&lt;br /&gt; &lt;i&gt;/me enjoying a great meal&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;http://personales.ya.com/msopena/blog/imgs/brugge.jpg&quot; alt=&quot;Brugges&quot; /&gt;&lt;br /&gt; &lt;i&gt;Brugges at night&lt;/i&gt;&lt;br /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://msopena.blogspot.com/feeds/112239074345449771/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/14425481/112239074345449771' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14425481/posts/default/112239074345449771'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14425481/posts/default/112239074345449771'/><link rel='alternate' type='text/html' href='http://msopena.blogspot.com/2005/07/return-to-karlsruhe.html' title='Return to Karlsruhe'/><author><name>Mario Sopena Novales</name><uri>http://www.blogger.com/profile/02908691739480745570</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14425481.post-112153531776351216</id><published>2005-07-16T19:12:00.000+02:00</published><updated>2005-07-17T00:05:40.833+02:00</updated><title type='text'>Search for the Holy Documentation</title><content type='html'>The last week was not very productive, I was just infected with a virus called lazyness. However I can post the first world &lt;i&gt;premiere&lt;/i&gt; screenshot of Monodoc browser searching feature:&lt;br /&gt;&lt;div style=&quot;text-align: center;&quot;&gt;&lt;br /&gt;&lt;a href=&quot;http://personales.ya.com/msopena/blog/imgs/sshot.png&quot;&gt;&lt;img src=&quot;http://personales.ya.com/msopena/blog/imgs/sshot-mini.png&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;The GUI is not feature complete, but the idea it&#39;s clear. You write a search term, hit return and get your results grouped by that search term (woooooooooow). The thing would be as good as the performance of the searching. Just as &lt;a href=&quot;http://blog.trowbridge.org/&quot;&gt;Jon Trowbridge&lt;/a&gt; said at the &lt;a href=&quot;http://www.guadec.org/&quot;&gt;Guadec&lt;/a&gt;, if you cannot give the user what he is looking for in the first 5-8 results, that is a bug. Nothing more to add.&lt;br /&gt;At the moment, the search only works for the ECMA-C# spec, but I&#39;m already working in the ECMA API, which, of course, is the most interesting.&lt;br /&gt;I&#39;m visiting Brussel with Paula next weekend so I will have to work hard next week to finish the Search&#39;o&#39;matic feature. It would be also great to write down all the ideas I&#39;m thinking for Monodoc and send that to the list. Just as Lelalau uses to say: &quot;mal sehen&quot;.</content><link rel='replies' type='application/atom+xml' href='http://msopena.blogspot.com/feeds/112153531776351216/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/14425481/112153531776351216' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14425481/posts/default/112153531776351216'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14425481/posts/default/112153531776351216'/><link rel='alternate' type='text/html' href='http://msopena.blogspot.com/2005/07/search-for-holy-documentation.html' title='Search for the Holy Documentation'/><author><name>Mario Sopena Novales</name><uri>http://www.blogger.com/profile/02908691739480745570</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14425481.post-112125021151321055</id><published>2005-07-10T19:05:00.000+02:00</published><updated>2005-07-13T12:23:31.513+02:00</updated><title type='text'>First commit to Monodoc</title><content type='html'>&lt;p&gt;Today I commited my first patch addressing the first goal, use gecko to render html in monodoc. The patch is far from being complete but it is the first step in the right direction. Some things don&#39;t work but it renders the documentation nicely. For completing the task I will wait for the work of &lt;a href=&quot;http://compsoc.dur.ac.uk/~mjh/topic/projects&quot;&gt;Michael&lt;/a&gt; which is doing an ASP.NET editor with Mozilla. He has already a way to call Javascript from C# (which can solve some of my problems).&lt;br /&gt;&lt;p&gt;Meanwhile I will be adding search support for Monodoc with &lt;a href=&quot;http://www.dotlucene.net/&quot;&gt;Lucene&lt;/a&gt;. Also, I want to write down a TODO list as I found several things that can be improved.&lt;br /&gt;&lt;p&gt;This Friday the &quot;Tour de France&quot; came to Karlsruhe, two hours waiting for 10 seconds of emotion. I could barely see nothing but, at least, I have some good photos. Also, I was at two parties, the first one, N&amp;amp;N Abschied party, was really good, the second, in Hadiko, not so good.&lt;br /&gt;&lt;p&gt;Just one more thing. This week we had two remarkable things, the first one really good (Software patents were rejected) and the second one really sad (London Bombings).</content><link rel='replies' type='application/atom+xml' href='http://msopena.blogspot.com/feeds/112125021151321055/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/14425481/112125021151321055' title='15 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14425481/posts/default/112125021151321055'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14425481/posts/default/112125021151321055'/><link rel='alternate' type='text/html' href='http://msopena.blogspot.com/2005/07/first-commit-to-monodoc.html' title='First commit to Monodoc'/><author><name>Mario Sopena Novales</name><uri>http://www.blogger.com/profile/02908691739480745570</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>15</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14425481.post-112125016092918014</id><published>2005-07-05T13:37:00.000+02:00</published><updated>2005-07-14T11:37:44.576+02:00</updated><title type='text'>Why does it rain so much in Summer?</title><content type='html'>&lt;p&gt;The first week of the Summer of Code is gone.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Every day I get a clearer vision of the whole Monodoc system. I&#39;ve opened three battlefronts:&lt;br /&gt;&lt;/p&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;&lt;i&gt;Integrate Gecko in Monodoc&lt;/i&gt;: I&#39;ve already a working system but it lacks some functionality. I&#39;m a little bored of fighting with the GtkMozEmbed and looking in Epiphany and Galeon source codes. Waiting a response from the tutor.&lt;br /&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;i&gt;Use of CSS&lt;/i&gt;: I&#39;ve started looking into this. Much of the works comes from rewriting the XSLT files.&lt;br /&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;i&gt;Integrating search engine (Lucene)&lt;/i&gt;: This one is the funniest at the time writing. I can already make easy searches and I&#39;m looking how to integrate it nicely with the code.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;p&gt;From the not-so-Summer-of-Code department, I&#39;ve been interviewed today for the tech section of a spanish newspaper: El País. I hope my grandma like it.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Eating a Kebab and drinking a Czech Budweiser in front of the Karlsruhe Schloss, with all the starts and some friends, is pretty near to the idea of happiness.&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='http://msopena.blogspot.com/feeds/112125016092918014/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/14425481/112125016092918014' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14425481/posts/default/112125016092918014'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14425481/posts/default/112125016092918014'/><link rel='alternate' type='text/html' href='http://msopena.blogspot.com/2005/07/why-does-it-rain-so-much-in-summer.html' title='Why does it rain so much in Summer?'/><author><name>Mario Sopena Novales</name><uri>http://www.blogger.com/profile/02908691739480745570</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-14425481.post-112125011147308972</id><published>2005-06-29T13:53:00.000+02:00</published><updated>2005-07-13T12:21:51.473+02:00</updated><title type='text'>Summer of Code starts</title><content type='html'>&lt;i&gt;Dear Mario Sopena Novales,&lt;br /&gt;&lt;br /&gt;&lt;p&gt;We are delighted to tell you that your project has been selected to receive a grant in Google&#39;s Summer of Code program.&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;That&#39;s all.</content><link rel='replies' type='application/atom+xml' href='http://msopena.blogspot.com/feeds/112125011147308972/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/14425481/112125011147308972' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/14425481/posts/default/112125011147308972'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/14425481/posts/default/112125011147308972'/><link rel='alternate' type='text/html' href='http://msopena.blogspot.com/2005/06/summer-of-code-starts.html' title='Summer of Code starts'/><author><name>Mario Sopena Novales</name><uri>http://www.blogger.com/profile/02908691739480745570</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>