In reply to: Colin Walker

Colin Walker brought up yesterday the idea of using your website as a private repository.

This also occurred to me a couple of months ago when I searched a better alternative for Day One. This blog which runs on WordPress looked great for a private journal, but I didn’t find anything that would migrate my entries from Day One, so I created a script for myself. I’ve open sourced it on GitHub so anybody with a little bit a terminal knowledge should be able to use it.


Before you ask: I still use Day One with encryption turned on. When I reasearched the topic of private posts using WordPress I found a couple of security concerns which I’ve also shared on Colin’s blog. But after last week’s Day One security fiasco, maybe it’s something that I should reconsider.

Leaving Facebook is easy, you just have to leave your laziness behind too

Sarah Jeong writing on The Verge:

I tried leaving Facebook. I couldn’t […] Facebook is an emotional labor machine, and if you want to leave it, you’re going to have to start doing a lot of work

When I read a post like this, I get angry and sad at the same time: it’s so easy now to reach people, but we still use our tools wrong. It looks like we have the same old problem that we had with every new technology getting popular. We just have to learn to use them. What makes Facebook different is that it’s also a tool for others to hijack our attention and they try to do everything they can to keep us addicted to it.

I’m not comfortable with that. This’s one of the many reasons why I left Facebook. If you think about it for a second, Facebook is no more than just a bunch of tools made for people to

  1. communicate with each other,
  2. maintain their egos by posting stuff about themselves,
  3. keep up with other egos,
  4. collect behavioral data that fuel tools that tricking others into a financial transaction (ads), political decision or other stuff that benefits them.

Nothing is new on this list, but we haven’t dealt with something like this before at this scale. Facebook tries to make the first three as easy to use and addictive as possible—although the internet has a lot of tools already for communicating and publishing— combining them into one is what makes collecting data and influence people this efficient.

I don’t like the idea of collecting data about my behavior and habits to carefully model a profile of me to sell crap or use it as a tool to get me addicted to something.

Existing tools can replace a lot of Facebook functionality (and they already do). You can easily leave Facebook, you just have to leave your laziness behind too. Replace your posts with a blog. There are email and text/IM services to communicate with people (although I still use Facebook Messenger without a Facebook account, I proactively ask people to switch over to iMessage if they can). You can use IM groups to organize a party or let people know about things.

But following people on a feed means you don’t really pay that much attention. We used to follow topics or news, following people around was called stalking. Now we know everything about each other thanks to addictive stalking. Meanwhile, something seriously fucked up: we have hundreds of “friends”, but according to statistics, we feel alone more than ever. That’s because we got lazy to invest a bit more energy to have more meaningful relationships with our friends. We follow them, but we don’t interact that much anymore. You must have been in a situation where you met somebody again after a while, but you didn’t enjoy it, because you had already know whats up with him/her. You were sitting there staring each other.

That’s happened because of batching. Facebook lets you see your friends prefiltered ideas and life moments in a nicely formatted feed. It makes keeping up with information convenient, but there is a problem: while batching works great when you want to be efficient, deepening relationships and friendships isn’t about convenience and efficiency. It’s about experience and time invested in each other. Facebook removes the intimacy of the moment when you “connect” with somebody. It makes it convenient but also isolating. It’s not surprising that people feel themselves alone on Facebook, it’s because they’re isolated.

Do you want to know what’s up with your friends? Message them, call them, meet them, then ask about their life, have a conversation. Invest time in your friendships. I know it takes way more energy and you can’t keep up with that many people, but who cares when it’s way more satisfying than following a bunch of curated profiles.

Cal Newport writes about owning your content on the social web:

Buy a domain. Setup a web hosting account […]. Install WordPress or hand-code a website for this account. Let people follow you directly by checking your site, or subscribing to an RSS feed or email newsletter.

It was like that couple of years ago, then social media made really really easy for everyone to tell their story. The problem is that your story is now tied to some company that controls basically everything outside a textarea which you use to tell your story. That’s way more limiting than having your own website or blog which you control as a whole. Sure, it takes a bit more work to set up a website and you may have to hire a professional to help you, but it’s way more satisfying at the end than creating a Twitter account or a Facebook page.

One more thought for Twitter users: if you want to tell something which needs a thread of multiple tweets then write a blog post instead. That’s how we used to do it.

RSS changes

I separated my shorter statuses and longer posts into two new categories, which means you can subscribe to them individually now. Here’s each new category and RSS feed:

If you’re into social timelines, then you can also follow me on Twitter or Micro.blog. They are mirroring the blog’s content.

Fixing Safari syncing issues in iOS 11.3

I had syncing problems with Safari since the first version of iOS 11.3 beta. Apparently, I’m not the only one. It’s started getting so bad, that I had to abandon Reading List in Safari because it’s randomly deleted saved articles. Sometimes there were random bookmarks showing up in the sidebar. Sites that looked like were added there by Frequently Visited Sites.

I got suspicious about this: maybe Frequently Visited Sites does something weird with syncing. I went ahead and turned it off on every device I own, also on each device that my girlfriend uses since she has a really big collection of bookmarks in Safari. After using Safari for weeks without Frequently Visited Sites turned on, I can safely say it fixed syncing problems. I haven’t seen lost bookmarks and deleted articles in Reading List since then.

If you have bugs like this, turn off Frequently Visited Sites in settings on every device that syncs with your iCloud account.

On iOS:

  1. Go to Settings.
  2. Find Safari.
  3. Turn off Frequently Visited Sites.

On macOS:

  1. Open a new tab or window in Safari.
  2. Control-click somewhere on the empty space.
  3. Turn off Show Frequently Visited Sites.

Getting back the “None” tag filter in Things for Mac

Things 2 had a filter for to-dos that doesn’t have any tags attached. It was useful especially if you’re a tag completist like me, but apparently Things 3 had it removed. I’ve just read this Things 3 review yesterday and it mentions a hidden preference in Things 3, which brings back this filter:

As I created and used tags, I realized that there was no way to filter a view by items without a tag. This made me anxious that there were tasks missing tags and only visible when looking at all items in a view. So I reached out to support and learned that the “None” filter was a removed feature from a previous version of Things, and they were happy to give me the Terminal command to resurrect it! So yes, I’m a fan of Cultured Code’s customer support.

Well, he don’t mention how to bring it back, so I’ve asked Cultured Code. Here’s what you have to do:

  1. Quit Things.
  2. Go to Applications → Utilities and open Terminal app.
  3. Copy and paste this command into Terminal, then hit Return: defaults write com.culturedcode.ThingsMac NoneTagEnabled -bool YES

As you expect, it brings back the “None” tag filter option.

Apparently, it works only on the Mac, but it’s still a useful option to have. Maybe Cultured Code will change its mind, and brings it back to iOS too.

Getting YouTube content in a podcast format

There used to be a lot of video podcasts back in 2010 (yes, you can create video podcasts too). Then suddenly a lot of that content disappeared and/or moved to YouTube. Everybody says that one of the best things about podcasting is that it’s a completely independent medium, so I’m not sure why video people are so obsessed with YouTube, but that’s a topic for another talk…

Anyway, since the podcasting format is a way better method to follow my favorite channels than the YouTube app, I started to dig around on the web to find a way to subscribe YouTube channels in iTunes or the Podcasts app (or in any podcast app). After a couple of minutes, I’ve found Podsync which helps me do just that. I can paste the link of a YouTube channel into Podsync, then instantly get a URL of a podcast feed which I can subscribe too in my podcast app of choice (no Overcast support at the moment, because it doesn’t support video podcasts).

Why do I want to do that?

  1. Google can’t track me from a podcast client.
  2. No ads (although I should support my favorite channels on Patreon or something).
  3. Every video player is better than the YouTube website/app. iTunes and Podcasts have picture-in-picture built-in, which is awesome.
  4. Since Podcasts downloads every new episode by default, I can follow my favorite channels even in offline mode.
  5. No related videos are being shown while I watch an episode, which may help to reduce my hours watching YouTube.
  6. Every multimedia content I follow is in one app now.

I love this way of getting new content from YouTube. I even became a monthly Patreon supporter of Podsync—it’s just $1—which has some nice added bonus features like audio–only channels. If you’re following a lot of channels on YouTube, but don’t like the iOS app, you should take a look at Podsync.

On grayscaling your phone addiction

I’m trying out a new display setting in iOS to use in evenings. There have been a couple blog posts lately talking about grayscaling your screen, which should help with phone addiction. For me, it looks like just another productivity fad, but having a gray screen could help relax my eyes at night a bit more (using in conjunction with Night Shift).

I’ve added Color Filters setting to my Accessibility menu so it’s a quick toggle in Control Center. I can easily turn on when I want to use it. This’ll make the following gray home screen which is nice for reading in the dark.

