<?xml version="1.0"?>
<rss version="2.0">
  <channel>
    <title>Advogato blog for async</title>
    <link>http://www.advogato.org/person/async/</link>
    <description>Advogato blog for async</description>
    <language>en-us</language>
    <generator>mod_virgule</generator>
    <pubDate>Wed, 22 May 2013 22:05:29 GMT</pubDate>
    <item>
      <pubDate>Sun, 11 Dec 2005 03:46:53 GMT</pubDate>
      <title>11 Dec 2005</title>
      <link>http://www.advogato.org/person/async/diary.html?start=119</link>
      <guid>http://www.advogato.org/person/async/diary.html?start=119</guid>
      <description>&lt;b&gt;PDF applications?&lt;/b&gt;&lt;p&gt;

&lt;p&gt; Are there freesoftware applications out there for editing PDF's (assembling them, adding text, etc).  It seems like it'd be a really useful and necessary thing to have around.

&lt;p&gt; I'm mainly wanting to fill out forms that come in PDF (not with widgets and all, just put text on them and print them out).  Currently i'm just faking it with the gimp.

&lt;p&gt; I looked at the libpoppler n&#xE9;e xpdf source, and it seems like it might be possible though not necessarily easy to modify it.    there's also a python framework out there (reportlab), though the free implementation seems write only (the reading part costs money).</description>
    </item>
    <item>
      <pubDate>Sun, 27 Nov 2005 05:16:35 GMT</pubDate>
      <title>27 Nov 2005</title>
      <link>http://www.advogato.org/person/async/diary.html?start=118</link>
      <guid>http://www.advogato.org/person/async/diary.html?start=118</guid>
      <description>saw this today in miguel's &lt;a href="http://tirania.org/blog/archive/2005/Nov-26-2.html" &gt;web log&lt;/a&gt;:  

&lt;p&gt; &lt;blockquote&gt;
Recently I have been considering the implementation of a system that would replace D-BUS and CORBA with a simple HTTP framework.
&lt;/blockquote&gt;

&lt;p&gt; on the one hand i say go ahead and do it, see what happens; because sometimes small and seemingly inconsequential changes (in implementation or mental model or what not) resonate with people and catalyze all sorts of growth and development.

&lt;p&gt; but from a user-of-technology perspective i say screw it.  the churn in infrastructure isn't worth it.  apple and ms 
have at their core some truly ugly technology, and it doesn't matter, they still manage (after their fashion).  

&lt;p&gt; it doesn't actually solve a problem that couldn't be otherwise solved; it just provides some theoretical cleanliness and a "well-known protocol".  in the end, developer buy-in is worth more than neat technology that no one uses.  people still have trouble integrating in the vfs stuff and d-n-d.  

&lt;p&gt; it's not necessarily a problem of the wrong technology as much as polishing and making sure it's easy for developers to take advantage of (and making sure that they actually do take advantage of it).  

&lt;p&gt; just pick something and stick with it.    

&lt;p&gt; &lt;pre&gt;
EOR
&lt;/pre&gt;</description>
    </item>
    <item>
      <pubDate>Tue, 31 May 2005 00:09:04 GMT</pubDate>
      <title>31 May 2005</title>
      <link>http://www.advogato.org/person/async/diary.html?start=117</link>
      <guid>http://www.advogato.org/person/async/diary.html?start=117</guid>
      <description>&lt;a href="http://www.advogato.org/person/dcoombs/" &gt;dcoombs&lt;/a&gt;: 
&lt;blockquote&gt;
 Furthermore, it is utterly disgusting that a USB-to-DB9 serial converter cable costs $80. I mean really. Yes, I guess there's some twiddling involved, but yeesh.
&lt;/blockquote&gt;

&lt;p&gt; yeah that's a rip.  off the top of my head, the parts should cost less than 10 dollars (even in low volume).  i dunno where the markup comes from.</description>
    </item>
    <item>
      <pubDate>Fri, 27 May 2005 03:22:16 GMT</pubDate>
      <title>27 May 2005</title>
      <link>http://www.advogato.org/person/async/diary.html?start=116</link>
      <guid>http://www.advogato.org/person/async/diary.html?start=116</guid>
      <description>&lt;b&gt;Shoes and ships and crap&lt;/b&gt;
&lt;p/&gt;

