Please enter your username below and press the send button.A password reset link will be sent to you.
If you are unable to access the email address originally associated with your Delicious account, we recommend creating a new account.
This link recently saved by rtomayko on November 26, 2010
This link recently saved by rtomayko on November 24, 2010
Pretty excited about this:
> libgit2 is a portable, pure C implementation of the Git core methods provided as a re-entrant linkable library with a solid API, allowing you to write native speed custom Git applications in any language with bindings.
Ruby and Python bindings are already coming along nicely.
This link recently saved by rtomayko on October 29, 2010
This link recently saved by rtomayko on September 01, 2010
I've been working with [kneath](http://twitter.com/kneath) on this pretty much since the day we started at GitHub almost a year ago. Not full time but whenever we could steal time away from other projects. We're both stoked to have finally shipped it.
I wrapped the original blog post draft with this sentence:
> Pull requests elevate the collaborative aspects of development to creative works in their own right. We can't wait to see where you take them!
We ended up striking it -- a little too floaty for a product/feature announcement. I believe every word of it, though.
This link recently saved by rtomayko on July 31, 2010
This link recently saved by rtomayko on July 19, 2010
This link recently saved by rtomayko on July 18, 2010
A gentle introduction to the world of UNIX IPC. Covers fork, signals, pipes, FIFOs, file locking, POSIX message queues, semaphores, shared memory segments, memory mapped files, UNIX sockets. Not a ton of depth, but that's okay - you can read all of it in about 15 minutes and have a good feel for the pros and cons of all the different types of IPC.
Check out [Beej's Guide to Network Programming](http://beej.us/guide/bgnet/output/html/singlepage/bgnet.html) and [Beej's Quick Guide to GDB](http://beej.us/guide/bggdb/) too.
This link recently saved by rtomayko on July 13, 2010
That argument debunked for most real world applications.
I liked the way different types of boundedness were presented:
> * I/O-bound. Completing a unit of work earlier just means waiting longer for the next block/message.
> * Memory-bound. Completing a unit of work earlier just means more time spent thrashing the virtual-memory system.
> * Synchronization-bound (i.e. non-parallel). Completing a unit of work earlier just means waiting longer for another thread to release a lock or signal an event – and for the subsequent context switch.
> * Algorithm-bound. There’s plenty of other work to do, and the program can get to it immediately, but it’s wasted work because a better algorithm would have avoided it altogether.
As much as I agree with the thrust of the article, C programs really *are* faster in real life, but I think it's because people who program in C are more likely to be familiar with common performance problems and tradeoffs. It's hard not to be at that level.
This link recently saved by rtomayko on July 10, 2010
Interesting concept. Layer the routing guts found in modern web frameworks over Linux's FUSE userland filesystem stuff and you get a nice model for developing custom filesystems.
The small example (~30 LOC) shows how to build a simple GitHub filesystem, which gives you this:
opus:~ broder$ ./githubfs /mnt/githubfs
opus:~ broder$ ls /mnt/githubfs
opus:~ broder$ ls /mnt/githubfs/ebroder
anygit githubfs pyhesiodfs python-simplestar
auto-aklog ibtsocs python-github2 python-zephyr
bluechips libhesiod python-hesiod
debmarshal ponyexpress python-moira
debothena pyafs python-routefs
opus:~ broder$ ls /mnt/githubfs
This link recently saved by rtomayko on June 30, 2010
Python version of **Docco**, the quick-and-dirty, hundred-line-long, literate-programming-style documentation generator:
888 d88P .d88b. .d8888b .d8888b .d88b.
8888888P" d88""88b d88P" d88P" d88""88b
888 888 888 888 888 888 888
888 Y88..88P Y88b. Y88b. Y88..88P
888 "Y88P" "Y8888P "Y8888P "Y88P"
All together, we have [Docco](http://github.com/jashkenas/docco/), [Rocco](http://github.com/rtomayko/rocco), [shocco](http://github.com/rtomayko/shocco), and now Pocco. Jeremy observes, "It's a whole little adorable family of midget programs now..."