In Development
Devlog Archives 2008-2010
Devlog Archives 2002-2007
Tutorials

Devlog

Permanent Eraser 2.6.2 and Gatekeeper

4th January 2013 | Permanent Eraser

Permanent Eraser 2.6.2 came out at the end of December 2013, fixing some issues related to Gatekeeper and the latest version of OS X — Mavericks. 2013 almost became the first year since the inception of Permanent Eraser that the app was not updated at least once. Since 2003, Permanent Eraser has received at least one or two yearly updates, sometimes even more, depending upon the development schedule. Looking forward to 2014, work on Permanent Eraser 2.7 will begin.

What's new in Permanent Eraser 2.6.2

  • Updated plug-in for Mavericks - On some Mavericks systems, the plug-in was not working. The plug-in has been updated and tested on all versions of OS X from 10.6 through 10.9.
  • Fixed the code signing to work properly with Gatekeeper.
  • Tested and verified for OS X 10.9 Mavericks.

One of the biggest fixes in Permanent Eraser 2.6.2 was to properly code sign the app so it would be identified by Gatekeeper as an app by a trusted source. The article Code Signing and Mavericks by Craig Hockenberry helped reveal some trouble areas to resolve. Even though Permanent Eraser 2.6.1 had been code signed, it was not validating properly with Gatekeeper. If I verified the code signature of the app, I saw the following results:

codesign --verify --verbose=4 Permanent\ Eraser\ 2.6.1.app
Permanent Eraser 2.6.1.app: valid on disk
Permanent Eraser 2.6.1.app: satisfies its Designated Requirement

Looks good so far. For the interest of it, I then tried verifying an earlier version of Permanent Eraser which had not been code signed.

codesign --verify --verbose=4 Permanent\ Eraser\ 2.6.0.app
Permanent Eraser 2.6.0.app: code object is not signed at all

Once again, this is returning the expected results. However, if I used the new spctl utility to verify Permanent Eraser in OS X 10.8+, I encountered a problem.

spctl --verbose=4 --assess --type execute Permanent\ Eraser\ 2.6.1.app
Permanent Eraser 2.6.1.app: rejected

spctl, which manages the system policy security, is a command line utility which first appeared in Mac OS X 10.7.3, but the security system known as Gatekeeper came to prominence with OS X 10.8 "Mountain Lion".

The solution was not to use the Mac Developer signing idenity to sign the app (which is used for signing an app for the Mac App Store), but to use the Developer ID Application one, instead. Now when I perform the appropriate checks in OS X Mavericks, everything is looking good.

codesign --verify --verbose=4 Permanent\ Eraser.app/
Permanent Eraser.app/: valid on disk
Permanent Eraser.app/: satisfies its Designated Requirement

spctl --verbose=4 --assess --type execute Permanent\ Eraser.app
../Permanent Eraser.app: accepted
source=Developer ID

Oddly enough, after signing this way in Snow Leopard, trying to verify the app returned this result:

codesign --verify --verbose=4 Permanent\ Eraser.app
Permanent Eraser.app: valid on disk
Permanent Eraser.app: does not satisfy its designated Requirement

However, since the other checks appear to be in proper working order on post-Snow Leopard systems, this looks to be the proper route to properly code sign the app and let it verify properly with Gatekeeper.

References:

git-branch-delete : Deleting local and remote git branches in one fell swoop

25th December 2013 | Tutorial

At my work, I build up a large collection of branches in my git repository over time. Eventually the large number of branches gets overwhelming and requires some maintenance to make the project more manageable (AKA less cluttered). Cleaning up the local and remote branches tends to follow this two step process:

  1. Delete local branch: git branch -d name_of_branch
  2. Delete remote branch: git push origin :name_of_branch

After doing some research, I did not find any quick and dirty way to delete both the local and remote branches with one simple command in git on a Mac. However, I did eventually discover a Ruby script named git-branch-delete that someone1 had written which does nicely perform this task.

Installation for OS X

  1. Download the file git-branch-delete
  2. Extract the file git-branch-delete from the compressed tarball
  3. Copy the file git-branch-delete to /usr/local/bin
  4. Set the proper permissions: chmod 755 /usr/local/bin/git-branch-delete

Usage

Once this has been set up, open up a new Terminal session and delete old git branches from the command line using the following command: git branch-delete <branch-name>

Reference

Edenwaith git-branch-delete Gist : https://gist.github.com/edenwaith/8118506

Footnote

1) Original source : https://github.com/scottwb/dotfiles/blob/master/bin/git-branch-delete