&lt;p&gt; I saw &lt;a href="http://www.advogato.org/person/jdahlin/" &gt;jdahlin&lt;/a&gt;'s &lt;a
href="http://www.advogato.org/person/jdahlin/diary.html?start=12"&gt;post&lt;/a&gt;
the other day on GObject introspection.  I'm glad to see it finally
get committed thanks to m. clasen's work.  
&lt;p/&gt;

&lt;p&gt; I was just a bit sad that i wasn't able to have been more active
helping out after agitating for it and doing a first incomplete
prototype (because of work and stuff, you know how it is?).  That's
the great thing about open source though.

&lt;p&gt; &lt;p/&gt;

&lt;p&gt; With respect to the perennial language question: people should
definitely be more aware of the fantastic work done on the C++
bindings (gtkmm, etc).  (There is still the core platform issue, but
regardless, application developers need to be more aware of all the
options available to them).

&lt;p&gt; &lt;p/&gt;

&lt;p&gt; I hate C++ at least 50,000 times as much as the average joe (read back
a bit...arg, it's just such a half-assed language wrt what it could
have been).  But it can be made to work, and it does make a person
more productive: for example deriving a new gobject is handled transparently without half-a-ton of boiler plate that always makes one
stop and ponder if the usefulness of deriving is worth the pain.
&lt;p/&gt;

&lt;p&gt; That said, if a person needs to use C++, they should put some time
into learning how to avoid the myriad of pitfalls available to them in
the language.  One good book i read, and recently revisited was John
Lakos' book &lt;i&gt;Large-Scale C++ Software Design&lt;/i&gt;.  It's mostly
about things that aren't addressed in other works.  The chapters on
'levelization' and cyclic dependencies were very enlightening (for me)
-- reading them crystallized a bunch of incipient ideas whose
existence i was just beginning to be vaguely aware of.

&lt;p&gt; &lt;p/&gt;

&lt;p&gt; And of course there's still my favorite (when it's the right tool):
Python plus pygtk.

&lt;p&gt; &lt;p/&gt;

&lt;p&gt; i read the piece in the new york
metro about lessig's experience...and, shit, man.  just, shit, man.  that's all i have to say.

&lt;p&gt; &lt;p/&gt;
carry on.</description>
    </item>
    <item>
      <pubDate>Mon, 14 Feb 2005 05:44:43 GMT</pubDate>
      <title>14 Feb 2005</title>
      <link>http://www.advogato.org/person/async/diary.html?start=115</link>
      <guid>http://www.advogato.org/person/async/diary.html?start=115</guid>
      <description>i do not like spammers using my domain names for spoofing their headers.  i do not like my happy domains being associated with such things.  i do not like them sam i am. </description>
    </item>
    <item>
      <pubDate>Tue, 5 Oct 2004 14:39:49 GMT</pubDate>
      <title>5 Oct 2004</title>
      <link>http://www.advogato.org/person/async/diary.html?start=114</link>
      <guid>http://www.advogato.org/person/async/diary.html?start=114</guid>
      <description>&lt;b&gt;RTFM vs. JATFM&lt;/b&gt;:&lt;br&gt;&lt;p&gt;

