RSS Feed

30 November 2007

Ooh, shiny!

Wine 0.9.50 was released today. What I think is particularly interesting is support for the Mac OS X keychain. This shows that the Wine developers are really trying to do something for the mac people. Thanks, Wine people!

An update...

Windows apps on Mac OS X will open without any version of Wine– in Text Edit as hex files. You still get the dialogue, it's just they open in a different program. Huh?

29 November 2007

Office: iPhone?

Yes, the iPhone can read Word, Excel, Numbers and Pages documents, but I think Microsoft may have actually had a good idea: PowerPoint on the iPhone. However, I would have implemented it a little differently; specifically waiting for the SDK and enabling using the iPhone as a bluetooth remote for PowerPoint presentations. See the current slide on your iPhone, then swipe to go forward or back, and tap to render animations. The current solution from Microsoft is to export pictures of the slides to iPhoto and then Sync to the iPhone. A creative stopgap, but this appears to only be good for showing your co-worker the slides you just prepared, not giving a presentation. It doe not build animations, does not do links, does not do transitions, does not do anything besides present pictures of pictures, graphs and text, most likely too small to be legible. If I want to present picture on the desktop I use iPhoto. The iPhone is not a presentation device. It is a viewing device. You can view movies, photos, and web pages; but not change them ('cept for web pages with forms, and even then it's pretty awkward). So, congrats, your iPhone now doubles as notecards to practice your speech with, except if you are practicing your speech reading what's on the slides, that's going to be a pretty horrible speech.

I think that while iPhone syncing is a good idea, it lacks clarity of purpose or practicality. Microsoft is known for "enterprise" software, selling mass licenses of Windows to corporations. What an enterprising idea to have a purpose that will hinder enterprises rather than benefit them.

More Evidence that Apple has something to hide?


So, I tried to open one of the default apps that came with Darwine today and I got this: (click for larger version)

EDIT: These PNGs are downloading instead of opening in the browser window. I do not know why.

Combined with this article that I read earlier today about PEs and Wine in Leopard, I would not be surprised to learn if Apple is planning to integrate some form of optimized-wine into their product. Most of the code is already there, they just need to make it faster and more reliable. However, this is the optimistic side of me.

The pessimist side of me is citing an article on Roughly Drafted that provides some pretty concrete evidence of no windows app support for Mac OS X.

The optimist side of me counters that with a thought on something sly that Apple might do: build a windows executor using either the wine kernel or start from scratch and write a kernel extension that executes windows binaries, and then require native windows libraries and DLLs. Having native DLLs could make it as painless as: Insert your Windows XP or Vista CD to enable the running of Windows Applications on Mac OS X. Once the CD is inserted, the correct files are copied and Windows apps run at native speeds, including games. Of course, this would be Intel only.

Seriously, I may be overreacting about one dialogue box, but the wording on it was pretty definitive: "Are you sure you want to run this windows app?" basically. And when compared to the Mac OS X app dialogue, it has a difference of one word: Windows.


Mac Dialogue

Windows Dialogue

Technorati Tags: , , , , , , , ,

28 November 2007

The Third Gem of the Renaissance User Interfaces


This is the last instalment of my miniseries comparing the 2007 User interfaces to the Italian Renaissance. The first two can be found here and here.

The last interface I am going to write about is the Ubuntu interface. Ubuntu 7.10 comes bundled with a compositor much like Quartz or Aero. This compositor is called XGL. To take advantage of such a compositor, Linux systems such as Ubuntu sometimes incorporate a compositing window manager. The default one used in Ubuntu is called Compiz Fusion.

For those of you interested in history, Compiz Fusion is an unforking of two linux compositors: Beryl and Compiz. Beryl was forked from Compiz when the Beryl branch decided that its code had strayed too far away from the main Compiz. Beryl was then unforked back into Compiz under the name Compiz Fusion, bringing many extra plugins and general UI glitziness.

One of my favorite Compiz Fusion effects I did not take a screenshot of, and that is a certain animation. I normally use this animation for minimizing, so that whenever I minimize a window, instead of just disappearing the window folds itself up into a paper airplane and flys down into the taskbar.

It just so happens that, to take maximum advantage of the 3D rendering layer included, Compiz Fusion incorporates many 3D perspective enhancements, such as a Cover Flow/Flip 3D view for window switching, a spaces like implementation of virtual desktop switching shown at an angle (below), and windows doing backflips when they are closed.

Compiz Fusion also incorporates other advantages based on light, mainly reflections. The cube has a reflection, the desktop switcher has a reflection (above), the Cover Flow/Flip 3D window switcher has a reflection, and the windows can even reflect your face (through some tweaking). Also, for each of the effects where the desktop zooms out, the amount of light and the intensity of the reflection can be controlled.

There are too many effects to write about, so here are my favorite effects in Compiz Fusion (in no particular order):

  • The airplane effect
  • Paint fire to the screen
  • Cover Flow for window switching
  • Wobbly Windows (see below)
  • The aquarium inside of the cube
  • The raindrop effect

The wobbly windows are a plugin which causes the windows on your screen to "wobble", or behave like pieces of paper. The part dragged moves with the mouse, and the other parts of the window follow as they are forced to according to some semblance of the laws of physics (Newton must be spinning in his grave). When the window is no longer being dragged, it reverberates a little and resumes its normal square form. This is also evident in maximizing windows, as the corners of the window spring to the corners of the screen and the rest of the window follows.
Compiz Fusion is the most glitzy of the compositors on the market today, but be aware that it is in active development. I find some of the features very useful, because they provide visual feedback on where something is or what something does. And it is just so cool.

The Flip (3D) Side of the Renaissance