Compiling Git for PowerPC Macs

3rd August 2013 | Tutorial

This year I've begun using the version control system Git for managing source control. I've been putting up some of my older projects on GitHub, which were built as Universal Binaries on Xcode 3 (or earlier). Since I've been working on a long-due update for EdenGraph, I began looking around for a Git client for older PowerPC Macs. The results were disappointing, but this may not be too surprising since Git is a relatively new tool and PowerPC Macs were fazed out in 2006.

However, I did come across a blog post on how to compile Git from source for a PPC Leopard machine, but the instructions, while close, didn't work entirely in my tests. When trying to build the source code, it resulted in the following error:

	$:git-master admin$ make prefix=/usr/local
	GIT_VERSION = 1.8.4-rc0
		* new build flags
		CC credential-store.o
	In file included from cache.h:8,
					 from credential-store.c:1:
	gettext.h:17:22: error: libintl.h: No such file or directory
	In file included from cache.h:8,
					 from credential-store.c:1:
	gettext.h: In function ‘_’:
	gettext.h:54: warning: implicit declaration of function ‘gettext’
	gettext.h:54: warning: incompatible implicit declaration of built-in function ‘gettext’
	gettext.h: In function ‘Q_’:
	gettext.h:62: warning: implicit declaration of function ‘ngettext’
	gettext.h:62: warning: return makes pointer from integer without a cast
	make: *** [credential-store.o] Error 1
	

I found that I needed to create a configuration file first, configure the project, and then build it. These instructions installed git 1.8.2 on a PowerBook G4 running Mac OS X 10.5.8.

  1. Download the latest Git source from http://git-scm.com/downloads
  2. Create configuration file: make configure
  3. ./configure --disable-nls
  4. make prefix=/usr/local
  5. sudo make prefix=/usr/local install

Once Git has been installed, go to the project folder (via the Terminal) and create an empty Git repository with the git init command and then download a project with the command git clone git://path/to/MyProject.git. If you are looking for a GUI-based Git client for PPC Macs, check out GitX.

EdenMath 1.2

31st May 2013 | EdenMath

After a nine year long hiatus, EdenMath has been polished and updated, ready to run on the latest versions of OS X.

New Features

  • Universal Binary - Finally. The last application in the current stable of Edenwaith products to be updated as a Universal Binary so it can run on older PowerPC and newer Intel-based Macs.
  • Massive interface update - Further details below about the evolution of the EdenMath interface.
  • Updated application icon - Improved appearance and higher resolutions.
  • Removed the (skimpy) Help files - Served very little purpose. Might return in a future version.
  • Changed the factorial button from n! to x!
  • Added log2 and 2x functionality - Looking back at earlier versions of EdenMath, these are the first new functions to be added since the original release.

Evolution

EdenMath was the first Cocoa-based application I wrote for the Mac. Cracking open the time capsule shows how EdenMath has evolved over the years, from an embarrassingly bad and inconsistent user interface in the first version of the application, to the more refined later versions.

  • Version 1.0.0
    The new candy-like Aqua interface in Mac OS X helped give interfaces a shinier appearance, but that didn't solve the problem of inconsistencies between different styles of buttons and poor layout in the original version of EdenMath.
  • Version 1.0.1
    Fortunately, the original interface was short-lived and the buttons were all changed to a consistent style.
  • Version 1.1.0
    In addition to fixing some nasty bugs, this version saw the first overhaul of the interface, which provided for a much cleaner and consistent look.
  • Version 1.1.1
    Small interface changes were made, swapping out the serif font for a sans serif one. A couple of the buttons with superscripts were also given an upgrade with an improved look.
  • Version 1.2.0
    Nine years after the previous release, EdenMath received another major interface update, rethinking the entire layout and design.

The interface for EdenMath 1.1 was a dramatic improvement over its predecessors', but it still had its flaws. Developing for EdenMath 1.2 allowed for the opportunity to rethink the entire interface. The following screenshots are a couple of experimental interfaces which were designed during the process of constructing EdenMath 1.2.

  • Experiment 1
    The first attempts of redesigning the interface took the implementation from EdenMath 1.1.1 and flipped the position of the buttons. Not exactly earth shattering changes.
  • Experiment 2
    This version extended the display across the entire length of the window and introduced the drop down button for the angle types. In this version, the Off button still exists, which would eventually be removed since it is really not needed.
  • Experiment 3
    While trying out different designs, I experimented with a tall interface, which introduced the 2nd button to toggle some of the buttons. However, I never cared too much for this taller interface and reverted back to a more landscape design.
  • Experiment 4
    This was getting close, but I wasn't 100% happy with the placement of a couple of the buttons.
  • Final
    After shrinking the Equals button and moving a couple of other buttons around and adding the new log2 button, the interface was complete (well, for now...).