&lt;p&gt; &lt;p&gt; &lt;a href="http://www.advogato.org/person/shlomif/" &gt;shlomif&lt;/a&gt;, the reason people created the RTFM acronym was so that it would be shorter than answering most any question. 
&lt;p&gt;
People (I) resent others asking random questions of them out of a sense of fair play, dislike of laziness, and dislike of the arrogance that can be inferred.
&lt;p&gt;
if someone asks me a question i am more likely to answer that question if i know the answer directly, i know the person asking, and/or i have been helped by the person asking before (or otherwise have a reason to want to help them (friendship, ass-kissing, impress others with my knowledge, whatever)).
&lt;P&gt;
fairplay and failure to scale: this is of course the tragedy of the commons scenerio: even though 1 random person entering a channel and asking a simple question is not onerous, a whole lot of them will become so.  with respect to only one person asking, it seems like a person refusing to answer is just being petulant, but when you consider that you might be the 500th person to ask the same question to that person that day, it becomes more understandable that they would refuse: it takes up their time, they get no benefit from it, it is not fun.  it in short becomes a job.
&lt;p&gt;
if someone feels like they want to help the community by doing that job, i find that admirable and worthy of encouragment, but by simply being in a certain place at a certain time, a person does not consent to fulfill that role, and since most people still have the freedom to do what they like rather than submit to your will or government's will, or what you think would benefit the community etc, they don't have to.
&lt;p&gt;
when the questioner enters a place and asks a question, it may be considered presumptious of them, but when that questioner insists that you should tell them the answer because it's easier than arguing or saying 'rtfm', that person is presumptious, arrogant, rude, and annoying.
&lt;p&gt;
this quite simply is the bottom line: you are asking for something and you have no inherent right to an answer.  if someone is nice enough to give you an answer you should be thankful, if they are not, you should be thankful for the chance to impose, but you should not insist that you deserve (or should otherwise get an answer) because the question is so easy or how quickly it could be answered or  because people there should know the answer and it would save you time rather than finding it yourself.
&lt;p&gt;
it is annoying, rude, and arrogant. and for the people that see it it day after day every day time after time, it becomes less and less tolerable to be treated that way.
&lt;p&gt;
you should be more considerate of others, no matter what you think would help the community.  </description>
    </item>
    <item>
      <pubDate>Sun, 19 Sep 2004 04:41:12 GMT</pubDate>
      <title>19 Sep 2004</title>
      <link>http://www.advogato.org/person/async/diary.html?start=113</link>
      <guid>http://www.advogato.org/person/async/diary.html?start=113</guid>
      <description>&amp;lt;person&amp;gt;&lt;b&gt;hp&lt;/b&gt;&amp;lt;/person&amp;gt;:&lt;p&gt;
alsa does indeed start with the master muted and everything turned down.  usually the init scripts should save and restore reasonable volume levels, so the fault lies there. 
the reasoning is so as not to deafen or kill any listeners or speakers inadvertantly.
&lt;p&gt;
PCM should probably changed to something like "Digital Audio".  
&lt;p&gt;
the master volume issue has come up before: the best thing to do might be this: start out with something sane like all the submixers at 75% and the master at 50%.
&lt;p&gt;
the master volume will then act as follows: the 0-X% range will solely fiddle with the master output.  towards the extreme end, before hitting a 100% the master will increase the submixers to 100%.  (everything unmuted).
&lt;p&gt;
if the level's are unequal the 100% should still mean all at 100% (but the relative balance will be restored if you back down).  
&lt;p&gt;
this is non-optimal but probably good enough for most users.  for those that it's not, they can open up the mixer and tweak stuff themselves.

&lt;p&gt; &lt;p&gt;
that said, i do take exception to your tone: the indignance reminds me of slashdot.  and that's never good.
not that it may not be deserved.
</description>
    </item>
    <item>
      <pubDate>Tue, 7 Sep 2004 17:47:04 GMT</pubDate>
      <title>7 Sep 2004</title>
      <link>http://www.advogato.org/person/async/diary.html?start=112</link>
      <guid>http://www.advogato.org/person/async/diary.html?start=112</guid>
      <description>&lt;b&gt;Self-Control&lt;/b&gt;:&lt;br&gt;&lt;p&gt;

	i've been trying to get a suitable version control workflow
going:  originally, i started with &lt;a
href="http://www.cvshome.org/"&gt;CVS&lt;/a&gt; of course, but moved to &lt;a
href="http://subversion.tigris.org/"&gt;SVN&lt;/a&gt; when it became available.
SVN was nice and has gotten nicer, having picked up an ssh-able
protocol and a plain-file based backend.  the one remaining issue for me
is the lack of disconnected or distributed operation.
&lt;p&gt;
	i gave &lt;a href="http://gnuarch.org/" &gt;Arch&lt;/a&gt; a try because
all the other cool kids were jumping off the bridge, but i never
really got into it.  (though i must say arch, like svn, has come a long
way (as &lt;a href="http://www.advogato.org/person/jamesh/" &gt;jamesh&lt;/a&gt; pointed out to me)).

&lt;p&gt;
	i found &lt;a href="http://svk.elixus.org/" &gt;SVK&lt;/a&gt; a while back,
which is a decentralized system that uses SVN's repository structure
and the repository interface libraries.  i only recently was able to
get it compiled and running.  &lt;p&gt;
	the setup i will start trying to use is something like this: a
