<?xml version="1.0"?>
<rss version="2.0">
  <channel>
    <title>Advogato blog for jemarch</title>
    <link>http://www.advogato.org/person/jemarch/</link>
    <description>Advogato blog for jemarch</description>
    <language>en-us</language>
    <generator>mod_virgule</generator>
    <pubDate>Thu, 23 May 2013 08:06:46 GMT</pubDate>
    <item>
      <pubDate>Sun, 19 Feb 2012 12:08:56 GMT</pubDate>
      <title>19 Feb 2012</title>
      <link>http://www.advogato.org/person/jemarch/diary.html?start=11</link>
      <guid>http://www.advogato.org/person/jemarch/diary.html?start=11</guid>
      <description>&lt;b&gt;GNU recutils introductory talk video&lt;/b&gt;&lt;br/&gt;
&lt;br/&gt;
The &lt;a href="http://www.fscons.org" &gt;FSCONS&lt;/a&gt; people recently uploaded the video recordings of the talks which were done in the last edition. Among these there is a &lt;a href="http://www.gnu.org/software/recutils" &gt;GNU recutils&lt;/a&gt; &lt;a href="http://videos.fscons.org/fscons/videos/FSCONS2011/gnu-recutils-changed-title-and-subject/gnu-recutils-changed-title-and-subject.webm" &gt;talk&lt;/a&gt; which introduces the concepts implemented by recutils and provides an overview of the rec format and the utilities.&lt;br/&gt;
&lt;br/&gt;
As a novelty, this is the first recording of a recutils introductory talk where you can actually read what is written in the slides :)&lt;br/&gt;
&lt;br/&gt;
Also make sure to take a look to the &lt;a href="http://videos.fscons.org/fscons/videos/FSCONS2011" &gt;other videos&lt;/a&gt;! Lots of interesting stuff, as is usual in the FSCONS conference.&lt;br/&gt;
</description>
    </item>
    <item>
      <pubDate>Tue, 7 Dec 2010 19:23:16 GMT</pubDate>
      <title>7 Dec 2010</title>
      <link>http://www.advogato.org/person/jemarch/diary.html?start=10</link>
      <guid>http://www.advogato.org/person/jemarch/diary.html?start=10</guid>
      <description>&lt;p&gt;I am happy to announce the first release of the GNU recutils,&#xD;
version 1.0.&#xD;
&#xD;
&lt;p&gt; &lt;p&gt;The release can be found in the GNU ftp:&#xD;
&lt;a href="ftp://ftp.gnu.org/gnu/recutils/recutils-1.0.tar.gz" &gt;&#xD;
ftp://ftp.gnu.org/gnu/recutils/recutils-1.0.tar.gz&lt;/a&gt;&#xD;
&#xD;
&lt;p&gt; &lt;p&gt; Alternatively, &lt;a href="http://ftpmirror.gnu.org/recutils/" &gt;http://ftpmirror.gnu.org/recutils/&lt;/a&gt;&#xD;
will automatically redirect to a nearby mirror.&#xD;
&#xD;
&lt;p&gt; &lt;p&gt;&#xD;
GNU recutils is a set of tools and libraries to access&#xD;
human-editable,&#xD;
text-based databases called recfiles.  The data is stored as a&#xD;
sequence of records, each record containing an arbitrary&#xD;
number of&#xD;
named fields.  Advanced capabilities usually found in other data&#xD;
storage systems are supported by GNU recutils: data types, data&#xD;
integrity (keys, mandatory fields, etc) as well as the&#xD;
ability of&#xD;
records to refer to other records (sort of foreign keys). &#xD;
Despite its&#xD;
simplicity, recfiles can be used to store medium-sized&#xD;
databases.&#xD;
&#xD;
&#xD;
&lt;p&gt; &lt;p&gt;&#xD;
Please see the GNU recutils homepage for more information:&#xD;
&lt;a href="http://www.gnu.org/software/recutils" &gt;http://www.gnu.org/software/recutils&lt;/a&gt;.&#xD;
&#xD;
&#xD;
&lt;p&gt; &lt;p&gt;&#xD;
The GNU recutils suite comprises:&#xD;
&#xD;
&#xD;
&lt;p&gt; &lt;ul&gt;&#xD;
&lt;li&gt;A texinfo manual, describing the Rec format and the&#xD;
accompaying software.&#xD;
&lt;li&gt;A C library (librec) that provides a rich set of&#xD;
functions to manipulate rec data.&#xD;
&lt;li&gt;A set of C utilities that can be used in shell scripts&#xD;
and in the command line to operate on rec files:&#xD;
&#xD;
&lt;p&gt; &lt;ul&gt;&#xD;
  &lt;li&gt;&lt;b&gt;recinf&lt;/b&gt; prints information about the contents of&#xD;