But don’t believe it will help you deal with your phone addiction. If you think it does, then I assure you it’s just another placebo effect like when people are blocking Facebook in their browser, because they think it will help them using it less.

Well, I don’t want to pop the productivity bubble of blocking stuff, but what helps is removing your account from Facebook. Same applies to phone addiction: you have to remove those time-wasting apps from your devices and then be mindful of how you’re using your phone. Turning on an accessibility setting then complaining about colored app icons which makes us addictive to stuff is just stupid. Addiction is a way bigger problem than that. You have to acknowledge that your phone is just a tool and it’s your responsibility of what you’re using it for.

Playing with Things’ URL Schemes

I’ve just got the new beta of Things 3.4 which introduces a whole new level of automation with URL schemes. Things had a minimal set of URL schemes in 3.3 and prior versions, but these were only usable for creating tasks. The new beta elevates the concept to the same rich level of URLs as OmniFocus has. Read the docs for more information. Here’s my initial set of workflows to give you an idea where to use URL schemes:

Creating list of stuff to pack before I travel

This is done via a Workflow script which finds my current travel project(s) and appends a list of stuff I have to pack for every trip. I can run this on my iPhone then open Things on my Apple Watch and start packing.

Emulating OmniFocus perspectives

The new /show action is awesome because it can open a specific view or list with an applied filter of tags. This is insanely useful in conjunction with the Anytime list where only available to-dos are listed (in contrast to Things’ default tag view where everything is listed, even stuff postponed in the future). I can save these URLs in Workflow then trigger them from a Spotlight search or add them to Reminders via Siri’s “Remind me about this…” feature with a location attached (great for lists of errands).

I even created a set of bookmarks on macOS—type your URL scheme into Safari’s URL bar without pressing return, then drag it onto your desktop. Now I can open my saved views from Spotlight on my iMac too.

Nice Things icons are added of course.

Adding agenda items to contacts

Reusing the same idea of perspectives here, we can link to the Anytime list with a tag filtered for a particular person. These links are great for GTD agenda items or waiting fors. You can save these URLs into the person contact card, so next time you’re having a conversation with that person over Messages, just tap the “i” button on the top, tap the contact name, then tap on the Things URL. Things will open a list of stuff you want to discuss (it’s even better on iPad having Things open in a slide over view).

Problems with over-tracking stuff

I’ve turned off the battery percentage on iOS about 4 months ago. This one in Settings/Battery:

It removed a lot of anxiety that I had about battery life. I’m starting to think that there is stuff which is nice to track when we have problems, but not every time. Let’s see a couple of those.

Battery

Future iPhones will get longer battery life I’m sure, but as it seems the current longevity of batteries is being more dependent of the physical size of the device and software optimizations, than a great advancement in battery technology. I have an iPad Pro which already has great battery life, stressing about it is unnecessary. Case closed there, but what about my iPhone?

My iPhone 6s had terrible battery life, that’s why I’ve bought an iPhone 8 Plus last November. Plus-sized iPhones usually have way better battery life than their smaller counterparts. I’m easily getting through the day with my iPhone 8 Plus. Seeing how much energy left on my phone is just an information which I don’t really need to know at each moment. My phone sends me notifications when it’s has 20% battery left, but it’s still 1 or 2 hours of usage. I can safely reach my charger until then, I’m sure.

The only thing I’m still waiting for Apple to do regarding batteries is to ship the AirPower matt for wireless charging.

Sleep

I have a bigger level of health anxiety than normal people, so I have to be mindful of what I’m tracking and what’s that information means. Health data can be helpful, but I had problems misreading it before—the same usually happens with symptoms of some sickness.

It actually happened a couple of weeks ago tracking my sleep. I haven’t slept that well and I was seeing a declining trend in the length of my deep sleep hours. As always, it raised the anxiety level in me, and I started thinking about it which continued for a couple of days. Then in my morning meditation, it occurred to me, maybe seeing how many hours I’ve spent in deep sleep—which presented in the sleep tracking app as some kind of competitive metric—causing the anxiety. I uninstalled the app then forgot about it. My sleep routine starts to get better. I’m not sure why, but at least the anxiety has disappeared.

Money

If you have money issues, tracking something for a month or two can give you an incredible insight into your spending habits. You can use this data to optimize and plan your budget accordingly.