primary SVN repository will reside on a hosted server (though the
repository isn't public).  i then use SVK to mirror the primary
repository to a local repository on my laptop/desktop and create a
local branch.  OK, AND HERE'S THE TRICK!!  instead of using SVK to do
all the version control on the local side (it has a slightly different
working copy setup), i check out the working copy using SVN and use it
as normal (well through the fantastic &lt;a
href="http://arcsin.org/softwares/rsvn.html"&gt;RSVN&lt;/a&gt; convenience
wrapper (:D)).  Finally i can use SVK again to star merge everything
back to the primary repository.   
&lt;p&gt;
	the above mentioned trick is only to get around SVK being a
bit slow-starting (written in perl) and the feeling that SVN's
command-line client is more mature.  
&lt;p&gt;
&lt;b&gt;CACM has interesting article, News at 11&lt;/b&gt;:&lt;br&gt;&lt;p&gt;

September's &lt;a href="http://www.acm.org/pubs/cacm/" &gt;CACM&lt;/a&gt;
uncharacteristically contains some interesting content about end-user
development (which i consider very important).  it details
some methods to create end-user programming interfaces
that encourage testing, use of assertions, and ease fault
localization.  i've always found the HCI problems encountered in
supporting complex tasks more compelling than the whole
which-button-order and where-should-we-put-the-menu sorts of issues
(not that they're not important, just that they're boring).
&lt;p&gt;
carry on.

</description>
    </item>
    <item>
      <pubDate>Tue, 24 Aug 2004 07:20:36 GMT</pubDate>
      <title>24 Aug 2004</title>
      <link>http://www.advogato.org/person/async/diary.html?start=111</link>
      <guid>http://www.advogato.org/person/async/diary.html?start=111</guid>
      <description>&lt;a href="http://www.siber.com/btyacc/" &gt;BtYacc&lt;/a&gt; is the bee's knees!  It is yacc but it can backtrack so it can handle conflicts.  
&lt;p&gt;

&lt;p&gt; this makes writing grammars much happier than using normal yacc:  it allows you to write a grammar which more closely mirrors how one might think about the constructs of a language, rather than going through all manner of needless contortions to avoid  conflicts.  it also allows you to deal with garmmars that are inherently ambiguous.  
&lt;p&gt;
BUT WAIT THERE'S MORE!
&lt;p&gt;
you only incur extra overhead compared to yacc when you actually backtrack.   


</description>
    </item>
    <item>
      <pubDate>Fri, 9 Jul 2004 05:56:53 GMT</pubDate>
      <title>9 Jul 2004</title>
      <link>http://www.advogato.org/person/async/diary.html?start=110</link>
      <guid>http://www.advogato.org/person/async/diary.html?start=110</guid>
      <description>&lt;b&gt;on Eiffel&lt;/b&gt;&lt;p&gt;

&lt;p&gt; i've been messing with eiffel for the past week or so.

&lt;p&gt; &lt;p&gt;
i think i like it, but i'm not sure.  it is a substantial improvement
over C++, but i'm not sure that's saying much.

&lt;p&gt; &lt;p&gt; 

&lt;p&gt; getting used to eiffel has proved unsettling.  i know a lot of
languages coming from various design philosophies, so i didn't expect
that i'd find it so jarring.  it made me very aware that the languages
i use regularly sharing some level of algol blood all look like C to
one degree or another (in terms of nomenclature and syntax).  perl and
python and c++ all look roughly like each other if you squint.  

&lt;p&gt; &lt;p&gt; 
on the other hand you have languages like APL and J which are easy
to accept on their own terms because they don't look like much like
anything else: you expect they'll be different.  

&lt;p&gt; &lt;p&gt;

&lt;p&gt; eiffel though occupies a curious position [1]: even though i have
experience with pascal and it's ilk, i found myself fighting to write
C code (or C++ or python or perl code) in eiffel.  i guess i couldn't
decide if i wanted to dislike the language because of its resemblance
to pascal and it's pedantic attitude ( not quite all the power of C
along with lots of padding and helmets and gloves and disclaimers ) or
to think of it as a tool providing features which naturally lead to
software-engineering best-practices (ie it's not just C for the
complete klutz like pascal).  i decided to try to adopt the idiom
rather than trying to fight it (certainly i would scoff at anyone
trying to write C code in lisp).[2]

&lt;p&gt; &lt;p&gt; 
so i think i like it.  especially for writing any code which is
complex enough that you would want to sit down and design. [3]

