I wake up early, ready to start the week with a fresh mind and debug that issue that drove me crazy on Friday. I pick up from were I left in Xcode, and hit run.
It slowly builds and installs the app on my iPad, then promptly shows the launch screen, then more launch screen. I try again, change some things, reconnect the iPad. One hour later I manage to run the app.
I set a few breakpoints in the debugger to figure out what’s going on. When I hit one, I inspect the call trace and Xcode crashes. Relaunch, debug, inspect, crash again. Repeat 3-4 times.
I yell at the screen, and decide to take a deep breath and walk for a bit to relax. I come back, five minutes later, to a dead mouse that doesn’t seem to work. I change the batteries, I try all the batteries in the house. I clean the contacts. It seems dead.
I try some of those tricks where you shut down your computer, press ctrl-option-shift-power and then start. Nothing. Also, my MacBook Pro won’t even start if the Thunderbolt Ethernet Adapter is plugged in.
I disconnect that, restart, and reconnect. I’m greeted by a couple dialogs asking for permissions, and an app wants to install an update. Nope, not now.
I give up on the Magic Mouse, and go back to the G500 which still works, although it sometimes double-clicks when you click.
I started working 4 hours ago, and so far I got nothing done, for reasons beyond my control.
Some days, I really hate technology.
For a while, I’ve been meaning to replace my current Apple Magic Mouse with something a bit more ergonomic. It seems like a few coworkers are quite happy with the MX Master, but it’s a bit pricey and, as it turns out, I already have a mouse that’s more ergonomic. A few years ago I got a G500 for gaming, but it also makes for a nice regular mouse.
My main problem switching to a more traditional mouse is that I’m really used to the gesture on the magic mouse to go back/forward, so I needed to replicate that.
Using Logitech’s Gaming Software, you can map the forward and back buttons, but they really just send ⌘-[ and ⌘-], which works for Safari, but not for other apps like Xcode.
Searching about it, I discovered BetterTouchTool, a nice free app that let’s you customize gestures, buttons, and keyboard shortcuts. It looks way more powerful than what I’m currently using it for, but it gets the job done.
My first problem was that it didn’t recognize the back/forward buttons on the thumb area. From what I’ve read, the mouse doesn’t send mouse events for those but keystrokes for whatever reason. It now makes sense that I got the new keyboard assistant when I first plugged it in.
I next tried to map the scroll left/right to back forward, which felt a lot like the magic mouse, until I had to actually do horizontal scroll and I was stuck.
My final solution works, although it’s definitely hacky: map the back/forward buttons to a keystroke that I won’t normally use (in this case F13, ⇧-F13), and then map those to the gesture in BetterTouchTool
After an hour of usage, I wasn’t missing my Magic Mouse at all, but my hands started to get tired. Then I remembered to remove all the weights :facepalm:
Since I got a new watch a few months ago, I find myself looking at my phone less by accident. By that I mean those times when you just wanted to check the time and saw a notification, ended up checking email or Facebook anyway, and spent 10 minutes looking at the phone doing nothing useful.
But still there’s a number of times when that happens, mostly because of notifications. Having more Facebook friends than the years has days means that pretty much every day is somebody’s birthday. And so when I pick the phone in the morning the first thing I see is a Facebook notification about it, which gave me an excuse to open Facebook. I noticed that, for a while, the first thing I did in the morning was checking Facebook, and it didn’t feel right at all.
There’s also those times when you are slightly bored and go to your phone out of habit. I would check Facebook again, or maybe play a game, or catch up on blogs on Feedly.
I felt I was spending way too much time and attention on things of little value, so I stopped. This is my home screen today:
What you won’t find in there (or the other screen): Facebook, Twitter, games, Feedly, Flipboard, Zite.
I kept Pocket since at least that has content that I already selected myself. Other than that, if I’m checking my phone to kill some time, I have books.
I’ve had this going for almost a month and while I’ve barely had any notifications making me check my phone, I still have the habit of checking Facebook way too often, even from Safari.
I think the last time I used a wristwatch I was still in high school. I got it as a birthday present and I can still remember that feeling of wearing an adult watch: it was made of steel —or at least it looked that way— and it was way more elegant than those cheap plastic digital Casio watches that beeped every hour and had multiple functions.
One day the battery died and the band broke so I took it to the shop to have it repaired and the battery replaced. I can’t remember what happened but when I came back for it they hadn’t repaired it, I got angry at the shop and put the watch in a drawer. I never took it for repair, or see it again.
Fast forward to this year, and everyone is gossiping about the Apple Watch. Since I work on the iOS platform I’m usually overexposed to all things Apple. So I kept reading about smartwatches for a long time.
A few years ago, I probably would have wanted one, but now I couldn’t figure out how it would be useful to me today. But there was this one thing: I started liking the idea of having a watch again. Or more specifically, I started craving a nice old fashioned Swiss watch. At least until I saw their prices.
I really liked the simplicity in the design, and how it was elegant without being fancy. And have I mentioned the price?
After a couple months with it, I couldn’t be more happy. I can think of a few ways this is better than an Apple Watch:
- Compared to the 400+€ of the sport edition, or the 1200+€ of the steel Apple Watch that I liked, this one feels practically free.
- Battery life is measured in years, not hours. I really don’t miss having to charge yet another device.
- Being able to just look at the time has made me pull out my phone less, which meant less time wasted on distractions. I don’t want to bring notifications to my wrist, I want less of them.
- It was very clear on the packaging that I could swim with it, and I’ve done it without issue.
- I’ve dropped it a few times and didn’t even care.
- I watched my baby chew on it as he was vomiting, and it made me laugh not cry.
- It will probably be as useful in five years as it is today, maybe many more. Even if it wears out after a couple years, for the price of one Apple Watch I could buy a lifetime supply of these.
A few years ago, I was one of those people who thought it was silly to have a device that just told time. Now I’m happy to have a watch that doesn’t tell me who liked my latest picture when all I want to know is the time.
Two years ago, Brent Simmons introduced ded: a handy little alias to deal with Xcode quirks
alias ded='rm -rf ~/Library/Developer/Xcode/DerivedData'
It has been useful, but since recently it was not enough. Sometimes, Xcode will complain about not being able to use the simulator, even if it’s not running.
Or things will just fail randomly and often, leading to frustration and anger.
Eventually, ded was not enough, so here’s my replacement:
alias fuckxcode="pkill -9 -i 'ios simulator|xcode' && rm -rf ~/Library/Developer/Xcode/DerivedData && open http://www.calm.com/"
And I’ll quote Brent again on Bugs:
In the old days, programmers spent hours and days and weeks working very hard, and sometimes brilliantly, on difficult things that no one had ever done before.
These days, programmers spend hours and days and weeks working very hard, and usually unsatisfactorily, on getting around bugs in their platform.
If your first reaction on witnessing a bug or seeing a bug report is “that’s impossible,” you are plainly wrong. Don’t waste a single neuron on the train of thought that begins “but that can’t happen” because quite clearly it can, and has.
I should print that and hang it on my wall because some days one needs to be reminded there are no impossible bugs, even when things just don’t make any sense.