Source Code

The source code has always been available, but the source is now even more accessible at its own Github repository.

The Future

The original plan was to update EdenMath with several key features and then lovingly retire the program. However, time was running short and not every feature made it into this version. I am tentatively planning a 1.3 version of EdenMath for the future, which might include the following features:

  • Updated mathematical evaluator to properly respect the order of operations.
  • Localize for other languages.
  • Update and re-add the Help files.
  • Other miscellaneous fixes, improvements, and polish.

2013 : Turning The Corner

1st January 2013 | Edenwaith

2012 was intended as a year for cleaning out the old to make way for the new. Some good progress was made, but not everything has been completed yet, which will continue throughout this year, in addition to updating the active projects.

Here is 2012 at a glance:

  • Permanent Eraser 2.5.3, 2.6.0, and 2.6.1 were released
  • Psychomancer 1.0.7 was finally updated after 10 years (and then retired)
  • EdenList for iOS updated to version 1.1.1
  • Updated 33 RPM and made it free of cost
  • Retired the following projects: PIGE, Psychomancer, Untar

The progress is half-way complete in retiring the older programs. In 2013, GUI Tar, EdenGraph, and EdenMath will each receive at least one more update before being retired. This will leave 33 RPM, Permanent Eraser, and EdenList as the remaining Edenwaith projects.

Aside from the plans for application retirement, preparations are being made for the development of Permanent Eraser 2.7 and EdenList 1.2 for iOS.

33 RPM 1.1.8

9th December 2012 | 33 RPM

Today, the long due update to 33 RPM, version 1.1.8, was released.

Features and updates:

  • 33 RPM is now available as a free product.
  • Tested and verified for OS X Lion and Mountain Lion.
  • Minor UI improvements.
  • Minor bug fixes.

The most important change to 33 RPM in this release is that 33 RPM is now free of cost. Since the development of this project has dropped off precipitously in the past two years, it did not make sense to continue charging for a product which was not being continually updated. If you recently purchased 33 RPM and have not already received a refund, please contact us.

33 RPM 1.1.8 has also been tested and verified for the past two releases of OS X — Lion and Mountain Lion, both which have been quickly released since 33 RPM 1.1.7 was released in September 2010. One nasty, but occasional, bug that was squashed was trying to adjust the time slider would not work in Lion or Mountain Lion. A number of other smaller cosmetic and functional issues have also been made.

Psychomancer 1.0.7

2nd September 2012 | Psychomancer

Yesterday, Psychomancer 1.0.7 was released, which coincided with the ten year anniversary of the release of the Linux version of the previous version -- 1.06. As mentioned earlier this year, a number of older projects are being cleaned up and retired. Psychomancer was one of the earliest Edenwaith products, but it has been largely ignored for the past decade as newer Mac and iOS projects took precedence. However, before retiring Psychomancer in its current incarnation, a little love needed to be shown with one more update. Over the course of the past two months, Psychomancer was updated with 150 new features, improvements, and bug fixes. This represents the largest set of changes to the game since the original incarnation of the game in August 1999.

Before sending off Psychomancer, let's reflect on how things have changed since the last significant update. In 2002, Psychomancer was still being developed under Digital UNIX, the same platform where it was born in 1999. 2002 and 2003 extended the range of supported platforms to Mac OS 8, 9, X, Linux (x86), and Windows 9x - XP. Strangely enough, Windows XP is one which is still relevant in its same incarnation as it was years ago, whereas (Mac) OS X has undergone quite a few transitions since then, the most noteworthy change being the switch from PowerPC to Intel processors.

The first early versions of Psychomancer 1.0.7 had been organized under Project Builder on Macs running Mac OS X 10.1 and 10.2. Since I no longer have any computers running those versions of the Mac OS (however, my trusty PowerMac G4 is still running which supports Mac OS 9, Mac OS X 10.3 and 10.4), I had to convert the old Project Builder file using Xcode 2 before upgrading the project to Xcode 3. One primary goal for this update was to create a Universal Binary for both PowerPC and Intel-based Macs. Unfortunately, Xcode 4 dropped this feature, so Xcode 3 was necessary to be able to generate a Universal Binary. This project was built on a 2003 PowerBook G4, running Mac OS X 10.5.8 and Xcode 3.1.4.