So, yesterday I compared new UIs in Leopard to the Italian Renaissance. Well, I have been thinking about it more, and have decided to write second and third articles, following in the same vein.

The second OS integrating more flashy visual effects is, of course, Windows Vista. The most notable new feature is the transparency and Flip 3D. I have not used Vista, so I cannot speak as to whether there are any more subtle, mac-like animations, or whether there is just fancy fading and 3D-ness. Vista backs all of its new effects (Flip 3D and Aero) with a new compositor, similar to how Mac OS X introduced Quartz five years ago. Then Mac OS X had overused transparency for inactive windows, but some things, such as the anti-aliasing, made it look a lot better than Windows.

Windows Vista uses a couple of renaissance techniques; because it has a 3D rendering engine backing every window it can do some interesting things with the windows. Vista can flip the windows at an angle to enable quick browsing through them. Vista also incorporates some non-3D effects, such as the fake glare on the glass windows. Bright, candy colors also adorn the new iCal clone, and perspective, though not as emphasized as in Leopard, has a tiny role.

I think that Vista could have sold (sold, not gotten better reviews) a lot better if it had some flashy visual effects that aren't transparency. For example, although this may be going out on a limb, it could actually use its 3D interface to make the windows move into an open space whenever they have a modal dialogue box, or changed their appearance somehow. However, another part of me thinks it would have done just as bad for lack of a killer app.


Technorati Tags: , , , , , , ,

27 November 2007

A User Interface Renaissance

One of the main characteristics of the Italian Renaissance was an emphasis on perspective and lighting. I am noticing a pattern in Apple's new systems (Leopard and Front Row/Apple TV), specifically an emphasis on perspective, lighting and focus. This shows in both versions of Front Row, as the icons in the background being smaller than those in the foreground. In the new Front Row, there is also a Core Image blur. In Leopard there is also both the new 3D dock and in the Cover Flow views. In the two Leopard cases, there is a 3D effect involved. In both cases it is a "fake" effect; that is, it is created not using 3D rendering, but with either static images or Core Image. In Cover Flow, it is done using Core Image and Core Animation, and the 3D dock and the glare is done using an image. This closely resembles the reforms in the Italian Renaissance, which focused on perspective and light.

Most of the reflections in Mac OS X have been accumulated in versions prior to Leopard, the only two new ones that I see are the Dock reflections and the Cover Flow reflections. Core Animation allows for much more dynamic reflections, such as the window reflections on the Dock. Most of this is the result of the Quartz Compositor built into Mac OS X.

Security: Get your hands on it

Engadget has a rumor that some developers have the Apple iPhone/iTouch SDK already. However, the post also reports that it has very clear limits on what an app can do. However, the question is how are those limits implemented?

In the Android platform, each application is run under a different user environment. This works because only the basic user subsystem is implemented for each application, and applications can have multiple threads. Different users cannot interact with each other unless both consent to create a shared instance, which can be thought of as simply a connection. The two users can talk to each other and when done, close the connection. The problem with this approach is that it still has to allocate the memory and processor resources to run the applications, and a couple of applications running at once, in Java, on a weak processor can make the entire phone very sluggish.

I suspect that the iPhone does something along those lines: it probably has one dedicated, unprivileged account for running applications. However, unlike a desktop operating system, applications most likely will not contain a way to elevate their privileges. This means no access to any folders outside of normal directories (/Applications, the documents folder, etc.).

Apple's intent in providing the iPhone SDK is to appease the naysayers that say, "The iPhone doesn't do <Function>," or the others that say, "The iPhone does everything I want it to do, I just want an SDK". Most likely, they will not allow it to interfere with the normal running of the phone. Therefore, Apple provides a sandbox environment. I would be willing to bet that the custom apps are niced a little higher than the Apple apps, just so everyone is guaranteed an optimum user experience, and the same user experience with the default apps. This also silences the cries of, "I installed lots of background stuff and Safari runs slower now."


Technorati Tags: , , , , , , , , , ,

26 November 2007

Proprietary Piracy

I just read the Ars Technica article about Windows Genuine Advantage (misnomer), and an interesting thought passed through my mind: what happens if Microsoft goes away?

Well, none of the computers running XP or Vista would be able to install, and whenever a Vista system attempts to download an update that requires it, loses all of the fancy visual effects and eventually goes into "Reduced (read No) Functionality Mode", without any way to get out of this bottomless and dark pit.

I see the lock-in to Microsoft as being like the lock-in to proprietary formats; if the primary vendor goes away and the software gets deprecated there is no way to access all of your data. However, for an Operating System it's much worse. Users won't be able to access ANY of their data. A small percentage of the users that jump ship and move to Linux or another OS that emerges might be savvy enough to mount the NTFS share and salvage all of the data that they can, but it will be very hard on anyone that does not know how to work a command prompt.


I call this the software dark ages, because computer society as a whole is descending back into command prompts and mount points. Sure, attempts are being made to make Linux more user friendly, but it's hard, because it is hard to both hide all of the technical information and provide a user friendly way to access it.


The only ones spared from the dark ages will be the Mac users. They will carry on with their OS X and Core Animation goodness. Some of the people that jumped the Windows zeppelin will move to the Mac, but those users that want to purchase a $350 PC will have a harder time, especially without those Windows subsidies.

I would predict that the dark age would last about two years, enough time for some small computer startup to either build on top of some variety of UNIX or make Linux user friendly enough for normal users. Once that is done, distribution will still be more spread out, possibly ready for another company with Microsoft tactics to re-take the computer market.



And the cycle begins again, this time with more powerful processors and a more complex OS, making the dark age last longer this time.


