I’ve removed TransitDB from BlackBerry App World. I didn’t plan for this change, as it was an unforeseen consequence of my recent effort to modernize some internal components of the TransitDB app. The issue is that the BlackBerry’s APK Packager, which converts Android apps into BlackBerry’s required format, doesn’t work if the Android app uses some newer Android features. A fix on BlackBerry’s end is unlikely, and there’s still Amazon Appstore as an alternative for BlackBerry users.
java.util.Calendar operates in ‘lenient’ mode by default.
This means that setting invalid date values will silently yield a reconciled value on retrieval.
The example given in the documentation is that setting January 32 yields February 1.
This is a happy resolution to the previous post about TransitDB being suspended from the Play Store due to a spurious accusation of the app serving as an ‘alternate app store’. It took four days, but I successfully navigated the Google Play bureaucracy after a few stumbles. The whole process has been somewhat of a Kafka-esque nightmare, and shaken my faith in the highly automated nature of the Google Play app validation processes.
I publish TransitDB on the Play Store, Amazon App Store, and BlackBerry App World. This evening, TransitDB was unexpectedly suspended from the Play Store. The following story all happened within a span of about 3 hours.
I found myself needing a quick-and-dirty way to serve some files over HTTPS while working on a project. The simplest way to do so in a pure-Python way is described in this post from 2011. However, I’m on Windows and Python 3.5, and those instructions were written with Python 2 and Linux in mind. Naturally, things didn’t quite work out, and I ended up using IIS with a reverse proxy config.
TransLink recently changed their Next Bus SMS service to require that users include route numbers in addition to the stop code. For instance, where previously you could simply text ‘50913’ to 33333, you now must text ‘50913 99’. If the stop is served by multiple routes, you can include up to two route numbers in your SMS. This got me wondering: how many bus stops are served by more than one route?
At the beginning of the month, 24 Hours published Surrey bus exchange blocking SFU expansion, an article about how SFU Surrey’s getting a new 5-storey building, and what that means for the Surrey Central bus exchange. I keep an eye on what the City of Surrey’s planning for Surrey City Centre and noticed some errors, so I submitted a correction using their report an error link.
pytz is a Python library that provides the world timezone database. pytz tracks the IANA Time Zone Database, though its version numbers don’t exactly match. For instance, pytz 2016.6.1 corresponds to the 2016f IANA Time Zone Database release. How does this work?
TransLink offers secure bicycle parking at select SkyTrain stations. These are well-lit and high-visibility bike parkade rooms located near a station entrance. Access to these bike parkades requires advance registration in order to obtain a keycard to get inside. Once inside, the bike racks are first-come-first-serve, and you need to bring your own lock.
In Python, you can re-raise an exception caught in an
except block just by saying
However, there can be unexpected behaviour when working with nested try/excepts.
Consider the following code:
Setting your router’s Wi-Fi to be exclusively 802.11n greenfield can make your wireless ‘smart’ devices stop working in mysterious ways, even if they claim to support 802.11b/g/n. Under this scenario, the device may be able to see the 802.11n-exclusive AP, but can never connect to it, or claims to be connected but never gets a valid IP.