recfiles.&#xD;
  &lt;li&gt;&lt;b&gt;recsel&lt;/b&gt; prints records and field values.&#xD;
  &lt;li&gt;&lt;b&gt;recins&lt;/b&gt; adds new records to a recfile.&#xD;
  &lt;li&gt;&lt;b&gt;recdel&lt;/b&gt; deletes records.&#xD;
  &lt;li&gt;&lt;b&gt;recset&lt;/b&gt; manipulates fields.&#xD;
  &lt;li&gt;&lt;b&gt;recfix&lt;/b&gt; checks and fixes recfiles.&#xD;
  &lt;li&gt;&lt;b&gt;csv2rec&lt;/b&gt; converts comma-separated-values files&#xD;
to recfiles.&#xD;
  &lt;li&gt;&lt;b&gt;mdb2rec&lt;/b&gt; converts mdb files (used by MS-Access)&#xD;
to recfiles.&#xD;
&lt;/ul&gt;&#xD;
&#xD;
&lt;li&gt;rec-mode.el - An emacs mode to edit and navigate&#xD;
recfiles.  Still&#xD;
  experimental.&#xD;
&lt;/ul&gt;&#xD;
&#xD;
&#xD;
</description>
    </item>
    <item>
      <pubDate>Mon, 2 Aug 2010 12:09:28 GMT</pubDate>
      <title>2 Aug 2010</title>
      <link>http://www.advogato.org/person/jemarch/diary.html?start=9</link>
      <guid>http://www.advogato.org/person/jemarch/diary.html?start=9</guid>
      <description>&lt;p&gt;&#xD;