Technorati Tags: , , , , , ,

Firefox Mac's burning tail

I've been testing the beta of Firefox 3 and have used Firefox 2, both on my mac. However, one thing that really bugs me is Firefox's nonstandard widgets; none of the buttons look like their mac counterparts. There are a variety of hacks in the world to provide more "mac like" widgets, but most of them add a gradient and some other things; they do not provide a sufficient replacement for the Cocoa or Carbon OS X buttons.

Firefox 3 promised to cure that problem by using Cocoa widgets. Unfortunately, there is no Cocoa being used in Firefox's implementation of a mac style, and it shows. Most of the problems I list are not unbearable, I just think that they could be improved.

  • When a button is clicked on the text moves a couple of pixels to the left.
  • The text boxes DO NOT get blurred blue focus rectangle around them when edited.
  • The checkboxes DO get the focus around the.
  • The popup menus DO get the focus around them AND use nonstandard menus.

I have to admit, I am a person that notices really small details and is insatiable with regards to inconsistency , but it seems like the person who implemented this did not study exactly what the mac does when, say, a button is pressed. It seems to be a new UI jerryrigged on top of a system not designed for that platform, and I had hoped to see them use Cocoa or Carbon widgets.

22 November 2007

Hey, I just realized something.

The iPhone has access to Project Gutenberg.

Also, with the SDK out in February, someone might break the AZW format used by the Kindle by then, and knowing the nature of hackers, probably put it on their iPhone (or OLPC, if they are cool enough to have one).

The iPhone is not a Smartphone

When I think of a Smartphone, I think of a phone that has a clunky, arrow-navigated, tab-delimited interface of which half of the device is the keyboard. Let's call that a normal Smartphone. Wikipedia says that "A smartphone is a mobile phone offering advanced capabilities beyond a typical mobile phone, often with PC-like functionality." Normal phones nowadays have a camera, SMS texting and a phone component. Smartphones add in email, web browsing, a calendar and a bit more data storage (about 20MiB, which is measured in the interface in kilobytes). Smartphones often have outside expansion slots, and some can clumsily attempt to edit documents. Please note that you will not be as productive on your mobile phone as you will be on your laptop.


The iPhone changes all of that. Once Apple had sold one iPhone they had captured 100% of the market for phones with more than 2GB of flash built in. It also has a more media-oriented approach, bundling an iPod, iTunes and YouTube support. The iPhone puts some of the data you want on your home screen, in the form of widgets, weather, the calculator and a clock. However, the iPhone is "smart" because it displays more information with its icons than other phones, displaying the date on the calendar icon and badges on Phone, Text and Email. There are a lot more features that make it smarter as a phone, such as usable contacts and visual voicemail, but it is so much smarter than other phones, I would put it in a class by itself. I would call it an iPhone.

Technorati Tags: , , ,

A Comparison between the OLPC and the Amazon Kindle

So, in an earlier article I mentioned the Amazon Kindle vs. the OLPC. I've been thinking a bit more about this, and have decided to do an in-depth comparison

Amazon KindleOLPC
Reads BooksBooks bought from Amazon and (with web access) from Project GutenbergBooks from Project Gutenberg
Web AccessKindle Store, paid subscriptions. Black and WhiteFull web access (in color)
NewspapersUpon SubscriptionWebsites, some free, some upon online newspaper subscription
BlogsSelect blogs (about four) upon paid subscription (no /rc/etc blog!)All blogs
Reading OfflineAll content on device (Unknown hard disk size, though)Saved HTML files, page left open
WirelessEVDO, avg. 4.5 mbps802.11b/g/s
DocumentsSend PDF, DOC, JPG, PNG to kindle for $0.10 eachFree, in a multitude of ways
Operating SystemUnknownLinux
Document EditingNoneFull
Compatibility*WindowsEvery OS
ApplicationsAmazon Provided, mostly fee-basedOpen Source, expandable
Screen4-level gray, no backlight. 600x800 non-rotatable1200x900 in color, 2400x1800 grayscale. Rotatable, backlit if needed.
InputTiny nonstandard QWERTY keyboard with irregular buttonsSmall QWERTY keyboard (designed for children)

I tend to err toward the OLPC, because it costs half as much and does more. Oh, and a really crisp grayscale screen, which would be great for reading books. (Because of the display technology, resolution is doubled in grayscale mode. It is all explained on Wikipedia).


Happy Thanksgiving, Amazon. Hope the Kindle didn't burn your turkey.



EDIT: Some inaccuracies have been pointed out in the comments, and the table has been updated accordingly. 

*To clarify: compatibility means computers that it can talk to or sync with (because the kindle can sync documents as a way to avoid the 10 cent fee). The OLPC can use wireless to talk to any computer.



Technorati Tags: , , ,

21 November 2007

Kindle will burn to the ground, but not before starting a fire


So, everyone has a fire under their keyboards just before thanksgiving because of the announcement of the kindle. Unfortunately, I do not have high hopes for it. Why? Well:

  • Too many hidden fees. There are just too many hidden subscription fees for blogs, books, newspapers and web access. And with a cellular fee on top of that, customers are going to end up having one for a month, finding out how much it really costs, and returning it or never using it again. Let's hope the e-book market does not get to two-year contracts like the cellular market.
  • The OLPC has so many more features and can read books for free from Project Gutenberg. Oh, and it costs half of what the kindle does, if they ever sell them seperately. Add in the fees mentioned above and the fact that it has a mode designed specifically for reading and you have what the kindle should have been. Too bad that it's been fraught with problems.
  • It is not being marketed as just an e-book reader, it has to do everything else. The keyboard seems clunky and is relatively useless for actually reading books. Honestly, it looks more like a pocket microfilm reader than an internet book-and-what-have-you reader.

