How to Airplay from your iPhone to your Mac

This is not (yet) built-in to OS X, but there is a pretty good app that lets you do it.

If you run Reflector on your Mac, it will show up on your network as an Airplay device, and you can mirror your iPhone to it.  It's very handy for capturing movies of your app, with something like Snapz Pro X.


For many good reasons, Apple has locked down Java Web Start in recent updated to Lion and Mountain Lion. For less good reasons, they are shunting responsibility to Oracle for Mac OS X Java. Oracle, it seems, can barely give a fuck about Java on OS X. It’s hard to blame them since they probably make zero money on it.

What really blows: FileMaker, which is a wholly owned subsidiary of Apple depends heavily on Java for the entire FileMaker admin console UI. So, this mission critical UI that is made by an Apple subsidiary keeps breaking all the time when Apple issues various death edict patches on Java.

The support suggestion from Apple and FileMaker is “just get Java from Oracle.” Unfortunately, this doesn’t solve the problem at all. Trying to launch JWS console still complains that you should install Java from Oracle, even though you fucking already did.

So, here’s one thing that works:

  1. download FireFox, which lets you save the .jnlp web start file to your downloads folder.

  2. in a terminal, type

    javaws admin_console_webstart.jnlp
    

or whatever the filename was you saved.

Setting Apple ARD stuff from command line

Super handy info here:

 /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/
kickstart -help

The short answer is yes, but carefully.

Two-step authentication greatly improves the security of your online accounts. In a nutshell, you have to know something (a password) and have something (usually your mobile phone) to perform certain sensitive operations.

Apple clearly explains all this in detail with their new support document

Two-step authentication makes it very difficult for a stranger to gain access to your account. They would have to guess or steal your password, and also steal your phone (or somehow hijack messages being sent to your phone).

However, you do have to be careful. After setting up 2-step, you'll have three things: a password, your phone (or phones) and a recovery key, which is a very long password. If you manage to forget or lose 2 of these three things, you are locked out of your account, probably permanently.

Even if you don't lose two of the three things, if you are prone to forget your password, you'll need the recovery key and your device to reset the password. Which can be inconvenient, since the recovery key is not something you should store on a computer or phone, and you probably should not carry it with you. You would need to keep it in a safe place like, um, a safe or something, and thus resetting your password would be annoying.

The other part of it might not affect you. I like to use auto-generated, impossible to remember passwords, and I use a special password manager program to create and use them. This is fine for bank, email and facebook passwords. I don't have to type those very often.

But I have to type my Apple ID password all the freakin time. So I have one that is long and strong, but still easy to type. However, it's not 'strong' enough according Apple's arbitrary password strength rules. So I need to think up another super Apple ID password that I will never forget, so I can turn on 2-step.

Proceed cautiously, but don't procrastinate. It's important to secure your online IDs.

Update: apparently there is a three day waiting period after you request two-step. This is to minimize the chances that someone will lock you out of your account.

All the more reason to set up two-step authentication: you'll always be at risk of someone taking over your account permanently if you don't. Imagine you don't check your email for three days because you are on vacation...

Airdrop over ethernet

I have to write this down immediately otherwise I will forget it:

 defaults write com.apple.NetworkBrowser BrowseAllInterfaces 1

Courtesy of Voss

Speculation on the 'Big' iPhone

There's a lot of rumor and speculation (from reasonable Apple watchers) that Apple will release an iPhone with a significantly larger screen, probably around 5". I personally am not that interested in a bigger screen on my smart phone: the iPhone 5 is even a little bigger than I would like.

But how would Apple do the bigger screen?

Option 1: Bigger Pixels

The most reasonable, and probably the most likely approach is one suggested by Marco Arment. The idea is that they just make the screen physically bigger, pixels and all. This has zero impact for developers, and the only impact it has for users is to reduce the DPI to about 264 pixels per inch. If I had to bet my own money on these options, this is probably the smart bet, even though it's kind of the most boring option. It's also probably the most cost-effective for Apple, since they would be able to source the screens from the same suppliers and with the same specs that they use for the iPad Retina.

But recently, a number of Android phones have been released that have CRAZY high DPI specs, like over 400 DPI. Now, these are AMOLED displays, which are crappier than the IPS displays that Apple uses.  It's similar to the megapixel battles in the digital camera space: more megapixels do not necessarily mean better pictures: you have to consider effective ISO, color quality etc.. Higher DPI does not necessarily mean a better looking or more usable display: performance in sunlight, color saturation and other factors all have a big impact.

I'm suggesting that Apple will react to these specs, and ship a higher resolution display to "catch up." Rather, I am suggesting that clearly manufacturers are now able to ship insanely high res displays in volume. So Apple has access to more pixels if they want them.