I am happy to introduce a new GNU package: GNU Recutils.&#xD;
&#xD;
&#xD;
&lt;p&gt; &lt;p&gt;&#xD;
GNU Recutils is a set of tools and libraries to access&#xD;
simple human-editable, text-based databases called&#xD;
&lt;b&gt;recfiles&lt;/b&gt;. recfiles contain data structured as a&#xD;
sequence of records, and support data integrity as well as&#xD;
the ability of record fields to refer to other records.&#xD;
&#xD;
&#xD;
&lt;p&gt; &lt;p&gt;&#xD;
Despite its simplicity, recfiles can be used to store&#xD;
medium-sized databases that you can either edit with your&#xD;
favorite text editor (i.e. Emacs) or access with automated&#xD;
scripts using the recutils.&#xD;
&#xD;
&#xD;
&lt;p&gt; &lt;p&gt;&#xD;
The GNU recutils suite comprises:&#xD;
&#xD;
&#xD;
&lt;p&gt; &lt;ul&gt;&#xD;
&lt;li&gt;A Texinfo manual describing the Rec format and the&#xD;
software.&#xD;
&lt;li&gt;A C library (librec) providing a rich set of functions&#xD;
to access rec files.&#xD;
&lt;li&gt;A set of C utilities (recinf, recset, recins, recdel,&#xD;
recset and recfix) that can be used in shell scripts and in&#xD;
the command line to operate on rec files.&#xD;
&lt;li&gt;An Emacs mode (rec-mode).&#xD;
&lt;/ul&gt;&#xD;
&#xD;
&lt;p&gt; &lt;p&gt;&#xD;
The current status of the package is:&#xD;
&#xD;
&#xD;
&lt;p&gt; &lt;ul&gt;&#xD;
&lt;li&gt;The library is implemented.&#xD;
&lt;li&gt;The utilities are implemented.&#xD;
&lt;li&gt;The manual needs some more work.&#xD;
&lt;li&gt;The Emacs mode needs more work.&#xD;
&lt;/ul&gt;&#xD;
&#xD;
&lt;p&gt; &lt;p&gt;&#xD;
Before to make the first release we have to fix the manual&#xD;
and to complete the rec-mode Emacs mode, as well as to&#xD;
implement support for internationalization (with gettext) in&#xD;
both the library and the utilities.&#xD;
&#xD;
&#xD;
&lt;p&gt; &lt;p&gt;&#xD;
Both the Savannah project&#xD;
(http://savannah.gnu.org/projects/recutils) and the homepage&#xD;
(http://www.gnu.org/software/recutils) are in place now.&#xD;
&#xD;
&#xD;
&lt;p&gt; &lt;p&gt;&#xD;
If you are interested in collaborating in the development of&#xD;
recutils, please write to the development mailing list:&#xD;
http://lists.gnu.org/mailman/listinfo/bug-recutils.&#xD;
&#xD;
&#xD;
&lt;p&gt; &lt;p&gt;&#xD;
Note that we are not only interested in people contributing&#xD;
with code, but also with ideas and documentation. The rec&#xD;
format is young and is suitable to all kind of improvements.&#xD;
&#xD;
</description>
    </item>
    <item>
      <pubDate>Sat, 5 Dec 2009 15:12:50 GMT</pubDate>
      <title>Static code analysis with Clang</title>
      <link>http://www.advogato.org/person/jemarch/diary.html?start=8</link>
      <guid>http://www.jemarch.net/weblog.html#staticcodeanalysiswithclang</guid>
      <description>
&lt;p&gt;The &lt;a href="http://clang-analyzer.llvm.org" &gt;Clang Static Analyzer&lt;/a&gt; is a program that uses the &lt;a href="http://www.llvm.org" &gt;llvm&lt;/a&gt; compiler to
perform &lt;a href="en.wikipedia.org/wiki/Static_code_analysis" &gt;static code analysis&lt;/a&gt; in C and objective-C programs.&lt;/p&gt;

&lt;p&gt;A very nice feature of this analyzer is that it is not intrusive with
the development procedures of our packages.  It does not require the
maintainer to implement any extra logic in the build system.  A
provided 'scan-build' script is able to &amp;quot;intercept&amp;quot; the calls to the
GNU compiler on source files, and internally invokes the analyzer.&lt;/p&gt;

&lt;p&gt;For example:&lt;/p&gt;

&lt;pre class="example"&gt;
$ scan-build -o DIR gcc -o foo foo.c
&lt;/pre&gt;

&lt;p&gt;executes the compilation command to build 'foo' and then runs the static
analyzer in the foo.c source file.  An html report containing the
results of the analysis is created in the directory 'DIR'.  The report
is generated only if some bug is detected.  The generated html report
is quite readable, clearly marking the execution paths leading to
errors.&lt;/p&gt;

&lt;p&gt;The parameter to 'scan-build' can be any command, so in order to analyze
the code of a typical GNU package we could launch:&lt;/p&gt;

&lt;pre class="example"&gt;
$ scan-build -o DIR ./autogen.sh
$ scan-build -o DIR ./configure
$ scan-build -o DIR make
&lt;/pre&gt;

&lt;p&gt;Regarding the supported static analysis checks, they include the
detection of dereference of null pointers, identification of dead
code, detection of useless assignments, unused return values, etc.&lt;/p&gt;

&lt;p&gt;As an example you can take a look to the report generated from the
analysis of the &lt;a href="http://www.gnupdf.org" &gt;GNU PDF&lt;/a&gt; library &lt;a href="http://www.gnupdf.org/prmgt/clang" &gt;here&lt;/a&gt;.  The report is automatically
generated in a daily period as part of our effort in continuous
integration (there are pointers to more generated reports in the
&amp;quot;Quality&amp;quot; section of the &lt;a href="http://www.gnupdf.org/Library" &gt;library development page&lt;/a&gt; if you are
interested).&lt;/p&gt;

&lt;p&gt;You can find another example of a generated report, this time for
libxml2, &lt;a href="http://meyering.net/code/tmp/clang/libxml2-vs-clang-syntax-checker/index.html" &gt;here&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Many thanks to Jim Meyering for pointing out the existence of this
analyzer.  He said: ''If you're not using its &amp;quot;scan-build&amp;quot; tool, then
start.  Right now.  Really.  It's that good.''&lt;/p&gt;

&lt;p&gt;I absolutely agree with him :)&lt;/p&gt;

</description>
    </item>
    <item>
      <pubDate>Tue, 8 Sep 2009 20:08:43 GMT</pubDate>
      <title>Static code analysis with Clang</title>
      <link>http://www.advogato.org/person/jemarch/diary.html?start=7</link>
      <guid>http://www.jemarch.net/index.html#staticcodeanalysiswithclang</guid>
      <description>
&lt;p&gt;The &lt;a href="http://clang-analyzer.llvm.org" &gt;Clang Static Analyzer&lt;/a&gt; is a program that uses the &lt;a href="http://www.llvm.org" &gt;llvm&lt;/a&gt; compiler to
perform &lt;a href="en.wikipedia.org/wiki/Static_code_analysis" &gt;static code analysis&lt;/a&gt; in C and objective-C programs.&lt;/p&gt;

&lt;p&gt;A very nice feature of this analyzer is that it is not intrusive with
the development procedures of our packages.  It does not require the
maintainer to implement any extra logic in the build system.  A
provided 'scan-build' script is able to &amp;quot;intercept&amp;quot; the calls to the
GNU compiler on source files, and internally invokes the analyzer.&lt;/p&gt;

&lt;p&gt;For example:&lt;/p&gt;

&lt;pre class="example"&gt;
$ scan-build -o DIR gcc -o foo foo.c
&lt;/pre&gt;

&lt;p&gt;executes the compilation command to build 'foo' and then runs the static
analyzer in the foo.c source file.  An html report containing the
results of the analysis is created in the directory 'DIR'.  The report
is generated only if some bug is detected.  The generated html report
is quite readable, clearly marking the execution paths leading to
errors.&lt;/p&gt;

&lt;p&gt;The parameter to 'scan-build' can be any command, so in order to analyze
the code of a typical GNU package we could launch:&lt;/p&gt;

&lt;pre class="example"&gt;
$ scan-build -o DIR ./autogen.sh
$ scan-build -o DIR ./configure
$ scan-build -o DIR make
&lt;/pre&gt;

&lt;p&gt;Regarding the supported static analysis checks, they include the
detection of dereference of null pointers, identification of dead
code, detection of useless assignments, unused return values, etc.&lt;/p&gt;

&lt;p&gt;As an example you can take a look to the report generated from the
analysis of the &lt;a href="http://www.gnupdf.org" &gt;GNU PDF&lt;/a&gt; library &lt;a href="http://www.gnupdf.org/prmgt/clang" &gt;here&lt;/a&gt;.  The report is automatically
generated in a daily period as part of our effort in continuous
integration (there are pointers to more generated reports in the
&amp;quot;Quality&amp;quot; section of the &lt;a href="http://www.gnupdf.org/Library" &gt;library development page&lt;/a&gt; if you are
interested).&lt;/p&gt;

&lt;p&gt;You can find another example of a generated report, this time for
libxml2, &lt;a href="http://meyering.net/code/tmp/clang/libxml2-vs-clang-syntax-checker/index.html" &gt;here&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Many thanks to Jim Meyering for pointing out the existence of this
analyzer.  He said: ''If you're not using its &amp;quot;scan-build&amp;quot; tool, then
start.  Right now.  Really.  It's that good.''&lt;/p&gt;

&lt;p&gt;I absolutely agree with him :)&lt;/p&gt;