Amazon is probably hoping that the kindle will be the new iPod and revolutionize the market. But the original iPod actually pioneered things like the click wheel, and adhered to Apple's standard for usability. What's the kindle got in that respect? A QWERTY keyboard with no spacebar in the middle, and will not be used for reading. Amazon, it's not just the revolutionary new market, you have to make it easy to use.

EDIT: I am sorry, there is no cellular data fee. I suspect it may be included in the $400.



Technorati Tags: , ,

Aha!

I have figured out why you need the Mac OS X startup disk to boot off of a Time Machine backup! You need the disk because, depending on your settings, Time Machine may not back up your system files, and without your system files you cannot boot off of the disk. To simplify things, Apple made it so there are no Time Machine boot ups. Also, to add to complexity, multiple computers can be backed up on a single disk; it creates a folder for each computer, so booting off of a Backup disk could get confusing.

Also, with regards to not being able to back up onto the same disk: you can. Create a new partition using the new dynamic partition resizing and point Time Machine at that partition. Voila.

19 November 2007

The Trump Card



So, a comment on this post of mine suggested that the commenter thought that Google was holding a trump card up its sleeve. Well, after a little thinking, I think I may have puzzled out a piece of it: Google is going to make easy use of its web services on its own phone (Duh!). In fact, the idea of a web desktop may not take form on a desktop computer, but on a mobile phone. I can see six icons on my iPhone home screen that use web services and two that use phone services. Well, there may be an entire screen of web desktop items on the Google phone. Google, instead of telling us to write web apps for its phone is instead telling us to write apps that connect to the web (at 3G speeds), and get data from them. The same things apply to social networking over XMPP or a web updating feed like RSS.
As a scenario, lets say a user named Alice wants to check what her friend Bob is doing right now. She either logs on to Facebook and checks Bob's status OR she can use an XMPP application. Bob probably has his mobile phone with him; however he is probably not always on Facebook. If she sends him an XMPP message he gets a notification at the top of his phone screen and immediately knows what it is about, compared to a SMS message that reveals nothing about its content on the home screen, only that you got a message. It is this intuitiveness that would provide the Google phone with an amazing experience.
XMPP can be used for other services too. For example, if Alice wants to tell Bob where she is she can just select a location in Google maps and press send to Bob. Yet another thing you cannot do with text messages.
We know that Google is attempting to make headway into social networking with its orkut service. Desktop apps linked in to the web are superior to web apps because you can do some things like animations a lot more simply. If Google provides a simple framework for plugins to the Android social network people can easily download 5MB plugins (in about 30 seconds). People would be able to send messages to other people with the same plugin, and if this gets popular, who knows what we'll see (I think something like Remote Apple Events would be really cool).

Technorati Tags: , , , , , ,

iPhone SDK vs. Android


So, both the iPhone and the Android platforms have SDKs (The iPhone SDK is announced and the Android hardware is announced). However, it came to me that there are different motivations for making each SDK available.
  • Apple: Create an SDK for the iPhone to stop the demands for an SDK for the iPhone. If it does not work out, we can make it open source and scrap it.
  • Google: Get people to write apps for our phone
  • Apple: If the Android SDK works out we're sure someone will implement an open source one
  • Google: If the iPhone SDK does better than ours there's nothing we can do about it without completely writing Mac OS X.