On the other hand, if you start stressing about every penny you’ve spent then you just micromanaging your money which gains you nothing. Some people easily get over the fence and can be extremely frugal, especially when they have data that they can rely on. They are ones who always stressed about a couple of bucks spent on something. Collecting coupons is the next level of advancements in frugality.

I learned in the last couple of years trying out multiple budgeting apps, that money management is like managing your attention: finding something which leaks in a big way, fixing it then moving on. Trying to fix every small hole doesn’t do any good.


As you can see, there is clearly a pattern emerging here which is not a problem with tracking itself, but understanding its data and internalizing it. I tend to be overanalyzing stuff and today’s technology makes it more and more easy to collect data. I have to be mindful and find the sweet spot: collect when needed, don’t read subjective things into emerging patterns, finally, make a conclusion then take the next step.

Inserting timestamps

One thing I miss from TextExpander is the ability to insert timestamps into any text input on my Mac. There are apps with this feature built-in (like OmniFocus and OmniOutliner), but I want a global keyboard shortcut which insert todays date into any app. Luckily we have Automator services in macOS which can easily replicate this functionality.

I’ve created a simple Automator service called “Insert Date”. You can download and install it via Automator. It uses the built in date command with a custom format. The service gets installed into ~/Library/Services and you can open it from this folder and change the date format into whatever you need. Here some examples how to do that.

One last thing: you can assign a custom keyboard shortcut to this service in System Preferences/Keyboard/Shortcuts (may require logout and login to work). Mine is ⌃⌥⌘D.

Integrating Agenda into my workflow

I’m still thinking about what’s the best way to use Agenda. I’m not going to talk about its features, MacStories has a great overview of that. At first, it looks like another notetaking app, but having the ability to assign dates to notes is making me consider to use Agenda instead of Day One for journaling.

The main pitfall for me with Day One is still its own sync backend. They switched over to it more than a year ago now, but I’m still not comfortable using that for personal journals and photos. I’ve used iCloud sync with Day One which always worked fine for me. iCloud servers are maintained by Apple whom I trust more from a privacy point of view than a small 3rd-party developer. Agenda uses iCloud for syncing which is a big win for me.

My other problem with Day One is that it feels like an app that made for writing a personal diary instead of a journal (yes, there’s a difference). I’m not really into writing diaries, although I have 1100 entries in Day One at the moment. Agenda, on the other hand, feels like a digital version of bullet journaling. There is no separate view for each note, everything is in a scrollable timeline. Notes can be edited inline which makes the whole journaling process quick. I really enjoy this aspect of the app.

Agenda still misses its iOS counterpart and the ability to add attachments to a note—each of these features are coming according to the developers—but I’ve started using it for the following:

  • I’m developing my first iOS app and I’ve started documenting the whole process in Agenda. At the end of each day, I go through my git commits and make one or two notes about changes and ideas I have for the app down the road. I’m also collecting a list of things to talk about with the client. This is where Agenda’s ability to attach notes to calendar events comes in handy for meeting preparations.
  • My commonplace book was also migrated from Day One to Agenda. When I’m marking a paragraph in a note with the #reference hashtag, it’s gets added to my “Commonplace Book” saved search. It’s nice to see quotes, links and all kind of small wisdom in one list.
  • I’m having bowel problems again lately, so I’ve created a project to heal and started tracking my food intake there. Throughout the day I keep Agenda open with it’s Today view next to Things. This way I can easily see my daily food log here and append new things to it.

What I’m still struggling with is the missing iOS version of Agenda. I can collect stuff into my Inbox with Things then transfer it into Agenda on my iMac, but having access to my journals, especially from Calendar on meetings will be very useful when the iOS version arrives.

My Notebook System (part 3): Field Notes Pocket Notebook

There is a bit analogue cult going on nowadays. Lot of people are returning to paper based note taking. I get it, having a phone is great, but it is also a trap of lot of things: instantly forgetting why you took out your phone in the first place. Pocket memo books are returning and I’m really glad they are back. Finishing up the third instalment of my notebook usage series, I’m going to talk about how I use my pocket Field Notes.

I love GTD. It is the best way for me to get everything in control and lose the fear of forgetting something. I’m not going to write about how GTD works, David Allen has already did that, but I have to mention the steps of Capture and Process, since this is what I use my pocket notebook for. There are a lot of ways to capture things digitally, but those things are usually coming from external sources. I work as a web developer, so I have to deal with clients, bug reports, and emails every day. I need to have a frictionless way to capture those, and I have that in a form of Siri or Drafts. But what about my ideas, my internal noise, how’s that gets captured?

