DevJuice: Injection for Xcode

Are you one of the many devs who miss Xcode's "Fix and Continue" feature? Apple removed "Fix and Continue" in Xcode 4. This option allowed you to patch your binary with updated code, as you ran and debugged it.

Well, there's good news. Developer John Holdsworth has released Injection for Xcode. It's an OS X application that lets you inject those same code changes into running applications for development and debugging. It works with both OS X and iOS apps, including those running on devices.

It works by allowing your classes to be recompiled selectively as class categories. These are loaded at run time via bundles, and override your originally compiled code. So you can modify, enhance, and adapt your code during run time and tweak elements on the go.

Holdsworth has been working with this feature for quite a long time. He writes:

In London there were two banks which embraced NeXT for developing front office trading systems in an age before even windows 3.1. The hardware was only just up to it however and build times where at three quarters of an hour so we started using this means of patching the app using bundles rather having to relink the whole thing.

I asked him to fill in some of his background about working with Apple and NeXT technology. He responded:

I first encountered NeXT in 1989 at IRCAM the computer/music research institute in Paris where I fell in love with Objective-C. It's great to see things coming full circle with all this memory managed stuff, and C++, such a half baked language falling away.

How ironic that it should be a mobile device which paved the way. If you ask me the closest we've been to Object-Oriented Nirvana is Smalltalk, and Objective-C is pretty close to that.

Steve visited one day spinning the reality distortion field about the new "autorelease" mechanism. Quite the mystic.

My only other claim to fame was when the Apple purchase of NeXT came through I sent him an email enthusing greatly and got a reply saying "Thanks John, a Merry Christmas to you and your family."

Been a disciple ever since. Shame I didn't buy the stock.

Unfortunately, Apple has been a bit squirrelly about letting Injection into the OS. Holdsworth first hoped to start selling Injection on the Mac App Store back in February. Apple has been sitting on the app for months, failing to give it a thumbs up or down.