Going through this game with a fresh perspective (since it had been so long since the last update), I found numerous areas for improvement from better descriptions, adding new features, and fixing bugs.

Improvements to each of the classes:

  • Sorcerer: The Sorcerer received the least of the changes, but the Aura and Acid Burn spells were fixed and work much better, which makes the Sorcerer quite effective in battle.
  • Elementalist: The Elementalist finds a skeleton key, which is used to unlock the chest in the Apothecary to find the Elixir spell. Before, the spell scroll was just laying on top of the table. Fire Spear now causes random amounts of damage, instead of a flat 7 LP. Fire Wind's minimum amount of damage has been raised from 10 to 15. The Elementalist also knows the Create BloodStone spell at the beginning of the game.
  • Psychomancer: If playing the "short" version of the game, it is possible to re-enter the temple via the Temple With Statues at the top of the island. Fixed a bad bug where getting in a fight would cause an loop where the opponent would just keep casting Psychic Block over and over again.
  • Spirit Mage: The Spirit Mage received the largest set of additions of the four with the addition of the Astral Shield and Death Wish spells. Like the Elementalist, she uses the skeleton key to open the Apothecary chest to get the scroll.

After playing Diablo 3, I took inspiration in adding more random events to increase the playability of the game by randomizing the potions found in the Treasury and adding additional random puzzle locks.

Upon going through the list of old and new bugs, I kept encountering odd issues with the inventory. Sometimes too many health potions would be added. Sometimes an item wouldn't be added. Other times, random items would just disappear from the inventory. I finally sat down and reworked the inventory system, based off of a linked list. This was an interesting (and somewhat fun) exercise to go back to code written thirteen years ago and figure out what wasn't working properly. All things considered, most of the code in this project was quite clean and organized. However, there were a couple of odd issues with adding and removing items from the linked list, which were finally fixed.

The largest bug I quickly encountered was that drinking potions didn't do anything. What the...?! I was quite surprised that issue hadn't been caught and fixed a long time ago. Fortunately, a quick fix, but an issue that should have never stayed around as long as it had.

And so, now, we bid Psychomancer a fond adieu. While this journey has come to an end, it does not mean that a new one cannot begin. One never knows. Perhaps someday Psychomancer will be converted to work on Z-machine interpreters. Perhaps it will be given a long-promised overhaul and be gain graphics and sound. Considering the popularity of mobile development in 2012, it would not be unthinkable to one day see Psychomancer on a phone or tablet. Or perhaps Psychomancer will end up in some other form entirely. Time will tell...

Permanent Eraser 2.6.0

28th May 2012 | Permanent Eraser

On 19 May 2012, Permanent Eraser 2.6.0 was released. The two most important new features are Solid State Drive (SSD) detection and the new DoE overwrite pattern. If a file is detected to reside on an SSD, the file will only be overwritten once, instead of multiple times, due to wear leveling techniques used by SSDs. The next feature is the addition of the 3-pass DoE pattern to erase files.

In order to keep up with the latest versions of Mac OS X, older versions of the OS are occasionally dropped. Permanent Eraser 2.6 was originally intended to still support Mac OS X 10.4 "Tiger", but the addition of the new DoE overwriting pattern required a custom build of the srm utility, which unexpectedly failed to run on Tiger. However, we'll look further into this issue to determine if support for Tiger can be returned in a future version. For those who are still using Tiger, Permanent Eraser 2.5.3 is still available for download.

Likely due to the pending deadline which requires all new application submissions to begin using entitlements at the beginning of June, it took nearly two weeks for Permanent Eraser 2.6.0 to be reviewed for the Mac App Store, which is at least double the length I've encountered with an app (for either iOS or Mac) to be reviewed. And in the continuing spirit of inconsistent app reviews, PE 2.6 was rejected since the plug-in is installed in the user's ~/Library/Services/ folder, which is also how Permanent Eraser 2.5.3 handled the plug-in, yet that version had been approved. The work around to this problem is to either remove the plug-in or re-architect the application and build the Service directly into the program. This latter point is already planned for a future release of Permanent Eraser, however it will likely not happen until Permanent Eraser 2.7 or later.

Permanent Eraser 2.5.3

13th January 2012 | Permanent Eraser

Today Edenwaith released Permanent Eraser 2.5.3, an important update for the latest version of Mac OS X — Lion. This update focused mostly on fixing incompatibilities with Lion. Since these improvements focused on Lion, a separate version of Permanent Eraser 2.5.3 was not made for the aging Mac OS X 10.3 Panther, since there would have been no added benefit.

