-
Recent Posts
Categories
Archives
- August 2016
- June 2016
- April 2016
- February 2016
- October 2015
- May 2015
- January 2015
- November 2014
- October 2014
- September 2014
- August 2014
- July 2014
- April 2014
- March 2014
- February 2014
- December 2013
- September 2013
- August 2013
- July 2013
- June 2013
- May 2013
- April 2013
- March 2013
- February 2013
- January 2013
- August 2012
- June 2012
- April 2012
- January 2012
- December 2011
- November 2011
- October 2011
- August 2011
- July 2011
- December 2010
- November 2010
- September 2010
- July 2010
- June 2010
- May 2010
- March 2010
- December 2009
- November 2009
- October 2009
- August 2009
- July 2009
- June 2009
- May 2009
- August 2008
- June 2008
- May 2008
- March 2008
- February 2008
- December 2007
- November 2007
- October 2007
- August 2007
- June 2007
- May 2007
- March 2007
- November 2006
- August 2006
- July 2006
- February 2006
- October 2005
- September 2005
- July 2005
- June 2005
- May 2005
- April 2005
- March 2005
- December 2004
- June 2004
- March 2004
- February 2004
- December 2003
- October 2003
- June 2003
Meta
Category Archives: C/C++
Less is more, and is not always straightforward
Rob Pike just wrote an article/talk that is the best background on the origins of Go yet. It surprises me how much his considerations match my world view pre-Go, and in a sense give me a fulfilling explanation about why … Continue reading
Posted in Architecture, Article, C/C++, Design, Go, Python
5 Comments
Ensemble, Go, and MongoDB at Canonical
About 1 year after development started in Ensemble, today the stars finally aligned just the right way (review queue mostly empty, no other pressing needs, etc) for me to start writing the specification about the repository system we’ve been jointly … Continue reading
Posted in Architecture, C/C++, Cloud, Design, Go, PostgreSQL, Project, Python
7 Comments
Efficient algorithm for expanding circular buffers
Circular buffers are based on an algorithm well known by any developer who’s got past the “Hello world!” days. They offer a number of key characteristics with wide applicability such as constant and efficient memory use, efficient FIFO semantics, etc. … Continue reading
Integrating Go with C: the ZooKeeper binding experience
ZooKeeper is a clever generic coordination server for distributed systems, and is one of the core softwares which facilitate the development of Ensemble (project for automagic IaaS deployments which we push at Canonical), so it was a natural choice to … Continue reading
Posted in Architecture, Article, C/C++, Go, Project, Snippet
3 Comments
Introducing The Hacking Sandbox
When I started programming in Python long ago, one of the features which really hooked me up was the quality interactive interpreter offered with the language implementation. It was (and still is) a fantastic way to experiment with syntax, semantics, … Continue reading
Changing people or changing rules
In my previous post I made an open statement which I’d like to clarify a bit further: (…) when the rules don’t work for people, the rules should be changed, not the people. This leaves a lot of room for … Continue reading
Posted in C/C++, Java, Python
Leave a comment
Class member access control: enforcement vs. convention
For a long time I’ve been an advocate of Python’s notion of controlling access to private and protected members (attributes, methods, etc) with conventions, by simply naming them like “_name”, with an initial underline. Even though Python does support the … Continue reading
Posted in C/C++, Java, Python
24 Comments
Comparing package versions in PostgreSQL
This weekend I’ve played a bit with PostgreSQL extensions written in C. A while ago I wrote a Python C extension for Smart to compare Debian package versions. Now I was trying to do something similar inside PostgreSQL, and thus … Continue reading
Posted in C/C++, PostgreSQL, Project, Python
1 Comment
Smart Package Manager is out!
After 6 months of fun working on the project in silence, Smart Package Manager was finally released. As the README says: The Smart Package Manager project has the ambitious objective of creating smart and portable algorithms for solving adequately the … Continue reading
Posted in C/C++, Project, Python
Leave a comment
Embedding Lua interpreter into RPM
I’ve recently committed into the RPM CVS HEAD the internal support for Lua scripts. Please, notice that this is experimental stuff. Why embedding Lua in RPM? Many scripts execute simple operations which in an internal interpreter require no forking at … Continue reading
Posted in C/C++, Lua, Patch
Leave a comment