[freetds] chapter next
lacak at zoznam.sk
Tue Jan 27 04:05:35 EST 2015
Nice written text :-)
> Greetings All,
> I want to let everyone know just a little news about the FreeTDS
> project from my perspective.
> Frediano has agreed to be the Project Maintainer and is in the process
> of acquiring the requisite keys to the kingdom. It's fitting; no one
> has done more to make FreeTDS what it is today.
> I have faith that Frediano won't pull up the drawbridge, not that I mean
> to cross it very much. I know he's interested in fixing the overnight
> snapshot process, and in more frequent releases. There's quite a bit
> of new functionality in the current development branch that I'm sure
> will be welcome in a new release.
> It's been quite a ride. The oldest FreeTDS message in my personal
> archive dates from 2001, the first year of the Bush administration. In
> those days FreeTDS was very much a work in progress. There was only
> primitive BCP (no freebcp), incomplete type conversion, just the most
> essential functions. The most frequent error was a TDS parsing error
> about invalid stream state, leading immediately to exit(3).
> I remember an early bug report that said char-> int conversion failed
> to read the last character, leading to the mother of all off-by-one
> errors: off by one order of magnitude. I think that was the day I
> decided to jump in with both feet, starting with an all-to-all db-lib
> type conversion test. :-)
> Even though my name is on a lot of email messages, I don't lay claim to
> most of the code. Much, much more was done by Brian & company in the
> early days, and later by Frediano and Bill Thompson. There are many
> more names, most of whom are acknowledged. It truly was a collaborative
> Many people outside the free software community -- and perhaps you,
> dear reader -- wonder why someone would devote his time to programming
> without getting paid for it. I have one answer.
> My answer is simple, if surprising: selfishness and unselfishness.
> Why does anyone pursue any hobby? For the pleasure of mastery and
> discovery. I knew there was this thing called "Linux" happening, and I
> knew from Unix that "ls" meant "dir". I knew C, and how
> packet-switched networks work (but not tcp/ip). And I knew enough
> db-lib to be dangerous. Why not try my hand at FreeTDS as a way to
> learn things and build on what I knew?
> In my first message to Brian Bruns I offered to write a user guide. At
> the time there was a FAQ, but anyone starting out pretty much had to
> join the mailing list to learn how to set things up. I didn't know
> what the documentation had to *say*, but I could take Brian's notes and
> convert them into a proper document. In the event, he chose the doc
> technology and wrote the first draft. I tidied up some of the wording
> and added to it whenever a question arose on the list. Over the years
> it's come to meet my goal: seldom do we see questions on the list about
> how to compile the code or connect to a server.
> I answered people's questions to further my knowledge. How to convert
> character sets? How to discover the server? How to test the setup? I
> added to the documentation and to tsql to make answering those questions
> easier. As time went by, the questions got knottier: why does function
> X crash? Why did bcp not upload the table?
> Besides improved logging, I went through every db-lib function -- and
> every published db-lib error message -- to make sure any misuse
> returned an error and called the error handler. Every documented
> message that can be produced *is* produced, somewhere in the code.
> Eventually I learned enough (especially from Richard Stevens) to do the
> very hard work of fixing the communications stack top to bottom, so
> that timeouts actually work as specified.
> In the process of answering questions and investigating problems, I
> learned a whale of a lot about operating systems, standards, networks,
> and the many sundry things Unix teaches about tooling and
> architecture. It is said, "It's amazing what a man can accomplish in
> 10 years." For myself I know that's true: When it came time to make a
> career move a few years ago, it was FreeTDS that underpinned the
> Thus did the fledgling fly the coop.
> My work nowadays doesn't involve FreeTDS or SQL Server, or very much
> database work. My technical interests have changed, too; having
> learned (I would say) what FreeTDS has to teach about clients, I've
> gone to the other side, to the server. More on that another time.
> Meanwhile, the FreeTDS project is dying on the vine. One maintainer
> does not a project make. Microsoft keeps moving the gateposts.
> Required functionality changes. Microsoft now has its own
> closed-source ODBC driver for (some kinds of) Linux. The open-source
> door to SQL Server is closing, will close without sustained effort. If
> you see some of your story in mine, I suggest you consider lending a
> hand. Only doing is knowing. You never know where it might lead.
> I should mention one unexpected pleasure of participating in this
> community: the number and kind of wonderful people I meet, many of
> whom I learned from and count as friends. They help me, as the old
> Irish prayer says, to work to change the things I can, to accept the
> things I can't, and to recognize the difference. Plus, they're fun to
> be around. Sometimes I make them laugh, too, sometimes intentionally.
> I'm human, and as much as anyone I'd like to be showered in leis and
> buried in praise, whether or not deserved. I'm glad to have played a
> part in bringing FreeTDS along as far as we have. I will not claim,
> though, that I did it all for You. I did it for me, and you happened
> to benefit. So thanks, and you're welcome.
> FreeTDS mailing list
> FreeTDS at lists.ibiblio.org
More information about the FreeTDS