Blog Posts

Cartesian Tree-Product posted on May 02, 2013
I have to admit that my day-to-day life involves very little algorithmic problems, but here and there I get a chance to think. In this post, I'd like to discuss...
A Survey of Construct 3 posted on January 07, 2013
I'm working on Construct 3 again and I'm exploring lots of new ideas. I wanted to share these ideas at this early stage to get feedback on them from users,...
New Experiences posted on December 15, 2012
Okay, I've been slacking off and I feel I've got some explaining to do... Allow me to start by admitting that I lied. If you remember, I said I wanted...
Loads of Plumbum posted on October 26, 2012
It's kind of funny how things turn out. I haven't done any work on Plumbum almost since it was released, back in May, and all of the sudden everything's happening...
Plumbum Hits v1.0 posted on October 06, 2012
After 5 months in the oven, I've finally released Plumbum v1.0, which brings forth a host of bug-fixes, improvements and new features. If you're new to Plumbum, please refer to...
Hypertext: In-Python Haml posted on October 03, 2012
TL;DR: Just show me the code I recently got back to web development for some venture I'm working on, which reminded me just how lousy the state of the art...
I, for one, welcome our Singularity overlord posted on September 22, 2012
I'm finding myself pondering quite a lot lately over the upcoming Singularity (in its Kurzweilesque sense). I think I've first heard of the concept two or three years ago, at...
New Beginnings posted on September 01, 2012
This is a time of change in my life. September marks the last month of me being a student at Tel Aviv University, a position I've greatly enjoyed (and hated)...
Splitbrain Python posted on August 14, 2012
I was working together with a colleague on a complex distributed test-automation solution on top of RPyC, and we looked for a way to make our existing codebase RPyC-friendly (without...
ReHelloWorld posted on August 06, 2012
Tada! The new design is here. The previous one was based on some Drupal theme I once used (before moving to github pages) that I tried to mimic when I...
Javaism, Exceptions, and Logging: Part 2 posted on July 09, 2012
Considering the reactions to the previous post in this series, my intent was obviously misunderstood. Please allow me to clarify that I was not attacking Java or Python: Java is...
Javaism, Exceptions, and Logging: Part 1 posted on July 03, 2012
I'm working nowadays on refactoring a large Python codebase at my workplace, and I wanted to share some of my insights over two some aspects of large-scale projects: exceptions, logging,...
RPCs, Life and All posted on June 25, 2012
A colleague of mine, Gavrie Philipson, has written an interesting blog post titled Why I Don't Like RPC, in which he explains that transparent/seamless RPCs (a la RPyC) make debugging...
Reed-Solomon Codec posted on June 08, 2012
Some Background I'm working on an image processing project for the university, whose purpose is to embed (an extract) a print-scan resilient watermark into an image. This project has (sadly)...
Some Notes on RPyC 3.2.x posted on June 06, 2012
As I said in the previous blog post, I hoped for v3.2.2 to be the last release of the 3.2 line... Naturally, I was wrong :) Turns out the fix...
RPyC 3.2.2 Released posted on June 01, 2012
This is a maintenance release, fixing some issues concerning introspection, ForkingServer and signals, IronPython and signals, and SSH on Windows. It also introduces optional logging of exceptions that occur over...
The Future of Construct posted on May 16, 2012
It's been a long while since I've put time into Construct. I gave up on it somewhere in 2007, right after the release of v2.0... I think I just got...
Introducing Plumbum - Shell Combinators posted on May 12, 2012
It's been a while since I last blogged... sorry! Had a midterm exam, a seminar project to deliver (an O(n^3) parser for Tree Insertion Grammar), the routine family festivities of...
Solving Systems of Linear Equations posted on March 25, 2012
Yet another university-related post, but I really enjoyed it so I thought I'd share: for a GUI- workshop I'm taking, we are given GUI-layout constraints as a system of linear...
Easy Syntax for Representing Trees posted on March 07, 2012
I'm working on a parser for Tree Adjoining Grammar (TAG) for this seminar I'm taking. TAG is an extension of context-free grammar (CFG) that's more powerful while still being polynomially-parsable....
RPyC 3.2.1 Released posted on March 04, 2012
This is a maintenance release, fixing some minor bugs and resolving some issues with Python 3 compatibility. More on the change log. Python 2.x: it's advisable to upgrade to this...
Toying with Context Managers posted on February 27, 2012
As I promised in the code-generation using context managers post, I wanted to review some more, rather surprising, examples where context managers prove handy. So we all know we can...
Wizard Dialog Toolkit posted on February 11, 2012
Following my Deducible UI post, and following some of the criticism it had received, I'd like to share something I've been working on (read: experimenting with) at my work place....
Just Got Me These posted on February 09, 2012
Hurrah! I just got me these: After the CS secretariat refused to let take math courses as electives (thus forcing me into taking boring stuff like SQL), I think Dover...
Code Generation using Context Managers posted on January 31, 2012
When I was working on Agnos, a cross-language RPC framework, I had a lot of code-generation to do in a variety of languages (Python, Java, C#, and C++). At the...
Deducible UI posted on January 27, 2012
A Brief History I like automating things. I don't like having to reiterate myself: my dream is to always be able to add only the necessary amount of information in...
Regarding Infix Operators posted on January 25, 2012
I got some reactions to the Infix Operators post, and wanted to point out some things. First of all, I'm not the one who came up with it -- it's...
All Systems are Go posted on January 23, 2012
At last, I finished migrating the old drupal site to github pages. Everything is now fully revisioned and statically-generated (using Disqus for comments). Jekyll is so cool! I wrote all...
Infix Operators in Python posted on January 22, 2012
As you may already know, there are 3 kinds of operators calling-notations: prefix (+ 3 5), infix (3 + 5), and postfix (3 5 +). Prefix (as well as postfix)...
RPyC Moves to a New Site posted on August 29, 2011
RPyC is in the process of migrating from http://rpyc.wikidot.com to it's new (and hopefully final) location at http://rpyc.sourceforge.net. Wikidot had served us well, and was easy to maintain, but they...
Learning Me a Haskell posted on August 17, 2011
Phew! Finally the semester's over (just submitted my last project), and it's time to clean up my ever-so-long backlog. Here goes nothing: I'll start by posting something here, after this...
Hooking Imports for Fun and Profit posted on June 17, 2011
I really love Python... it's so hackable that it just calls for hacking, inspiring your imagination to find ways to stretch its boundaries. This time I decided to investigate into...
Python is Messy posted on May 07, 2011
A couple of days ago, Rudiger, a user of RPyC found a rather surprising bug, that in turn revealed just how gruesome python's inner workings are. Rudiger was working with...