This is where my pocket Field Notes comes into the picture. My EDC usually contains my phone, my watch, and my pocket notebook. I can capture things on my phone, which I do sometimes, but there is so much noise. I don’t want to deal with that when I’m writing down a great idea. Those are the moments when I’m really glad that I’ve got into the habit of keeping a Field Notes memo book with me all the time. They are bringing back those times when a tool just did one thing. I’m fine without my phone for a while, but capture is critical. When something comes into my mind that I have to write down, I instantly grab my notebook.

I also have a big Steno at my desk, but I’m not carrying that around. My pocket notebook is basically with me for those moments when I not working at my desk. Sometimes I even just throw it out on the table while we are having a meal with my girlfriend. We usually eat together once a day, that’s when we discuss about stuff to do. My Field Notes just sits on the table waiting for capturing stuff. I wouldn’t do that with my iPhone.

At the end of the day I just open my Field Notes and go through each item I’ve written down. I usually just make lists starting with a dash, which later turns into a plus when it gets processed. I’ve stole this idea from Patrick Rhone’s Dash/Plus which is a complete system for marking up lists. It’s pretty great if you keep your task lists on paper. Everything in my Field Notes gets moved into my digital task manager. I define projects and next actions needed for the current item. If it’s non actionable but I want to keep it, then I transfer it into Notes which contains my project support and reference material. When I’m done, I just convert the dash into a plus in my notebook. When I processed everything, I make a double line at the end which marks the current processing point. It means next time I will just deal with things coming after this line.

I usually use a Field Notes memo book for 3-4 weeks, depending on how much I travel. When I’m away, I fill them so much quicker, so I have a lot to spare. I also keep an empty one with me while I travel – you never know when your are going to run out of a Field Notes in the middle of writing down something great. It’s also important to carry this memo book around with me all the time. There are a couple of items always in hand reach for me, and my pocket Field Notes is one of them. I even bring it with me when I go for a walk. I leave my phone at home, but my Field Notes and my Fisher Space is with me all the time to capture ideas.

These small memo books have really changed the way I write things down, and also how much mindful I am using my phone. Since I don’t use it for capture anymore, I have a less chance to go down into the rabbit hole of distractions. I’ve started treating my devices as tools, not as something that controls me. Going back to paper was really successful for me. It is easy to use, peaceful and a natural way to express our ideas into external stuff, which can be transformed into the real thing.

My notebook system (part 1): Field Notes 56-Week Planner

I was one of those “paper is dead” guys. We all have some kind of mobile device with productivity apps installed on them, why would you use paper? Actually, my devices got me into using notebooks again. I spend so many time with screens. I’m a developer, so using my iPad for development made me a bit more aware about adding dedicated tools to my tool belt. Couple of months ago, I’ve read an article about carrying a pocket notebook which instantly made me want to have paper with me all the time.

Since then, I’ve tried so many Moleskines, but eventually I’ve settled with Field Notes. I love their quirky designs; their memo book looks like an everyday tool that I can tear apart. Currently, I use three Field Notes notebooks for different things. I like to have a specific placement of my work tools. My iPad Pro is centered. On the left side, I have a Field Notes 56-Week Planner: I use that as a daily planner and a calendar. On the right side, I have a Field Notes Steno used for todo lists, notes, and work journal. I also have a pocket sized notebook always with me used as an inbox to quickly capture ideas.

Problems with digital calendars

I’ve never owned a paper planner — I used those card sized yearly calendars years ago, but it wasn’t anything like a full-fledged planner. Nowadays, I use Apple’s Calendar app for time sensitive stuff like meetings and appointments, but I’ve also started carrying around a paper based planner from Field Notes. I’ve realized that there are things I just don’t like about digital calendars (or Reminders or any other task management app).

I usually have a daily plan for things I want to touch on that day listed along with my meetings and appointments. It’s a great map to have, but my digital calendar is not going to work for this type of workflow. When I add something to it, I have to specify not just a date, but hours and minutes too. To be honest, my work has a really small part that has anything to do with specific dates and times, so planning things like this doesn’t makes sense to me. Sure, I have deadlines of projects, but those more like anchor points of priorities.

My digital calendar is also hidden in an app. I’m all for keeping important stuff digitally, but I also want to reach my calendar quickly. I can open my calendar app really fast, but I want it to be like “look down next to my iPad” fast. Having a paper planner always next to my iPad is exactly what I need.

