I recently filed an Apple Bug Report, which was marked as a duplicate. The actual bug isn’t terribly important, but the difference between the serial number of the bug I filed (10426480) and the serial number of its alleged duplicate (3323328) – about 7 million – surprised me. Just how old was this still-unfixed bug?
I slogged through the lists.apple.com archives and the bugs users have manually posted on openradar.appspot.com to compile a list of Radar Numbers and the dates they were filed, and ended up with this:
Say you want to create a
UIView that you’re going to display in multiple places in your app.
Maybe you want to design a custom
AQGridViewCell. Or maybe you want to create a view controller that can be displayed by several different view controllers in your app. Or maybe you want to create a custom UI widget that shows up multiple times in a view.
Does this mean you have to make the view programmatically? Is it time to break out the
setFrame and the
addSubview and the
setTextColor and the
Nope! You can still design your views in Interface Builder. Here’s how.
In not-so-recent news, Drupal migrated the drupal.org project repository from CVS to Git in late February, 2011. My experience with Git previous to this has been as a user fetching source code of x.org, mesa, dri, and other various Linux and Unix projects.
As a user, not a developer, I found the Git work flow confusing. I did not need to make local commits and it was hard to wrap my head around bringing in changes from multiple remote repositories.
As a PHP developer, I first grasped the work flow at Columbus GiveCamp 2010 when I needed to make a github account for the branch of the Audio module we hacked on. As well, some Ruby guy had a nice Git work flow diagram, which I promptly forgot all about until the not-so-recent event above.
It’s a wonderful fact about the world that humans have thousands of living languages. And a wonderful fact about many software development environments that they provide ways to create versions of applications localized into the most common of those languages. But before localization (or should I say world-readiness) sweeps you off your feet, let me tell you about some unexpected difficulties with Kineme’s first localized application.
The honeymoon ended recently…
There are a lot of iPhone/iPad examples out there, but surprisingly I haven’t seen one for a common task — using a table view to create a form. Here’s the source code.
IOSurface framework lets you pass a reference to an
IOSurface — a kind of pixel buffer — from one process to another. Here’s an example of how to pass an
IOSurface through a mach port using the functions
Mach ports are a way for processes to communicate in Mac OS X. (Other mechanisms for inter-process communication include distributed objects and sockets.) A mach port is an endpoint of a communication channel. If 2 processes hold endpoints to the same communication channel, then one process can send messages to the other.
Don’t do this on whim.
Hypothetical. Say, for example, you’ve got a ZFS mirror on
disk1, from which your Nexenta system boots. A year or two later,
disk0 crashes, and starts spewing messages such as the following:
ahci: [ID 860969 kern.warning] WARNING: ahci0: ahci_port_reset port 0 the device hardware has been initialized and the power-up diagnostics failed
Shortly thereafter there’s a storm and the power goes out for several hours and drains your entire humongous UPS, and when the power finally comes back on, the system won’t boot — it stops at the
grub prompt; issuing a standard
boot command fails.