So, Apple's in a better position than Google in this regard, because they can turn the iPhone into an android handset, but all the Androids can't run Mac OS X (kind of like macs can run Windows but PCs can't run the Mac OS).


Technorati Tags: , , , , , , , ,

The Androids working at Google...



So, Google has set the Android phone to launch in 2008. How does Google make money from this. My train of thought on this was long and complicated, but here's the gist.

  • Google partners with handset makers to make android handsets. Handset makers make handsets so Google does not have to do hardware itself (or at all).
  • Google starts Android software and after it's finished makes it open source, so Google can assign fewer engineers to the project.
  • In 2008 the first handsets running Android firmware 1.0 are released for consumers to buy. Each handset maker is marketing its own handset, so marketing incurs no cost to Google.
  • Google has its own search as the default on the android phones. Most people are too lazy to change to a different search engine and continue using Google.
  • Google serves ads to all of the android customers and makes more than it invested over the project, while building its brand image from the phones.

Overall, Google's ROI is equal to its Initial Effort + Open Source + Handset Makers. I think Google knew it would come out on top.

18 November 2007

Mac OS 10.5 = Mac OS 1

So, you've gotten your fancy Leopard box with all of it's cool visual effects. However, you can restore your retro white menu bar and then restore its rounded edges, and your Mac will feel like Mac OS 1 with fancy Core Animation and stuff. If you're even more retro you can set your desktop as grey and change all of your icons, but who would seriously do that?

Technorati Tags: , ,

The State of Confusion Appears to be a Purple State


Just something that I just found out. You can get to three different Google home pages on the android phone:


The homepage stored on the device is fastest, the normal one has the most features, and the mobile one just looks weird on the small screen. I take this as another piece of evidence that the Google phone browser is not on the same scale of the iPhone. All apple did to prepare their homepage for the iPhone is optimize it to look best on both a desktop browser and Mobile Safari. Apple: EDGE speeds, ubiquitous access, and an intuitive browser. Google: 3G speeds, less coverage, and weak webpage navigation.


Both Safari and the Android browser are based off of the same code, WebKit/KHTML. However, in interfaces, it seems Apple always comes out on top.



Technorati Tags: , , , ,

Resolution independence and the Androids


I thought about the Android interfaces some more, and it came to me that a simple way to solve that is simply to make all of the software resolution independent. I took a look at the documentation and it seems not, but an update can always change things. However, I did find the class android.content.PackageManager, which at the moment only implements the Activity Manager and permissions managers for packages; however, a custom subclass could enable functionality much like one of the Linux package managers, or the hacked iPhones' installer.app.

Technorati Tags: , , , , ,

More Thoughts on the iPhone SDK

So, I've been thinking about how all iPhone apps are going to be Cocoa (to take advantage of Core Animation), and I though about how the interfaces for those apps are going to be built. I think that the current toolchain requires them to be created programmatically, but thinking about all of those Cocoa developers that are going to have a hard time leaving Interface Builder and going back to something more clunky, I would have to say that there may be either a special version of Interface Builder for the iPhone; an iPhone interface builder template; or a different kind of nib file for iPhone apps (like .mib). I think Apple will want to try to win over Android developers, who use .xml files for their layouts (true, NIBs are just a fancy wrapper for XML files, but Interface Builder makes it so much easier). Come on, Apple. I think Apple may be using all available time until February to get this done, and it may release near the end of February.


Technorati Tags: , , , , ,

GIMP for Leopard

So, I have read that some people are experiencing problems even starting GIMP on Leopard. For those people, another binary is available here (website in German, scroll down a little to see a package and a download link). It does not yet fix the problem of pointer lag or the drawing crash, but it is the latest version of GIMP (GIMP.app is still the release candidate). Be warned, it loses the GIMP.app aqua-ish glossy theme and adopts a cleaner gray theme. However, I think it looks nicer, and I would advise everyone to use this version.

Technorati Tags: , , , ,

17 November 2007

A Quick and Cool Look

So, I downloaded the new version of MakeiPhoneRingtone, and was dragging what I thought was unprotected music to the desktop. Well, as it turns out, the Finder knows how to play protected media files, and uses all of the iTunes metadata for that file, including album art, name and artist. The album art shows up as the actual icon, and protected music can be played by the Finder in Quick Look. In cover flow, the album art looks just like in iTunes, except possibly with other folders and files next to the music. Fascinating.

Technorati Tags: , , , , ,

Come February, the iPhone SDK

I've been thinking about the iPhone SDK, and I wondered, where is Apple going to put all of the downloaded apps? Logically, Apple would not put them on the home screen, because that would probably take up too much room and make it too complicated. So what I think Apple will do something similar to this (click for a larger version):

In my mocked up home screen I added an applications icon. I think that apple will create a separate screen for custom applications, so not to confuse with the "essential" apps, such as the phone, SMS texting, or the settings. I do not necessarily want to be able to always play tetris, however I do always want to be able to make a phone call on my phone. This is the logical solution to that problem.

Technorati Tags: , ,

GIMP Crashing on Leopard

So, I found out why the GIMP crashes on Leopard. I looked here, and it says that there is a window error. Great, still no fix for the pointer lag. Ah well. More as this develops.


Technorati Tags: , , ,

The Many Faces of the Androids

Google's new phone platform, as you know, spans many different kinds of handsets. However, continuing in the strain of hardware difficulties of these handsets, I have thought up yet another problem: Screen Size. The android phones are not like the iPhone or iPod Touch which both share the same screen size. Both of the models in the android video have radically different screen sizes. Why does this matter? Well, when Apple was building the iPod touch they could just move over the apps that do not use phone or text services; and then recompile the ones that did. Boom.

With the many android phones, it will not be possible for each application to be custom tailored to the screen size. I think that there is a reason why google includes the phone with a relatively weak graphics processor in its SDK: as a least common denominator. For the touch phone with a bigger screen, I expect most of the interfaces will be bunched up towards the top or the middle, as the developers are trying to accommodate the phones with the smaller screens. For this reason I think we will see apps targeted towards specific phones; not good for the open source crowd, which likes to reuse code as much as possible. Some of the more radical interfaces will have to be redone for each phone, and that will create a state of confusion surrounding the Google phone. Confusion = Bad Reviews = Lower Sales. Not good for google. I predict that in about 5 years some of the partners will have pulled out and Google will choose to make its own phone.


Technorati Tags: , , , ,

The difference between want and need

Many people have said that they want the iPhone to have specific features found in other phones, such as IM or 3G. But Apple is known for taking a small set of features and making them perfect, rather than taking a large set of features and slapping them together haphazardly (compare iWork templates with Office templates). I thought about what the iPhone has and what I think other people would want it to have, and I made the following list:

(in no particular order)

  • Exchange support without opening an IMAP port. Many people want to use their iPhones at work, but can't because their company uses exchange and IT refuses to open the IMAP port. If Apple builds an open-source implementation of the exchange protocol, that will be one less reason to prevent companies from buying iPhones in bulk.
  • LDAP or Open Directory support for the iPhone's address book. Again, another corporate feature, but wouldn't it be great to be able to set an Open Directory or LDAP server that your company uses for employee registries and be able to use all of the Leopard Server features, and have the iPhone authenticate against that database for corporate websites.
  • Mobile iChat. Wouldn't it be great to be able to IM friends, and possibly do voice chat from your iPhone. This will probably be fixed come February with the iPhone SDK, but it would be so cool for it to be designed by Apple, since it would look like SMS and iChat. If Apple designed it they would probably implement bonjour, something that other IM clients tend to lack.

You will probably notice that I did not mention 3G. That's because I think that ubiquitous standards are more important than fast standards; 3G is not everywhere that EDGE is, and if it is a choice for people being able to use iPhones in their area and fast speeds for select people, Apple would probably choose the customer-friendly one.

Technorati Tags: , , , , ,

16 November 2007

Touch screens

2008 will be the year of touch screens. Why? iYear + 1, about the time it takes to copy an Apple product (remember the bondi blue iMac?). Touch screens and phones that pathetically attempt to play media will be the phones of 2008. All of the major phone manufacturers have announced plans to ship a touch-phone in 2008 but, quite frankly, it took two years to make the iPhone what it is, anything less will fall short in a serious way. The iPhone captivates because of how it thinks different, and does not stick to the status quo. Take, for instance, the keyboard. Pundits rushed to say that it would be hard to type on, but according to the iPhone typing test, I'm typing around 30 words per minute; and I type 60 on a laptop. Also, video cards in phones were still unheard of, and I think that's something that 2008's phone makers will not get, and the android phone won't get either.


Technorati Tags: , , , ,

The androids aren't the phones we're looking for

I downloaded the Android SDK today, and found out that it had an emulator in it. So, being curious, I fired it up. It gave me an emulator of the whole phone, plus any programs that I had written for it. So, to compare, I started up an iPhone web-only interface emulator (iPhoney). The android emulator allows dragging things around on the screen with your mouse, and although I tried to just use the buttons I slipped up several times. I took a screenshot of both of them together. Overall, the browser felt clunky, as it kept trying to select links and text fields, and had jerky scrolling compared to the iPhone (real and emulated).



Fascinating. I will work on writing my first application. More as this develops. (Click to see a bigger image)

Technorati Tags: , , , , , ,

And as we wind on down the road...

So, I downloaded eclipse for Mac OS X today and I have to say, give me an Xcode plugin. I am sure that this will happen when the SDK is open source, but I have to say that I have a list of things that I would want to have to develop for the gPhone:

  1. A C/C++ SDK. Some things just can't be done in Java, and although I blogged about this earlier, I still cannot get past only programming in Java.
  2. Make the gPhone use GCC and GCJ. At the moment nothing on the android platform will compile under the GNU compiler; you have to use the proprietary Sun compiler; it says so on the android website. This is a problem because of the java trap, which locks the (soon to be) open source software into a proprietary compiler.
  3. If the first two are implemented, this one will automatically work (because of GCC), but I want to be able to use Objective-C on the android phone. I think that Objective-C is a really good language, and if the entire OpenStep subsystem is implemented, that would be even better.

Technorati Tags: , , , ,

Our Shadows Taller than our Soul...

Here's the thing about generally all Java applications under Mac OS X: they don't look like things a mac would actually run. I know Apple bundles a theme, but it just doesn't seem good enough. I am writing this because I downloaded eclipse for Mac OS X today, and I see it's Java.

It's really not the Java application's fault, it's just that if you just get a different theme over the app than normal Java you will end up with something that doesn't look very good. I do not like the toolbars in Java, as I think they are too Windows-like. I also have an issue with the buttons, as they are normal size buttons with an abnormal font, and the round buttons (being the default) are overused in Java apps, and that tends to take away the aesthetic feel and the childlike sense of wonder that the application gives you.

Technorati Tags: , , ,

Office UI

So, I've been looking over the new AppleInsider series about Microsoft Office 2008, and I have a couple of things to say:

  1. First, Office 2004 seemed more Mac-Like. Too many unnecessary gradients and the whole "glass" theme is too much like Vista and not enough like Mac OS X. I do realize that Office is written in Carbon, but I sense the distinct touch of the Vista UI designers here, with the glossiness. Also, who's bright idea was it to make the gallery bar transparent? It matches the Leopard menu bar, but the menu bar makes sense, mainly because it is not in the center of a window. Also, it now takes up more space than the old toolbars used to. Moral of this bullet: the Mac OS does not take its cues from the Windows UI.
  2. Some of the things are just clunky. For example, the themes in PowerPoint seem like a developer threw together a gradient and some rectangles, and the fact that the toolbars copy the windows toolbar is deeply disapointing. And while I'm on the subject of toolbars, who puts Open and Save items in their toolbars? Menus are there for a reason, you can't make them go away like you did in Vista.

All in all, if you need all of the features (which 95% of us do not), get OpenOffice or Office, otherwise iWork works better, and is cheaper. Since the OpenOffice.org developers intend to work on the Mac UI after they get it ported to Cocoa, we should see some progress on that front, interface wise. Hopefully they do not make the same mistakes Microsoft did.

15 November 2007

A feature I'd like to see in the iPhone

The iPhone keyboard. Already let's you hold down letters to get a menu of accents and whatnot. This was delivered in the 1.1.1 update. What i'd like to see is the ability to hold down the .com button in the web address bar and get alternate options, such as .net and .org. This could be done on a per keyboard. Basis, so the US English keyboard would have .us as an alternate, and the UK keyboard would have .I'm and .co.uk. Just a thought to make my and I am sure somebody else's life easier. Please, Apple? As a Christmas present?

About the iPhone/iTouch SDK...

I was thinking about the iPhone. I have not yet seen any FM radios for the iPhone, nor any special things that plug into the standard iPod 30-pin connector. Then, I got it. All of those companies need the SDK to make their devices work. Ergo, nothing third party plugs into your iPhone.

I, Phone

I had a couple of feature ideas for the Google phone today, because even though I don't like Java, they are still offering prizes. So, without further ado, here is my list:


  • I know this has been proposed for the iPhone: a barcode scanner. Just like delicious library, but on your phone. You scan a barcode and your google phone reads the number and finds out what it is, through some online service. It would be really cool (and somewhat practical for corporations) if it recognized other types of visible codes, such as postal tracking codes. Scan your tracking code and it connects to FedEx or UPS's website and brings up the page for your order.


  • Some kind of database accessor, or authentication through LDAP or something like that. Corporations would buy it, and you have bulk orders for phones.


  • A thermometer. Wouldn't it be so cool if, next to your weather report you have the current temperature exactly where you are? This is more of a hardware feature, but it would be cool.

14 November 2007

Problems I saw...

A problem that I saw when I was watching the video of the android platform is that the graphics seem slow. They seem just a little too sluggish to be dragging things like globes and web pages around with a finger. I am sure that some models will have faster video processors, but that would provide needless confusion regarding the models of google phones. The google phone may have the same graphics processor as the iPhone, but the slowness of Java may just make it a bit too slow to work. The google phone being out in 2008 says to me that the companies involved need some time to fine-tune their hardware.

Only Java for Android



I just read something very sad. No C or C++ for the Android phone, only Java. Now, I am going to put aside my feelings about interpreted languages and give this an objective analysis.


  • Java is good for the Android OS because it means that it can be run on any hardware (not quite solving the keyboard problem, but coming close). Developers will not need to compile individual applications for each model of phone.

  • Java is good because with each new release of the gPhone all of the old apps are guaranteed to work with no to little modification (for thing such as hardware problems). Corporations will be happy about this because all of their legacy junk will "just work" for all versions of gPhones, barring hardware incompatibilities.

  • Java is bad because it is being run on slow hardware and needs all the speed it can get. 3D in java on a (guess) 500 MHZ processor makes me shudder, even if the phone has a dedicated video card.


Overall, it just comes down to preference and what your application needs to do. If it needs to find somewhere to eat, great. If it needs to play the latest version of HALO, not so much.

More on Phones and Keyboards

So, I watched the android youtube demonstration today. I still haven't downloaded the code yet, but that will be the next thing I do. Yes, the 3D acceleration is great, and google earth on the phone is cool, but I am still wondering, HOW DO THE PHONES WITH NO TOUCH SCREEN USE THEM?!? Google earth would take probably about six to seven buttons: four to move the globe, two to zoom in and one to bring up dialogues and display information. That's an idealized version of google earth, it could get much more complex and require more buttons than are on the phone. What if some application needs a different button not on the device the developer will just have to find a way around it, not add a button like on a touch screen. What I think will happen is that developers will simply release two versions, one for the touch screens and one for the keyboard. People will get confused by the choices of phones and just buy an iPhone, or another brand of phone. Since Android is actually just an "alliance", there will be no distinct version 2.0 of the phone hardware, and new features that could eliminate the problems in the old phones just won't happen. Google will have to get it perfectly the first time, or it will kill itself for the next decade trying to fix its mistakes.

SafeSheep

So, leopard went into SafeSleep mode for the first time today, and I have to say, it has improved since tiger. Instead of a black screen, there was a black and white blurred image of my desktop with a progress bar superimposed on it. Cool.

13 November 2007

Ladies and gentlemen, start your compilers...

Google is offering $10 million in prizes to developers that can write apps for the gPhone (now Android). I think that they may use the open-source licensing of the operating system to bundle some of the best apps with the phone. For example, the productivity apps item on the list seems mighty like some of the features on the iPhone, and I think that Google may decide to add a "your software is now open-source" clause to the prizes

Two other items also caught my eye. They are:


  • Media consumption, management, editing, or sharing, e.g., photos (emphasis mine)
  • Gaming


If you are going to be doing editing on a mobile phone, or any mobile device, so help you god. It's hard, even with a touch screen. A phone is no place for image editing. The gPhone does run Linux, so it may be able to run the GIMP, though.

Quite frankly, and with regards to gaming: unless you are going to be playing tetris on this phone at super-sluggish phone speeds, this phone is going to have a dedicated video card. Just like the iPhone. And if you are going to do 3D games, you may need a better video card than the iPhone, because the iPhone does not have OpenGL. 2008: Who's phone has a bigger, better video card. This is something that the other phone providers are going to get in, like, 2012.

Overall, I immediately see one problem with the gPhone: some devices have touch screens and no keyboards, some devices have normal screens and physical keyboards, and some are abominations and have both touch screens and keyboards. Google's android website says that everything right down to the dialer is going to be able to be swapped out, so... are people going to be able to swap out the keyboard? Oh, and another thing: there is not going to be a version without the keyboard program customized for physical keyboard phones; Google chose to use the Apache license, which requires the whole project to be distributed. Oops.

I am planning to download the SDK as soon as I get my Linux Kernel working (it won't load right now; The recent xkcd comic makes me suspicious, although I think it was just an update), and I think some, if not all of my questions will be answered.

The world is all right again

Apple and google are up a lot. Told you it would go back up.

(More) Leopard Boot Up and Shut Down

I just realized what makes Leopard startup seem so fast. Leopard eliminated the "Starting Mac OS X" screen. It goes straight from the gray apple logo to the login window. Cool, huh.

12 November 2007

Leopard Startup and Shutdown

Leopard starts up really fast, and that is what we've been hearing about. However, to my knowledge no one has mentioned the shutdown time for leopard. I shut down my mac today and the shutdown time is about one second. I have to say: I love this. This is great for notebook owners and people who are usually powering down their computers at night.

I think that this happens because, just as Leopard starts everything up in parallel, it also shuts everything down in parallel. On my computer there is no screen with just my desktop and a spinning wait counter, I press Apple menu ➤ Shut down and confirm. My screen goes black, and within a second my fan turns off. Awesome!

11 November 2007

Why I love Wine and Ubuntu

Wine was originally for the linux platform, and it shows. When using Wine on Ubuntu to run various games, I stumbled across a very interesting piece of functionality. After you install Wine, a wine submenu appears in your applications menu. The "Programs" submenu of the Wine menu functions like the Windows "All Programs" menu. Click on an application and it launches. Cool.

However, I did run into one small snag. I pressed "Restore to Defaults on the Ubuntu menu editor, and my wine folders' names were changed to wine-foldername. I tried editing it back with the menu editor, but the Ubuntu menu editor will not call up the proper dialog to edit a folder's name. I fixed this by installing kmenuedit and editing the menus with that.

Apple down ten. Why?

Apple fell ten points Friday, and I just realized why.

When it came to me, it felt so obvious. Apple is down ten points because investors saw Google fall. They thought that Apple would fall further and saw an easy way to flip some Apple stock around the iPhone Europe launch. Or they thought that it would be safer to pull out their money. Then, I looked at this chart:



I looked at that chart and the Google Finance chart and saw that Yahoo used a semi-logarithm scale. If I extrapolate a line from the log scale I get this:



There always seem to be a small dips before the holiday selling seasons. I think that this may just be normal behavior for a stock as volatile as Apple's. What the log chart does not show, and what Google's does, is that Apple has gotten more and more volatile. More people investing means more that can change.

If I extend the extrapolation line, Apple stock would hit $200 per share by their second quarter in their fiscal year.


I realize that ten points is nothing to overanalyze. I am just trying to justify the dip as normal for the time of year.

Seashore

I've started using Seashore now, as opposed to the GIMP on leopard. It seems stable, but I cannot find a way to use a checkerboard background for transparent documents, like in the GIMP or Photoshop. However, it works on Leopard without any weird lag.

Another Problem with Leopard

I found another problem: Leopard does not always correctly recognize which applications are supported or not, some things like iMovie '06 or the GIMP, which run perfectly fine, are tagged with a do not enter sign. I have not figured out a pattern to this yet, but I will see how works.

UPDATE: They've gone away now. Strange.

I've been thinking...

I've been thinking... why doesn't Apple name their final builds of Mac OS X "Golden Delicious," not "Golden Master?"

Leopard and HUD panels

With Leopard's release, apple decided to integrate those black transparent panels as a feature within Interface Builder. This means that it will be much easier to do "cool looking" black panels without the work involved before: a custom subclass of NSPanel, rewriting the background view, making the title bar work again, etc.. However, one thing that I fear is that too many people will use them and we will get a Vista-like windowing problem of not being able to tell what window is on top. I think that the main thing UI designers should recognize is that Apple uses these panels sparingly. By just thinking about where I saw them I can think of two places: the quick look panel and the image adjuster panel. Nowhere else. Without the proper restraint we will have applications use them when not aesthetically wise, such as with a normal inspector-like panel. These kinds of panels are good for when you want something to stand out and you do not have very many controls on it. Like most things, when used sparingly and tastefully it works well, when overused it utterly fails.

Core Animation + Photoshop/GIMP

So, I was thinking about the GIMP on leopard, and I thought about Core Animation and Core Animation being a layer-based animation system. What came to me was a very brilliant thought: Core Animation acellerated image editing. If I were designing this system I would use Core Graphics (specifically Core Image) to implement the layers. I find this interesting because one could then implement something like Cover Flow for the layers. The way I thought of it a user would press a button and then the layers would rearrange themselves into something like Cover Flow. I might do some mock-ups later, but for now it is just an idea.

Leopard Compatibility

I have been using Leopard since the day of the release, and I have found a few compatibility issues with the programs that I commonly use. I use the GNU Image Manipulation Program (The GIMP) instead of Photoshop because I find it's tool based UI easier to use. Leopard updated X11 to x.org version 7.2, which seems to cause even more short-term compatibility problems. The problem that I have with the GIMP is that anything on the canvas lags a lot. Also, whenever I try to use the paintbrush or pencil tools on the canvas the program crashes. Lastly, a minor complaint but one that applies to X11 as a whole is that the window title bars were not updated to the new Leopard look.

I also use the cocoa beta version of OpenOffice.org for the mac, and with Leopard the icons are no longer transparent, they have a black background. Again, a minor issue, but annoying.

Amazing things you can do with an iPhone and a Bluetooth Mac

Just because the iPhone does not have any bluetooth services enabled does not mean that you cannot do anything fun with bluetooth and your Mac! I downloaded a program called proximity to enable locking my computer when my iPhone moves out of bluetooth range. To accomplish this I followed the directions here to make applescripts that lock and unlock your screen.

Now I can officially say that my iPhone and my Mac get separation anxiety.

Installing Leopard on an iLamp

Remember that iMac G4? The one with the screen that could swivel 360°? The one lying in your basement, deprecated because you could not install the newest Mac OS? Well, as it turns out, today I installed leopard on one with a 700 MHZ processor. Processors less than 867 MHZ are not supported under leopard. However, it turns out that the processor was not the problem.

To install, I put the leopard CD into a 1 GHZ PowerBook G4 and rebooted both machines, putting the iMac into FireWire target mode first. The install went off without a hitch; Leopard detected the iLamp disk in target mode, and about an hour and a half later we had leopard installed. It booted up just fine, ran everything fine, and even ran Front Row. However, sometimes when it would fall asleep the iMac would wake up with a rainbow of vertical lines on the screen. I have not found a fix for this yet, but think that it is due to the iMac having a poor integrated video card. It's still not a speed demon, but if you set it to never sleep, but enable a screensaver you should have fewer problems.

UPDATE: The network and computer icon is actually a hi-res iLamp icon; this shows that Apple was perhaps originally going to have supported machines under 867 MHZ, but did not want to support terribly old hardware.