Blog logoMatthew Lang

Posts

A 332 post collection


My web development setup for the iPad Pro

 •  Filed under Posts, iOS, Web Development, Tools

While it was my intention to write about my web development workflow on my iPad Pro at a later date, one of my readers got in touch asking about how I use the iPad Pro in this capacity. Rather than hold off I thought it would be a good time to elaborate a bit on my workflow when using the iPad Pro for web development. What follows is still under review and isn’t my first attempt at using an iPad Pro for web development.

My first iteration on using the iPad Pro involved the Blink app and setting up a remote development environment on a DigitalOcean server. This took a while to setup but even then I found that using Vim as my text editor on a touch device didn’t work for me. So it was back to the drawing board and what follows is a second pass at putting together a web development environment for the iPad Pro. It certainly isn't final but it’s working for me now.

Another point to consider is that this web development environment is tailored towards Ruby on Rails development. A similar setup will work for other languages and frameworks providing you can run your development environment locally in iOS or on a platform like Heroku or Engine Yard.

Remote services

I'm using a number of remote services not because I need too just to be able to work on an iPad Pro, but because they're already part of my workflow on the desktop and I can use them on the iPad Pro as well.

Github

I’m using Github for source code management for a number of reasons like client familiarity, Heroku integration and a few other reasons. The main reason I'm using Github though is that it's tried and tested. You can't argue with that.

I've tried a number of source code management services like Gitlab and Bitbucket. While there are benefits and drawbacks to each service, Github is my preferred source code management service.

Heroku

Heroku has been my go to hosting platform for Rails applications for a long time now. I’ve tried other platforms and while they might be good fits for particular clients with specific needs I’ve found that Heroku has everything that I need for hosting most Rails applications.

I’ve already mentioned that github is good for Heroku in that it’s baked into the pipeline service that Heroku offers. Automated deploys are a great thing and using this in conjunction with Heroku’s CI tool is one less thing for me to configure.

Client side apps

With our remote services in place it's time to focus on the client side apps. Apps that focus on developer productivity have largely revolved around other things that developers do like project management, issue tracking and documentation but there are more text editor apps becoming available on iOS and I’m confident that there will be even more apps like this overtime.

Working Copy

I’m using Working Copy as my local Git client. I’ve been using this for a few months now. It's easy to setup and it works well in iOS 11 with split view and the drag and drop functionality. Working Copy also integrates well with GitHub, Bitbucket and Gitlab. So I’m not tied to using one particular Git source code hosting service.

Text Editors

And now the essential bit of kit for any developers toolbox, the text editor. I’m running two text editors at the moment with the hope of selecting just one of these when I’ve given each of them a thorough test.

Textastic

I’ve used Textastic in the past but only as a means to edit text files remotely. Using it now as a text editor means that it needs to tie in with Git, have the essential settings I need for editing source code and perhaps the most important feature of all, a nice colour scheme!

Textastic-and-Working-Copy-together

So far I’m pleased with its feature set and there’s been little in the way of blocks when it comes to workflow. Once I had Working Copy setup to track my Github repos, I was able to drag a branch into Textastic and start working. Changes to files are marked in Working Copy so that you can commit your changes as you normally would.

Textastic doesn't have all the preferences of a desktop text editor like Sublime Text but the essentials are there. Editor themes, font selection and size, and tab size and type. There's also find and replace and symbol listing which is handy for larger source code files.

Textastic is working well for me but the one thing that I would like to see a easier management of the files I'm working with. A command pallete like Sublime Text would be a nice addition.

GoCoEdit

GoCoEdit is a new addition to the test. While Textastic I have history with, GoCoEdit is fairly new and I’m still finding my feet with it. It shares many of the same features as Textastic though, so it's easy to get started.

GoCoEdit-and-Working-Copy-together

Like Textastic, you can drag and drop a repository from Working Copy into the app to get started working. Changes to files are marked in Working Copy for you to commit.

Editor themes, font selection and size and tab size and type are supported as well. There's also find and replace functionality as well. I've also found that in GoCoEdit there is a command pallete with limited functionality. You can manipulate text, find and replace text and save a file using this but there's not much else you can do with it.

I must admit, I do prefer working with GoCoEdit over Textastic. Saying that though there isn't much between them and both are more than capable of being all-day text editors if you find you have to work on your iPad Pro for the full day.

There are many things missing from these editors that would be taken for granted in a desktop text editor like Sublime Text but apps like this are still relatively limited in what they can do on a iPad. The most essential features are there though.

Adapting