What's new in Permanent Eraser 2.5.3:

  • Fixes for Mac OS X 10.7 "Lion":
    • Erase more than one file at a time using the Service plug-in.
    • Restores "empty trash" sound when erasing is complete.
    • Updated Automator actions.
  • Application icon updated for 32x32 size.
  • Automatically updates to the latest plug-in.

2012: It's The End Of The World As We Know It (And I Feel Fine)*

1st January 2012 | Edenwaith

"I've always felt that death is the greatest invention of life. I'm sure that life evolved without death at first and found that without death, life didn't work very well because it didn't make room for the young. It didn't know how the world was fifty years ago. It didn't know how the world was twenty years ago. It saw it as it is today, without any preconceptions, and dreamed how it could be based on that. We're not satisfied based on the accomplishment of the last thirty years. We're dissatisfied because the current state didn't live up to their ideals. Without death there would be very little progress."

Steve Jobs

The preceding quote came from an interview with Steve Jobs in 1995. Ten years later, Steve Jobs would echo the idea of death in the speech he gave at the 2005 Stanford commencement.

The premise of Edenwaith was to develop useful software, often to fill in a gap in the application ecosystem. The radical shift from Mac OS 9 to Mac OS X provided the opportunity for a new breed of application developers to create for this new platform. Apple discarded the previous 17 years of Mac OS development in favor of a UNIX-based OS which would provide the Mac OS foundation for the next 15 to 20 years.

During the early years, the software selection was slim, as established developers scrambled to update their own offerings for Mac OS X. It was during this time that two of Edenwaith's earliest products (EdenMath and EdenGraph) were developed. The calculator provided with the operating system was very simple, and the venerable Graphing Calculator, once a staple third party application on Macs, would not make the transition to Mac OS X for several years. Apple has done an excellent job in not allowing Mac OS to atrophy like it had in the 1990s. Each iteration of the operating system has built upon its predecessor, which filled in many of the gaps and cracks which were visible in the earliest versions of Mac OS X.

Over the past decade at Edenwaith, some ideas have flourished while others have languished. As Mac OS X improved over the years, the need for several of Edenwaith's products came to an end. Rather than let them shrivel on the vine until nothing remains but a dried-out husk, I have decided to retire a number of applications to disrupt the illusion of any life that might be left in these old projects. Some projects will likely not be updated any further, but a couple of projects will see a final update before being put to rest.

  • EdenGraph will be updated to version 1.3 and the source code will be made open.
  • EdenMath will be updated to version 1.2 and the source code will remain open.
  • GUI Tar - The kernel of an idea for GUI Tar began in 2002, even before Untar was started. While this is still a useful application, the number of updates in the past several years has been sporadic. If one needs further archiving needs than what is supplied by Mac OS X, I recommend either The Unarchiver or BetterZip.
  • PIGE will be retired. No further updates are expected at this time.
  • Psychomancer will be updated to version 1.0.7 and then will likely be retired.
  • Untar has already been retired.

2012 will be a time for rebirth, by cleaning out the old to make way for the new. Several years ago the decision was made to focus on a select few applications instead of dividing time and effort amongst a plethora of projects. Our time is finite, so we must decide what do wish to wisely spend our time on, instead of wasting it.

  • 33 RPM - 33 RPM hasn't been updated in at least a year, but there is still plenty of potential. Version 1.1.8 is in the works.
  • EdenList - While the original EdenList for Mac was more of an educational experiment than a serious utility, its iOS companion has proved to be much more useful. However, it may end up meeting a similar fate to that of other Edenwaith products as Apple has continued to improve upon its own offerings. The new Reminders app isn't a direct replacement for what EdenList can do, but it might be just enough to eliminate the need for simple list managers. Still, EdenList for iOS just received a recent update and might see further improvements in 2012.
  • Permanent Eraser - Edenwaith's most mature product, with plenty of new ideas in store for version 2.6, 3.0 and beyond. Unfortunately, there is a snag which could bring a premature end to Permanent Eraser. This particular snag is called the Solid-State Drive (SSD). All evidence I've read about how SSDs write data indicates that the SSD write procedure is different from how traditional mechanical hard drives perform their write operation, where SSDs do not write over the old data in the same location, but write out a new version of the data to a new location on the drive. Still, development will continue as long as the application is useful.

* Apologies to R.E.M.

EdenList 1.1 for iOS