Option 2: @3X

iOS Developers are familiar with the simple compatibility solution Apple introduced when the iPhone 4 introduced the Retina Display. The system automatically scaled up fonts and vector graphics, and would look for double sized images (named @2X by convention). If an @2X image was present in the app, it would be used. If not, the regular image would be scaled up.  The scaled up images look pretty terrible, so developers very quickly shipped updates with new images.

Let's look at how the math works out if Apple said "Hey, @3X everybody!" (and that's pretty much all the documentation they would need to provide. We all know the drill, and would know exactly what to do to make our apps @3X ready.)

Supposed the target display size is 5" ; that means the narrow side of the display would be 2.45" and it would be 960 pixels (3 X 320), which yields a screen resolution of 392 DPI. The current iPhone Retina Display is 325 DPI, so that's a 20% increase in density. I have no idea if that's feasible for manufacturing in IPS displays, but it's a lot less than the currently shipping AMOLED displays. 

The biggest downside of this is that it would make apps a lot fatter: you'd have to ship all your icons and graphics in 1X, 2X and 3X. And note that a 3X images is 9 times bigger to store than the base image. Math.

Option 3: 1080p

The new super huge android phones seem to all be going 1080p. This seems like ridiculous overkill to me, since even at iPhone Retina resolution the pixels are too small to see. (Though my kids swear that they can see the pixels; so possibly I am just old.)

But Apple could say "screw it, we're going right to 1080 pixels on the short side of the screen." The immediate question is how this would work for developers? It's not an integer multiple of the original 320 pixel display. You can't just make @3X images; and anything that scales up is not going to be a nice clean pixel boundary: hello Moiré patterns!

But look at what Apple has done with the new Retina Macbooks: you can run those at all kinds of non-integer-multiple resolutions, and things look fine.  At a certain point, it seems, pixels can be small enough that you can do arbitrary scaling. 

In this scenario, developers can do nothing, in which case iOS will scale them to 1080p; since the aspect ratio is still the same 16:9 as the iPhone 5, no layout changes are needed. And if developers so wish, they can create @PX images, which are images laid out to be 3.375X bigger than their base counterparts. A 44x44 point icon would be 148.5 x 148.5 pixels, which is impossible of course, so it would have to be 148x148 or 149x149.  I guess you would always have to round up to avoid weird 1 pixel-thick gaps appearing between elements in some situations. But the pixels are so frigging small at this point (441 dpi) I think it would work.

So what would I put my money on?

I guess I would choose the boring answer as being the most likely. It certainly seems like the least impactful to development of iOS graphics software and iPhone graphics hardware; uses no additional memory; doesn't make app developers do more work and make fatter apps. And battery life would be the least impacted by this option.

But it can't sit too well with Apple that these new big phones are beating them on displays, at least on the specs of displays. It may well be that the Retina display creates a better experience. At a point, it becomes a Power PC situation. They can parrot all they want that the clock speed isn't what's important, and all the time everybody knows that an Intel processor would be much faster in almost every practical way. 

You can almost hear Steve Jobs saying it: "So you want a big phone, a phone too big to use with one hand? You want 1080p, even though it's physiologically impossible to see the difference from 720p? Fine, here you go dumbass: 441 DPI full 1080p 5" display."

I just hope they don't stop making the regular sized iPhone if they do it.


Using wget to archive a web site

Short answer:

wget -rkp -l3 -np -nH --cut-dirs=1 http://www.example.com/ 

Long answer:

http://psung.blogspot.com/2008/06/using-wget-or-curl-to-download-web.html
I was trying to configure SMTP on my Lion (and then Mountain Lion) Server machine in the office. It's a mac mini. I only wanted basic relaying so that the phone system can connect to it and send voicemail notifications. It had been a while since I had edited a postfix configuration, but it all came back to me quickly.

I kept editing the configs in /etc/postfix and running 'postfix reload' ; but nothing seemed to ahve any effect. I kept getting 'relay denied' errors. 

It turns out on Lion/MoLo server, the postfix configs are actually in /Library/Server/Mail/Config/postfix ; but a completely valid config is also in /etc/postfix. One minute of editing the correct files solved my problem. 


iPhone 5 and Wal-mart discounting

Gruber writes about some genius analyst singing the usual "Apple is doomed" song.

He correctly points out that it's not a 33% discount, but really only a 10% discount.  It's $63 off of a $650 unsubsidized price.

