bingshui.org

the Life of Zim

12th January
2011
written by dzimney

First a quick review:
Quite a while ago I purchased the Logitech DiNovo Mac Edition wireless keyboard. And I have to say, I really love this keyboard. Especially compared to the Apple’s wireless keyboard. First off, it’s a full keyboard with a number pad, compared to Apple’s. Apple does make a full keyboard, but not a wireless version (at least as of this post date they don’t). Next up is battery life. The DiNovo runs extremely efficiently. I’ve had mine for months now and the battery still reads as full. Whereas when I was using the Apple wireless keyboard, my batteries would be drained after a few months of use. Granted the DiNovo takes four AAA batteries vs Apple’s three AA (or two AA with the newer keyboards). But still. I’d rather not have to worry about it, and from my experience the DiNovo lasts at least twice as long with extra batteries. Finally connectivity. The DiNovo uses a wireless USB adapter which works flawlessly. For me, I use an extra monitor with USB ports, so there’s no issue of having to constantly plugin and unplug the USB adapter from my laptop. I have a few usb devices I use in my workstation and only use one plug when hooking into my laptop. Apple’s keyboard on the other hand uses bluetooth to connect. I have had several problems with connectivity on these. My wife also has used one of these and having two in the house makes everything more difficult. In short, when they work, great. When the don’t, they’re a huge hassle and not worth the trouble shooting time.

So, although I’m annoyed with the functionality of the Dashboard Key and Brightness Keys on the DiNovo, I still would, will, and do choose the Logitech DiNovo wireless keyboard over Apple’s Wireless Keyboard hands down. It’s simply better in every respect for what I’m looking for and need.

Now for the issue at hand…
So the issue here is really quite simple. On the keyboard, as is standard on all Mac keyboards, a number of the F* keys (F1, F2, etc.) have dual functionality, mainly media control (play, pause, etc.), volume levels and brightness. For the most part everything on the keyboard works as expected. The media controls and volume controls work without a hitch. The rest however do require you to download and install the Logitech Control Center for Mac. This installs an preference pane that allows you to configure those special function keys. However, for me at least, even after installing the Logitech Control Center, my brightness (F1 and F2) and dashboard (F4) keys still didn’t work. To this date, I still don’t know why.

Hackintosh…
However, I have figured out a quick fix for the dashboard key. This hack opens the dashboard, but unfortunately does not close it the way the key works on a native Apple keyboard. To accomplish this, open the Logitech Control Center from the System Preferences on your Mac. If your keyboard is connected, you should see it listed. Click on the keyboard you wish to configure and press the Configure… button. A new window will open. Select the Keys tab in the upper left if it has not been selected already. Now you should see a list of all the special function keys and their assigned actions. If you select F4, you should see that it is set to Exposé, Dashboard & Spaces. Again, I don’t know why this doesn’t work, but it just doesn’t. As a fix, change this to Open Application. From here on the bottom of the window under Details you should be able to set which Application opens. Select Other… and find the Dashboard Application in your Applications directory. This should now cause the F4/Dashboard key to launch the Dashboard Application. Again though, pressing the key again, unfortunately, does not close the Dashboard as a native keyboard will.

EDIT:

A better fix…
So I just figured out a better fix for the Dashboard key. Essentially, what you want to do is set up a hotkey control for the Dashboard under System Preferences -> Keyboard and then set the action of the Dashboard key to Keystroke and enter the given hot-key-stroke. Ya dig?

So go to System Preferences -> Keyboard (under Hardware). Select the Keyboard Shortcuts tab. Now, select Dashboard & Dock under the left column. In the right column you should see Dashboard listed. If you double click the right side where it shows the shortcut, you should be able to enter whatever keystroke you want.

Now, go back into the Logitech Control Center and configure your keyboard (as described above). Select the dashboard button and select Keystroke as the Assigned action. Now at the bottom under Details you should be able to enter the keystroke you just entered in the Keyboard Shortcuts. Ta-Da!! Should work instantly.

With this solution, the Dashboard key will now both open and close the Dashboard.

Short Rant
It’s upsetting that things don’t just work the way they should. In addition to this issue, I use Songbird as my media player. Unfortunately, the media keys don’t work with Songbird and there’s not easy way to reset them so they do. I think these issues are all more related to Apple’s “closed box” system rather than poorly designed/implemented technologies on Logitech and Songbirds part. Of course that could just be my anti-trust conspiracy theories at work.