15th December 2011 | EdenList

Today, EdenList 1.1 for iOS was approved and made available on Apple's App Store. The biggest addition to this version is native support for the iPad. Other new features include:

  • Optimized for iPad
  • Tested for iOS 5
  • Show All or Unchecked items
  • New options to quickly delete items in a list
  • Usability improvements and minor bug fixes

This app's release was delayed by a few days, due to an app rejection since screenshots for the iPad had not been uploaded through the iTunes Connect website. Note: Make sure to scroll down to be able to see the contents of the entire screen. Apple has gotten a little too happy-go-lucky with the disappearing scrollbars motif in iOS and Lion, such that they have extended the UI paradigm to the iTunes Connect website, as well. A little frustrating, but everything was set right and the app is now available.

Another notable change is that EdenList for iOS now requires iOS 4.2 or later. Fortunately, the churn rate for phones tends to be every two years, so I would assume that a majority of the active iOS devices today can run iOS 4.2 or later. Some recent posts have confirmed this thought that a large majority of iOS users are keeping up with recent trends, as long as they have supported hardware. Despite the iPhone 3GS now being over two years old, I'm glad to see that it can still run the most current version of iOS (version 5.0.1 as of this writing) and this model of iPhone is still being sold as the low-end option.

Permanent Eraser 2.5.2

11th July 2011 | Permanent Eraser

Today, Permanent Eraser 2.5.2 was released, with a focus on updating the localizations for the new Preferences window introduced in Permanent Eraser 2.5.

  • Updated localizations : The Preferences window has been fully localized for Swedish and Dutch, and partial localizations were made for German, French, Italian, and Traditional Chinese. The Last Checked date in the Update pane now respects the local format. In the Plug-Ins pane, the path to the plug-in also displays the proper localization ("Bibliothek" instead of "Library"). Fixed the issue where the Italian Preferences window could not be opened
  • Updated Services plug-in : It had been reported in one case that trying to use the plug-in Service in Mac OS 10.6 was returning an error. The Service has been recreated to be able to accept files from either Finder or other applications.
  • Erasing single file : Erasing an individual file will display the name of the file being erased in the alert dialog.
  • Help : Added new Acknowledgments page. Fixed the issue where clicking on the Help button in the Preferences window would not open the correct help page.
  • System compatibility : Permanent Eraser was tested for all versions of Mac OS X from Mac OS 10.3 through 10.7. No functional problems were discovered in testing with the Developer Preview versions of Mac OS 10.7 "Lion". Due to the latest set of improvements made in the application, it is becoming more difficult to develop a single version to cover all of these version of Mac OS X. A special version of Permanent Eraser has been developed for Mac OS 10.3 "Panther" users, which can be downloaded here. Support for Panther will likely be dropped in the 2.6 release of Permanent Eraser.

Uli Jon Roth Website

7th June 2011 | Website

Ten years since the release of the last major version, the Uli Jon Roth website has been updated to its fifth incarnation. While not directly related to Edenwaith's software products, this site has been hosted under the Edenwaith domain for several years.

The updated Uli Jon Roth website is the culmination of the past seven years of work to redesign the site for the 21st century. The previous version was designed in June 2001, supporting the web browsers of the day, such as Netscape 4 and IE 5. The Web has evolved over the past decade, and while the old site lived well past its years, the time has finally come to usher in a new version.

This site redesign cleaned out a lot of cobwebs, and uncovered a few hidden treasures along the way. Here's what is new:

  • Brand new site design, built from the ground up
  • 15 new tablatures
  • 6 updated tablatures
  • New articles
  • New photos
  • Updated equipment list

Google Chrome

22nd April 2011 | Google Chrome

The first web browser I used was Netscape 3, then soon picked up Netscape 4. During the height of the 90s Browser Wars, I kept a far distance from the other browser, signified by a blue E. When Mac OS X was first released, the choice of native web browsers was fairly limited. While I impatiently waited for Netscape to port their browser to Mac OS X, I searched for alternatives and ended up settling with OmniWeb 4.

