David Hilbert While searching for free Kindle books I found Project Gutenberg. Project Gutenberg offers free Kindle books but they also have something better! Would you believe LaTeX source code for some mathematical classics. The best book I've found so far is an English translation of David Hilbert's Foundations of Geometry. Hilbert's Foundations exposed some … Continue reading Open Source Hilbert for the Kindle
Category: J
JOD comes to Linux
For years I have distributed a J Addon called JOD. JOD stands for J Object Dictionary. JOD is a code database for the J programming language. Instead of storing my J programs in text files, like every other programmer in the world, I break them down into the smallest reusable units. In J parlance I … Continue reading JOD comes to Linux
More on that SmugShot Metadata Mess
A few days after posting a J script that fixes EXIF timestamps in SmugShot images SmugMug changed the filename assigned to downloaded SmugShot images. Originally the layout was: SmugMugID_smugshot_SmugShotID.jpg This layout was inconsistent with the way SmugMug normally handles files. Default SmugMug behavior is to leave filenames unchanged. This contrasts with other photo sites, (you … Continue reading More on that SmugShot Metadata Mess
SmugShot Metadata Mess
SmugShot iPhone App Logo While languishing in a series of hospitals and rehab centers recovering from a bad fall I have been amusing myself by taking iPhone pictures and posting them to SmugMug with SmugShot. SmugShot is a nifty little iPhone app that uploads iPhone pictures and videos directly to your SmugMug galleries. SmugShot is … Continue reading SmugShot Metadata Mess
J 7.01 Now Playing in your Browser
Big changes are afoot for J programmers. With the release of J 7.01 JSOFTWARE has taken the risky step of deprecating two well established user IDE’s and replacing them with brand new GTK and Web browser-based interfaces. As we all know new software is not necessarily better software, (remember that risky bit), but in this … Continue reading J 7.01 Now Playing in your Browser
A C# .Net Class for calling J
One of my favorite programming tools is J. In skilled hands J is a spear in a world of bent spoons. In my day job I rarely encounter programming problems that cannot be brutally dispatched with a few dozen lines of J. Most accomplished J programmers laud the elegance and power of the language and … Continue reading A C# .Net Class for calling J
Assigning SmugMug Print Size Keys
I believe that a picture’s aspect ratio, its width divided by its height, should be tuned to its contents. Consequently, I am not a slave to standard aspect ratios and print sizes like the ones shown in the following table. Aspect Ratio Print Sizes (Short/Long) (Inches) --------------- ------------------------ 0.5 4x8, 5x10, 8x16, 10x20 0.7 3.5x5, … Continue reading Assigning SmugMug Print Size Keys
More on SmugMug Duplicates
In my previous post I described a method for eliminating duplicate SmugMug images based on MD5’s. This method does not get all the duplicates. If you uploaded the same image to different galleries, at different times, the SmugMug MD5’s may differ. I don’t know what SmugMug rolls into their MD5 ‘s but I suspect it’s more … Continue reading More on SmugMug Duplicates
SmugMug Duplicate Image Hunting
One of the many things the developers of Thumbsplus got right was a proper normalized database schema. When I first inspected the layout of a Thumbsplus database I knew I was in good hands. In Thumbsplus image files get unique keys and image galleries are simply lists of image keys. Images can appear in any number … Continue reading SmugMug Duplicate Image Hunting
Let’s Hang Congress
As Mark Twain once rudely noted: “It could probably be shown by facts and figures that there is no distinctly native American criminal class except Congress.” Regardless of your political or sexual orientation it’s hard to disagree. The current Congress is the largest collection of brain-dead fuckwits since the previous Congress and no doubt the next … Continue reading Let’s Hang Congress