<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Diego Búrigo Zacarão's Weblog &#187; GSoC</title>
	<atom:link href="http://diegobz.net/category/gsoc/feed/" rel="self" type="application/rss+xml" />
	<link>http://diegobz.net</link>
	<description>Let me talk about something</description>
	<lastBuildDate>Mon, 08 Mar 2010 01:50:41 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>It&#8217;s been 1 year of Indifex</title>
		<link>http://diegobz.net/2010/02/01/its-been-1-year-of-indifex/</link>
		<comments>http://diegobz.net/2010/02/01/its-been-1-year-of-indifex/#comments</comments>
		<pubDate>Mon, 01 Feb 2010 13:09:52 +0000</pubDate>
		<dc:creator>diegobz</dc:creator>
				<category><![CDATA[English]]></category>
		<category><![CDATA[Europe]]></category>
		<category><![CDATA[FUDCon]]></category>
		<category><![CDATA[Fedora]]></category>
		<category><![CDATA[GSoC]]></category>
		<category><![CDATA[Indifex]]></category>
		<category><![CDATA[Transifex]]></category>

		<guid isPermaLink="false">http://diegobz.net/?p=283</guid>
		<description><![CDATA[Time definitely flies
It looks like it was yesterday that I firstly flew to EU to meet some Fedora guys at the FUDCon in Brno. At that time, September of 2008, I had just finished my GSoC application and lots of ideas were going around our minds (Me and Dimitris Glezos), mainly about what we should [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Time definitely flies</strong></p>
<p>It looks like it was yesterday that I firstly flew to EU to meet some Fedora guys at the FUDCon in Brno. At that time, September of 2008, I had just finished my <a title="GSoC blog posts" href="http://diegobz.net/category/gsoc/" target="_blank">GSoC application</a> and lots of ideas were going around our minds (Me and Dimitris Glezos), mainly about what we should do about <a href="http://transifex.org/" target="_blank">Transifex</a>.</p>
<p>My first time in Greece, Dimitris&#8217; country, allowed us to discuss many things, including the redesign of Transifex. I remember we realized we had in our hands an idea that, at least for us, could sound very promising and with lots of potential. We were kinda anxious and unsure on how we should push things on, but we had a shared common feeling -  We need to do something.</p>
<div style="text-align: center;">
<div class="imageframe centered" style="width: 500px;"><img class="attachment wp-att-289" src="http://diegobz.net/wp-content/uploads/2010/02/time-flies.jpg" alt="Time Flies by Bichuas (E. Carton)" width="500" height="334" /></p>
<div class="imagecaption">Time Flies by Bichuas (E. Carton)</div>
</div>
</div>
<p>In a long short history, I came back to Brazil in November of 2008 and 3 months later I was working full time on Transifex as an <a title="Indifex website" href="http://indifex.com" target="_blank">Indifexian</a>. February of 2009 was a mark for me. At that period, my life was kinda turned up side down, not in a bad way, just in a complete different way. New challenges and horizons  just shown up and it&#8217;s been like this until now, 1 year later.</p>
<p>Today we are not anymore 2 crazy guys, locked down in an apartment, ordering food and hacking most of the time during the night.  The team has increased and we are really happy about it. We keep working hard to hit our goals seeking ways to make &#8216;Translations a click away&#8217;. Talking about it, <a href="http://docs.transifex.org/releases/0.8.html#transifex-0-8-alpha" target="_blank">Transifex 0.8alpha</a> is just out, be sure to take a look at the new features. <img src='http://diegobz.net/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>Happy translations!</p>
]]></content:encoded>
			<wfw:commentRss>http://diegobz.net/2010/02/01/its-been-1-year-of-indifex/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Fedora&#8217;s Transifex instance updated</title>
		<link>http://diegobz.net/2008/12/06/fedoras-transifex-instance-updated/</link>
		<comments>http://diegobz.net/2008/12/06/fedoras-transifex-instance-updated/#comments</comments>
		<pubDate>Sat, 06 Dec 2008 19:55:42 +0000</pubDate>
		<dc:creator>diegobz</dc:creator>
				<category><![CDATA[English]]></category>
		<category><![CDATA[Fedora]]></category>
		<category><![CDATA[GSoC]]></category>
		<category><![CDATA[Transifex]]></category>

		<guid isPermaLink="false">http://diegobz.net/?p=47</guid>
		<description><![CDATA[This week Toshio and Ricky have updated Fedora&#8217;s Transifex instance for the major 0.3.1 release until now. That release includes a lot of my work on GSoC 2008 and also some important &#8220;background&#8221; changes that were include in the 0.3.x releases for the previous TurboGears version of Transifex. The full list of features and bugfixes [...]]]></description>
			<content:encoded><![CDATA[<p>This week Toshio and Ricky have updated <a title="Fedora's Transifex instance" href="http://translate.fedoraproject.org/submit/" target="_blank">Fedora&#8217;s Transifex instance</a> for the major 0.3.1 release until now. That release includes a lot of my work on GSoC 2008 and also some important &#8220;background&#8221; changes that were include in the 0.3.x releases for the previous TurboGears version of Transifex. The full list of features and bugfixes can be found in <a title="Transifex 0.3.0 Release announcement" href="http://groups.google.com/group/transifex-devel/browse_thread/thread/bbf446dd28649892" target="_blank">0.3.0</a> and <a title="Transifex 0.3.1 Release announcement" href="http://groups.google.com/group/transifex-devel/browse_thread/thread/f39d1ea0f967bab3" target="_blank">0.3.1</a> announcements.</p>
<p>I&#8217;m very glad to see some of my efforts have been using in production by the Fedora community. <img src='http://diegobz.net/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
<p>Fedora rules!!!</p>
]]></content:encoded>
			<wfw:commentRss>http://diegobz.net/2008/12/06/fedoras-transifex-instance-updated/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>My GSoC 2008 application is getting finishing touches</title>
		<link>http://diegobz.net/2008/08/21/my-gsoc-2008-application-is-getting-finishing-touches/</link>
		<comments>http://diegobz.net/2008/08/21/my-gsoc-2008-application-is-getting-finishing-touches/#comments</comments>
		<pubDate>Thu, 21 Aug 2008 13:02:33 +0000</pubDate>
		<dc:creator>diegobz</dc:creator>
				<category><![CDATA[English]]></category>
		<category><![CDATA[Fedora]]></category>
		<category><![CDATA[GSoC]]></category>
		<category><![CDATA[Transifex]]></category>

		<guid isPermaLink="false">http://diegobz.net/?p=19</guid>
		<description><![CDATA[Yes baby, my GSoC 2008 application is getting finishing touches! That was a great experience for me. I have been talking with amazing people over all these months of work and I hope to continue contribute on this nice project called Transifex.
The Localization is the first point for people be able to get a great [...]]]></description>
			<content:encoded><![CDATA[<p>Yes baby, my <a title="Diego's GSoC 2008 application" href="http://transifex.org/wiki/gsoc/usability_enhancements" target="_blank">GSoC 2008 application</a> is getting finishing touches! That was a great experience for me. I have been talking with amazing people over all these months of work and I hope to continue contribute on this nice project called Transifex.</p>
<p>The Localization is the first point for people be able to get a great accessibility over programs. Yes, I know, you can believe me! I&#8217;m still an English student, but hopefully, I&#8217;m able to write some simple English texts and read other ones, even with some mistakes, but it was not always thus. Well, have you never been on a situation where you simply couldn&#8217;t understand anything, because you didn&#8217;t have a localized user interface? If you haven&#8217;t, then you are a lucky guy, or perhaps a very respectable polyglot.</p>
<p>That kind of thing happen every time everywhere we can imagine. We have several languages around the world and most people only speak your native language. Around 95% of people in the world have a native language other than English. So, how does it make a program usefully for the most people? A program with i18n support can make the difference in these cases.</p>
<p>Localized stuff make things easier, accessible. Users can read, browse, find information and mainly they can understand things. It points me to think as would be easy to me write this post in Brazilian Portuguese, surely I could explain all my ideas more clearly. What do I mean? Basically I mean a localized environment &#8216;make people feel at home&#8217;.</p>
<p>So, what have I been doing to make Transifex a powerfully tool to manager translations around the world? Well, thanks some helps from amazing community guys on this WoC (Winter of Code) to me, we got some things done, including a new Transifex Release 0.3.</p>
<p>However, before listing a summary of my work on Transifex until now, I would like to thanks <strong>Dimitris Glezos</strong> to encourage me to apply for this GSoC and also for all support, <strong>Asgeir Frimannsson</strong> to mentor me, the <strong>Fedora Infrastructure Team</strong> for some many times that I have been boring them on #fedora-admin, <strong>People</strong> that have had comment on this blog, <strong>Fedora Project</strong> for be an amazing project and finally <strong>Google</strong> for a Winter of Code. <img src='http://diegobz.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Now, lets summarize all my work for the Transfex development:</p>
<blockquote>
<ul>
<li>Full i18n support in both templates and database</li>
<li>Support for editing repositories &#8211; the editing modules part will be implemented soon, after some changes in the model version 2.</li>
<li>Switched templating language from Kid to Genshi</li>
<li>Switched widget library to ToscaWidgets</li>
<li>Unit testing</li>
<li>AJAX: Widgets for AjaxForm with client-side validation</li>
<li>AJAX: Async module checkout on Refresh button</li>
<li>AJAX: Async file upload on the submit form</li>
</ul>
</blockquote>
<p>Bellow we have a list of all commits to <a title="Diego's repository for Transifex" href="http://diegobz.fedorapeople.org/transifex-devel/" target="_blank">my development branch</a>:</p>
<blockquote>
<ol>
<li>Rev: 366 &#8211; Initial Ajax Support: Client-side validation, async file upload and refresh button for submit form</li>
<li>Rev: 365 &#8211; Minor: Added &#8216;transifex.egg-info&#8217; and &#8216;*.directory&#8217; to the .hgignore file</li>
<li>Rev: 325 &#8211; Fixed Forms action</li>
<li>Rev: 324 &#8211; Fixed commit redirect to &#8216;module/foo-module?branch=foo-branch&#8217; instead &#8216;module/foo-module&#8217;</li>
<li>Rev: 318 &#8211; It&#8217;s needed to avoid i18n problems because we are using genshi-based toscawidgets</li>
<li>Rev: 317 &#8211; Added some new test cases</li>
<li>Rev: 316 &#8211; Form submit without the exception handling breaks test cases</li>
<li>Rev: 315 &#8211; A fix for the cvs import from the hg repo.</li>
<li>Rev: 314 &#8211; Fixing the test module for HG repo. Changing to the Transifex repo. Smolt has been moved to git.</li>
<li>Rev: 313 &#8211; Lib versions updated</li>
<li>Rev: 312 &#8211; Changed to always delete and create the .mo directories langs when `i18n.py -c` (compile) it&#8217;s executed.</li>
<li>Rev: 311 &#8211; It causes an exception on Genshi 0.5</li>
<li>Rev: 310 &#8211; Fedora Project&#8217;s database messages updated</li>
<li>Rev: 309 &#8211; Potfiles for view updated.</li>
<li>Rev: 308 &#8211; Potfiles updated</li>
<li>Rev: 307 &#8211; Ignore .mo files</li>
<li>Rev: 306 &#8211; It should be uncommented for be able to do the initial repositories check-out</li>
<li>Rev: 305 &#8211; Submit form fixed to work with TW and Genshi.</li>
<li>Rev: 304 &#8211; A fix around the i18n support for the new structure with two directories for view and data potfiles.</li>
<li>Rev: 303 &#8211; Merging with the last Christos&#8217;s changes</li>
<li>Rev: 302 &#8211; POTfiles splitted into two separated directories (view and data).</li>
<li>Rev: 301 &#8211; Added the new POTfiles splitted</li>
<li>Rev: 300 &#8211; Potfiles for database added.</li>
<li>Rev: 299 &#8211; Some fixes around i18n support for the repo form</li>
<li>Rev: 298 &#8211; The i18n.py has been changed to handle two separated POTfiles (view and database).</li>
<li>Rev: 297 &#8211; Library versions added</li>
<li>Rev: 296 &#8211; Some fixes for repo edition</li>
<li>Rev: 290 &#8211; Added some changes around the modules forms by Christos.</li>
<li>Rev: 289 &#8211; Edit repo added. Now it&#8217;s possible to edit the repos.</li>
<li>Rev: 286 &#8211; The modules and repositories forms were migrated to use ONLY ToscaWidgets. It doesn&#8217;t need dbsprockets lib anymore.</li>
<li>Rev: 285 &#8211; Merge Dimitris&#8217;s changes</li>
<li>Rev: 284 &#8211; New POT and PO files generated by the new i18n.py script. The files are cleaner now.</li>
<li>Rev: 283 &#8211; Replaced some tabs for spaces. We must never mix tabs and spaces.</li>
<li>Rev: 282 &#8211; For now, when a module is added it has only a branch. So, we don&#8217;t need to check if it&#8217;s a list. By Asgeir.</li>
<li>Rev: 281 &#8211; Cleaning&#8230;It&#8217;s not needed</li>
<li>Rev: 279 &#8211; Now the descriptions and summaries of modules and repos are put directly into the POT file.</li>
<li>Rev: 278 &#8211; Changed modules url of the module datagrid</li>
<li>Rev: 277 &#8211; Added all modules and repos of Fedora Project instance to the POT/PO files</li>
<li>Rev: 276 &#8211; The function ngettext doesn&#8217;t work as expected. Dropping the use of i18n with pluralization.</li>
<li>Rev: 275 &#8211; Enable translations of repos</li>
<li>Rev: 274 &#8211; Some fixes around the i18n support into the template</li>
<li>Rev: 273 &#8211; A CSS fix to the log grid</li>
<li>Rev: 272 &#8211; Set the mysql database unicode to utf-8</li>
<li>Rev: 271 &#8211; Set the genshi default encode to utf-8 to avoid some problems around it</li>
<li>Rev: 270 &#8211; Changing to use the default function gettext &#8220;_&#8221;</li>
<li>Rev: 269 &#8211; Some fixes around the i18n support for the forms and others minor fixes</li>
<li>Rev: 268 &#8211; Need to work with SQLAlchemy 0.4.x</li>
<li>Rev: 267 &#8211; Repository and Modules forms migrated to dbsprockets</li>
<li>Rev: 266 &#8211; Datagrids moved to ToscaWidgets</li>
<li>Rev: 265 &#8211; It doesn&#8217;t need filter to select all entries</li>
<li>Rev: 264 &#8211; If ToscaWidgets is installed we need to declare gettext explicitly to be used into the templates</li>
<li>Rev: 263 &#8211; Some configs to work with SQLAlchemy 0.4.x</li>
<li>Rev: 262 &#8211; Added Genshi configs to the sample-dev.cfg</li>
<li>Rev: 261 &#8211; Genshi and SQLAlchemy branches merged</li>
<li>Rev: 235 &#8211; Added i18n support (on Genshi)</li>
<li>Rev: 234 &#8211; Initial Genshi migration. We need to fix the widgets and possibles problems with &#8216;py:attrs&#8217; yet.</li>
<li>Rev: 233 &#8211; A CSS fix</li>
<li>Rev: 137 &#8211; Menu Changes:</li>
<li>Rev: 136 &#8211; Fixing a space error</li>
<li>Rev: 135 &#8211; Change a link to the correct form</li>
</ol>
</blockquote>
<p>BTW, you can take this list of commits running the following command in <a title="Diego's repository for Transifex" href="http://diegobz.fedorapeople.org/transifex-devel/" target="_blank">my Transifex repository</a>:</p>
<blockquote><p>hg log &#8211;template &#8216;{author}Rev: {rev} &#8211; {desc}\n&#8217; |grep diegobz|sed -e &#8220;s/Diego Búrigo Zacarão &lt;diegobz@\(projetofedora.org\|fedoraproject.org\)&gt;//&#8221;</p></blockquote>
<p>That&#8217;s it! I hope my work can make some difference for the Open Source and Free Software as them make the difference to me! Definitely, to be an Open Source and Free Software enthusiast is rock, you can work and know rock people!! Now, it&#8217;s the time to attend FUDCon 2008 Brno and then stay in Greece coding for a while. The work continue!</p>
<p>Thanks all!!!</p>
]]></content:encoded>
			<wfw:commentRss>http://diegobz.net/2008/08/21/my-gsoc-2008-application-is-getting-finishing-touches/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SQLAlchemy and Genshi on TG1.0 or TG2?</title>
		<link>http://diegobz.net/2008/07/10/sqlalchemy-and-genshi-on-tg10-or-tg2/</link>
		<comments>http://diegobz.net/2008/07/10/sqlalchemy-and-genshi-on-tg10-or-tg2/#comments</comments>
		<pubDate>Thu, 10 Jul 2008 14:27:30 +0000</pubDate>
		<dc:creator>diegobz</dc:creator>
				<category><![CDATA[English]]></category>
		<category><![CDATA[Fedora]]></category>
		<category><![CDATA[GSoC]]></category>
		<category><![CDATA[Transifex]]></category>

		<guid isPermaLink="false">http://diegobz.net/?p=17</guid>
		<description><![CDATA[We&#8217;ve been migrating Transifex to use SQLAlchemy, Genshi with i18n support and ToscaWidgets on TG1.0. All seems to work fine until now. That was a part of my GSoC application.
However, continuing implementing new features for Transifex on TG1.0 is not trivial. Specially as we are not using default components like SQLObject, kid template and the [...]]]></description>
			<content:encoded><![CDATA[<p>We&#8217;ve been migrating Transifex to use SQLAlchemy, Genshi with i18n support and ToscaWidgets on TG1.0. All seems to work fine until now. That was a part of my GSoC application.</p>
<p>However, continuing implementing new features for Transifex on TG1.0 is not trivial. Specially as we are not using default components like SQLObject, kid template and the own TG1.0 widgets. So, as we already on a big change/migration of components, maybe we could think seriously in a TG2 migration. It could avoid another big change/migration later.</p>
<p>Also, another interesting point for us is implementing too many Ajax features on our tool. That seems to be a promise feature in TG2. Implementing it on the current version of Transifex is not an easy thing to do. To be honest, I don&#8217;t know if that worth.</p>
<p>My intend is to follow the tendency, but knowing how much safe it is right now. So&#8230;</p>
<ul>
<li> How much unstable TG2 is for be used in Trasifex?</li>
<li> Do we should move to TG2? No? Why not?</li>
<li> Any thought about Ajax?</li>
</ul>
<p>Any comment is welcome.</p>
]]></content:encoded>
			<wfw:commentRss>http://diegobz.net/2008/07/10/sqlalchemy-and-genshi-on-tg10-or-tg2/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Writing test cases for Transifex</title>
		<link>http://diegobz.net/2008/07/09/writing-test-cases-for-transifex/</link>
		<comments>http://diegobz.net/2008/07/09/writing-test-cases-for-transifex/#comments</comments>
		<pubDate>Wed, 09 Jul 2008 15:12:03 +0000</pubDate>
		<dc:creator>diegobz</dc:creator>
				<category><![CDATA[English]]></category>
		<category><![CDATA[Fedora]]></category>
		<category><![CDATA[GSoC]]></category>
		<category><![CDATA[Transifex]]></category>

		<guid isPermaLink="false">http://diegobz.net/?p=16</guid>
		<description><![CDATA[Last week I wrote some test cases for the new features added in Transifex. I was not used to write them, so I&#8217;ve had some challenges to win. After see some Dimitris&#8217;s test cases I could figure out how it work. Then, I&#8217;ve started to write my own test cases.
Test cases are simple to write. [...]]]></description>
			<content:encoded><![CDATA[<p>Last week I wrote some test cases for the new features added in Transifex. I was not used to write them, so I&#8217;ve had some challenges to win. After see some Dimitris&#8217;s test cases I could figure out how it work. Then, I&#8217;ve started to write my own test cases.</p>
<p>Test cases are simple to write. They help to much when we have several people working hardly in the same branch. So, people can pull/push and see if some code, that it has been coded for somebody, breaks anything.</p>
<p>Most of test cases has been written  by Dimitris only can test pages (view) that doesn&#8217;t need identity. We had a problem with pages where an user should be logged in. Fortunately we could find out a way to solve this problem. <em>BrowsingSession</em> is the way!</p>
<blockquote>
<pre>class TestModuleTranslator(TestModule):

    """Test how module pages look to a translator."""

    def test_moduleinfo_logged(self):
        """Test access to the Module Submit page"""
        user = testutil.BrowsingSession()
        user.goto('/login?user_name=guest&amp;password=guest&amp;login=Login')
        user.goto(u"/module/%s" % self.testmodule)
        assert 'Submit translations' in user.response</pre>
</blockquote>
<p>Using <em>BrowsingSession</em> you can browse for any page that need identity and do any test that you want. That&#8217;s simple and works fine for any situation that I&#8217;ve tested.</p>
<p>The Transifex&#8217;s test cases has written until now can be found <span style="text-decoration: line-through;"><a title="Test Cases - Diego's repository for Transifex" href="http://diegobz.fedorapeople.org/transifex-devel-testcases/transifex/tests/" target="_blank">here</a></span>. Hopefully we&#8217;ll have more soon! <img src='http://diegobz.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://diegobz.net/2008/07/09/writing-test-cases-for-transifex/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