</description>
    </item>
    <item>
      <pubDate>Sun, 19 Apr 2009 15:10:51 GMT</pubDate>
      <title>OggVorbis in RTVE</title>
      <link>http://www.advogato.org/person/jemarch/diary.html?start=6</link>
      <guid>http://www.jemarch.net/index.html#oggvorbisinrtve</guid>
      <description>
&lt;p&gt;The most important public Radio-Television entity in Spain, RTVE,
maintains a &lt;a href="http://www.rtve.es" &gt;web portal&lt;/a&gt; where they publish a lot of audio material.&lt;/p&gt;

&lt;p&gt;Unfortunately, the audio format used in that site is MP3. It is well
known that the MP3 format is cumbered with several software patents
owned by both the Fraunhofer Institute and Thompson. It is a shame how
a public entity like RTVE is harming the fundamental rights of the
Spanish citizens by promoting the use of an audio format that imposes
restrictions.&lt;/p&gt;

&lt;p&gt;Fortunately, there is an initiative to ask RTVE to publish the audio
contents in the free &lt;a href="http://www.fsf.org/resources/formats/playogg" &gt;OggVorbis&lt;/a&gt; format. There is an &lt;a href="http://fororadio3.rtve.es/viewtopic.php?f=4&amp;amp;t=529" &gt;open thread&lt;/a&gt; in the
&amp;quot;Suggestions&amp;quot; section of the RTVE forum. We are asking the people to
left a comment there asking RTVE to publish their contents using
OggVorbis.&lt;/p&gt;

&lt;p&gt;Thanks to Guillermo Gonzalez Diez for leading this initiative.&lt;/p&gt;

</description>
    </item>
    <item>
      <pubDate>Sun, 2 Nov 2008 20:08:23 GMT</pubDate>
      <title>go://jemarch</title>
      <link>http://www.advogato.org/person/jemarch/diary.html?start=5</link>
      <guid>http://www.jemarch.net/index.html#go%3A%2F%2Fjemarch</guid>
      <description>