This was the beginning of a long relationship with a very functional and flexible browser. I even purchased two licenses for the product, I liked it that much, which is unusual for a product landscape that contains many capable and free browsers. Sadly, the Omnigroup's attention for OmniWeb has waned over the past several years (so they can spend their time on products which actually make money to keep the business alive). I still use OmniWeb as my Power Browser, but as the Web progresses, and new and existing browsers continue evolving, OmniWeb hasn't been able to keep up with the times. I have been experimenting with other web browsers. Safari 5 finally added support for some extensions, but even the extensions seem somewhat limited. Safari is a great browser, which I've used as my Quick Browser when I just want to get in and out, but I miss the flexibility and power that OmniWeb has offered. I then tried Firefox, which is my favorite browser when using Windows. Due to its cross-platform nature, there are a few things which don't feel "quite right". It's a good browser, and the flexibility is good. However, when I upgraded to Firefox 4, I was finding that the browser locked up once a day (an issue I was not seeing with Firefox 3.6). This was getting very annoying, so I took another look at Google Chrome.

I had looked at earlier versions of Google Chrome in the past, but its stripped down, minimalistic appearance initially turned me off. I liked having lots of flexibility and power in my browser. The unified address-search bar seemed to be a step back : that's how OmniWeb 4 used to handle things before OmniWeb 5 added the search bar. However, after using Chrome for the past week, I am greatly impressed. There are many little things which make the browsing experience feel "just right".

Pros:

  • Fast
  • Minimalistic interface
  • Stable — Not a single crash, yet
  • Google Translation
  • Good HTML5 support — I noticed that OmniWeb 5 was not handling some of the image animations at kickoff.app very well, but Safari 5 and Google Chrome handled it like a charm.
  • Accessing downloaded files — Easier to access the downloaded file options than either Safari or Firefox. Somewhat similar to Transmit 4's new approach for displaying the file transfer window.
  • Paste and Go — This is one feature I really liked from Opera.
  • Adding Bookmarks — Remembers the last folder where a bookmark was saved (unlike Firefox), which simplifies saving many bookmarks.
  • Inline PDF Reader — Viewing a PDF on a Mac should not require opening Preview (like Firefox does). Just view the PDF inside the browser.

Cons:

  • Somewhat difficult to grab the title bar if there are a lot of tabs
  • Bookmarks didn't import from Firefox 4
  • No separate search field — Despite this, the unified address-search bar works pretty well, especially since half the time I was doing a search, anyway.
  • Tab crunch — If too many tabs are open in one window, the tabs just keep getting smaller and smaller. Safari and Firefox handle this issue better.
  • Built-in Flash — On occasions the built-in Flash plug-in runs amock and takes up more than 50% of the CPU and causes my laptop's fans to go into high gear.
  • Slow to close — If many tabs are open, Chrome can take several minutes to shut down.

EdenList 1.0.1 for iOS

5th March 2011 | EdenList

The first update to EdenList for iOS has been released and is available for download to your iPhone, iPod touch, or iPad.

EdenList 1.0.1 for iOS now can share EdenList files between the Mac and your iOS device (iOS 3.2 or higher required) via the iTunes File Sharing pane.

Future versions of EdenList for iOS will incorporate a native iPad layout and more advanced features for managing your lists.

10 Year Anniversary

13th February 2011 | Edenwaith

Today marks the 10th anniversary of the founding of Edenwaith.com.

The Past...

Edenwaith started with two small products, a Javascript FTP site and the text-based RPG/Adventure game Psychomancer.

2002 saw the introduction of Edenwaith's first set of Cocoa-based Macintosh applications: EdenMath and Untar. The next several years saw a flourishing of additional Macintosh applications, ranging across utilities for file archiving, security, mathematics, entertainment, and audio.

While the first decade of the 21st century proved to be a revitalizing time for Apple Inc., its largest successes came not in the form of its core strengths of computers and operating systems, but from new lines of popular mobile devices. Whereas the Web and Internet created an explosion of new interest in the technical world, the same is now occuring with a new breed of mobile devices, namely cell/mobile phones and light-weight tablet computers. Even though Macintosh sales are better than they ever have been (more than 4 million Macs were sold in Q1 2011), these numbers pale in comparison to the number of iOS devices which are now in the market. Apple can claim an installed Mac OS X base in the tens of millions, whereas the iOS base (iPhone, iPod touch, and iPad) is well over 100 million and accelerating at a much higher rate than Macintosh sales. Since iOS is an extension from Mac OS X, it has been a natural progression for many Macintosh developers to transition to iOS. While Edenwaith has mainly focused on developing utilities for Mac OS X, our first foray into iOS development came to fruition last year — EdenList for iPhone. This is just the first step for Edenwaith into iOS development. EdenList will continue to evolve and new products will come to the iOS platform in the next several years.

Looking ahead...

