Now that we have a working setup with binaries built from source we can think about making modifications to the code.
The plan is to add support for snappy a recently released compression/decompression library developed in-house by Google.
In the Prologue of this series we took a birds eye view on rsync based on the information we found on Wikipedia and the project homepage. The goal was to achieve a general feel for the project and do the important first step in learning a code base - simply starting.
Today we will start navigating the code base. Getting our own copy and compiling it.
With this post I'm introducing a series in which I will try to illustrate on the example of rsync how one can go about learning the code, community, tools and documentation - the ecosystem behind a project.
We will start without any knowledge about the project. In the process we will produce documentation of the methods we used to obtain information and end up with a guide which should help new developers get a kick start on the project.
Oracle PL/SQL is an procedural language for Oracle relational database and tools like Oracle Forms and Reports. The language was based on the Ada programming language and even uses a variant of Descriptive Intermediate Attributed Notation for Ada (DIANA). I've been developing in the language for the past 4 years and wanted to share some pitfalls I stumbled upon during this time. Since the language is supposed to be based on Ada I will compare some cases to their counterparts in the Ada language - skipping the ones without obvious mappings (like SQL only code). We will start with a trivial problem and increment to more sophisticated ones.
[This note was originally written and published as a guest post on my friends blog. I highly recommend a visit.] On December 12 2009 Gynvael wrote a blog post about his first impressions of Google's Go language. Over an year later I mentioned to the author that a similar post about Digital Mars D and Mozilla Rust would also be an interesting topic. This whole conversation reminded me about the original post and influenced to refresh the material. After encountering the following sentance "And, I look forward to the Windows version, since it's currently available only on *nix platforms." I decided to learn about the current state of Go.