&lt;p&gt;After reading about &lt;a href="http://www.socialdns.net" &gt;Social DNS&lt;/a&gt; I finally decided to create a
&lt;strong&gt;go://jemarch&lt;/strong&gt; domain for this website. Social DNS seems to be a
quite interesting distributed, internationalized and
non-organization-controlled alternative to DNS, despite it seems to be
in its first stages.&lt;/p&gt;

&lt;p&gt;There is a &lt;a href="http://http://www.socialdns.net/downloads/plugins/" &gt;plugin for Firefox&lt;/a&gt; to browse the &lt;strong&gt;go:&lt;/strong&gt; domains. I am
looking forward for &lt;a href="http://w3m.sourceforge.net" &gt;w3m&lt;/a&gt; support for Social DNS (why to open a Firefox
if you can comfortably browse the web using Emacs? ;)).&lt;/p&gt;

&lt;p&gt;Thanks to &lt;a href="http://juan.gulo.org" &gt;Juan Anel&lt;/a&gt; for sharing the existence of Social DNS in
&lt;a href="http://gnuticias.es.gnu.org" &gt;GNUticias&lt;/a&gt;.&lt;/p&gt;

</description>
    </item>
    <item>
      <pubDate>Fri, 12 Sep 2008 00:12:39 GMT</pubDate>
      <title>Hacking GNU PDF</title>
      <link>http://www.advogato.org/person/jemarch/diary.html?start=4</link>
      <guid>http://www.jemarch.net/index.html#Hacking%20GNU%20PDF</guid>
      <description>
&lt;p&gt;Got three free days from my employers to work in &lt;a href="http://www.gnupdf.org" &gt;GNU PDF&lt;/a&gt;. It is late
in the night and I am currently working in the
&lt;a href="http://www.gnupdf.org/Lib:Architecture/Base_Layer/Stream_Module" &gt;stream module&lt;/a&gt; in the
&lt;a href="http://www.gnupdf.org/Lib:Architecture/Base_Layer" &gt;base layer&lt;/a&gt; of the library.


&lt;div style="text-align: center;"&gt;
  &lt;img style="float: none;" src="http://www.jemarch.net/images/gnupdfhacking.png" alt="hacking
   GNU PDF"/&gt;
&lt;/div&gt;&lt;/p&gt;


&lt;p&gt;Music is playing and the ideas fly from the paper to the Emacs
buffer.. the ISO 32000 spec stand in the table showing me what to
do.&lt;/p&gt;

&lt;p&gt;And the fucking cat is, as always, in the middle of everything.&lt;/p&gt;

</description>
    </item>
    <item>
      <pubDate>Tue, 9 Sep 2008 13:09:02 GMT</pubDate>
      <title>New version of jem-pkg</title>
      <link>http://www.advogato.org/person/jemarch/diary.html?start=3</link>
      <guid>http://www.jemarch.net/index.html#New%20version%20of%20jem%2Dpkg</guid>
      <description>
&lt;p&gt;Surprising enough I got a bug report for &lt;a href="JemPkg" &gt;JemPkg&lt;/a&gt; from my friend
Thales. He was trying to run &lt;a href="JemPkg" &gt;JemPkg&lt;/a&gt; 0.0.3 without success, since there
is a stupid bug in the first 20 lines of the source files that
prevents emacs to successful load the program.&lt;/p&gt;

&lt;p&gt;So I just fixed the stupid bug and uploaded a new version: JemPkg
0.0.4.&lt;/p&gt;

</description>
    </item>
    <item>
      <pubDate>Thu, 3 Jul 2008 22:08:10 GMT</pubDate>
      <title>It's not the Gates, it's the bars</title>
      <link>http://www.advogato.org/person/jemarch/diary.html?start=2</link>
      <guid>http://www.jemarch.net/index.html#It%27s%20not%20the%20Gates%2C%20it%27s%20the%20bars</guid>
      <description>
&lt;p&gt;Bill Gates announced his retirement from his position in
Microsoft. What are the implications regarding Free
Software?.. unfortunately, almost nothing.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.stallman.org" &gt;Richard M. Stallman&lt;/a&gt;, founder of the &lt;a href="http://www.fsf.org" &gt;Free Software Foundation&lt;/a&gt;, has
written a quite interesting article in BBC News online titled &lt;strong&gt;It's not
the Gates, it's the bars&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;You can find the article in
&lt;a href="http://news.bbc.co.uk/2/hi/technology/7487060.stm" &gt;http://news.bbc.co.uk/2/hi/technology/7487060.stm&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Please share this link with your friends and family, and post it to
any blogs, link sharing or social sites you think may find it
interesting.&lt;/p&gt;

</description>
    </item>
  </channel>
</rss>