Writing on paper also feels better than dragging stuff around on a timetable. Digitally stored events are long forms that I have to fill every time I add or change something. Sure, I can use Siri or Fantastical, but that still feels unnatural to me. Not to mention, Fantastical’s natural language parser works only with new events. Start to edit existing stuff and you’re thrown back to a form.

Going back to paper: Field Notes 56-Week Planner

About 2 months ago, I’ve started using a small Field Notes memo book as a daily planner. It was great, my only problem was it’s size, so I ordered their 56-Week Planner (56 instead of 52 to have a buffer month to order a new one, maybe). It’s been great since then. The Planner is bigger than a pocket notebook, it has thicker paper, and more pages. It gives me a weekly spread divided into six equal sections. The last section, representing weekends, divided once more for Saturday and Sunday. I have 7 days worth of space to add plans and events. Also, it has only 10 lines per day which protects me from overplannig my day.

My usage of the Planner is really simple. I review my schedule every morning. First, I look at my digital calendar which contains my hard landscape (I have to be at somewhere at a specific time). I like to keep these appointments in Calendar, because then my Watch pings me at the right time. I also transfer them into my Planner. Writing it down makes me more aware of them. Then I have my next actions list stored in Reminders, which I review and pick a few items that I also write down in my Planner. This way, I’m not setting false due dates for myself in Reminders which causes stress by constantly pinging me at different times through the day. And remember, I just have 10 lines to write for one day which limits me picking too much stuff. Interesting tidbit: I never use pens with my Planner since plans can change, so I use a pencil with an eraser.

I love to work this way. With my Field Notes Planner, I can have a whole-week view of my life. I can easily plan projects and next actions in advance without feeling stressed about notifications through the day. It’s also really nice that I can rely on an single-purpose analog tool. Checking things off my Planner gives me the feeling of accomplishment, which is truly the first time since I use a productivity tool.

Reconsidering Twitter

I'm standing in the line at the grocery store. I grab my phone, open Twitter, then start mindlessly scrolling. These moments blind me with a two minutes fog of consuming links and other people's thinking. I feel like some kind of blob that has so many things and opinions floating around in it's head. Meanwhile the line gets shorter, I return to the real world, and feel like somebody who has just woken up.

I hate this melancholic state of mind, but, somehow my brain always wants a short amount of information dose which causes a temporary chemical pump, then I turn back to a less happy state. This is what Twitter does with me. I'm not familiar with the science behind this phenomenon but I'm sure it's making me less happier and less focused.

Twitter was a fun place couple of years ago. This feeling has long gone, most of my timeline contains politics and pessimism. Pessimism towards everything. I've always hated this attitude, it makes me angry too. I was trying to filter this out, but what can I say? Couple of days ago, I unfollowed everybody and then followed back some Apple related bloggers, writers, and developers. I've also started tweeting in English. From now on, I will use Twitter for two things: talking about my content, and following Apple related stuff. Twitter is great as a backchannel for my blog. No more politics, religion, and more importantly, pessimism. When somebody isn't interesting anymore I unfollow.

I've also changed how I consume Twitter. Safari has the Shared Links section which is a dumb RSS reader but it can show links from Twitter as well. My RSS reading habits are fine, I read RSS usually once or twice a day, so mixing it with links from Twitter makes sense. I removed Twitter from my phone too, I can still use it from Safari if I want to.

Now let's talk about Facebook for a minute. Couple of my friends use it but I've never really paid too much attention to Facebook. While people on Twitter were arguing about it, Facebook became the communication app that everybody uses around me. Messenger is huge now, nowadays, I mostly use iMessage and Facebook Messenger on my iPhone.

Facebook has been working on their stream in the last couple of years to make it more interesting. It's still just a blob of crap by default, but I can tune it to my liking. You can actually follow stuff on Facebook as you do on Twitter, but you can also prioritize what you like, it's going to learn your interests. Basically this is what Twitter should has been evolved into now, but, I'm not planning to check it daily, since it's way less in volume.

What I'm definitely going to use Facebook for is connecting a bit more with my close friends. I can plan a garden party with them using Events, check out where they are with Nearby Friends, or just talk with them on Messenger. Having connection with friends is way more important than following bunch of random people. I've also made friends on Twitter but it starts to form into some kind of real-time news whatever. They even changed their category in the App Store from Social Networking to News. I'm starting to understand why.

Using iPad Pro as a web developer

