…or it will blow your mind ;)
If you chose an answer to this question at random, what is the chance you will be correct?
a) 25%
b) 50%
c) 60%
d) 25%
Found on the Internet
What do you think?
stve.cx…or it will blow your mind ;)
If you chose an answer to this question at random, what is the chance you will be correct?
a) 25%
b) 50%
c) 60%
d) 25%
Found on the Internet
What do you think?
Today, I ran into a problem with my brand new MacBook Air which I bought only 4 weeks ago. Here is the story: (if you want to skip the technical details, go ahead to What the f*ck do you want to tell us? ;))
This morning I went to my holiday job like the last two weeks in order to finish my work for this holidays. But after 15 minutes, my Magic Mouse connected via Bluetooth got disconnected. Nothing unusual, I simply swapped the batteries. But as I was finished, my MacBook wouldn’t react to any input sent via the built-in keyboard and trackpad, nor the external keyboard attached to the cinema display acting as a hub.
I also noticed, that the Bluetooth menu bar icon was in the “Bluetooth offline” state1, which was the strange. As suggested, I restarted my mac. At least I tried.
The mac did not even proceed to the gray screen showing the Apple logo. To make it even worse, non of the keyboards connected seemed to affect the boot process, I was unable to go into Single User Mode, Verbose Mode or the reset the PRAM2. The only thing that worked was Safe Boot, unhappily the login mask didn’t respond to my input, so I couldn’t log in.
After I tried everything a few more times with different external keyboard setups I once was able to log in and set the boot parameter to verbose with the
$ sudo nvram boot-args=-v
command and while rebooting, I saw some error — all of them regarding kIOUSBHighSpeedSplitError, kIOReturnNotResponding or the following message:
The IOUSBFamily was not able to enumerate a device.
Ok, here is the point of this post:
I gave up on fixing the error by myself (and my colleagues at Boinx Software[^3], thanks for your help!) so I looked for an appointment at the Munich Apple Store. The next available date was next week, 5 workdays from now.
Srsly, WTF? How does Apple believe someone can easily wait 5 workdays only to have his problem be looked at? I mean, after this time that doesn’t mean that I can resume working, can I?
It’s a shame that Apple has no plan or service for emergency cases in which it’s clear the device has to be physically repaired. Not even to mention that it’s absolutely out of the question that a 4 week old device stops working and the only service provided is, that the Apple Store Employee sets up a Genius Bar appointment for me (thanks, I am somewhat able to click through apple.com by myself).
I am actually asking myself whether Apple really cares about people earning money with their Hard- and Software. (Of course I have backups, but switching my workflow to my other mac won’t be exactly a trivial point which can be done in 5 minutes)
Any similar experiences?
This is the first of (hopefully) more posts about the not so new Cappcuccino framework that uses Objective-J (which gets parsed into JavaScript) to write desktop class web applications
Today, I want to talk about objects in Cappuccino, with the main focus on the UID property within CPObject1, and, because every class should inherit from CPObject, every other object.
After upgrading, some Lion users reported a really disturbing problem with the built-in search system Spotlight: Only some of the files are being indexed.
Because my Mac also had this problem, I tried to resolve it and after a few hours googling about a solution I finally found a way to fix Spotlight.
First you should delete your current spotlight index.
Go to System Preferences -> Spotlight -> Privacy. At this point you have to add your Hardrive to the provided list in order to prevent it from being indexed by Spotlight. It could be that a few Macs will start working correctly after excluding the hard drive again. If not you should go to terminal, and deleting the index manually. This can be done with:
$ sudo mdutil -E /
After entering your Password Spotlight will try to reindex your Hardrive. At this Point some more User will get a working Search back. The few People (including me) wich get a error like:
Error: unable to perform operation. (-1)
No index.
Now, perform
$ sudo rm -r /.Spotlight-V100
to delete the wonky Spotlight Index. Now restart your Mac and hope that it will be properly reindexed.
This guest post was written by Marcel Riedlinger1, so all the flattr revenue for this post will go to him ;)
About updating netatalk and adapting the configs
When you built your own NAS with support for the Apple Filling Protocol1 so you can access it the nice way via the OS X Finder and so Time Machine Backups on it, you are likely to use the netatalk package with its afpd and cnid_metad. With Lion, Apple updated the required AFP Version to AFP 3.3, which is not yet supported by most of the NAS out there2.
However, you’re fine when your using your own machine where you can compile your software by your own because you can simply use Version 2.2b4, which should be perfectly fine for your home setup.
Update 1: Version 2.2.0p6 (which is stable and should support Time Machine on Lion) is out, so I updated the guide. Thanks, Martin!
For the tips I’ll give you, I assume that you are already running a older version of netatalk, in my case it was 2.0.x.
Update 1:
Get the 2.2.0p6 source, unpack, configure and install it via
$ wget https://github.com/jrmithdobbs/netatalk-2-2-0-p6/tarball/master
$ tar -xzf master
$ rm master
$ cd jrmithdobbs-netatalk-2-2-0-p6*
$ ./configure
$ make $ sudo make install
Then continue from after the 2.2.0b4 installation instructions.
Deprecated:
You can get the 2.2.0b4 build via
$ wget https://launchpad.net/ubuntu/+archive/primary/+files/netatalk_2.2%7Ebeta4.orig.tar.gz
and un-tar with
$ tar -xzf netatalk_2.2~beta4.orig.tar.gz
Now cd into the directory and your ready to build and install:
$ ./configure
$ make
$ sudo make install
You can now check which version your running via
$ afpd -v
If it prints that you are still not on 2.2.0b4, don’t panic3. In my case, I fixed that problem this way: I renamed the old afpd to afpd_2.0 and put the new version to the old direction by typing
$ mv /usr/sbin/afpd /usr/sbin/afpd_2.0.4b2
$ mv /usr/local/sbin/afpd /usr/sbin/afpd
It should now output
$ afpd -v
afpd 2.2-beta4 – Apple Filing Protocol (AFP) daemon of Netatalk
You may notice that this wasn’t all the magic. All of your shares will (probably) be gone. Fortunately, that’s no problem, because we can restore them. Just copy the lines as the bottom of /etc/netatalk/AppleVolumes.default to the new config at /usr/local/etc/netatalk/AppleVolumes.default.
You may see this error:

What a pitty. But there’s also a fix for that — or let’s say several.
Rebuild Databases:
In every share-root-directory and / itself, delete the .AppleDB cache file via
$ rm -Rf .AppleDB
It will be recreated automatically, which may take a little the first timeā¦
Ensure that the CNID_METAD runs:
Open /etc/default/netatalk with your favorite text editor and make sure the parameters are set like this:
ATALKD_RUN=no
PAPD_RUN=no
CNID_METAD_RUN=yes
AFPD_RUN=yes
TIMELORD_RUN=no
A2BOOT_RUN=no
Use dbd as cnidscheme
In your /usr/local/etc/netatalk/AppleVolumes.default, your shares may look like this:
/pool “Pool” cnidscheme:cdb options:usedots,upriv allow:user1,user2
Make sure that the cnidscheme is set to dbd. This resolved the issue and my server was happy, up and running.
A very, very good place for answers regarding this topic is this blog post4.
The next step for me is to test the server for Time Machine compatibility, I fear there is some extra work required (looking towards 10.7). Stay tuned!
If you are doing animation intense stuff with jQuery1 you probably have noticed that there can be problems with animations, especially when you try to run multiple animations at the same time.
Without going into details how you should handle the new features (you can go thru them at the jQuery release note2) just 2 quick fixes for your current projects:
1. Use Units
One problem can exist if you you call your animation like this:
$('selector').animate({ 'height': 100 });
Using this code snippet, the lags should be fixed:
$('selector').animate({ 'height': '100px' });
// or for a 'dynamic' height from a variable
var number = 100;
$('selector').animate({ 'height': number + 'px' });
2. Tweak opacity first
like you can see in this example3, the animation does not run as expected. However, this can be fixed by 1. commenting out the opacity part (which is not an option in most cases) or 2. by placing the opacity line on top of every block, like in this example4.
That’s it. In my case, both didn’t solve the problem completely (because I needed 2d transformations, which caused bugs whatever I did) so I switched completely to CSS3 Animations, which are widely available in Webkit, Mozilla and Opera (and maybe IE 9). I think I’ll soon have a post about that ;)
You probably Know the problem commonly referred to as a deadlock: Two simultaneously running tasks both don’t complete because they are waiting for the other one to finish.
As I am currently on vacation in Italy I was really amused having a similar problem with the beach’s toilet door.
The time I arrived there were already 2-3 people waiting in front of the door, which seemed to be locked since the indicator showed red for occupied (the indicator on the outer side is connected to the lock on the inner side)
What I knew from the previous day (and the other people obviously didn’t) is that you don’t have to open the lock completely to open the door. That way however, the indicator doesn’t turn enough to show that the toilette is free.
So I could push the door open to let the first guy in and everybody was happy in the end.
Isn’t it ridiculous how the problems with computers, which seem to be so abstract and kind of unreal, reflect in reality in such simple situations? A bunch of men waiting (task 1) for another man to exit the bathroom and unlock the door (task 2) which will never happen.
Fascinating, how close the two worlds of programming and the real world get when you look at them from a different perspective.
As a registered iOS and Mac OS developer I am officially allowed to use the previews of upcoming software. Ever since the first 10.7 beta, the default scrolling direction was what you would call “inverted”, the opposite of in 10.6 but the same as in iOS.
Of course it was strange at first sight but worked out pretty well, because it makes much more sense: When you want to see the contents of the lower part in a page, you no longer push the “viewport” down (as this is an abstract thing in reality) but push the page upward.
It feels really natural, at least on a trackpad. You do the same thing as you always did on your iPhone, and I got used to it so much I inverted scrolling on 10.6 as well (with the little tool Scroll Reverser1).
And because “bloody edge” is my second name, I used the same tool on my iMac with the Apple Magic Mouse. Surprisingly, this works, too. Only in the very first moment after a “break” from scrolling I’m still practicing the old habit, but then It’s a good feeling to scroll the right way.
What is this?
This is part 1 of a series of posts in which I will write down my thoughts about computers and most important all the stuff that’s behind it. The world seen as a developer.
It happens quite often, that we… uhm… nerds(?) are laughed at for being different. Sometimes a guess this is how it must feel when you are different in any way.
But what’s so awkward about discussing the latest Minecraft1 change logs and what a bad performance Java has. About explaining an exciting algorithm you found out about lately? About designing class diagrams in math lessons while the other students are playing on their iPhones?
I can’t tell, because I’m one of the people being different when seen that way. And frankly, I can’t see why it is better to know the football league by heart then the ASCII table (no, I don’t ;).
Because for me, a computer is not only a computer. A computer is the greatest tool mankind has ever invented, because it can redefine itself. As computers enable new ways of doing something, there are new problems which then can be solved by computers.
And most people see a computer as a messy box that has a monitor attached but that never does the thing they want. (sounds like a windows specific problem) Anyway, they have no good attitude towards technology because of their experiences.
They navigate to Facebook and want to chat with their friends and when the chat doesn’t work, their computer fucked it up. That’s a bad experience of course, and computers are full of them.
But that’s not what I see when I see a computer
to be continued
Tomorrow night there’ll be one of the 3 or 4 big Apple events this year, the WWDC Keynote in San Francisco. Here are my thoughts, this is what I expect:
Steve Jobs will be on stage. The already announced products simply sound too amazing not to be presented by the “iGod” (cough) himself
iOS 5 which was announced earlier by a press release (only the fact that it will come, not what it will bring). It will bring a new notification system, maybe with some sort of lockscreen overview or widget system (which is rumored by many “sources”) Also I think we’ll see a very tight integration of “CoreServices” (as I call them now) which could be used e.g. by Twitter to integrate their new photo service1 or dropbox etc.
iCloud could give us the current feature set of Mobile Me (for free) including a very small space to store files. Additionally, rumors grew loud2 over the last few days that Apple plans to do something with music and the internet. I hope we’ll see a service like spotify3 which essentially is great but unfortunately not available in my country (Germany. We got used to that phrase by using youtube -,-)
Not to forget Mac OS 10.7 Lion which will be a huge step in usability and freshness by taking the good parts from iOS into the Mac OS. As I looked into the betas, I’m really looking forward to it. I could imagine, though, that neither Lion nor iOS 5 will be available today as there are no iOS 5 betas around yet and the 10.7 beta 5 still seemed a little buggy (but hey, it’s a *beta’ ;))
Keep in mind, that these are only my expectations and/or wished so feel free to comment and share what you’ve got in mind for the WWCD Keynote 2011!