&lt;p&gt; &lt;p&gt; regarding different languages, i like lots of different ones.
this is sometimes distressing because i feel i should have a favorite
that is 'best' and that i use for everything.  but that's dumb.  some
are useful for different things (matlab v C), and some are useful for
the same thing (python vs perl).  i think all other things being equal
(and i have the choice) sometimes i just want to write something in
python or lisp or C depending on my mood or for a change of pace.  and
i think that's cool

&lt;p&gt; &lt;p&gt;
so observations about eiffel
&lt;p&gt;
&lt;ul&gt;&lt;li&gt;
arrays starting from 1?  dammit i spent 10 years in school to learn
how to count from 0 and now you want me to count from 1?  (matter of
taste, but dijkstra showed that counting from 0 is in general more consistent.
also screws with implementing numerical algorithms ; 
going against common practice increases the possibility for confusion
though).  (i bet there's some way to change this, since there is no 
special array syntax) 

&lt;p&gt; &lt;li&gt;
&lt;pre&gt;
this 
   PROGRAM is do 
	my_pants
	hmmm_some_iteration_might_be_nice
		iterate
		end --
        huh
        yeah
   end --  program
&lt;/pre&gt; 
huh?  i thought we all agreed that cobol is silly.

&lt;p&gt; (NB that code is a parody)

&lt;p&gt; &lt;li&gt;
one class per file? are you some sort of nazi?
&lt;li&gt;
pre/post conditions - cool
&lt;li&gt;you don't need parens for an empty arg list in a funcall...uhh 
how am i supposed to know it's a funcall?  maybe if i start all 
the function names with '&amp;amp;'
&lt;li&gt;
!! is the new 'new' operator?  so now you decide cobol *was* silly?
also, saying bang-bang is fun.
&lt;li&gt;
locals declared in separate section?  you're not my real father!  *run
to room slam door* *CRY*
&lt;li&gt;

&lt;p&gt; 'functionname is do ... end'

&lt;p&gt; oh so that's where all the extra understood verbs from latin ended up.
&lt;li&gt;
/= is the new != ?  9 out of 10 cool kids agree: != is != 
&lt;li&gt;
explicit short-circuit boolean ops ('and then', 'or else')
interesting, but a bit chatty.
&lt;li&gt;
:= assignments:  it's a pinky workout! 
&lt;li&gt;
the compiler is not the gcc (which we know and love).  
&lt;li&gt;
easy C usage ... cool
&lt;li&gt;
hmm the docs suck (they aren't organized well)... i guess i need to
buy the book.
&lt;li&gt;

&lt;p&gt; 'inspect foo when... when... else... end '


&lt;p&gt; ohh someone had their thesaurus handy. (though the switch and case of
C never made any particular sense to me)
&lt;li&gt;
compilation looks at the entire program at once (which can do much better
optimization of functions etc) -- yay, no more suffering the
run-time inefficiencies of C to make writing code easier.
&lt;li&gt;
no header files: but how am i going to remember the members of my class 
if i don't type them out twice?
&lt;li&gt;
etc...
&lt;/ul&gt;


&lt;p&gt; &lt;ol&gt;
&lt;li&gt; i remember seeing a well circulated story on research showing that 
    people find it easier to react positively towards
    visual representations of people if those representations are
    either completely unlike people or really close to people.  however, 
    those visual representations which occupy the middle ground of that 
    continuum are more likely to elicit negative reactions.
&lt;li&gt;
    even though i still harbor some of the real-men-use-fortran
    attitude towards pascal, the punks in CS intro class who kept wanting
    to point out they knew C and complain that this is how things were
    done in C and why are we learning a useless language like pascal
    really annoyed the piss out of me: the class was in pascal, get over it.
&lt;li&gt; 

&lt;p&gt;     people calling themselves software engineers should be beaten daily.
    also i'd love to hear this out of an architect, "i would use it for 
    any bridge that is large enough that you'd actually want to sit down 
    and design it on paper first".  i'm not trying to make an analogy 
    or a point about programming (i like to hack and i think its ok though 
    somtimes i miss noticing when a hack is big enough to require 
    some planning and i don't know off hand how to do it).  
    i only want to say 1. software engineers
    don't take the PE test and 2. taking statements from one context and 
    putting them into another is sometimes funny. 
&lt;li&gt; i *heart* run-on sentences.
&lt;/ol&gt;
</description>
    </item>
  </channel>
</rss>
