Python Programming, news on the Voidspace Python Projects and all things techie.
SlippedStream Improved - Free TV on Your PC
SlippedStream now has close to 300 users, and it just got better.
We've added lots more channels :
- New live channels like NBC, FOX and lots more
For a full list of all the content currently showing in SlippedStream, browse over to :
So what is SlippedStream ?
Everyone knows that there are loads of free streaming television channels on the internet, live channels, films cartoons, television series and lots more. If you've ever tried looking for them, they turn out to be easier said than found.
Pages of dead links, or links that go to pages that link back to the pages you've just come from. But it is out there. There are hundreds of live channels, TV series, cartoons, manga and lots more: if you know where to look. Unfortunately it's a moving target. Streaming sites come and go all the time. It's enough to make your head spin.
Luckily you can give your poor head a rest and settle back to enjoy the entertainment. Someone has gone to the trouble of hunting down all the real sources of free movies and television and package it in an application called SlippedStream. The list is maintained, so new channels are added regularly and any dead links removed.
SlippedStream is available for a one off payment of £4.99 (less than $10). Once purchased, SlippedStream is yours to enjoy for as long as the internet keeps rolling.
Very Strong Typing for Python
I recently stumbled across a new design pattern that can provide very strong typing (type safety) for almost any language .
Below is my implementation for Python.
# this function, I will find you and kill you
Anyone got a name for this new design pattern ? How about Strongly Enforced Typing ?
|||I'll provide a link when I find it again, it was inspired by Eiffel "design by contract".|
Hot Programming Languages
The new TIOBE programming language community index is out :
Python continues its climb and is now in position seven. Not bad. PHP is now only three times as popular.
What is weird is that C# has moved down. C# is actually quite a nice language, for a curly braces language, and it is odd that it isn't gaining users from C++. I guess not everyone is in a rush to embrace the .NET framework, which is also odd given that Java rules the roost in position one.
The heroes of the day are Ruby, which is up fourteen places (no surprise, but still less than a third of the popularity of Python) and D, also up fourteen places (more of a surprise).
There is an interesting module for writing Python extensions in D : PyD. (Clever name - .pyd is the file extension for compiled modules on Windows.)
D claims to be what C++ could have been, and PyD looks like a lot less of a pain to write fast, portable, natively compiled extensions with than C.
Perl seems to be languishing in the index, probably due partly to the rise in popularity of alternative dynamic languages (PHP is now the 'de-facto' web language and Python is catching up for sys-admin tasks) and partly because of the slow development of Perl 6. Larry Wall's State of the Onion 10 is an interesting (fun) read by the way.
PHP 6 also seems to have problems as the (one of ? ) lead developers Jani Taskinen has recently quit. His official goodbye is here, but in a bizarre twist the real reason is allegedly in this IRC log .
One of the best comments on slashdot was :
Wow, quite a resume there. He will be difficult to replace. For that matter, he will be difficult to ereg_replace, eregi_replace, mb_ereg_replace, mb_eregi_replace, preg_replace, str_replace, or str_ireplace.
More interesting on PHP, is this article bewailing that Python is about to turn PHP into a 'legacy language'.
Also interesting is that the following two 'very approximate' metrics seem to show interest in Python, php, Ruby and Perl roughly converging over time :
The graphs generated by Indeed.com Job Trends show a different story, with these four languages holding basically stable positions over the last year.
|||As you can imagine this state of affairs has stirred up quite some debate. I can't discover whether Jani was the lead developer, but he is certainly one of the few developers in attendance at the PHP November 2005 Developer Meeting.|
|||This response would seem to indicate that unfortunately the IRC transcript isn't fake.|
Movable Python for Python 2.5 (Part II)
When I uploaded Movable Python for Python 2.5, I uploaded a demo version by mistake.
That is now corrected and a new Mega-Pack is also uploaded. My apologies.
You can obtain these from the Movable Python Tradebit Pages.
Included in the new Mega-Pack is an updated version of Movable Python.NET. This one will work with relative paths to interpreters. This new version is also available separately for those who have access to the Mega-Pack.
The Python 2.5 distribution now includes pywin32 build 210. Another update of Movable Python is due shortly, hopefully with Pythonwin compatibility fixes and documentation updates. The other distributions will be updated then.
The last of the good news is that I have also created a new demo version, this one is built with Movable Python 2.0.0 Beta 1 :
The bad news is that promised price increase for the Python 2.5 distribution has happened. It now costs £4.99 which is less than ten dollars .
The discount is still available if you have already purchased a distribution of Movable Python, but want to upgrade to the Mega-Pack. Privately email me at email@example.com if you want details.
|||The Mega-Pack now costs £12.99, around twenty-five dollars.|
Mac OS X on VMWare
So far so good, and surprisingly easy. The question is, if I buy a copy of Mac OS X, is this legal  and sustainable ? The answer to the first part of the question is probably: 'legal enough'.
What is more worrying is that using Mac OS X in this way requires a patched version of Mac OS. For starters it's running on an AMD box instead of an intel box. This means that any future OS upgrades or patches are likely to stop it from working. sigh
For the record :
- I used the patched JaS 10.4.6 version of Mac OS X
- I used Daemon-tools to mount the DVD image
- I had to follow the extra steps in both comment 1 and comment 2
Running under VMWare (and with only 512mb memory), it runs a little slowly; but not too badly. I wonder what it would be like to develop with
|||With an AMD twin core processor.|
|||In the UK copyright breach isn't 'illegal' anyway, but unlawful. That means that for personal use I can't be prosecuted (it's not criminal), merely sued. If I've actually paid for a copy then it isn't breach of copyright, it's breach of license terms. The worst legal consequence that can ensue is revoking of the license.|
Pythonwin and Movable Python
There is a problem with the "Run Script" dialog in Pythonwin, when run with Movable Python.
I actually get the same problem on a couple of machines using normal Python, but it looks like not many other people have the same problem. It appears that a spurious event is being raised, causing the 'browse' button to be fired repeatedly.
A temporary solution is to comment out the following line in pythonwin.pywin.framework.scriptutils.DlgRunScript  :
There is a similar issue with GREP. I'll report a similar fix, if one exists.
I'll also be working on a more permanent fix.
|||Line 37 in scriptutils.py, in the directory lib/pythonwin/pywin/framework.|
Calender Template for Firedrop
If you use Firedrop2 the Blog Client, you may be interested in a new template which provides a calendar for your archives.
This will only work if you archive your entries monthly, but is still pretty cool.
You can see Adalbert's announcement regarding the new template at :
He also has some patches for Firedrop2, and a prebuilt RPM.
This work is licensed under a Creative Commons Attribution-Share Alike 2.0 License.