Category: General

  • Welcome

    Welcome to newill.dev. This is my blog about dev in general, from the books I read to the code I write and the side-projects I am building. My life is pretty full of adventure and responsibilities, such as being married, having five children, ages 14 and under, and responsibilities in my church life.

    This blog will cover how I work and what I am learning.

    Speaking of the books I read, they are not often programming related, although my aim in the coming years is to venture more into reading books, such as The Pragmatic Programmer, and write short reviews about what I read and how it has helped me in my career.

    As well as reading programming books, I may share reviews of other books if there is some relation to how I work and how it helps me day today be a better developer or better at how I work.

    I’m working on a couple of things for my side projects right now. One is a note-taking app explicitly aimed at meetings and how action points are captured and followed up. The need for the app has arisen from my responsibilities over the last 20 years of being in meetings and capturing the essential things discussed. I aim to create a more simple way that works for me and, in the process, perhaps help others.

    For now, comments are left open, so please ask questions, and I’ll endeavour to reply promptly.

  • Amazon Eero Ordered

    With my home gaining more and more wireless devices as time goes on, I decided today to order the Amazon Eero to test and see how it performs around my house.

    I currently use the Virgin Media Super Hub 3 and although it performs better than the previous model I had, it’s becoming more apparent that it’s struggling to keep up with all the wireless devices that we connect to it.

    Wireless devices include multiple laptops, a desktop, several phones, watches, security cameras, several Amazon Echos, a couple of Fire TVs, an Apple TV, and probably other devices that I cannot think of right now.

    Virgin state that Super Hub 3 can handle more than 20 devices, but it’s becoming clear that with all the streaming of movies, cameras, as well as many Zoom meetings this year, that it just can’t handle the traffic we push through it day to day.

    I’m looking forwards to testing the Amazon Eero when it arrives tomorrow. According to the stats, each device can handle up to 128 connected devices. It is recommended to keep the number of devices to 30 per Eero if streaming is being used, but as our devices are spread around three floors in our home, this limitation should be OK for us for some time to come as some streaming devices will be connected to a different Eero than another streaming device.

    With Amazon starting their Black Friday deals recently, I managed to pick up a pack of three Eero’s for £149.40.

    I’ll be testing over the weekend to see how they perform and will write up my findings and let you know if I can recommend it or not. My recommendation criteria is getting a good upload and download speed from any location in the house where the internet is used. My office, for example, is at the top of the house and signal is very weak and often drops. My download speed is typically around 220Mbps under perfect conditions, but right now on just one floor up it has dropped all the way down to 5Mbps. It sometimes isn’t that bad, but right now it just seems the network is overwhelmed.

  • 2017

    The New Year Begins

    Today is the first workday of the year for me. Over the Christmas period I thought about what I want to achieve in business and life over this year. I also looked at what was achieved in 2016 to see where I might have gone wrong and what I could have done better at. There is plenty of room for improvement. Some time was wasted by idling it away. I need to avoid social media through the day as well as news websites.

    Although I don’t feel the need to share my specific goals here, what I decided to do was create a list of all things that I wanted to complete by the end of this new year as well as what I want to do each day, month, or year. I quickly realised that all items are far more than I could physically accomplish, but instead of cutting things out, I prioritised what each day would look like for me. Rather than measuring success by the number of jobs complete and the number of tasks marked as done by the last day of the year, I decided that my success this year would be measured by how I spent my time and if I did good things with my allotted time.

    Some Goals

    There are many things that I want to accomplish such as reading XX amount of books, but I don’t want to get inundated with the calculations of how many pages per day and what books I want to read and how many pages each are. It feels too mechanical. Instead, my goal is to simply read each day for at least a certain amount of time. If I accomplish that then I will read XX amount of books in a year. That won’t matter if it’s 10 or 50. The success will be that I managed to keep the commitment for the year.

    Another goal is to create my own apps for the iPhone and Apple Watch as an indie developer. I create apps for others, but when I plan on making my own apps, I always get sidetracked in to working for others again. I have many incomplete apps that could be finished. I want to change that in 2017 and create my own apps. Just like book reading, the success for me will be measured by the amount of time each day I spend creating the apps. I may end up creating just a couple or several, but if I feel I have worked honestly each day for a few hours, then I will define that as success regardless of what the outcome is. Of course, I include promoting the apps to contribute as part of the success although creating them is the first step. I can’t promote something I haven’t created.

    Some of the tracking will be done by simply looking at the contributions graph in GitHub. If I can fill Monday to Friday with green, then that will be success. There’s no point me cheating by committing a minor change to turn a square green. I will know if a green is well earned. If it looks like 2016 as seen below, I clearly will have to put a lot more effort in.

    I want to become a better writer. For that reason I plan to regularly update this blog, perhaps showing my progress in some cases, as well as put more time in to my iOS tutorial website.

    Writing isn’t my strong point, but I expect that writing regularly will help to change that a little.

    There are several other things I want to achieve. I want to take my DSLR everywhere I go instead of relying on just my iPhone 6. I would like to learn how to use it by using it.

    Family

    Also, I want to spend more time with family. I am lucky with working at home but at the same time that brings challenges of not shutting off from work when the children and my wife are around. I need to do better there.

    Tracking

    While reading MacSparky earlier today I came across an app called Productive which helps track habits. For me I need to make a habit of writing regularly, reading regularly, and creating regularly. I also need to look after fitness as well which I expect this app would be great to encourage me not to break a streak of going to the gym.

  • What Not Provided in Google Analytics Search Data Means

    If you run your own website/blog and use Google Analytics to track the data, you should now be seeing in your organic keyword list a label of (not provided) which will likely be at the top of the list accounting for a large percentage of traffic. If you watch your analytics account regularly you might also have noticed that this number seems to be constantly increasing in percentage share of all keyword searches. The image below shows what one particular keyword search shows:

    For those of you who use the keyword list to find related topics to write about, it seems that Google is ironing this practice out a little.

    The changes began happening on the 18th October 2011 when Google made the switch from http://www.google.com to https://www.google.com for users that are signed in to the service. Notice the https on the latter which means that all searches done are secure when users are logged in which in turn means that the keyword data is not passed on to Google Analytics. A graph showing the effect can be seen in the image below. Note that the flat line seen at the left (oldest date) is completely flat for years before and suddenly starts ramping up on the 18th October 2012 although it seems to take a few days for the effect to kick in.

    Also notice that sometime in March that there is another large increase (perhaps double) suddenly. This I cannot track right now, but is possibly related to a particular popular browser forcing all Google users to the https version and thus, obscuring more keyword information.

    What can you do with the (not provided) data?

    Although you wont be able to see the keyword information as Google doesn’t add this to Analytics for HTTPS searches, what you can still see is a breakdown of what pages were viewed. To do this you can click on the (Not Provided) link found in the organic keyword search information and then see the graph above. Just below the graph are several boxes which one of them is called “Secondary dimension”. Click on this option and type in Landing Page in the little search box and then click on the Landing Page box that appears just below. What you will see next is a list of landing pages each with (Not Provided) to the left of them. If you run a high traffic website where various pages have 1000’s of visits over a few months then you will probably notice that the top set of the pages tends to be in the same order as the ones with keywords (your top pages report). But, with lower traffic sites, or the pages that don’t get viewed much on a high traffic site, you still might find some insight in to what type of content you should be adding to your site.

  • A look at the iPhone 5 and iPad mini

    It’s that time of year when Apple will likely be launching a new iPhone. Traditionally, Apple released iPhones in June/July although after the launch of the iPad 2, they moved the launch date in to October (iPhone 4S launch that is). This year, it seems that Apple might be opting for a launch in September to change the timings a little so that the iPhone and iPad are about 6 months apart. This makes sense as Apple wants as many people as possible to buy both of its flagship iOS devices. By moving them 6 months apart it allows more time for people to save up and buy the next product.

    A brief history of the iPad mini rumours

    When the iPad launched in 2010 originally, it was quickly followed by rumours that an iPad mini was following that year. Of course, that never happened. The same rumours came about last year saying that an iPad mini was being launched in 2011… again, it didn’t happen. The same rumours have come up this year again and at the moment, it hasn’t happened although there’s still a few months to go before the end of the year. This time around it seems that Apple might indeed be launching a smaller iPad as larger media outlets have commented on rumours and also generated some themselves… or I should say “someone familiar with the plans at Apple told them”. This year, Google launched the Nexus 7. We’ve also had the Amazon Kindle Fire as well as other smaller tablets and the sales of those, although not as large as the iPad in terms of numbers, still show that there’s a lot of interest in the 7 – 8 inch tablet market.

    Will the iPad mini be a large iPod touch or a mini iPad?

    With the launch of a 7 or 8 inch iPad it has led many to question exactly how it will work. Will it run iPod touch/iPhone apps but stretched out, or will it run regular iPad apps squashed down a little? I think it will be neither of those although I’m sure there might be an X2 option or a shrink down option for those wanting some compatibility. What I think will happen is that Apple will launch another sized device spec for developers to work on in the interface builder in Xcode. One of the main things that keeps iOS apps working well is the touch targets that Apple recommends. If you increase the size of a regular app then you have a weird looking app, as seen on other 7 inch tablets. If you shrink down a regular iPad app then you end up with a bunch of touch targets that are uncomfortably small (in a lot of cases). This makes for a bad user experience which leads me to think that there will be simply another option to drag out in interface builder where developers can add more to what an iPhone app would have but take a bit of what an iPad app will have. It will create more work for developers as they will need to plan for 3 interface sizes, but the potential in extra sales could be what makes it a decent enough deal for developers. Some developers will probably sell separate apps for each screen size although some will just stick them all under the friendly + sign and call them universal for all.

    My thoughts on the iPad mini

    I quite like the thought of an iPad mini. After testing a Galaxy Nexus 7 tablet from Google recently, I can see why a device larger than a phone but smaller than an iPad is needed. For me, it will probably fall in to the consumption category rather than the creative category like the full iPad does (for me at least). Think of the price as well… rumours hint at somewhere between £250 and £300 which if Apple can stick to the lower end of that, they will be on to something very good… again. Lets move on to the iPhone 5 rumours…

    What will the iPhone 5 bring?

    Just like the original iPhone was a game changer, so was the iPhone 4. It added so much more to the smartphone that it was another instant hit. Apple added the Retina display, a gyro, a glass front and back and a funky antenna (that got a lot of attention for the wrong reasons). Either way, it raised the bar again, particularly with a new sleek design. The 4S was more of the same. Siri isn’t particularly exciting and has been in beta for far too long now. You also feel like a dork using it in public and it is quite limited to what it can do as Apple hasn’t updated it much. I quite liked the antenna changes on the 4S as that fixed the problems I had with the iPhone 4.

    So will the iPhone 5 raise the bar? Apple will likely add a 4 inch screen to the device. In the past Apple has always put a 3.5 inch screen in the iPhone. The only thing that changed over the years was the resolution doubling which was a huge increase in quality. I guess they have also added that oleophobic covering to the screen at some point in time although I forget which generation that was, perhaps the 3GS.

    A better camera will certainly be added. The iPhone 4S camera is quite amazing for such a small package and I expect that some fancy terminology will be used to explain the iPhone 5 camera. I think another jump in megapixels can be added, perhaps from 8 to 12 as well as a more refined lens. As Apple likes to keep the back of the iPhone flat, we wont be getting any fancy mechanical shutters that add a bulge to the back of the device. I also think that Apple might jump in to HD for the front facing camera. The 4 and 4S appear to use the same front facing camera, but as FaceTime is becoming more popular, I think Apple need to address camera quality on the front side here.

    NFC has been rumoured and partly because of the iOS 6 having PassBook. PassBook would sit well with an NFC enabled device. Apple has often added unique features to latest generation smartphones. Last year, users got Siri and this year, I think NFC could be on the cards. AnandTech claims that the iPhone 5 will not have NFC and has quite a complex reason for it relating to how NCF works and the technicalities behind it. Although I can see why it wouldn’t work, I can also see a compelling reason why Apple would want to add some soft of contactless payment… other than QF codes, barcodes and manual codes written on the screen. The new iPhone leaked shots show a part glass back with the top and bottom looking to be some sort of RF window. There must be a reason why Apple added these in, assuming they are just for decoration and also assuming that the leaked parts are real of course. So, NFC is an unknown but could be something that differentiates the next gen phone even more.

    The obvious changes will be a bump in CPU and GPU and the device will almost certainly use an A6 processor. There will be a few more pixels to handle as well as a general increase that we all expect to see between generations.

    Back to the 4 inch screen… it has been called for. Android smartphone manufacturers have tried to differentiate by adding larger screens and now it seems that Apple might be breaking away from the 3.5 inch size. The main difference with the Apple way of doing it is that they appear to be keeping the exact same width (when held portrait) and instead will simply increase the height of the screen, perhaps by adding another row of icons to the home screen. By doing it this way, the phone keeps the same width which makes it just as easy to use with one hand as your thumb will likely still be able to reach all 4 corners of the screen.

    What will that do to apps though? There have been a few ideas on apps and how they will be effected. As there will be now two screen sizes to contend with for the iPhone (and perhaps iPod touch) Apple could handle this a number of ways. First, they could simply add black bars on the top and bottom of apps. That would be unlike Apple though. An alternate option is that apps that can be stretched will probably be automatically be stretched. Think of apps like Mail or your contacts. They have tables in them with cells that run out of the bounds of the screen. Having a longer screen could simply mean that Apple adds another cell of data in to the visible area. Email tends to have 4 and a bit cells showing on the screen. That will probably just make the Mail app and other apps that use tables show another cell of data. As for graphics, could Apple stretch the screen out a bit? I’m not sure as this would also look awkward on some apps. Another option is that they could just throw in a tool bar, but I don’t think that will happen either. The only thing I can think of is that they will just encourage developers to work with a new Xcode, released on the date of the iPhone event and give developers a week or 2 to get apps updated to work with a new size and old sized screens. Perhaps a tool to specify (like springs and struts) what elements/objects can be stretched out for the iPhone 5 or what can be squashed if going backwards. This adds a bit of fragmentation in to the mix though as there are millions of iPhones around the world. But, if Apple stick with 4 inches then it is just a few years of fragmentation while devices get older and eventually break.

    Adding the iPad mini and iPhone 5 in to the mix, that could mean that developers need to work with the following devices and screen sizes:

    iPhone 3.5 inch
    iPhone 4 inch
    iPad mini (7.X inches)
    iPad 9.7 inch

    I guess it’s hard to say that 4 screen sizes can be classed as fragmentation when compared to the number of screen size variations on Android (perhaps in to the hundreds), so I’m inclined to think that Apple will just provide some sort of options in Xcode for developers to work with.

    Either way, I’m quite excited to see what Apple has been creating these last few years. All should be revealed September 12 where the iPhone is concerned. Perhaps October for the iPad mini… unless that becomes the new rumour for 2013, 2014, 2015… you get the idea.

  • A look at Backup Options

    I was reminded recently about the importance of keeping good backups of data due to someone not having backups and losing next to everything he ever owned digitally. It was a costly mistake and one that cost a few thousand dollars to recover some of the photos off of the hard drive.

    Storing everything digitally can come with a risk that if your computer breaks, you might lose all of your data. Uploading to the cloud helps alleviate some of those problems although the best option to is to have a good backup system in place that you can fully restore from.

    What documents do you store and where?

    A good way to decide what kind of backup you need is to look through what you have now. Specifically you want to look at what information is stored on your computer, where it is stored, how it is stored and if there is any risk to not having a backup of that data. Lesser important files would include your operating system that could typically be reinstalled if you already have a licence key. Also, you might have online accounts where you can download your applications from again. Specifically relating to the Mac and OS X, there now is the Mac App Store that would allow you to re-download all your purchased apps assuming you remember your username and password. Remember that some software you have installed might not have come from the Mac App Store though.

    Here is my backup solution

    I use Gmail, Dropbox, Evernote and iCloud to store information on. I use a few other services which don’t hold any important data. Although I feel quite safe that Gmail, Dropbox, Evernote and iCloud will keep my data safe and I feel confident that they have good backup systems, it is also worth pointing out that I don’t pay for iCloud or Dropbox which means that those services could be technically pulled at any time.

    For Gmail, I use Google Apps and pay a fee each year which gives me about 25GB of email storage. I have about 10 years worth of emails in there and have hit 13% looking now, so plenty of room for growth. However, Gmail might run in to problems so with that in mind, I occasionally open up my email client on my desktop computer and simply download a copy of all emails using IMAP set to keep a copy on the server but still physically download all email contents rather than just headers. By doing that, if my Gmail account gets suspended, hacked or simply a cluster of storage servers crash and all my emails are gone then at least I have the majority of emails that I can simply connect up with IMAP and re-upload them to the cloud.

    For Evernote, these are also stored in the cloud. This is a paid for service although free is also available. Just the same as Gmail, I am confident that Evernote does a good job of keeping things safe, but to be on the safe side, I also use the desktop version of Evernote that has all my documents stored so that if the account does have problems I simply re-sync to the server. Again, this is unlikely but nevertheless, still a simple and easy task to do. I use Evernote daily on the desktop, so it is almost always in perfect sync.

    For Dropbox I also use the dekstop version, on a couple of computers, so I do have copies of all data stored in there and likewise, if they go down and I lose my data I can simply re-upload it.

    For iCloud, this is just a default for Apple. I tend not to back up much to iCloud as I only use the free 5GB service. I don’t backup emails, calendars, contacts but do leave the rest of the options in tact.

    Photos are not backed up to the internet on to a cloud service other than a few that I might have clipped in to Evernote or a few that I uploaded to Dropbox to share with someone else. So, for these I need to have another backup system in place.

    What backup system works best for me

    A few years ago I decided to get an ioSafe Solo external drive. A link to a the current day product is here. It has 500GB of storage and has the benefit of being both fireproof and waterproof. If my house happend to be destroyed I’d hopefully manage to get a torched metal box back from the mess that was made, open it up, open the protective bag inside and find a fully working hard drive inside. This is my primary backup that I keep which backs up all what I listed in the section above. I formated it to work with TimeMachine on the Mac so that each hour of the day an incremental backup is kept. I leave this running 24/7 and secure it away so that I can recover contents if needed.

    The problem I have now is deciding which secondary backup option to choose. Off-site backups are looking like a good option at the moment with the thought that I’d purchase a couple of TB of storage on two portable drives (1TB each) and then backup to one and store that at a family members home and then every few weeks I swap it out with the other drive and then create new backups on the other drive and alternate every few weeks.

    Another option I have been looking at is an online backup service. The problem is that uploading a few hundred GB of files to an online service takes time when the up-stream is limited to less than 1MB. Also, my ISP imposes limits at the moment which means it might take even longer… I’m just not sure how realistic the option is of uploading everything online that I need to keep.

    Is it overkill to have several backups?

    At the moment it is overkill it seems as my iMac is still working and I have access to all my files. If my computer ever breaks or one of the online services above breaks then ask me the question again and I’m sure I’ll tell you that restoring my data was the way forwards and that my backups were essential.

    I’d rather be cautious than hope for the best that all will be OK. All it takes is a failed drive on my primary machine and I lose a lot of information. With a backup in place, I feel a lot more inclined to think that all will be well. The reason for keeping more than a single backup is that backups can also be corrupt. Having a second or third is the better option as it keeps the backup you might rely on one day, backed up again to add more security.

    Don’t be caught out by not storing your data in multiple places!

  • Full disk encryption and why its a good idea

    Having a computer stolen sucks to put it simply. Other than the annoyance of someone breaking in, you also have the worry of data being stolen and potentially being looked at by the thief. This is where full disk encryption comes in to play.

    Full disk encryption is a means by where the data on your disk gets scrambled and can only be deciphered by using the correct password, hopefully a strong password at that.

    More of our digital lives are stored on computers these days. Data we store includes music, video, photos, paperwork as well as all our emails amongst other things. Although a lot of data is moving to the cloud, we still keep a lot of personal information on our laptops, desktops and smartphones which is why full encryption is recommended.

    Should your computer be stolen and you have full disk encryption enabled, it makes it extremely difficult for the thief to access your data. Yes, they might get a full computer out of it but they wont have access to your personal photos, emails and anything else you store online.

    How do you encrypt your hard drive?

    Encrypting your drive differs between operating systems. Mac OS X Lion and Mountain Lion has encryption built in by way of software called File Vault. To activate File Vault you need to load up the preferences, select security and simply activate it with a password. Encryption takes a number of hours to complete as all data stored on your drive needs to be run through the algorithm to encrypt it. Just as a guide, mine took almost all day and in to the early hours of the morning to complete based on about 450GB of data stored on a 1TB drive. I was using the computer for a number of hours during the process.

    For Windows, it also depends on which version of the operating system you have installed. If you run Vista, Windows 7 or the upcoming Windows 8 then depending on which version of those you have, you might get access to BitLocker which allows full drive encryption (although to a point as it is actually logical drive encryption).

    How to enable drive encryption on Windows or Mac hardware is beyond the scope of this article, but don’t worry as full instructions for Windows can be found online, while full instructions for the Mac can be found over here.

    Should you encrypt your drive?

    My personal preference says that you should if you use modern hardware and modern operating systems. Drive encryption in that past used to slow down computers due to having to decipher every bit of information stored. On running full drive encryption on my computer recently, a late 2010 iMac lower end spec with a 16GB upgrade of RAM I was surprised at how well the machine performed. The only slow down was through the initial encryption phase as well as it taking a bit longer to boot. Other than that, I can’t complain now that the drive is secure and all information backed up and kept safe.