EDIT:

I actually just read that this is a known issue for Logitech. From what I read it appears to be something that Apple just does. Basically, media controls and brightness controls will only work on a non-Apple external keyboard if there is not an Apple keyboard connected to the computer. So if you’re on a desktop, and for some reason have two keyboards and one is a Logitech and one is an Apple, the controls will work on the Apple, but not the Logitech. Disconnect the Apple keyboard and the Logitech media controls should work. However, if you’re on a laptop, you’re pretty much just screwed as you can’t “disconnect” the laptop’s keyboard. I really fucking hate Apple’s proprietary bullshit. I’ll leave it at that.

A wise man once told me, “You have to be smarter than the machine you’re working with.” I hope this post helps someone solve an issue that I put up with for far too long.

30th April
2010
written by dzimney

Yesterday, Steve Jobs made a post on Apple’s website regarding his Thoughts on Flash. The article lists six reasons why Adobe’s Flash is not and will not be made available on the iPhone/iPad platform. His reasons are misleading. His logic is murky at best. To a common iPhone or iPad user they may seem, well reasonable. However, to someone with a deeper knowledge of the technologies he addresses, most of what he says is simply false.

“Frist, there’s ‘Open’.”

Jobs claims, “by almost any definition, Flash is a closed system” because Flash is only available from Adobe. This is to say that in order to create a Flash application, one needs to own a copy of Flash. This is simply untrue. Through the use of technologies such as MTASC it is entirely possible to develop full Flash applications without owning the proprietary Flash software. Adobe has never done anything to deter such technologies. It’s also important to note that Flash development can be shared with anyone at no cost to the developer. A developer can create a Flash, Flex or Air application and distribute it however they see fit.

Now let’s take a moment and look at the development process for Apple’s App Store. The iPhone SDK is written in Objective C which is developed by Apple and the equivalent to ActionScript being developed by Adobe. No surprises there. However, in order “to develop iPhone applications, you use Xcode”. Xcode, although free, is, wait for it, wait for it, proprietary. Xcode is used to digitally sign an application with the developer’s digital certificate before it can be submitted to the App Store. This digital certificate costs the developer $99 which is paid to Apple. The best part? If the developer does all of this, it doesn’t necessarily mean their application will see the light of day. This is because Apple individually approves all apps before they are made available in the App Store. A process that can take up to two years.

Jobs goes on to explain that Apple has a firm belief that, “all standards pertaining to the web should be open”. Jobs writes, “rather than use Flash, Apple has adopted HTML5, CSS and JavaScript – all open standards.” So let me see if I’ve got this straight, Steve. Apple, while not open itself, supports open standards, but only for the web. And since, in the opinion of Steve Jobs, Flash is not “open”, Apple’s closed system in going to exclude Flash? Maybe a fair point, but also maybe a little hypocritical. Of course this assumes the opinion that, “Flash is a closed system,” is accurate.

“Second, there’s the ‘full web’.”

Ah, yes. The “full web”. Jobs starts his “full web” experience with video. Adobe claims that 75% of all video on the web is delivered using Flash. Jobs rebutes saying that YouTube makes up 40% and the iPhone and iPad are bundled with a YouTube app. Problem solved. Using the YouTube application, you’ll have access to 40% of all video that is available on the web. Of course you won’t be able to view that video in a web browser or see any video that is embedded with Flash within a webpage. But I guess you’re right, Steve. 40% of all video made available through a separate application is practically the “full web”. Lets just forget about any Flash dedicated websites and round that figure up to 100% for “full web”. Done and done.

Jobs continues to brag that the App Store contains more games than God, much less Flash. I understand the point here. Apple and it’s App Store provide a suitable replacement for Flash and therefore Flash is obsolete. That’s all fine and good, but it doesn’t fill the gap between the “full web” and the web as it is on the iPhone and iPad. Furthermore, reason #2 is certainly not, “based on technology issues,” as Jobs claims his reasons are.

“Third, there’s reliability, security and performance.”

Here Jobs actually has a good point. If this was the extent of his article, I wouldn’t be writing mine.