If there’s one thing I’ve learned from all this is that if you’re going to use an iPad Pro for web development or any other form of work then expect to adapt to a new range of apps. Sure you’re preferred apps might be available on iOS but the interface does require you to adapt to the new environment.

Thankfully iOS is getting there with better features like the split view and drag and drop. Features that we’ve taken for granted in desktop operating systems for years but are only starting to see in operating systems like iOS.

My web development workflow has required some changes for the iPad Pro but it’s nothing drastic and a bit of learning on a new device isn’t a bad thing.

Thanks to Curtis McHale for reaching out to ask about this and giving me that much needed nudge to write.

Features I would love to see in Safari iOS

 •  Filed under Posts, Apple, iOS

I've been using an iPad Pro as a web development device for a few months now. Overall I've been surprised at the ability of the device to handle this type of work. Apps like Working Copy, Textastic and GoCoEdit have certainly helped as has the split view on iOS and more recently the ability to drag and drop between apps.

One drawback amongst all this though is the browser I use. Safari has been my browser of choice for iOS for a long time. I've had brief dealings with Google Chrome and Firefox, but they've never lasted in terms of use. I keep coming back to Safari.

As browser's go, there's little to fault about Safari on all the devices it supports. It works well on my iPhone and the smaller iPads I've used over the years. With the iPad Pro though, it feels that Safari is short-changing me.

Pinned tabs

Right okay. Pinned tabs aren't on everybody's list of priority features for a browser but I've been using them for so long on other browsers it seems that they've been around forever. That's not true in the case of Safari for macOS though. Pinned tabs have only been around for a couple of years with Safari which seems like a very short amount of time given that they have been available in other browsers for years.

So why pinned tabs on Safari for iOS?

Well, largely it's an organisational thing. There's a number of tabs that I keep open through the day and pinning these tabs in the browser allows me to quickly jump to them through the day.

Given the screen space on the iPad Pro models and even on the iPad Mini models, I'm surprised that the pinning of tabs hasn't already been done.

Web inspector

I was surprised to find that the Web Inspector on Safari for iOS is only available when you connect your iPad to another Apple computer.

Screenshot of Safari Web Inspecter preferences

Now while a web inspector is probably a big ask on a device that probably wasn't intended to be a web development device, I think it's a fair request. People are turning to the iPad Pro and looking for a device that replaces their laptop or even their desktop. The inability to run the Web Inspector without connecting the iPad Pro to a MacBook or iMac doesn't exactly

However, while you might not be able to use the Web Inspector for Safari iOS without connecting to another Mac, there is an app called Web Tools that replicates this need feature rather nicely.

Support for pinned extensions

I toyed with the idea of calling these starred extensions but pinned extensions might be a better idea, but first I have to explain what this is.

At the top right of the Safari app on the iPad is the share button. This button allows you to share the current URL with a number of other apps on your iPad or iPhone. I use it a number of times every day, mostly for sharing links to my Instapaper, Pinboard and Bear apps. I also use it quite a lot for opening 1Password. The share button on the iPad Pro is a quick and convenient way for me to share a link. It's also one more press on the screen than I care to do.

If you take a look at the Safari interface on my iPad Pro, you'll notice that there is some whitespace on either side of the address bar. What if this space could be utilised in a better way rather than just leaving it blank. What if (and only if your screen size can support it) you could pin a couple of your favourite share extensions to the Safari toolbar?

By pinning your share extensions to either the left or right of the address bar, you're putting your share extensions in a more convenient place.

There are obvious restrictions to this like screen size and even the orientation of the device which governs how much space you have, but surely the developers at Apple could make this happen?

The expectations of a Pro device

When you name your device as 'Pro' there is a certain level of expectation of it. I must admit I eye-rolled when I first heard that the new iPad would be called an iPad Pro, but as I heard more about it and watched the first couple of iterations of the device, I could see where Apple was going with this.

To support this new family of devices I think that there needs to another level up of apps that are targeted at the Pro line of devices only or at least variations of the apps that support Pro features.

These apps might be specialised and target a specific market of people, but given that the iPad Pro is already being seen as a viable option to a laptop and even a desktop, I think it's important for Apple to offer that extra bit of functionality that users may look for in an app.

These features that I'm looking for in Safari for iOS might not be a priority for the Safari team or even on the list of new features for Safari, but I'm sure that if Apple is looking to push the iPad Pro device to more professionals then there should be some distinction between the normal apps for iOS and those for Pro devices.

Weekly Digest

 •  Filed under Posts, Digests