Ten years ago at this time, Mac OS X was still in beta, the original iPod had not even been announced, and mobile phones were more a novelty than a commodity. It can be difficult to even see five minutes into the future, much less five or ten years down the line of a quicksilver industry. Who would have thought in 2001 that Apple would have surpassed Microsoft's market value in the coming decade?

If anything has been learned from the past ten years when trying to make predicitions is not to make predicitions. They are almost always wrong. Yet, for the sake of amusement, let's make some far reaching statements and guesses about Edenwaith's future.

For the foreseeable future, Edenwaith will continue to work on its active Mac OS X products for as long as they are useful and needed. Several of Edenwaith's earliest products (EdenMath, EdenGraph) were designed to fill in the gaps found in a young Mac OS X. However, as Mac OS X matured, some of the usefulness our products was lost as Apple improved upon their OS and associated utilities. The future is murky to determine, but if anything is certain, change is inevitable. Already the wind of change is blowing directly into developers' faces as mobile developers are in high demand, indicating where current trends are leading.

Edenwaith has made its first baby steps into the mobile arena, and we will further entrentch into this space in the coming years with several new products. Hopefully we will turn back in the direction which started Edenwaith: games. There are a number of other ideas brewing, so we'll need to evaluate how feasible these ideas might be before dedicating time and effort into new projects.

Just as the Web did not kill the Desktop, neither will mobile devices eliminate the need for personal computers and web pages. Edenwaith's Mac OS X products are not going away any time soon, but our direction will likely lead down many new paths in the coming decade. Just as Edenwaith has gone through numerous changes in the past ten years, we expect just as many changes in the next ten. It is not unfair to consider that Edenwaith might wear a completely different mask in 2021. Perhaps some of our current products will be still around. Perhaps there will be an entirely new set of products. Perhaps there will be no products at all. Time will tell...

Check for 64-bit

29th January 2011 | Tutorial

If you have a Macintosh application and you need to check if the OS is running in either 32 or 64 bit mode, here is a code snippet to make that determination.


/* File: check64bit.c
 * Description: Check if the running version of Mac OS X is 64-bit
 * To Compile: gcc -Wall -o check64bit check64bit.c
 * To run: ./check64bit
 */
 
 #include <stdio.h>
 #include <string.h>
 #include <sys/utsname.h>
 
 int main(int argc, char *argv[])
 {
 	int ret = 0;
 	struct utsname uname_info;
 	
 	ret = uname(&uname_info);
 	
 	if (ret == 0)
 	{
		printf("Uname Info\n");
		printf("Sysname  : %s\n", uname_info.sysname);
		printf("Nodename : %s\n", uname_info.nodename);
		printf("Release  : %s\n", uname_info.release);
		printf("Version  : %s\n", uname_info.version);
		printf("Machine  : %s\n", uname_info.machine);
		
		if (strcmp(uname_info.machine, "x86_64") == 0)
		{
			printf("You are running in 64-bit mode!\n");
		}
		else
		{
			printf("You are running in 32-bit mode.\n");
		}
 	}
 	
 	return 0;
 }
 
 

Reference

Edenwaith Gist : https://gist.github.com/edenwaith/8125865

GUI Tar 1.2.4

27th January 2011 | GUI Tar

2011 has started off well with two software updates in January. GUI Tar has been updated to address a couple of issues.

  • Improved calculation of file sizes listed in the compression table. — Updated with code from the FolderSize tutorial, which returns the correct size for applications which contain additional frameworks.
  • Minor UI improvements.
  • Optimizations and clean up for a leaner application. — Instead of using old, custom icons originally designed for Untar, GUI Tar now only uses custom icons (which match the current look of Mac OS X's archive icons) for 7z, rar, and taz files. This reduced the number of custom icons contained within the application, which helped to reduce the overall size of GUI Tar.

At this time, this is the only planned release for GUI Tar this year. GUI Tar is a freeware application which has seen infrequent updates in the past several years, and there are no current plans to heavily continue development on GUI Tar in the foreseeable future. If your archiving needs exceed what Mac OS X or GUI Tar can provide, it is recommended that you look for a more appropriate solution (such as StuffIt, BetterZip, or one of the many other archiving utilities available).

Permanent Eraser 2.5.1

11th January 2011 | Permanent Eraser

A number of people reported having difficulty accessing the new Preferences in Permanent Eraser 2.5.0. Considering that the Preferences was one of the cornerstones for the 2.5 release, this problem needed to be fixed so trying to open the Preferences was not so much of a delicate timing issue. Permanent Eraser 2.5.1 has fixed this problem, so the Preferences window can be opened, even when the initial warning message appears.