“Fourth, there’s battery life.”

Jobs’ fourth reason is for battery life, but more specifically the way battery life is effected by video as delivered using Flash. He starts here and basically turns his point into a pitch for H.264 video. Battery life has been one of Jobs’ goto reasons for not providing Flash on the iPhone. Jobs writes, “H.264 videos play for up to 10 hours,” while video provided from Flash will, “play for less than 5 hours before the battery is fully drained”. I’m curious. How would Flash video compare to talking on the phone or simply surfing the web? According to the specs on Apple’s website, the iPhone’s battery life will only provide up to 5 hours of internet use or talk time while on a 3G network. Considering Flash video content would presumably require internet use, it’s no surprise that battery life would dip to under 5 hours.

“Fifth, there’s Touch.” (note: Touch is capitalized… amazing he didn’t add the ®)

Here Jobs whines that, “many Flash websites rely on ‘rollovers'” and that in touch-based devices a rollover simply doesn’t exist. He then concludes that as a solution, developers should, “use modern technologies like HTML5, CSS and JavaScript.” This, to be blunt, is just stupid. First, let’s establish one thing right off the bat. JavaScript, one of Jobs’ modern technologies, is just as capable of being dependent on “rollovers” as Flash. Second, to suggest that it makes more sense for developers to fully abandon Flash and completely rebuild Flash content as HTML5, CSS and JavaScript rather than reworking them in order to avoid “rollover” dependency is absolutely ludicrous.

Jobs goes on to claim that, “most Flash websites need to be rewritten to support touch-based devices.” A claim that is equally true for “most” JavaScript driven websites. Here, Jobs is making a claim that he simply can’t support.

“Six, the most important reason.”

Jobs’ final and most important reason, “why [Apple] does not allow Flash on iPhones, iPods and iPads” has nothing to do with running Flash as an application or in a browser on the iPhone, iPod or iPad. Instead he goes to explain why, Apple’s new developer agreement mandates that developers use Apple’s API and only Apple’s API to develop applications for the iPhone. This blocked the most substantial new feature of Adobe’s recently released CS5 Suite, which would have allowed developers to generate iPhone applications through the Flash IDE.

Before I get started, to say that not allowing this feature in Flash is in line with keeping Flash off of Apple’s mobile devices is simply inaccurate. The new feature provided by Adobe would have published applications as native iPhone apps. There would have been no emulation. We’re not talking about a Flash app disguised as an iPhone app. Flash would have compiled ActionScript code into an actual iPhone application.

Apparently, Jobs is concerned that the ability to develop iPhone apps through Flash would create a bottleneck of Apple’s technologies. Jobs says, “we cannot accept an outcome where developers are blocked from using our innovations and enhancements because they are not available on our competitor’s platforms.” That’s like not selling a computer to someone unless they have internet access because they won’t be able to use it to its full capability. If developers want to develop with the lastest innovations and enhancements, they’ll learn to develop in whatever platform is needed. The ability to develop applications in Flash in no way effects the ability to develop applications using Apple’s SDK.

Is Apple within its rights to mandate how the applications in the App Store are developed? Yes. Is doing so a proprietary move? Absolutely.

“Conclusions.”

Flash is a widely accepted multimedia tool that has yet to reach the mobile realm. Soon it will reach that realm and with it, it will bring the single most cross platform development tool that exists. It is already able to generate desktop applications on both PCs and Macs with Adobe Air and is widely used throughout the web.

Apple iPhones, iPods and iPads are a closed box system. They are not multiplatform. They are proprietary. And in that respect Flash has the potential to be one of their biggest competitors. It is in Apple’s best interest to keep Flash from reaching that potential. That’s what Reason #6 is all about.

I understand why Steve Jobs and Apple don’t want Flash running on their devices. I think that concerns for performance are very legitimate. Those concerns are exactly why Flash has yet to be made widely available on any mobile platform.

What I don’t appreciate is reading a misleading statement from Apple’s CEO that attempts to smear Flash. This is either a personal grudge between Jobs and Adobe or Apple attempting to muscle Flash out of the mobile market. Regardless, it is being done at the expense of both Apple and Adobe’s user base.

Daniel Zimney
April, 2010

7th April
2010
written by dzimney