Not much happened last week. More time at the golf centre for Ethan and I was finishing off some client work last week as I am enjoying a week off this week. There'll be more in next week's digest. As I publish this we're getting ready for storm Ophelia hitting the west of Scotland. By the time it gets here, it will have a slightly fizzled out a bit but will still hit us with a fair amount of wind.

The death of web analytics?

 •  Filed under Posts, Products, Analytics

It's been a long time since I stopped using Google Analytics to track the activity on my websites. In its place, I went with a product called Gauges.

On its own Gauges is fine but there hasn't been any new major features for a while now. Sure I pay money for the serivce to continue but it would be nice to see something new in the way of features. It's got me questioning though whether Gauges or even web analytics is still necessary.

Do I need web analytics?

I honestly think the answer to this question is no. Well, let me expand on that answer. I don't need web analytics. I can't speak for others, but let me explain using each of my different websites as examples.

Personal blog

For my personal blog, web analytics is nothing more than a vanity feature. I don't need to see what people are reading on my blog, I don't need to tailor content based on what people like or searching for.

My blog is an outlet for my writing, the topics that I am interested in writing about.

Whether people read it or not is not my main concern.

I write because I want to write. I don't need web analytics here.

DigitalBothy blog

For my freelancing blog things get a bit trickier.

Sure it would be nice to see what people are reading and what is proving to be most popular but my freelancing blog isn't just about giving people something to read. It's about advertising my knowledge of web development.

My blog is also the first step in acquiring potential clients. If a potential client likes what I am writing about and they have a need for a web developer like myself, then what next?

At the moment they can contact me through a form but there needs to be more than just a contact form. I need to be able to contact them back on a regular basis and let them know what's changing in the world of web development. This is where an email list comes in to play.

Despite listening to podcasts and reading many newsletters telling me for years that I need an emailing list for my business, I don't have an emailing list for my business. Crazy I know.

With an email list though I can start to build a way of contacting potential clients and convert them to paying clients through a funnel of more specialised content that is only available through that email list.

Instead of using web analytics and learning nothing about my potential clients, I can use an email list to contact them directly and see what interests them in terms of clicked content within each email campaign.

My freelancing blog is the first step in acquiring a client. While it might be helpful to see which content is proving popular at this step, I don't think that it warrants having web analytics. I'd rather see metrics of what people are clicking through to in the email campaigns that I send out.

DailyMuse

For DailyMuse, web analytics is not something that I want to measure.

Sure it's nice that people visit DailyMuse and perhaps even sign up for an account, but the key metric here is whether people use DailyMuse on a daily basis and that means measuring when people login, how many people are signing up for the paid plan and how many people are receiving emails per day or week.

I've already got a minimal dashboard for this cobbled together from user data in DailyMuse, so again, web analytics isn't necessary here.

There are also other plugins and solutions that offer user analytics for products like DailyMuse. This is more interesting because I get to see what user's are doing in my product. I'm not at that level yet and so what I have at the moment will suffice for the time being.

Do I need web analytics then?

So perhaps I don't need web analytics then.

Others might make the case that regardless of the type of website I am running, web analytics is better to have than not at all, but I think I can live without it.

I've justified in each case why I don't need web analytics and what I would use instead. I think in each case it's fair to say that I have alternatives in place that work for me and my own needs.

Web analytics isn't dead then, but I think it has been superseded by other analytic products that offer customers more. It's probably good to have in place if the content of your website is the only way of measuring activity on your website, but even then I would recommend that such a website have an email list as well.

I've used web analytics for a number of years but I think I've used it for so long that I've become complacent with it. It's not the type of activity I need to be looking at. I need to be looking at different forms of activity for different sites and that perhaps is the most important lesson in all this.

There's also the fact that Twitter already offers a sizeable amount of analytics that makes social media interaction much easier to see. If you share your website's content on Twitter, then it's worth looking at your account's analytics dashboard on to see the traffic through your account's recent tweets.

For me though, I'm going to stop using web analytics over the course of this week and instead focus on getting my analytics from elsewhere.

No newsletter and micro me

 •  Filed under Posts

Yesterday was the last edition of my newsletter.

I won't go into all the reasons why I've stopped the newsletter but it really boils down to one thing that Patrick Rhone kindly reminded me of last night.

Saying no is saying yes to other things...

On other news I've embraced Micro.blog a bit more and have been posting frequently there. If I'm sharing any links or smaller posts they'll be found on my micro-blog which you can subscribe to through RSS or even follow me on there as well.

What about here then? I'll be reserving longer posts for here and they're going to be coming over time.