Wednesday, August 25th, 2010
Some readers may remember that I spent some time working on a DateTime structure for GLib last year. After much refinement by others better than myself, it has been included in GLib master. Much thanks to Thiago Sousa Santos, Emmanuele Bassi, and the countless reviewers.
You can find some quick examples here.
GDateTime is both [...]
As suggested by Benjamin, I switched UberGraph to use a single GdkPixmap instead of two. Previously I copied the content back and forth between Pixmaps as I added the new second’s worth of data. That wasted memory in X as well as being unnecessary. Now it uses a single GdkPixmap as a [...]
I recently had the need for a realtime graph and thought it would be a fun hack. I spent some time thinking about a few ways to optimize the drawing to reduce both the client and server side overhead. Having a way to visualize data without a significant effect on system performance is [...]
Friday, December 25th, 2009
I recently read a paper on Hazard Pointers[2] and thought I would share what I learned and some general information on lock-free/wait-free programming. I hope it is useful to others getting started.
I’m not very clever, so keep in mind this is mostly regurgitating knowledge I’ve found in various places. If you find anything [...]
Monday, September 14th, 2009
I am happy to see Facebook release Tornado, their Python based web-server that was developed to run the FriendFeed service. They have done their best to optimize the stack within the Python process. However, I’m inclined to believe that it is more of the same problem from which many HTTP toolkits suffer.
Since Tornado [...]
Thursday, September 3rd, 2009
Is there anything out there to help connect newer programmers with experienced programmers in GNOME or Linux in general? A big-brother/big-sister type thing. It’s quite rewarding to both those learning and those with experience to help each other when they have common goals and passions. It allows for broader dissemination of information, [...]
Friday, August 28th, 2009
The python code completion engine in MonoDevelop is now much faster. It’s was a simple fix and one that I think gets overlooked too often in these “dynamic” days.
Thankfully, python makes it easy to index information based on a fully-qualified name. Everything can basically be represented in package format such as “xml.etree.ElementTree.ElementTree.isinstance”. [...]
Wednesday, August 26th, 2009
I put together a quick walk-through of how to setup the Python add-in for real Python development. You will need a recent check-out of MonoDevelop trunk.
Tuesday, August 25th, 2009
I wrote a python add-in for MonoDevelop last year. Unfortunately, I have a hard time sticking to a single project and therefore it suffered a bit. However, we are getting ready for feature freeze for MonoDevelop 2.2 and so I kicked my ars in gear to fix a few things.
Namely, the code completion [...]
Wednesday, May 27th, 2009
Plenty of desktop applications have extension frameworks so that users may extend functionality for their own purposes. However, many seem to invent their own plug-in system or use a framework tied to the applications source code language. For example, there is pkg_resources for python and Mono.Addins for mono. Both are great tools [...]