Recently I made the switch from iTunes to SongBird. The main reason for the change is that I also recently made the switch from my iPhone to the Nexus One. To make a long story longer, I’ve felt that Apple has been on a slow and steady decline since releasing the iPhone and probably more attributed to teaming up with the likes of AT&T and other carriers internationally. In short Apple has been tightening it’s grip on user experience and customizing, which I hate. Don’t get me wrong I love(d) my iPhone, but it was just time to switch. And although I haven’t blogged about it much yet (which I should) I absolutely love my Nexus One. Love it. However, iTunes and the Nexus One don’t play together. Not that they don’t play well, they’re just completely incompatible; another sign of how Apple’s grip is loosing customers. While the Nexus One is completely open, simply appearing as an external drive that can be written to, iTunes will only write out to iPods and iPhones. Maybe I’d still be using them if they could write songs to any device. Oh well.

So. Now that I’m off of iTunes, I’m in need of a new source of digital music. After seeing an old friend’s facebook post about their new album being released on Amazon, I figured I’d get myself a copy and have since purchased a number of songs and albums off of Amazon’s MP3 store. That is until today. Last night I started up Songbird on the task of organizing my music. With the quantity of music to be copied to a new location the task took quite a bit of time. Meanwhile I decided to download a few songs from Amazon. The way the Amazon MP3 works, is that you download an Amazon MP3 file that must be opened through their Amazon MP3 Downloader. Well yesterday I had Songbird going through all my MP3s and soas not to create havoc in that process I decided to refrain from downloading my Amazon MP3s until the morning. I had downloaded the files to be opened by the Amazon MP3 Downloader, but not the actual MP3 files. Upon open said files this morning I see this coming out of Amazon’s app:

Download no longer available.

What the hell is that!? I go into my Amazon account. I can see the songs that I’ve purchased. When selecting my three songs from this morning, Amazon says “already downloaded”. Hmm. Annoying? Yes. Bullshit? Yes. Explainable? I wish.

Basically what this comes down to is that I’m not using Amazon to download MP3s anymore. Or if I do, I will be skeptical. Digital downloads are a tricky thing. I’m a web developer. I understand this. That said, if a company like Amazon wants to start selling MP3s, it needs to have it’s shit figured out. After a quick google, I found that I am hardly the only person this has happened to. It’s one thing to download a file, accidentally delete it and then not be able to re-download. But to say you can’t download this file because you’ve already downloaded it, when you simply haven’t? That’s bullshit. That’s someone else’s f*** up that I just paid $3 for. If it was more money I’d probably contact Amazon and have a string of posts after this talking about how bullshit (or amazing) Amazon’s customer service is. But it’s $3 so I don’t care that much. Instead I’m just not going to use them any more. Little ‘ol me? Not a big deal. I might spend a few hundred dollars a year on MP3 downloads. However, for a company as big as Amazon, I’m sure there are hell of a lot more people just like me that are having a similar experience. Say 1,000 people? Reasonable? Sure. Multiply by $300/year? That’s $300K a year because some programmer(s) can’t get their shit together? Lame. Especially when Amazon is going up against a giant like Apple’s iTunes Store? No wonder they have such a huge market share.

Me? I’m still trying to stay off of iTunes. Apple’s getting too big for it’s own good. I still love them, but they’re doing things that make me nervous for them. Songbird has the 7digital store, which is okay. Seems like they’ve got a fair amount of stuff on there. Haven’t used it a ton, but it seems to be pretty well integrated with Songbird, which I like.

21st January
2010
written by dzimney

For those who don’t like to read: the fix.

I upgraded to Snow Leopard (OS X 10.6) from Leopard (OS X 10.5) last week and everything seemed to go off without a hitch, until…

I have a bluetooth, wireless, keyboard that I use for work. At some point in the past week, not initially, my keyboard started acting up. At first I didn’t think anything of it because the lady’s computer is also paired with the same keyboard and when the problem first occurred it was because the keyboard was connected to her computer, also on Snow Leopard, rather than mine. I ended up removing the keyboard from her bluetooth setup and re-pairing (no pun intended) the keyboard to my computer. Everything worked fine and I went through my day.

