June 7, 2011
Wow, I hadn't realized how many tumbleweeds had gathered here.
Most quick thoughts end up posted on Google Buzz: https://profiles.google.com/kf6nvr/buzz
And most of my thoughts are quick these days.
July 12, 2010
I've used fring occasionally for a long time now. I first used it with the Nokia N95, and then most recently with Android and iPhone 4 for video chat. I had also used it as a generic SIP client, too.
And now I've just been told by my wife that it's spamming her and, presumably, everyone with status update messages. And frequently! Just check out that screenshot.
I've set both the iPhone and Android client to not do that. But, guess what? It's still doing that. Amazingly annoying, especially since I don't even use fring for IM.
With the recent removal of Skype, I don't see why I should keep using it. Maybe I'll go back to it later. Maybe not. The video quality was decent, the audio quality was great. And, unfortunately, there are basically no other alternatives yet. So, we'll see... for now, that, I have to remove it and hope that the status updates stop!
July 10, 2010
I haven't been posting here much. Small thoughts are usually on twitter or even buzz. Longer writing energy and time is generally saved for articles. All of our writing lately has been focused on Android development. Of course, we do develop for other platforms, too. We're very platform agnostic. ;)
When Android FroYo SDK (Android 2.2) came out, we got some requests to write about it. Here are two of the articles:
- Top 10 Android 2.2 Features Developers Can't Wait to Use
- Android 2.2 and Its Previous Versions: A Sweet Developer Review
We've also written a number of tutorials. Here are a few of them:
- Android SDK: Building a Localized Phrasebook: Teaches some of the basics of localization and internationalization on Android
- Android SDK: Unit Testing with the JUnit Testing Framework: You'll learn how to quickly get started with JUnit Testing on Android
- Quick Tip: Enabling the Android "Move To SD Card" Feature: You'll learn how to easily allow your users to place your app on to their SD card to save valuable device space
- Android SDK Quick Tip: Launching Maps In-App: Quickly learn to use the built-in maps app on Android in a variety of different ways
And don't forget about our two books:
- Sam's Teach Yourself Android Application Development in 24 Hours
- Android Wireless Application Development
July 9, 2010
No idea if this is my Wi-Fi or the iPhone 4 -- but it's not happening with my Nexus One.
When in between two of my routers, it keeps losing Wi-Fi connection -- even though two are in range. It then asks for the password to one or the other (seemingly at random). This is odd, because it has the correct passwords for both.
But, the real odd part: It can't login to whichever one it's asking for the password to. I can switch routers and that works to get back on Wi-Fi. But it absolutely refuses to accept the password for whichever one it has lost its mind with.
Until it switches which one it lost its mind with. Then it's the reverse of whatever was happening. This just keeps happening. Every day. The iPad doesn't suffer from this. Though, the iPad actually supports 802.11n, so I connect to a different router with it.
The iPhone 4 can't see my N routers that are on 2.4Ghz. They use upper channels, not the normal G channels, so they don't interfere with G (and vice versa). This cuts out the supported devices, but still works great with the iPad and laptops that have real 802.11n support.
Could be the routers. But since the problem alternates, I doubt it. This never happened with the iPhone first-gen, either, or the iPod touch. Very strange.
July 3, 2010
You got a shiny new Apple iPhone 4, right? You love that retina display! But, none of your other devices have one! What are you to do?
All your peers have a shiny new Apple iPhone 4 with its amazing retina display! Your phone is feeling blue, not having a retina display of its own. What are you to do?
It's simple!* Just create your own retina display. All you have to do is follow these easy instructions and all of your devices will have their own retina displays! We'll call this Retination: that act of making a retina display out of a normal display.
Stage 1: Determine Device Pixels Per Inch
First, you need to determine the pixels per inch of the device you want to retinate. You can do this by looking up the specifications for "ppi" or "dpi" or use simple measure the width and divide the width in pixels by the width in inches. Apple's documentation says their retina display is 326 ppi. Your display will be different. As an example, we'll use the Motorola Droid. It has a ppi of about 265.
Stage 2: Determine the Distance of Retinality
Now, using the same trick Apple uses to call the iPhone 4 display a retina display, you'll determine this for your display. The human eye has specific, well known optical characteristics. That is, the effective resolving power of the human eye for someone with 20/20 vison is, and has been, measured and agreed upon (just check Wikipedia!).
Using this data, we can determine the distance at which a display becomes a retina display. For the iPhone 4, Apple states this is 10-12 inches. My own calculations show that this correct; I get 10.4 inches. I don't know about you, but I don't hold my phone up that close to use it. I do a pinch-zoom and hold it farther away.
Anyway, the formula to convert PPI to DTR (Distance To Retinality) is 3438 * (1/PPI). The 3438 number is the scaling factor number derived from a 1 arc-minute visual acuity for a person with 20/20 vision.
Keeping to the Motorola Droid, we can now calculate that its display needs to be a whopping 13 inches away to be retinated! Gosh, more than a foot away before you can't distinguish pixels? The Horror!
Stage 3: Using Your New Powers of Retination
Now that you're empowered to retinate all of your displays, don't hold it over your Apple iPhone 4 toting friends too much. Their display is still a higher density and retinates so close you'll feel cross eyed when trying to unretinate it. And, there's no doubt; it's a nice display, retina or not.
I went ahead and calculated the distance to retinality for a number of common devices.
- A Nexus One display retinates at just under 14 inches
- The Evo 4G, with it's large display, retinates at nearly 16 inches
- The Archos 5, with an even larger display, retinates at almost 18 inches
- The T-Mobile G1, having a small, but low resolution display, needs 19 inches to retinate
- The Nokia N900 has a 3.5" display and high enough resolution to bring it's distance to retinality down to just 12.9 inches. That's 2nd only to the iPhone 4, currently.
That is, every one of these devices -- even the low resolution T-Mobile G1 -- can easily retinate within arms length.
What about your computer, laptop, and TV? I've calculated a couple of common display sizes:
- A 15.4" MacBook Pro sporting a 1440x900 display retinates at 31 inches, just over 2.5 feet. That's about my normal working distance at my desk.
- A 24" monitor with a standard 1920x1200 resolution takes 3 feet to retinate. That's not a terrible working distance, but I'm usually closer and the display definitely appears grainy.
- A 30" monitor with a standard 2560x1600 display, however, needs just 34 inches to retinate. That's definitely a great working distance for these beasts. Apple even makes one of these. Apparently they didn't realize they already had a display on their hands that was often used at the retinality distance.
- A 40" FullHD (1920x1080) TV needs just over 5 feet to retinate. A 40" TV with a sloppy 1280x720 Half HD (720p) display needs nearly 8 feet to retinate. This means two things. First, it means that if your TV is closer than either of these numbers, it's big enough to truly see the details. Second, it means if your 40" TV is under 8 feet away, an average person can easily see the difference between 720p and 1080p. For bigger TVs, this distance increases. Going Full HD does, mathematically, make a difference to the average human eye. ;)
Did you enjoy this retination of your display?
Now go out and retinate something!
(UPDATE: 7 July, 2010: Added Nokia N900.)