Tuesday, July 7, 2015

PythonBoostrap to the rescue

It's been a long time since anything has happened over here - my real identity has been taking all the credit - but for my latest endeavor, I decided to revive the BreakingBytes moniker, and I am super excited to announce:

Python Bootstrap


Python Bootstrap, or just Python Boots, is for folks just like me ...

  • who work in a Windows corporate environment,
  • who do not have administrative access to their computers,
  • who just want to use Python-2.7

Python Boots just works. Just unzip it and double click python.exe and you're ready to go. Add it to your PATH and you can use pip to install packages and idle as your basic editor.


There just isn't an open source version of Python-2.7 for Windows that you can just unzip and use. There are a few solution, but they are either closed source or depend on mingw-w64 or other non-standard Python toolsets. Python Boots is build with official Python.org source, using their own build batch scripts on AppVeyor from my cpython fork on BitBucket. Go ahead, send me a PR and make it even better.


As I said, I use AppVeyor which has Visual Studio 2008 C++ compilers in the Windows SDK 7.0, the exact same toolset used to build official Python-2.7. The real issue is redistributing the Microsoft Visual C++ Common Runtime or msvcr90.dll that is used by Python. The official version uses merge modules packaged with the MSI that require administrative rights. The irony is that most Windows 7 computers will already have these redistributables installed. Another method is to have the user install the redistributables, either by downloading and installing them from Microsoft manually or by using ClickOnce. The method used by Python Boots is to install the redistributatble side-by-side privately. This just works, because Windows will always check WinSxS first for newer versions and if there are updates to the redistributables they will automatically get installed there.


Python Boots will not register itself in the Windows registry. So, you can wipe the Python Boots folder at your leisure. But packages that use bdist_wininst won't find your installed Python so you'll have to use pip. Oh well.

Monday, August 12, 2013

SifterClient by Stephen Beitzel

You may not have known that I abandoned SifterReader over a year. Recently, however, Stephen Beitzel as shown interest in reviving this project, and has developed a new Android app for the Sifter API called SifterClient that is based on my old app. It's available at the Google Play Store, and he is hosting it at Github. Download it now to keep track of your Sifter issues from your Android device.
The old
The new

Monday, March 25, 2013

Not much going on here ...

So stroll over to poquito picante for some idiotic ideas, extraneous expostulations and geeky goodness. Most of the post are about Android, Linux, Python and computing in general, but there are some ridiculous rants as well. But go see for yourself. Hope to see you there.

Thursday, May 3, 2012


Just released SifterReader version 1.8.1 which fixes a very annoying bug that I evidently did not test, and which may have deterred new users. The bug caused the "Oops" screen to show a stack trace of a JSONException, filters could not be found. This was because the file that stores the Sifter filters wasn't saved yet.

So I fixed that, and now instead of that annoying screen, after logging in, first time users will see a "loading" spinner and eventually their issues, if they long-press their project and select issues. I am so sorry!

Friday, March 30, 2012

TurtleSift for 64-bit Platforms

TurtleSift can now run on 64-bit platforms. Look for the `x64` tag in either the bitbucket downloads or the Github tags. Of course the 32-bit version is also available. Also look at how to cheat VS2010 C# Express to target any platform.

Monday, February 27, 2012

By the numbers

SifterAPI recently added search by number. Therefore you can also search by number in SifterReader. Sifter also made a ton of updates to their superb issue tracking service, try it out.
Fork me on GitHub