The next day, I found that my keyboard would not pair up again. WTF!? So I go through the process again, thinking maybe Laura and I did a keyboard swap or something and that was the problem. Re-paired, everything’s cool. Whatever. If it happens again, I’ll deal with it.

Finally, today, day 3, I start up my computer and the keyboard won’t connect. Immediately I try to re-pair the keyboard and suddenly the computer tells me there must be some compatibility issue. Thanks Apple. I have an Apple keyboard I’m using with an Apple Macbook Pro and I have a f***ing compatibility issue. You’d think they would make sure that bluetooth continued to work between upgrading from Leopard to Snow Leopard. Oh well.

So I resort to Google. And basically what I find is that I have to reset my System Management Controller (SMC). Do I know what an SMC is? No. Do I care? Not really… okay, so I do a little. Apparently the SMC handles a lot of the lower level operations performed by the computer like “the power button”. Sweet Apple. Okay, so what to do. You have to reset the SMC. To do this follow the steps specified here. Be sure to read through the process and select the procedure that matches your computer. Different laptops, desktops, etc. will have a different method for resetting the SMC.

All in all, it’s disappointing that Apple overlooked this issue. Seems too often that companies can be aware of an issue be keep it quiet for the majority of users that don’t use (in this case) bluetooth, while those that due have to spend have their day in frustration.

Dear Apple,
Don’t pull Quit pulling a Microsoft.
Your Friend,
Mr. Customer

21st August
2009
written by dzimney

The general consensus on Mac OS X is that it is a very secure system. There is little to no threat of virus attacks and the operating system itself with the proper settings can be very secure. Unfortunately this isn’t as true as most of our perceptions would lead us to believe. I recently discovered that there is an extremely simple way to reset any administrative password on the OS X operating system. The only tool you need is a copy of the Mac OS X Install DVD. I won’t post the details here, but doing a quick Google Search results in some pretty shocking results; namely the Apple website has a very detailed page on how to change an administrative password in the case that you have “forgotten” yours, but has very poor details on how to prevent someone else from doing this to your computer. Don’t get me wrong, when the system is correctly put in place, Apple’s security is top notch. The problem is that by default these security measures are not implemented. Additionally, the existence and implementation of these measures are virtually hidden.

Before I begin on solutions to securing your machine, I must credit Orbicule. I recently found Orbicule’s Undercover software which is basically a “tracking” system for your laptop in the event your machine is stolen. It’s very affordable and I recommend it to anyone with a Mac laptop. Undercover makes a number of recommendations for making your computer more secure, which is what got the ball rolling for me.

To start there are a few basic settings you’ll want to put in place to make your machine more secure. In the “Security” panel of your “System Preferences” there are three check boxes you’ll want to be sure to have checked. These settings will lock your computer with your username/password.

security

The first is the “Require password to wake this computer from sleep or screen saver” check box. This will make your computer lock any time it has been inactive long enough to put the computer to sleep or kick on the screen saver. More importantly, on a laptop it will require a password any time the lid is opened — essentially locking the computer once the lid is closed. Additionally, you can change the timing of your “Energy Saver” and “Screen Saver” in your “System Preferences” — personally I’ve just gotten into the habit of closing my laptop lid or starting my screen saver when I’m not using my computer.

The second check box to make sure you check is the “Disable automatic login” password. Without this, all of your other security measures are next to useless. Without the “Disable automatic login” checked all anyone needs to do to get into your machine is force it to reboot. This check box provides a login screen when you restart your machine.

The third item to check in the “Security” panel is the “Require password to unlock each System Preferences pane”. This will keep anyone from changes this preferences before they get locked out.


Now, as I wrote above, it is extremely easy to reset any administrative password on OS X — or any user password for that matter. So, the smart ones out there are wondering, “Why the hell did I require myself to enter my password at every turn if anyone can simply reset my password?” Good f***ing question. A more appropriate question would be, “How do I prevent anyone from resetting my password?”

The big Lock that Apple doesn’t advertise: the Open Firmware Password Utility

The way to prevent someone from resetting your admin password is to “lock the firmware”. The way to reset a password on OS X involves booting from an Mac OS X Install DVD. By locking your firmware, the system will be unable to boot from any drive other than the main hard drive without entering a password. The only way to reset that password is again to boot from the Mac OS X Install DVD. The only downside to this is that if you forget your password, you’re pretty well screwed. So this solution is not recommended for the absentminded.