Do you want to help out? Drop Apple a note at appreview@apple.com and ask them to expedite approval on Injection for Xcode (App number #id498448895).

Until then, Injection for Xcode is available on Holdsworth's personal site. It offers a two-week trial period and costs US$9.99 (individual license) or $25.00 (corporate) after that. Licenses are issued per-machine.

To purchase, the app guides you through PayPal (via a web view) after the trial period.

DevJuice: Injection for Xcode originally appeared on TUAW - The Unofficial Apple Weblog on Thu, 10 May 2012 16:00:00 EST. Please see our terms for use of feeds.

Source | Permalink | Email this | Comments

DevJuice: Injection for Xcode

Are you one of the many devs who miss Xcode's "Fix and Continue" feature? Apple removed "Fix and Continue" in Xcode 4. This option allowed you to patch your binary with updated code, as you ran and debugged it.

Well, there's good news. Developer John Holdsworth has released Injection for Xcode. It's an OS X application that lets you inject those same code changes into running applications for development and debugging. It works with both OS X and iOS apps, including those running on devices.

It works by allowing your classes to be recompiled selectively as class categories. These are loaded at run time via bundles, and override your originally compiled code. So you can modify, enhance, and adapt your code during run time and tweak elements on the go.

Holdsworth has been working with this feature for quite a long time. He writes:

In London there were two banks which embraced NeXT for developing front office trading systems in an age before even windows 3.1. The hardware was only just up to it however and build times where at three quarters of an hour so we started using this means of patching the app using bundles rather having to relink the whole thing.

I asked him to fill in some of his background about working with Apple and NeXT technology. He responded:

I first encountered NeXT in 1989 at IRCAM the computer/music research institute in Paris where I fell in love with Objective-C. It's great to see things coming full circle with all this memory managed stuff, and C++, such a half baked language falling away.

How ironic that it should be a mobile device which paved the way. If you ask me the closest we've been to Object-Oriented Nirvana is Smalltalk, and Objective-C is pretty close to that.

Steve visited one day spinning the reality distortion field about the new "autorelease" mechanism. Quite the mystic.

My only other claim to fame was when the Apple purchase of NeXT came through I sent him an email enthusing greatly and got a reply saying "Thanks John, a Merry Christmas to you and your family."

Been a disciple ever since. Shame I didn't buy the stock.

Unfortunately, Apple has been a bit squirrelly about letting Injection into the OS. Holdsworth first hoped to start selling Injection on the Mac App Store back in February. Apple has been sitting on the app for months, failing to give it a thumbs up or down.

Do you want to help out? Drop Apple a note at appreview@apple.com and ask them to expedite approval on Injection for Xcode (App number #id498448895).

Until then, Injection for Xcode is available on Holdsworth's personal site. It offers a two-week trial period and costs US$9.99 (individual license) or $25.00 (corporate) after that. Licenses are issued per-machine.

To purchase, the app guides you through PayPal (via a web view) after the trial period.

DevJuice: Injection for Xcode originally appeared on TUAW - The Unofficial Apple Weblog on Thu, 10 May 2012 16:00:00 EST. Please see our terms for use of feeds.

Source | Permalink | Email this | Comments

The road to OS Xi: Where iOS and OS X suffer a teleporter accident and merge

Remember The Fly? That's the one where Jeff Goldblum tries to teleport but instead gets his genes all mixed up with a fly.

"[T]he Telepod computer, confused by the presence of two separate life-forms in the sending pod, merged him with the fly at the molecular-genetic level."

Look at Lion/Mountain Lion and iOS; it's easy to see that the two operating systems are growing closer together, starting to converge. If you're willing to put on your crazy hat (tinfoil is optional), you might consider the following thought experiment. What if Apple consolidates the two into a dual-mode OS that supports both mobile and desktop use?

Developers have seen OS X 10.8 Mountain Lion pick up numerous mobile features like Game Center, Reminders, and Notification Center. Apple is implementing an iOS-like sandboxing approach to application development with high levels of permission requirements. Apple is integrating share sheets (a UI metaphor that helps users route data from one app to another using a centralized delegation mechanism) in a manner similar to iOS.

Even Xcode, the bulwark of traditional "general computing," is being assimilated. Starting this spring, Xcode is now available only through the App Store, distributed in a compliant sandboxed app bundle. When even the main developer IDE for the Mac is subject to the onslaught of the future, Apple's transformation of the Mac OS has few obstacles ahead of it.

Sure, Tim Cook has warned us about the fate of the toaster fridge. "I think anything can be forced to converge," he said last week during the Apple Q2 financials call (referring, in this case, to Windows 8 Metro). "The problem is that products are about trade-offs, and you begin to make trade-offs to the point where what you have left at the end of the day doesn't please anyone. You can converge a toaster and a refrigerator, but those things are probably not going to be pleasing to the user."

I don't think Cook's statement rules out a unified OS that adapts, depending on the user's situation, instead of forcing users into a single UI for mobile and desktop access. Under the hood, there's already very little separating the core technology of OS X and iOS. I also think Apple is smart enough not to force desktop users into an interface better suited for use on the road, and vice versa.

The key isn't creating a chimera that tries to please everyone and suits no one. Instead, I think Apple is capable of delivering a satisfying computing experience that works in multiple environments. Call it "situational computing."

It's not as if they haven't explored this arena before. Add in the ever growing importance of AirPlay, which allows interfaces to be wirelessly mirrored outside one device to another display, and iCloud, which sublimates data out from any single device and syncs it to all your computing platforms, and you're diving into an amphibious core technology, one that can adapt to sea or land as needed. (To stretch a metaphor to near-breaking.)

In many ways, OS X is "too much computing" for a great proportion of Apple's consumer audience. A simplified user interface would suit many needs, and cover nearly everything users need to accomplish -- although I do believe they need more sophistication than an iPad currently offers.

It's just that OS X Lion and Mountain Lion is a bit of overkill. Yes, OS X (and going back to Mac OS 9) offers Simple Finder, but even dropping most of the complexity of the file management environment doesn't change the inter-application experience, which remains fully OS X complex.

iOS as it currently stands, however, will never be a perfect solution for students creating research papers. It's designed for serial unitasking, not the multiple research threads and tasks of academic work.

Hopping between a text editor and Safari is horrific, and even good apps like Daedalus Touch or Writing Kit at best provide Frankensolutions. In fact, most creative work requires app-to-app switching: creating pictures in Photoshop, editing text in Word, updating spreadsheets in Numbers, and presentations in Keynote.

I trust that Apple can create a multi-windowed version of iOS, simplifying the need for a multitasking interface. I also believe Apple can leverage wireless ways to treat every monitor as a potential extra screen.

This display outreach feature already exists with Apple TV and AirPlay in current iOS deployments. So why not extend it to all Macs and all displays? The third party Reflection app, which I have been using a great deal since it debuted, provides a hint of the possibilities.

That's because AirPlay isn't just about mirroring. It's also about adding extra screens. You already see this in a few games like Real Racing and Bartleby 2. The device acts as the controller, and the AirPlay destination works as a secondary screen.

These apps represent just the start of where the technology might take off, especially if Apple introduces a hardware touch-based Apple TV. I should mention that the hardware TV is a possibility that I'm a bit dubious about; others here at TUAW believe in it a lot more than I do. I'm happy to be proved wrong.

But think about taking AirPlay to the next level, passively expanding its functionality to offer to transfer control to your iMac or Thunderbolt Display when your iPad comes in range of AirPlay Bonjour services.

Imagine redirecting iPad computing to your home screen while sitting at your desktop, with your data and your application state travelling back out with you as you once again hit the road, courtesy of iCloud. Imagine a slide-in laptop shell that transforms the iPad's retina display back to desktop/laptop mode for more intense work sessions when needed.

The thing is this: I don't see any big roadblocks preventing this vision from being implemented today, with current tech and current software capabilities. It's as if all the pieces are there already, just waiting for Apple to give the signal to go and productize them.

Sure, Cook has warned us away from Toaster Fridges. But do you think Apple has made a habit of developing Toaster Fridges ever? I trust Apple. And I think they could easily go in this direction, delivering high quality consumer technology.

When Apple says "No", we hear "maybe." This is not the first time we've gone to the Apple dance. It is classic Apple. They make fun of some tech (netbooks, tablets, whatever) and then they create the definitive version of that device, building something that redefines the market forever.

Sure, this entire post is wild speculation -- but remember this: the capacity for implementing this kind of development path is already there. There's nothing I've discussed that's groundbreaking or would require huge R&D. Will iOS and OS X merge into OS Xi? Maybe. Can they? Definitely. Perhaps Apple will surprise me and deliver this unicorn? Possibly.

What do you think? Jump in and leave a comment with your thoughts.

The road to OS Xi: Where iOS and OS X suffer a teleporter accident and merge originally appeared on TUAW - The Unofficial Apple Weblog on Sun, 29 Apr 2012 23:30:00 EST. Please see our terms for use of feeds.

Source | Permalink | Email this | Comments

How to find/remove the Flashback trojan

According to Russian antivirus firm Dr. Web, over 600,000 Macs worldwide are infected with the Mac flashback trojan. The trojan can be installed if you visit a malicious website, and it will attempt to connect your Mac to a botnet.

Fifty-seven percent of infected machines are located in the US and 20 percent are in Canada. There are even 24 infected machines supposedly connected to the botnet from Apple's Cupertino campus. This trojan targets a Java vulnerability in Mac OS X that was recently patched.

It should be noted that in OS X 10.7 Lion, Java isn't included by default; only those who have deliberately installed it are potentially vulnerable to this exploit (or those running Snow Leopard or earlier OS X versions). If you installed it at some point but no longer have a reason to run Java, you should probably turn it off completely or at a minimum disable it in Safari.

F-Secure has provided a set of diagnostics that'll let you know if you have been infected. If you have the malware on your machine, F-Secure's page can walk you through the steps to remove the infection.

Thanks to everyone who sent this in.

[Via The Loop]

How to find/remove the Flashback trojan originally appeared on TUAW - The Unofficial Apple Weblog on Thu, 05 Apr 2012 10:15:00 EST. Please see our terms for use of feeds.

Source | Source | Permalink | Email this | Comments

Accessibility Spotlight: One Switch. One Head. The World.

Over the years, Apple has consistently followed through on its strong commitment to accessibility in the development of new technologies and products. We at TUAW have a diverse community of both writers and readers, and we use many assistive technology features in our day-to-day lives.

We appreciate the opportunity to highlight these important enhancements -- both OS X and iOS -- in our continuing coverage of accessibility and assistive technology developments. If you have a great AT story, we would love to hear from you.

Speaking of great accessibility stories: we were thrilled to see this self-made video (via Chris Pirillo) showcasing exactly what the title says: One Switch, One Head, The World.

Accessibility Spotlight: One Switch. One Head. The World. originally appeared on TUAW - The Unofficial Apple Weblog on Fri, 30 Mar 2012 17:50:00 EST. Please see our terms for use of feeds.

Source | Permalink | Email this | Comments

Intuit releases Lion-compatible Quicken 2007, as promised

It was late last year that Intuit offered a Christmas olive branch to frustrated Quicken 2007 for Mac customers. The finance software giant promised that it would find a way to make Quicken work on the latest version of OS X; today, it looks like that promise has been kept. Quicken for Mac 2007 Lion Compatible is now available for purchase.

While the company had built a ground-up Mac offering in Quicken Essentials that showed some spark and a new look, it lacked some of the key features that users of Q2007 had grown fond of (QIF export, direct bill pay, support for rental properties); unfortunately, the older app was never updated past its PowerPC roots and ceased working when Lion dropped support for the Rosetta compatibility layer. Q2007 users fumed, jumped ship to other finance products, stuck with Snow Leopard, or shrieked with frustration if they updated without realizing the issue. (We tried to warn you, people, really we did.)

It's not easily found on the Intuit site, but the Lion-friendly version of Quicken 2007 can be bought online (it's US$14.99). Searching for it via Intuit's built-in tool doesn't work, and it's not listed in the full product rundown; it's possible that it's not officially announced/ready for prime time, but there it is. You can read about the data migration process back from Essentials on the company's support page. No data migration is needed for Q2007 or older versions post-2004. Intuit still recommends that new customers go with Essentials instead of Q2007.

You can read our interview with Intuit's Aaron Patzer here, and an external perspective from Intuit's competitor IGG Software here.

[via MacRumors]

Intuit releases Lion-compatible Quicken 2007, as promised originally appeared on TUAW - The Unofficial Apple Weblog on Thu, 08 Mar 2012 20:05:00 EST. Please see our terms for use of feeds.

Source | Permalink | Email this | Comments

Skype 5.6 available, full-screen support in Lion

Planning on making some Skype video calls today to talk with your buddies about the new Apple products? Before you hit the dial button, be sure to get the update to Skype 5.6. The update became available yesterday and adds some Lion-friendly features as well as fixes to a few issues.

Beom Soo Park at the Skype Garage blog outlined the changes. First, Skype 5.6 automatically updates to newer versions when critical or minor updates become available. The group video calling UI has been improved, allowing you to switch between dynamic mode (person who is speaking appears at the top of the screen) and non-dynamic mode when making calls with 5 or more participants.

OS X Lion users can rejoice, as Skype 5.6 also adds full screen mode and "eliminates distractions from the Dock and Menu bars." Skype users now have the ability to delete messages within a conversation, and remove conversations from the sidebar and history. Finally, there's now a way to disable audio gain control from the Skype preferences. This can reduce background noise during conference calls.

To install version 5.6, just check under Skype > Check for Updates, or download the installer here.

Skype 5.6 available, full-screen support in Lion originally appeared on TUAW - The Unofficial Apple Weblog on Wed, 07 Mar 2012 11:49:00 EST. Please see our terms for use of feeds.

Source | Permalink | Email this | Comments

App-ocalypse soon: Apple extends sandboxing deadlines, but restrictions loom

Image: Shutterstock

Apple issued a three month extension on application sandboxing today, giving devs a little more breathing room before new rules take over. June 1 2012 is now the enforcement date. We've been having many discussions about Mac development in the TUAW backchannel over the last week.

The introduction of GateKeeper and the notion of signed apps, sandboxing, and developer IDs have us talking about where Apple is taking the Mac, and will be moving Mac development in general. Overall, we think things are moving towards a win for consumers and better opportunities for devs. Read on to learn more about these technologies, and how they affect developers and App Store.

GateKeeper is Apple's new approach to making your Mac safer by giving you control over which applications may download and run on your computer. With GateKeeper, developers sign apps to authenticate them with the OS -- both apps that you purchase from the Mac App Store and, at the developer's option, also apps you purchase elsewhere.

With Mountain Lion, you choose which apps are allowed to run. You'll be able to disable GateKeeper and run apps from anywhere if you like, although this is not the default setting.

The thing is this: Apple continues moving towards a more controlled, less open, more appliance-like concept of what a Mac means. That redefinition is causing ripples, affecting app development more and more. Applications can do fewer things, access fewer system resources, and control other apps less than they did in the past.

Developers who choose to enroll in the Mac development program pay a $99/year fee just as those who enroll in the iOS development program do. Once enrolled, they can sign their apps as identified developers -- as well as gain access to early beta versions of unreleased operating systems.

When the iPhone SDK first debuted, many people including yours truly complained about what couldn't be done with the APIs: what files could be accessed, what routines could be called, and so forth. Coming from a general computing background, one learns to expect to build whatever one can imagine. If the building blocks are there, then why not build whatever tools you need? That all ties into a background of fully open computing.

Apple's policy split the dev community into the jailbreak world and the App Store world, with many people crossing over depending on what they were building. Under jailbreak, developers gain full access to the entire iOS file system and run apps in a fully privileged mode. This gives devs a much broader development vocabulary to work with. The jailbreak world became known for its innovation, with Apple mining those forward-looking ideas and free R&D and bringing them into successive iterations of their operating system.

At the same time, developers had to change. If they wanted to market through App Store, they had to relinquish product ideas that wouldn't work within the more closed-off system that App Store submission required and look instead for opportunities of development that were allowed.

No one can look at App Store today, with its countless apps, and say that Apple denied developers opportunity. It's just a somewhat different opportunity than many developers expected. It's an opportunity that restricted certain kinds of applications, most typically OS enhancements and utilities (which have flourished on other mobile platforms with less oversight of developer access). Overall, Apple has provided better tools, better marketing, and better sales avenues than had existed before. The end result has been apps that are significantly better than previous generations.

And now, Apple is doing the same thing for the Mac.

This is emotionally hard for some long-term devs like me. We want Linux-y freedom for whatever we want to build and distribute. Now, with sandboxing (a technique that restricts application access to full system files; all apps that are not sandboxed will be removed from the Mac App Store starting June 1st [Update: Older apps will still be on the store and allowed bug fixes- Ed.]) and GateKeeper (limiting apps to those that are signed and authenticated), Apple is setting a new default: software consumers will expect to be protected, and will expect that any item being delivered to them will comply with Apple policies.

We developers have two choices: either opt in to Apple's signing (developer IS) and/or distribution system (App Store), or limit ourselves to only those customers savvy enough to opt out to the "all's fair" system. It's essentially a Mac jailbreak--just without all the pain of waiting for the next untethered release. (Speaking of which, yes, it would be lovely if this idea goes exactly back to the iPhone, so we don't have to wait on those exploits and releases.)

Apple's brave new world for the Mac gets that there are "power" users and "consumers." And it also gets that the latter category vastly outnumbers the former. As it builds new and better operating systems that retain desktop functionality, it is shaping computing to match consumer needs and wants, not developers.

Not everything is roses. Some devs are complaining--with good reason--that Apple's approach to proprietary technologies will prevent them from selling off the App Store for iCloud features, for example. If you want to tie into those APIs, you won't be able to go to third party merchandising storefronts to sell your software. App Store-exclusive features will tie developers further into Mac App Store and to Apple's 30% cut. Those Apple-specific technologies will continue to grow over time.

What's more, developers must continue putting pressure on Apple to extend entitlements, allowing apps to grow the kinds of resource access they are allowed under Apple's sandbox system. The current set of entitlement restrictions seems unnaturally limited.

Just as iOS's App Store has responded to developer requests, the Mac environment will have to soften restrictive rough edges over time. A passionate and involved developer community will help those changes happen. Community-sourced advocacy such as Tim Burks' Open Radar project allow developers to cooperatively brainstorm and strategize about which access issues are the most important to them.

In the end, this is going to be an amazing end-point for consumers. You can talk about "what has existed for a generation," but that means things like Microsoft Word. There is no way anyone can argue that MS Word was an amazing end-point for general consumers.

It's a wake-up call for devs who have stuck with Apple through the dark years. Apple is changing up the game. Devs have to change it up too. And if Apple's success with iOS App Store is any indication there will be more opportunity and better chances at creating a living than ever before.

Thanks, Remy "Psy" Demerest, Kyle Kinkade, |Agent

App-ocalypse soon: Apple extends sandboxing deadlines, but restrictions loom originally appeared on TUAW - The Unofficial Apple Weblog on Tue, 21 Feb 2012 16:20:00 EST. Please see our terms for use of feeds.

Source | Permalink | Email this | Comments

6 cool Messages tips and tricks

It's just arrived in beta, but Apple's next chat app is intriguing. Are you looking to spice up your Messages skills? Here are a half dozen tips and tricks for you to start with.

Choose the contact method: Messages can contact you via your AIM/iChat ID, your phone number, your Apple ID, and so forth. It's up to you to choose exactly how you want your message delivered. Locate the pop-up in the To: field and use it to select the contact method you want to use for your conversation.

Switch to FaceTime: To the right of the "To:" option is a second pop-up, which allows you start a FaceTime session. You can select which address you wish to connect to (typically phone number of Apple ID). Click this, choose the contact method, and wait as OS X launches the native FaceTime application.

Edit Contacts: Right-click any contact and choose "Show Contact Card" to open a contact in Address Book (soon to be the Contacts app). Once there, you can add phone numbers, Apple IDs, etc. After saving, these items are instantly made available in the two pop-ups you've just read about.

Use "read receipts": You can let people automatically know you've seen their messages by enabling read receipts. Open Messages > Preferences (Command-,), choose Accounts > your iMessage identity and check Send Read Receipts.

When you read the message, the sender is instantly updated with a status change that looks like this. They can tell at a glance that you've received and seen the text that was sent.

Change the Presentation Style: Right-click in the message area and choose from three styles: Show as Balloons (the default), Boxes (a semi-compact style that I quite like), and Compact (which seems overly compressed to me).

In Boxes style, successive messages are merged together rather than appearing as a sequence of bubbles. Here, three messages are grouped to one box.

Convert Smileys back to text: If smileys get on your nerves, you can convert the Messages presentation from their stock art to standard text. Right click and choose View > Hide Smileys

Got more tips or suggestions? Add them to the comments!

6 cool Messages tips and tricks originally appeared on TUAW - The Unofficial Apple Weblog on Thu, 16 Feb 2012 12:45:00 EST. Please see our terms for use of feeds.

Source | Permalink | Email this | Comments

Dear Aunt TUAW: Should I mess with my recovery partition?

Dear aunt tuaw,

I'm hoping you can tell me how to perform a non-destructive reclaim of the recovery partition space. I'm on Mac OS X Lion and wish to simply reclaim that odd 700 MB without jeopardising my main partition.

Your loving nephew,

Oscar

Dear Oscar,

Auntie is sorry, but this sounds to her like an absolutely utterly terrible idea. Lots of services require that the recovery partition be left alone. Find My Mac is the first thing that comes to mind.

But that's not all. Apple put that recovery partition there for a really good reason -- it's one of the best ways you get to reinstall the OS, repair your disk, or restore from Time Machine without having to deal with external discs.

Sure, if you have a 64 GB SSD (Auntie does on her beloved MBA), that 700 MB represents a big chunk of space -- but Auntie feels it would be tremendously poor judgement (metaphors about "penny wise pound foolish" spring to mind) to try to proceed in the direction you're proposing.

Hugs,

Auntie T.

Got advice for Oscar? Disagree with Auntie? Sound off in the comments.

Dear Aunt TUAW: Should I mess with my recovery partition? originally appeared on TUAW - The Unofficial Apple Weblog on Thu, 16 Feb 2012 12:00:00 EST. Please see our terms for use of feeds.

Source | Permalink | Email this | Comments