I’ve never thought I will have a need for an iPad Pro. Back in November when it got released, I was using a 12-inch MacBook, which is the best laptop for mobile development. It’s light and thin, I don’t feel it’s weight in my bag, and it has a Retina display. I travel a lot, so portability is my main concern when I get a new device. My MacBook was great, but I’ve always wanted to use iOS as daily driver. I was already using my iOS devices way more then my MacBook, but my work was still revolved around OS X. iPad Pro was the first iPad which made me think about switching to an iOS based workflow.

Moving my development environment to the cloud

The main problem with an iPad based Rails development workflow is that you can’t run code locally. You have to find a way to host and run your web apps on a server somewhere. There are services for cloud based development already like Nitrous.io or Cloud9, my problem with those is that they are usually a complete IDE running in the browser. I want to use native apps, so I just need SSH access to a server somewhere running my code and hosting my Git repos. Getting a VPS for this is way cheaper. Also, there are some advantages using a remote server for web development:

  • I don’t have to worry about messing up my development environment. Since everything is hosted on a single purpose server and always backed up, I can broke and replace the client which I’m connecting from. It feels liberating when you’ve spent so much time on administrative tasks to keep your development environment up and running.
  • I can access my server from any device, even from my phone. I know, it’s not the best device to use for coding, but for quick fixes and running administrative scripts it’s great. I also use two iPad Pros (iPad Pro devices?) in different contexts for work, so I can switch between them easily.
  • I can show changes instantly to a client. Lets say, I’m in a Skype meeting and the client wants a quick design change. I can update the code in realtime and get instant feedback. I also had problems with deploying to our staging servers before. Now I can just send a link of an app running on my server to one of my colleagues and he/she can check out the changes I did and have the staging server fixed later.

The cheapest way to have your own hosted development environment is getting a VPS, configure it, and use it over SSH. Before my Mac mini, I used a box from Digital Ocean that I set up on my own. It’s cheap and quick. You can create backup images to reuse later if something gets messed up. They also have a great community site which have everything you’ll need to know about setting up a VPS for different needs. I can’t recommend them enough.

The other way is using a Mac mini as a server. There are companies doing Mac mini colocation, you can send your own Mini or buy one from them. You’ll get a dedicated line, fix IP address, and great support, but I have a pretty good connection at home. Also, colocating a Mini is a bit pricy for my needs, so it was obvious to have my old Mac mini running at home. I’d bought a domain, then configured OS X Server on it. I was already familiar with OS X, so setting up a server was easy with a dedicated app. I have the same development environment as before, but I connect to it from different devices. It also works well as a home server with iOS, since OS X Server has services like Caching Server, file sharing, or device management.

The Mini runs Rails code and keeps my Git repos. There’s a couple of great Git clients for iOS, but they store files locally, so I’d have to sync changes back to the server. Too keep the storage of my repos simple, I use Git over SSH in the command line. It’s fine for basic stuff. If I have to do something more advanced, I just login into my Mac with Screens and use Tower there. I’m also using screen sharing for testing stuff in a desktop environment.

The iPad basically connects to the Mini over SSH and acts as a client. iOS has gone really far in terms of an everyday system and I try to use it as much as possible for everything.

Coda as a text editor

Currently my main editor is Coda on iOS. I really like that I can save sites and Coda can quickly load them as different development environments. I usually have a Terminal tab open to interact with the Rails console or Git next to currently opened files. Coda was really buggy at first. It crashed a lot on syntax highlighting and opening big files. Since the latest update, I can finally use it for work, although, I still have some issues with it:

  • Rails generates a lot of files and opening them is really annoying without Quick Open. Coda can browse remote servers fine, but finding a file is lot of tapping around in folders after folders. I’d like to see some kind of global search over remote files, even from Terminal (that would be even better, since I’m spending so much time in the command line).
  • Removing white spaces automatically is now possible thanks to EditorConfig support, but it only works on local files. The functionality is already in Coda, I just don’t understand why isn’t this working with remote files? Also, it should be an option in Editing settings, not hidden in .editorconfig files.
  • Although, Coda uses the local/remote concept of files even on the Mac, I’d like to see a way to open external files from Document Providers. There is Textastic which can do that and it works great in conjunction with Transmit.
  • Custom theme support would be really great too. It has a couple of themes built in, but I miss Solarized Dark from OS X. Coda on the Mac supports custom theme files since the beginning, so adding it to the iOS version would be the next logical step.