The Apple website will tell you to insert your Mac OS X Install DVD and find the Firmware Password Utility on the disk. For OS X 10.5 and later this will not work. You will need to boot from the DVD. To do this, insert the CD into the machine and reboot. Hold down the ‘c’ key as the machine is booting. This will allow you to boot from a “optional disk”. In our case select the “Mac OS X Install DVD” and press enter. From here you will reach the “Welcome” screen, select your language and click the “–>” button. Now, you may get a prompt saying you are unable to install the operating system. Ignore this prompt or any others that may appear. At this point you should be able to see a set of menus at the top of the screen. Select the “Utilities” menu, choose “Firmware Password Utility” and proceed as directed. And there it is. That’s how you can securely lock you computer. By doing this the only way to use your computer would be to replace the hard drive — which makes you computer far more secure, and your data incredibly secure.

I’m not sure why Apple doesn’t advertise this more. Or rather, why they make it so incredibly simple to reset an administrative password. I could see making it easy to reinstall the OS and wipe the machine, but allowing anyone to reset the administrative password gives anyone, with the means, access to practically everything on your computer. It’s also incredibly disappointing that there’s such a minimal amount of documentation on how to run the Open Firmware Password Utility. There’s definitely a good deal of documentation for the utility pre-Leopard, but all of that is next to useless for 10.5. My guess is that, sadly, there’s more demand from Mac users to know how to reset an admin password that they’ve forgotten than there is to lock the firmware. Most people aren’t aware of how easy it is to get around the administrative passwords and there assume that even if a computer is stolen, their information is secure. We just don’t think of it.

Anyway, I just hope this helps someone out. And again, I strongly recommend Undercover for a laptop — or any Mac for that matter. It’s a (seemingly) very effective way of adding an extra level of security to a machine. I would not, however, recommend Undercover for the iPhone. Unless I’m missing something, it seems to be pretty useless. From my understanding the crook would have to open the application in order to be tracked. In that case MobileMe is an extremely effective solution, which I wish I could afford (justify) the $99/year to pay for it.

21st June
2009
written by dzimney

[For the quick answer to fix Notes in the Mail app from failing skip to the final paragraph]

I love Apple and most all of there products, which is why it pains me so much when they royally f*** up the simplest things. Some time ago I started trying to use Notes in the Mail app to help keep myself more organized. I was also curious if I could sync my Mail notes with my iPhone Notes (which I the time you couldn’t). Soon I realized that Notes did not work properly in the Mail app. Pressing the “New Note” button or selecting “New Note” from the File menu did nothing. It simply would not work. Upon investigation more online I could only find that some people were experiencing the issue and some were not, but absolutely nothing on any sort of fix.

With the release of the 3.0 firmware for the iPhone and the new capability of syncing iPhone Notes with Mail Notes, I started up on the quest that I had left behind months prior. I was able to sync with my iPhone but trying to look at any of the notes in Mail would just cause mail to hang while trying to load the Note. Basically I’d have to force quit. This time I felt quite determined to find the problem. I began digging through my Library folder and anything else I could think of that could have possibly effected my Application. Oh, one thing to note here, I knew that it wasn’t global issue on my machine, logging in as a different user I could use the Notes functionality in Mail just fine.

So I kept digging and diggin infuriated by the fact that Notes would not work with my user only. Finally I came across a post in the Apple Discussion pages. And what did it say!?

I just read another post that says you need to have the font “Marker Felt” installed and activated for notes to work correctly. I tried it and it works!

Are you f***ing kidding me!? That’s the problem? A font wasn’t active? For months I’ve been frustrated by Apple’s inability to use a default font that isn’t as obscure as “Marker Felt”. How about if Marker Felt isn’t available you just use some other Sanserif font? How difficult can that be? Instead the whole functionality of Mail completely fails.

So. If you’re having the same issue, that is, Notes in Mail is not working for you. Try this solution. Activate the font: Marker Felt. To do this open Font Book, in the upper left hand corner select “All Fonts”. Scroll down on the middle column until you find “Marker Felt”, right click and select “Enable Font”. Done. Notes should work now (assuming there isn’t some other asinine issue with Mail).