I just would like to dig into this a little deeper. Here's how retail works: a manufacturer (Apple) makes a product, suggests a retail price ($650 in this case), and sells it to a retailer (Wal-mart) for somewhat less than that. How much less is a negotiation, and depends on the relative size and strength of the parties involved.

Wal-Mart and Apple are two of the biggest, strongest actors in this kind of play, so it's hard to guess how much margin Wal-mart was able to squeeze out of Apple. Probably more than Best Buy, but maybe less than AT&T. Apple and Wal-mart aren't going to tell us. 

Anyhoo, back to the way retail works: due to pesky things like anti-price-fixing laws, the manufacturer cannot order or pressure the retailer to set the final price. Suppose Apple sells the iPhones to Wal-mart for $586, Wal-mart can turn around and sell the things for $587 or $585 or whatever they want. You'd expect Wal-mart to want to make a profit, so if they are going through all the trouble to sell iPhones, you'd think the price they are selling at is safely above the wholesale price.  

But the subsidy, that's where things get interesting.  

You know those little wireless stores in kiosks around the town and the mall? They have signs that say "AT&T" in big letters and "Jimmy Joe Johnson's Wireless World" in tiny letters.  These are little businesses run by scrappy salesmen. Their job is to sell two-year wireless contracts. They have to pay 2 or 3 sales people to sit around the store all day long and wait for customers to walk in. Then they have to pay the sales folks a commission to sit down with a customer for twenty minutes and set up a wireless contract. And then have enough money left over to make the business worth running.  I really don't know how much they get paid for a contract.  But a two year contract is worth like $2000 or more to a carrier.  AT&T could easily pay $100 to acquire that customer.

So imagine you are Wal-mart, the biggest, baddest retailer in the universe. You go to Apple and say you will by a gazillion phones for whatever price; you go to the wireless carriers and say you will close contracts on a gazillion customers for $90 each. You can do this because you pay your employees terrible money, and $90 times a gazillion is 90 gazillion dollars. (if my math is correct.) They've undercut the mom-and-pop wireless store; they are delivering more customers to Apple and the carriers.

So Wal-mart cuts their customer $63 discount on a $2500 purchase: Wal-mart customers think it's an awesome deal; and analyst think Apple's margins are getting squeezed. Both are wrong.

Wal-mart wins; Apple wins; carriers win. Mom and pop corner wireless store loses.

Speculation on iPad Mini

Apple is likely to announce the new, smaller "iPad Mini" tomorrow at a press event. Here are my last minute speculations on what it will be like.

I agree with all the conventional wisdom: 7.85" screen, 1024x768 display, lower than iPad price point.

There are two particular areas where there is a lot of different guesses, so I'll take a shot at those.

Device Name

Many guesses are out there, some seem obvious (iPad Mini), some are more create (iPad Air), and some are toungue-in-cheek (iPad Junior.)

My notion is that Apple will not give it a different name: just as they are not calling the newest iPad the iPad 3, they will not call this new iPad anything except "iPad." They will distinguish the models only by size. When you choose an iPad, you will be able to select a size (large or small), just as you do with a Macbook Pro or Macbook Air.

Why would they do this? Look at other things that Apple has given different names to:

- iPod vs. iPod Mini vs. iPod Nano
- iMac vs. Mac Mini
- Macbook vs. Macbook Air vs. Macbook Pro

When Apple adds a secondary product name, it is always when there is a different form factor. An iPod Nano is not just a miniature iPod. A MacBook Air is not just a different size of Macbook. They are a unique product with their own industrial design and are very different than their relatives in the hardware line.

With the smaller iPad, it is not going to be different in any meaningful way except for the size: the same apps will run, it will have the same buttons. It's exactly the same as the bigger iPad.

My backup guess is that they will be named by their screen sizes, but this seems awkward, because Apple would have to say 10" iPad and 8" iPad, which isn't really accurate, but 9.7" iPad and 7.85" iPad are just awkward. Also, what do they call iMac screen sizes in metric countries? Large and small seems cleaner.

Price Point

It seems to me that a huge target market for this iPad is kids: if you've ever seen a 7 year old carry a full sized iPad, you will probably agree that they would like a slightly smaller one. Also, if Apple ever hopes to make iPad a standard for education, these glass and metal devices have to get a lot cheaper. So I think they will be aggressive on price, to get iPads into many hands, while still maintaining a good profit margin. 

I assume that Apple could hit the $199 price point, since Amazon has done so, and Apple has bigger economies of scale than anybody. But I think they could also have just as big an impact with a $249 base price for a 16GB wifi model. If you are shopping for a tablet, and you see a $199 Nexus 7 that is sort of like an iPad, almost as good really it is, and a $249 actual iPad, which are you going to get?