Why would I choose iOS over OS X for development?

iOS is forming at the moment. It’s in active development and I’d like to embrace this. There are things way better to do on iOS and what can I say? I’m interested in trying out new things and see where technology goes in the next 5 years, but mainly to eliminate my dependence of a desk and work everywhere.

Many apps I used on my Mac were old ones like vim or Logic Pro (I edit podcasts too). iOS doesn’t have those apps or they exist in a different form. Every app I use feels like a fresh start. Even a complex app like Coda is simpler than it’s Mac counterpart. This is due to the fact that iOS started on the phone which have had smaller, single purpose apps from the beginning. People like to think of this as a disadvantage of iOS on iPad, but in my opinion it’s quite the contrary. I like to use native stuff over web apps and iPad have those. For example look at Trello, it has a great web app, but their iOS app is just stellar. I can search cards and boards from Spotlight, I don’t have to open Safari, type an address, and try to find my stuff. Native apps have always been faster and on iOS you mainly find those in use.

So, I don’t have the same set of apps as I had on my Mac since the platform is so different, but it doesn’t mean I don’t have great ones. Even my workhorses like Coda, Transmit, Prompt, or Screens blows my mind sometimes. Also, there is OmniFocus, OmniGraffle, Drafts, Trello, Workflow, Ferrite, Ulysses, and Overcast. Developers of these have thrown off the desktop mentality and reimagined them on iOS. I’m using more apps on iOS for the same task, but they are optimized for mobile which is great. They are even on my phone too.

Also, I’ve never used an iPad with cellular connection since I’ve never felt a need for it. But it really changes the way I think about the device. I’m on the same route as Myke, using two iPad Pros for different things. My smaller one has LTE which has made me to bring it everywhere. Always on cellular connection and those new kind of apps have a big role in my work now. iOS is not a translation of a desktop OS into a mobile OS. Instead, it’s a completely new thing, which means I can’t work the same way as I did before. I have to adapt new things and change my workflows to use my iPad efficiently. It sounds scary, but I’ll gain new insights into my way of working and learn to do stuff in a different way. This is the biggest advantage of using mobile devices for development.

Learning English the Hard Way

I’ve started this blog more than a year now and I haven’t written much lately here. I’ve found podcasts are the best way to express myself on the web quickly. Almost everything I was going to write about got mentioned in my podcasts. Blogs still have a place on the web and I’ve wanted to do something with mine, so I came up another idea: maybe I should use this site as a way to get experience writing in English, which alone is really interesting, but also very scary for me. I’ve never written anything longform publicly in English. It feels like a fresh start, although I haven’t changed the subject I’m going to write about: it’s still technology and productivity. I’ve just changed the language.

I’m working with a swiss company where we speak English daily, but that’s a completely different thing than writing on the web, where anybody can read your stuff and be mad about it. As we know, everybody knows English better than the next person, so I’m trying to use this “collective knowledge” to my advantage. I’m open to every advice related to grammar — you might want to fix some of my phrases too — although I have no idea what type of feedback I’ll get. I’m sure I’ll have problems with the language since I’m not a native speaker. We’ll see.

Keeping a blog is a big challenge alone and I have no prior experience writing in English other than daily emails and Skype messages. The best way to learn is to do it the hard way and write. Also, there is a couple of people who might enjoy following this challenge. I have no other goals with this blog currently, but it may form into something else later.

I started taking an English class to learn grammar again back in March. I also had English in high school, but I never paid much attention to the class and forgot a lot of stuff since then. Years passed by and I had to relearn lot of words and phrases by watching TV shows, movies and listening to podcasts. I’ve been reading almost everything in English since I started working as a web developer. It’s okay to start with, but the problem remains: my grammar sucks and I want to get better at it. My English class has ended and I haven’t practiced the language enough.

But why this matters so much? First, not knowing English well enough is a problem. I usually work with people abroad, so great communication is a key. Second, I have same plans to do stuff for international readers, but that’s still far away. Currently I’m not even comfortable with the longform writing of English. This is going to be a multistep process.

Couple of months ago I thought I’m good at English, but I’m not. I’m just as bad as anybody else. Writing stuff comfortable in a different language is a skill I can learn, but I have to practice it. So, here we go, I’m doing it. Just follow my stuff here and don’t hesitate to fix my mistakes, but also follow up with me in email regarding topics I’m going to write about. I’ll try to learn from every feedback I get. Just be nice. 🙂