Domain: freshmeat.net
Stories and comments across the archive that link to freshmeat.net.
Comments · 2,668
-
IPaudit may do the trick...
I answered a post on bandwidth accounting a month ago (Oct. 02 2000) and it's already in the archives... But here's a link: see the first post.
It's a nice program and can be easily configured to your needs, since it listens on an interface you could easily set it to collect data on the masquerading side ande generate a few reports. Nothing that a few lines of perl won't generate. Here's a link to ipaudit on Freshmeat.
--
All browsers' default homepage should read: Don't Panic... -
Re:Found a possible toolkit
Could something like this work to build it. I can't wait to get home and play with it. I'm serious here lets build it, install it and give it to them. These boys used the term "geek rock" over 5 years ago this alone makes them worthy of our time and effort.
-
Re:JWZ is moving on...
Not that I'm an especial fan or anything, but JWZ is still producing. Note the most recent update, 2 days ago.
-
It'll get deeper
Wait until someone combines it with something like FSCKTV. Presto: perfect digital recordings of descrambled channels. Soon, even the cable companies won't be getting their cut.
-
Re:Someone had to say it
-
Re:This is ridiculous.
Incidentally, I use w3m when I need a text-mode browser. Supports frames and tables and has colour support too. See it on freshmeat.
-
Difining distribution is difficult.This is a stream of consiousless mindless rambling rant...i'm not really trying to make a point...sorta just thinking outloud...
I'm assuming the problem with ASPs is the user doesn't have access to the binary, therefore they don't have a copy of the program. But then...
Say I give people logins on my box. They are essentially able to copy any GPL binary on my system, yet I never installed source? Am I violating the GPL by not providing means of getting source? If I modify some of the code on my box and let people use it who I've given logins...I never had any intention of distributing a derived work, yet people with logins can use it? I'm assuming since even though I'm not explicitly giving away derived software, people could indeed obtain copies of it without my knowledge, regardless of whether I care or not, and this violates the GPL?
Now with ASPs we're letting people use software who can't see the binaries (if it's binary) or source code. Now if this doesn't violate the GPL, but the FSF thinks it should, then you have to define distribution in terms of use, ie. anybody who uses this software is entitled to a copy.
How do we define what ASPs are? Should GPL web servers be included? (Apache isn't, of course, so we won't bother with the implications). Anonymous FTP? The difference between "servers" and "ASPs" is so incredibly fuzzy I wouldn't begin to think of how to draw a line between them.
At work I have put up a rather hacked version of Neoboard. This thing has been extremely customized to work with my web site and authentication scheme. My customizations don't really add new features that anybody would be remotely interested in. I hacked it for myself. I don't think my users or the author would want to see what I've done to it. I don't think I should have to let them. I don't think the software is less free if I don't. Wasn't the whole point of the GPL to protect my freedom to hack it as I see fit? And if I chose to give or sell it (as opposed to letting them use an interface of it, regardless of whether they have unpromoted, unspecified access to copy the binaries) to someone, give them that same right? And now if I do that with GPL 3 software, I gotta give the code away? When I'm not making changes and handing out binaries? I'm just letting people use it. It just seems to me to conflict with what the FSF stood for in the first place: letting me make derived works and either keep them secret, or give them away with the same rights as I have.
As I'm confusing myself, I'll stop now.
-
Re:Which browser will they be using?
Links is text WWW browser, similar to Lynx. Links displays tables, downloads on background and uses HTTP/1.1 keepalive connections. Get it from freshmeat. I can warmly recommend it over lynx any day [screenshot ]. w3m is worth a try also but I prefer Links to it.
_________________________ -
use your monitor as a transmitter
Since you don't really care about quality of the music you are broadcasting, and you don't seem concerned about the range, why spend the money? Use a better hack and transmit AM with your monitor!
-
Apt-get is working with RPMs
Check the current development status in freshmeat, at the bottom of the page. -
Re: OT: TI calculators
I've personally had great luck with GtkTiLink, which supports all calculators, gray and black link cables, and has a nice interface.
-
Re:How to Deal With Filtering SoftwareWhen I was in high school they had BESS. They claim that it only blocks sites that have been reviewed by humans. However, they had freshmeat.net blocked! After bitching them out on email, they unblocked it. What is funny is that BESS blocks a big linux site, and ironically, BESS runs on linux!
But I got around it. I wrote a perl GGI script which I kept on a server bess didn't block and would fetch the URL I submit to it and print it to the screen. Since BESS works via blocking by DNS/IP, I easily got around it. It was sweet, I put password protection into the script and sold accounts to people in school for $5 each! Oh and I later found out about another program that works much like my besspass.cgi perl script, only it is more evolved. It is called GGIProxy. You can get it here.
-
Re:DIYThe basic software you need generally comes standard with any Linux distribution. You can find pretty much any other software you need (like ssh) either in binary form or source form on sites like freshmeat or the site that your distribution is from, like RedHat or Debian for example.
Documentation for this stuff is all over the net - try the Linux Documentation Project for a start. A good site for Linux newbies is LinuxNewbie.org
I think it would be far easier to implement this using a linux (or unix) solution than with WindowsNT/2000. All the basic funstionality for an internet server (e-mail, web, basic network stuff, firewall) is standard in most distros.
-
who cares
Opensourcing an app the relies on their own network/servers- big risk, big deal; its just a publicity stunt.
Anyway, Sneakemail.com has better anti-spam/remailer features anyway, and their optional client has been in the the public domain. I'm sure the other features of zeroknowledge can be found elsewhere too. -
100? Bah, try...
... 11084 apps and increasing each day. Now who says Linux doesn't have any apps?
:) -
Re:Wow!, this is EXACTLY why sneakemail was create
WTF! A post about a web site created to solve just THIS problem sits at score 1 and a post for a windows utility gets a 5. Is this one of those slashdot bugs I've heard about :) Another post gets a five that is about a client that does something similar. Is it because the client is downloadable, or in the public domain? Well, sneakemail has a client in the public domain too, if that helps. sneakemail command line client. -
I'm one of the "culprits" but I'm OK with it.Not that I've released text editor #174*, but I did release a GPL'ed CD cataloging program, probably about the 50th of its kind. I wrote it because all the existing Linux CD cataloging programs relied on the user typing an identifier for each CD they used, rather than just pulling the ISO9660 disk label off the CD.
Could I have submitted a patch to someone else's project? Probably. But replacing the primary key in a CD database would have made for a pretty big patch. Besides, I wanted to prove to myself that you could write a graphical app using Perl and Qt. I wanted to prove you could write a database app that didn't require a database server. I wanted a graphical app with a command line version available. And I also hoped that other CD catalog authors would take my disk ID concept and include it in their real cataloger programs, since that feature is pretty common on "other platforms."
So far (AFAIK) that hasn't happened, but I'm still hopeful. Meanwhile I've gotten a few new-feature patches emailed to me, but haven't incorporated them yet. Why not? Well, the program does what I need it to, after all, and the patches would have extended the functionality further beyond that of CD cataloger. I no more want to browse directories with a CD cataloger, for example, than I want to read news with a web browser.
I also want to revamp it, probably rewrite it in C++ as a fullblown KDE app, include MySQL support because text files are way too slow for million-record databases, RPMify it the way you can't easily do with perl programs with dependencies, but all that is Real Soon Now.
This makes me part of the problem, I know, but I hope I've at least explained why it doesn't bother me.
*And I did actually write a text editor - my very first Tcl experiment was a Notepad clone. I also had the sense to never release it
;) -
21
21. We all realize that we are living in a screen just as the dungeon collapses and we die. Meanwhile the big root user in the sky just -wipes it and creates a new one.
-------- -
Encrypted CDROMs a must!
I really wish there were some simple way to encrypt data to write to a CD-ROM. Actually I found this project to produce encrypted CD data on Freshmeat awhile back. This patch only encrypted the files themselves not the filesystem (i.e. all filenames are visible) which is very much suboptimal, plus there were other buglets. Now it appears that the project pages are all history.
I even volunteered to try and help out with the current block limitation on the international kernel patch to allow using CDRs but received no reply to my email. Sigh. -
Red Hat, Linux, etc.
When I found out that RedHat 7.0 was finally coming out, I basically shrugged and made a note not to go to sunsite for a few days. Now, I'll admit that I did look at some of the 7.0-beta packages, but was dismayed when I found out that I needed to upgrade my version of rpm -- and I did not see a way to upgrade it. (Admittedly, I failed to look in the 6.2 updates directory.)
I'm just going to go on what I have read here and heard otherwise... Apparently, gcc 2.9.6 has issues. Yes, most software has issues, but these seemed to be serious issues.
I'm going to wait on upgrading my version of gcc, it seems. Although my computer was initially an installation of Red Hat Linux (version 5.2, in fact, which had a buggy-as-hell implementation of GNOME on my box), I decided about the time 6.2 went into beta to move away from the rpm system software methodology. Now, if I can't compile the software packages I want to install, then I'm sunk.
I have to agree with those that say that Bob Young's letter was long and pointless. No, Red Hat is not Microsoft. Red Hat will never be Microsoft. It is impossible for Red Hat to become Microsoft without breaking the GPL, which most of the software for Linux is distributed under. It's just not going to happen.
And, for those of you out there who don't realize this, you don't need Red Hat to run Linux. Debian, Slackware, and SuSE are all alternatives if you want major distributions. Or, hey, go hit freshmeat.net for the tarballs and build them yourselves!
I just have a few questions: How long was 7.0 in beta? How many people tried to download the packages? And was gcc 2.9.6 one of the beta packages?
If gcc 2.9.6 was amongst the beta packages and there was a long enough review period, then Red Hat had no reason to use a different version of gcc if they did not receive bug reports or complaints. The purpose of a beta is to iron out the bugs before a gold release. But one cannot fix bugs that one does not know exist.
However, if gcc 2.9.6 was not within the beta packages, the test period was insufficient, or Red Hat ignored the bug reports, then complain, piss, and moan all you want for you are justified.
And, remember, everyone makes mistakes. If you want proof of this, look at some of the changelogs for the 2.4.0 test kernels. (Okay, maybe this is unfair, but it proves a point.)
Linux is an open source, free operating system. Most of its software falls under the GPL, which ensures open source software and whose developers choose to release the programs for free. It is impossible for any one distributor to gain a monopoly over it like Microsoft over Windows.
Linux is a movement; its user base supplies its voice. Yell loud enough and you will be heard.
-
Re:to stupid to pass upand what point would there be to only programmers having computers? to write programs for other programmers perhaps?
Sounds like Freshmeat to me.
-- -
Performance depends on what's being served
There are several web servers that may outperform apache on serving static content. Search freshmeat for possibilities.
Dell themesleves (with RedHat) have claimed record-setting performance using their "Tux" kernel-space web server daemon. (again for static content)
If you need to support more general content, then look at the flexibility in apache (and other Unix web servers) to support a wide array of different services and the ability to tune apache.
There's more to performance than just performance. Can you tune the server? How easily? Content management? Scalability to multiple servers/load balancing? Integration with database back-ends or java servelets? Security! Server management? Ease of upgrading? Paltform-dependancy? Licensing costs?
IIS ties you to one vendor's solution FOREVER. You can migrate an Apache site onto just about any O/S and hardware platform. This may or may not be important to your decision.
Depending on what you need and the skills your company possess, Apache may be an excellent choice or just OK.
I know you asked for benchmark data; Sorry I don't have a link to any and benchmarks are usually heavily cooked beforehand anyway (such as the Dell/RedHat example). IIS has a marketiing-savvy corporation behind it. Apache has the largest installed base on the planet and thousands of success stories.
There may be some info at the main apache web site, Apache Today, the apache week and oreilly sites (don't have url handy).
Oh, unless your firm is tied to buying only Dell, look at the offerings from VA Linux and the other linux vendors - I know VA can provide specific tuning suggestions.
-
Re:can someone explain point of cuecat hacks
Hacked CueCat + barcode generation software + database = dirt cheap inventory system.
To see more ideas check out this Freshmeat search. -
Re:can someone explain point of cuecat hacks
Hacked CueCat + barcode generation software + database = dirt cheap inventory system.
To see more ideas check out this Freshmeat search. -
IPaudit is nice
I have IPAudit running on two of my servers to keep tabs on internet usage. It sniffs the network and generates a dump text file with all the TCP/IP connections made during the program's runtime. It's files are easy to understand and parse and the processor usage isn't that high (on my 100Mb intranet, with 50% usage the process never goes beyond 25% on a PII 266MHz).
A link to the Freshmeat page is here. I scoured Freshmeat for a userspace/rootspace solution for a bandwidth meter and IPAudit was the best because of it's simplicity. I personally prefer piping data into a perl program to parse the data than to let it become "Someone Else's Problem". The overhead is low and a parsing script isn't that hard to work out, the one I use (actually it's a suite of 2 programs) took 2 days to code and another week to tweak the filtering rules.
I also made a cute little web interface for the higher ups (computer illiterate) to browse through the user's usage - and it wasn't that hard to make. Oh, I don't release it 'cause it's a mess, one day I'll document it and release it, until then - sorry... :) -
Re:What a fck'ing joke
-
Re:More vauge lawsuit?
Go grab Foocat -- it looks up author, info URL, title and a cover shot for books, CDs and DVD.
___________________________ -
URL fixed: mod_log_spread to an auditing host?
You could configure George Schlossnagle's mod_log_spread to multicast apache log entries to a third party audit host. That would be realtime, very hard to fake, and transparent to your config.
-
abcde can help with this[disclaimer - being the author of software can make you biased towards it]
If your CD duplicator is a bunch of drives hooked up via a SCSI bus, you'll find abcde extremely handy for this.
http://frantica.lly.org/~rcw/abcde/page/
Command-line based, can be non-interactive, has support for all the major encoders + distmp3 remote encoding support, does cddb, playlists, id3 tagging, customizable output filenames, etc.
Some people use it with autocd for that truly hands-off feel.
-
Cache and location... hmmm...Wait a min... any moron could figure out how the 'secret sauce' works. Let me see now:
- Get the IP address of the client.
- Forward to closest recorded cache server if there's a cache hit on that IP address.
- Ping it to get a timing. (If it fails, it's a client problem, just serve the content)
- Ask another set of servers that you know span north, south, east, and west to ping the client.
- Hand off the request (via HTTP's moved-temporary error) to the server who can ping the client faster.
And for the record, I have not seen any data or information from either side of this lawsuit. But shouldn't be too hard to implement anyway. Proxy server anyone?
---
Another non-functioning site was "uncertainty.microsoft.com." The purpose of that site was not known. -- MSNBC 10-26-1999 on MS crack -
Re:I don't get it.
Hmmm... maybe you should try a newer version of mpg123? I use mpg123 0.59r on both my LinuxPPC desktop machine and my Debian-i386 laptop and it does just fine with VBR...
I encode all of my mp3's with LAME, using a high quality VBR setting (average bitrate is usually 160bps, min bitrate is 112bps, and max is 320bps)
These files work well with winamp, mpg123, Sonique, XMMS, and mp3blaster (which, if you are fond of working in console mode, is a great text based player with playlist and everything... )
(All above mentioned open-source programs [i.e., not winamp and Sonique] can be found by searching freshmeat, or on Debian just apt-get it
:-) ) -
Re:Getting sick of the controversy
you begrudge them a few lousy quid because - oh yes - they're all capitalist bastards...
Oh, I see, you don't HAVE to get the beta. It is strictly an economic decision.
What I find more of a nerve is that Linux vendors can charge almost the same amount of money without adding any significant level of code to what is supposed to be a free product.
Pot. Kettle. Black. Again, it is strictly an economic decision. You don't HAVE to pay any Linux vendors. Download the OS for free and check out Freshmeat for free applications...
And if we want to use MacOS X as a measure of Beta status, then please tell me when Linux reaches pre-Alpha and I'll be happy to fork out that cash.
If you'll pull your head out out your arse you will see that Linux (and BSD) are fairly mature right now. Some parts are in alpha/beta state (<ver 1.0) but the stable kernel is at 2.2.x/2.4.x now.
As for being happy to fork out cash for Linux, remember "a fool and his money are soon parted"
--
You think being a MIB is all voodoo mind control? You should see the paperwork! -
Re:Bullshit
yep...plus, the tnef program that has been referred to several times in other comments has been on freshmeat for almost a year...
--Siva
Keyboard not found. -
Re:Not that big a problem is it?
-
Open source TNEF decoder
is here.
-
Re:Can we say: WHAT?
There's more music programs for Linux than you thought. Just check out freshmeat.net or other sites. Is your ability to write music really tied to software? Or does software free you to write music? Up to you. I've done way too much music using 100% free tools/code to be flamed, so I know there's better tools in the free world.
-
xinetd
-
xinetd
-
xinetd
-
Re:max speed
-
Metadata, URI, mirrors etc.....Sorry for self-quotation (from the TERENA Technical Report FTP Mirror Tracker):
Unfortunately, there is still no coherent architecture for mirroring and for mirror sites to register their collections with the sites which they mirror. In fact, we lack even a common (de facto) standard for recording this replication information in a machine readable for-mat. Some progress was made on this a few years ago by the Internet Engineering Task Force s [1] working group on Internet Anonymous FTP Archives, with the creation of the so-called IAFA Templates [2]. These provided a simple machine readable format for recording per-resource or collection metadata, which could easily be created by hand or programatically. Although support for IAFA templates was integrated into some software packages, e.g. the ALIWEB search engine [3] and the ROADS resource discovery sys-tem [4] , this approach never became successful on a large scale. The World Wide Web Consortium s Resource Description Format (RDF) [5] and the Dublin Core metadata effort [6] may eventually provide a viable machine readable interchange format.
Another attempt to create a framework for such a metadata was an "Open-Software-Index" that Oliver Maruhn and myself tried to create almost 2 years ago. After this document some discussion had started (code name "Russian Freshmeat") that had shifted mostly to localisation of such a metadata. Unfortunately no working code was produced.Currently, the database underlying the freshmeat.net weblog [7] is perhaps the closest thing we have to a genuine mirror registry - though it focuses almost exclusively on soft-ware packages and operating system distributions, and only offers limited mirror informa-tion. RDF is also being used in this capacity as part of rpmfind.net [8], although mirror information is very limited in this case too. The Internet Engineering Task Force s Uni-form Resource Names effort [9] is also relevant here, since it would be very useful if there were persistent and location independent names for these collections of replicated resources.
[1] http://www.ietf.org/ Internet Engineering Task Force website
[2] http://info.webcrawler.com/mak/projects/iafa/ IAFA Working Group & IAFA Templates homepage
[3] http://aliweb.emnet.co.uk/ ALIWEB website
[4] http://roads.opensource.ac.uk/ ROADS website
[5] http://www.w3.org/RDF/ World Wide Web Consortium Resource Description Format (RDF) homepage
[6] http://purl.org/dc/ Dublin Core website
[7] http://freshmeat.net/ freshmeat.net website P. Lenz & Andover Advanced Technologies, Inc.
[8] http://rpmfind.net/ rpmfind.net website
[9] RFC 1737, Functional Requirements for Uniform Resource Names K. Sollins & L. Masinter December 1994And at the end somewhat less relevant to the topic.
This kind of metadata should be extremely valuable for implementation of the URIs and particularly for the I2C(s) (URI tp URC). Quote from the RFC 2483:
"Uniform Resource Characteristics are descriptions of resources. This request allows the client to obtain a description of the resource identified by a URI, as opposed to the resource itself or simply the resource's URLs. The description might be a bibliographic citation, a digital signature, or a revision history. This memo does not specify the content of any response to a URC request. That content is expected to vary from one server to another."
Hopefully we already have mechanism for the I2L(s) (FTP Mirror Tracker). -
Re:Well...
Well, freshmeat has it's appindex as text here: freshmeat.net/backend/
That should do the trick :) -
Little plugs from /.
-
Little plugs from /.
-
Re:Java CueCat App
I guess I will sit around and wait for my subpoena.
Good luck. I put a C version up on my page and on Freshmeat over a week and a half ago, and still haven't gotten a letter.
Has anyone gotten a cease-and-desist letter from these clowns after the first wave? -
Re:Are these the same people...?Looks interesting. Too bad you need their $200.00 Netstream card although there are beta drivers for Hollywood Plus at Freshmeat. You also need a REALmagic Remote Control or go again to Freshmeat for a free alternative. Has anyone any experience with this player?
I'd order a copy of Intervideo's player today if they would just produce it. I'm also waiting to get a look at the DVD plugin for QNX when it is released too
-
Re:Are these the same people...?Looks interesting. Too bad you need their $200.00 Netstream card although there are beta drivers for Hollywood Plus at Freshmeat. You also need a REALmagic Remote Control or go again to Freshmeat for a free alternative. Has anyone any experience with this player?
I'd order a copy of Intervideo's player today if they would just produce it. I'm also waiting to get a look at the DVD plugin for QNX when it is released too
-
Your prayers are sort of answered
Cish, config shell for linux routers that mimics a Cisco. Hey, it's a start.
-
Re:Things heard when problem-solving Linux:
"Did linuxconf just change that BACK?" - Ever have Windows change your custom resources setting back on your SoundBlaster? Its like windows didn't think I was smart enough to look at the jumpers. and enter the correct settings myself.
Solution: don't use linuxconf. It's eeee-vil
"What the hell does this crap in sendmail.cf *mean*?" - If local mail is too complicated, just employ the Windows solution (don't install it).
Solution: Get Nullmailer. Or if you really need a full blown MTA, qmail. Sendmail is a relic.
"Oh, there it is. What the %#*@! does this %#$# *mean*?" - Fatal Execption at OE 8231:xxxxx in NDIS.vxd, 'nuff said. Even MS tech support will give youa big "ummmmm.....yeah....".
Solution: Regexps are a bitch in an OS.
:-pI'm not really sure what the point of this post was. I've been doing software testing since Monday and that'll continue through the end of the week, so perhaps that's it.
-
Leverage Frameworks - Post Only Subversive PartsI suggest that you minimize the amount of explicitly subversive code (and also your development workload) by making use of readily available frameworks.
It's preferable if these are open source, but they don't have to be to suit your purpose; for example Metrowerks PowerPlant is the most popular application framework for the MacOS, and although it is a commercial product it is inexpensively available and when you do buy the Codewarrior development system you get the PowerPlant source code on the installation disk.
You can even develop an open source framework yourself and publish it openly, and invite in contributors publicly, and distribute non-subversive demo and test programs. Alternatively, you can add functionality to frameworks that almost suit the purpose and submit your patches back to the original maintainers.
This will save you work, although you may have to write "adapters" to be able to use someone else's library for your own purposes, it will increase reliability of your product, because the framework will have already been debugged by someone else and also tested under a wider variety of circumstances than it will encounter in your code, and you can concentrate your work on the particularly subversive parts.
Then you post only the "interesting" parts of your source code, and provide hyperlinks to the needed application frameworks in your build instructions. Be sure to include the version numbers needed for this build of your program, and if the sources to any of the frameworks are signed with a public key, include the key which those sources were signed with when you got them. That way you can be sure future programmers can rebuild the same program as you did.
It may well be that you have a large application but only a few source files and some build instructions to upload, which could be done off a floppy disk at a public access terminal. If you upload these to a few free webhosting service pages, then email the URL to a bunch of warez site maintainers, your code will be looked after.
Note: to find lots of warez sites (and even more serialz sites) go to Altavista, click on "Advanced Search" and enter:
download and warez and photoshop and illustrator and crack
Probably only 10% of the sites you find will actually have live warez (they get taken down quickly) but some patient hunting will find you any software title you want - but of course your objective here is to contact the warez site maintainers so they can introduce your program into their archive system.Note that if you want to build a Windows application you can build it with Cygwin (a GNU shell environment for Windows including gcc) so you can be sure Microsoft doesn't embed Globally Unique Identifiers in your code. I'd also suggest that when you make a windows build, you buy a brand-new copy of windows 98 (pay cash), install it on a freshy formatted hard drive, build your binary, upload it, low-level format the hard disk you built it on and throw away the Windows 98 installation disk and all the materials that came with it. It's probably hard to get away with installing a development system on a public access terminal.
If you don't want to use a public access terminal (after all, you might be recorded on a surveillance camera, or the coffee shop waiters might remember you skulking around), then use Zero Knowledge Systems' Freedom to anonymize your web access.
Note that the way Freedom works is your HTTP packets are multiply encrypted with the public keys of the Freedom Network's servers, then "unwrapped" one by one as they pass through up to three servers until they are passed unencrypted to the public net at a faraway place.
Freedom provides both anonymous web browsing and anonymous email send and receive.
Some sources for open source libraries:
- Available C++ Libraries FAQ
- The Apache XML Project
- The Free Software Foundation software page
- Walnut Creek CDROM Free Software Archive
- SourceForge
- Freshmeat
- Gnome
On the other hand, when you write new code, it is definitely worth while to snip out little bits and make sure that they will compile and run on their own, or depend only on other readily available libraries. That way you can create a library yourself.
The book More C++ Gems has some articles on Large-Scale Software Architecture that discusses reducing cyclic dependencies in software projects, in part so that the projects can be rebuilt faster but also so that they can be unit tested in smaller parts and the parts can be extracted out and reused in other programs - although the claim is often made that object-oriented software is more reusable, this claim is baseless unless good engineering practices are observed.