Twitter client for Mac #Twitter

Twitter client for Mac #Twitter

The official Twitter client for the Mac died yesterday. When you try and start it now it fails to authenticate any of your accounts. This is because Twitter announced recently that they were going to stop developing and supporting their client on the Mac in an attempt to people to use their Web-based client instead.

For me and I suspect many others I really don’t like using the web client. It’s something simple to do with it suiting the way I think and work but having Twitter in its own client app away from the work I’m doing in Safari suits me.

So having looked at a few options I’ve bought TweetBot for the Mac and it seems fine and an easy transition.  What I don’t understand is the business logic behind Twitter’s decision to kill their Mac-based client.  For a company, the size of Twitter employing one or two developers to support a Mac client is hardly a significant investment. Most of the code base should be in common with their iOS version and the skillset is basically the same.  There’s also the expectation that at WWDC 2018, the annual Apple developer conference that they will announce support in iOS and MacOS for universal apps. This will allow developers to create a single app that can be downloaded and run on Mac and iPhone for example.  Why would Twitter kill the Mac client now rather than wait and create a good universal MacOS/iOS app?

In effect what Twitter has yielded control of thousands of influential Mac Users to third-party clients which they will struggle to control and gain advertising income from so easily.

When you see such irrational business decisions being made you have to wonder if there aren’t fundamentally more serious problems at Twitter.

Let me know what you think in a comment below.

 

How to get Eclipse working on OS X 10.10 Yosemite

After downloading Eclipse (Luna 4.4.2) on Max OS X 10.10.3 Yosemite it failed to start-up. It gave the highly misleading error message To open “eclipse” you need to install the legacy Java SE 6 runtime.

OSX Eclipse asking for Java 6 to be installed.

Installing Java 6 isn’t a good idea. It’s out of support and now has a number of serious security issues. Common sense says there has to be a better solution.

Try going to the OS X Command line and enter the command java -version

In my case then displayed the message, To use the “java” command-line tool you need to install a JDK.

OSX prompt to install the Java JDK

 

Note that it’s asking you to install a JDK. I knew I had the latest version of Java runtime (JRE) installed so had expected the Java -version command to display Java 8. Clicking on More info will take you through to the Oracle Java download site.

Oracle Java JDK download page

 

From here download the Mac OS X 64 bit JDK and then when the download has completed click on the dmg file in the download loads directory and follow the install instructions.

Once complete try the Java -version command again from the command line to prove the install has been successful.  In my case this came back with:

java -version

java version “1.8.0_45”

Java(TM) SE Runtime Environment (build 1.8.0_45-b14)

Java HotSpot(TM) 64-Bit Server VM (build 25.45-b02, mixed mode)

Now clicking on the Eclipse icon will successfully launch Eclipse.

Eclipse OSX About Box

To prove it here’s the Eclipse About box to show Eclipse Luna 4.4.2 successfully running on OS X 10.10.3.

Update: June 19th 2016:

A recent update broke the above solution. I hadn’t used Eclipse on the affected Mac for a few weeks so I’m not sure if it was broken by a Java update, an OSX update or even an Eclipse update. Anyway the solution was a simple extension of the above steps.

Find your eclipse.app and CTRL right click on it, you will then see a ‘Show Package Contents’ option

Edit eclipse package contents to change Java Runtime version

Now navigate to the eclipse.ini shown below:

eclipse.ini change JRE Java version setting

Now edit eclipse.ini and look for the highlighted line:

OS X eclipse.ini vm setting for Java

Shown above is the correct setting for my Mac that now works.  I’ve seen this incorrectly set to either the wrong location or even to a specific Java patch level. If you’ve got a different location  under -vm make a note or backup and then try changing it to this more standard value.

 

If you have any problems or follow-up questions do please leave a comment below.

What PC should I buy for my parents 2014?

This is a question I get asked by someone every few months so I thought I’d write a quick blog post about it.

When you buy or recommend a PC/Laptop/Tablet etc to someone you should know that you are going to become their personal IT Helpdesk 24 x 7. If you’ve ever tried talking someone who is only familiar with the basics through Anti Virus updates, Windows updates or Windows pop-up messages which are terrifying to normal people you’ll know what I mean. I once had a late night call from a relative who was really worried about having done something ‘illegal’ after reading some unhelpful message that popped up from Windows.

What do they really want to do with a PC/Laptop?

These days I would completely avoid buying a laptop/PC or Mac if all people want to do is surf the web, do emails and occasional word processing. Instead they are better off using a simple tablet device (see below). These are a perfect all in one solution and are not subject to complicated software updates, installs, anti-virus etc. They can be set-up with external keyboards and easily pair with the current crop of printers from the likes of Epson and HP over WiFi.

I’d only recommend looking at a Mac or PC if they have a lot of video, photo’s, accounting, word processing, presentations or special software requirements.  Even then most of these can be done surprisingly well these days on iPads.

For example if you want to write a novel then I wouldn’t recommend trying to do it on your iPad but if you just want to maintain a CV and write a few letters if would be fine.  Also if you want to use Accounting software like Sage to be compatible with an Account you may be better off using a Mac running VMWare or a PC – although again Cloud based solutions like Xero work very well.

Mac or PC?

I work with both Mac’s and PC’s (and numerous other systems) but these days I always recommend people buy a Mac rather than a PC unless there is a good technical reason for wanting a PC.

Why Mac rather than PC? Well it goes back to my opening comments about you becoming your friends personal IT helpdesk 24 x 7. These days Apple do such a great job of providing technical support and after sales service it’s a joy in comparison to trying to sort most PC hardware problem out.

Generally I recommend people treat themselves a Mac Book Pro or Mac Book Air. If anything goes wrong with it they can make an appointment and drop in with it to their local Apple Store – job done!  I also recommend that people get an Apple Time Capsule. These are simple WiFi based backup drives. They make sure all the content on you laptop are safely backed up – automatically. If the worst happens and your laptop fails completely you can just take the Time Capsule and you Mac Book into the Apple Store and they’ll fix the laptop and then restore it from the latest backup on the Time Capsule.

There is simply no where now that I would trust on the high street to provide this integrated high quality level of customer care for a PC based product. That’s not to say that there aren’t some good computer stores out there but the service and experience will be much more variable.

Apple iPad or Android Tablet for Parents?

If it’s for the children to play with then either an old second user iPad or a cheap Android base tablet. If it’s for your parents then go for the iPad.  I’m not knocking Android, technically some of it’s latest versions have features you won’t see on the iPad for a few year if ever.  The iPad is however a much more refined and curated experience more suited to busy people who just want to get on with emails, surfing, editing documents etc rather than learning how to tweak hundreds of settings and install lots of software from all over the Internet.  To date the iPad has proven to be much more secure than Android. There is Anti-Virus software for the iPad but I don’t know anyone who has ever used it, on the other hand it’s recommended on Android because of it’s open nature.

Apple iPhone or Android or Windows Phone for Parents?

You’ve probably guessed by now that I’m going to say iPhone.  If any of the other kit you have is Apple and you’re happy with it then it makes sense to go with the iPhone rather than another brand. The level of easy, quick and seamless integration you get between Apple devices is second to non.

To be honest there are some very good deals on Android and Windows phone. If the budget you are working with is limited then it may be a hard choice between a high spec Android or Windows phone and may be last years or the year before iPhone model.  In my experience most people are perfectly happy with the iPhone 4S, especially if it’s their first mobile like this.

Let me know how you get on. If you have any questions leave it in a comment below and I’ll try and reply as soon as possible.

Apple iCloud KeyChain Web Developers Best Practice Guide

Apple’s password manager (iCloud KeyChain for Safari) may not be the best password manager but that’s completely irrelevant because by now it’s already the most popular, most widely adopted password manager in the World. It’s therefore important that you make sure your website is compatible with this piece of Apple technology. As a user of Apple’s Safari I’m increasingly shocked at the number of major websites that are not compatible with the Apple password manager.

Testing that your site works with Apples iCloud password manager will improve your User Experience (UX) and also improves your sites security.  In my experience people are much more likely to use a strong password if Safari picks the password for them.  In addition to this Safari generates a random strong password for each site, so the chances of a hack on one site being used to gain access to another are greatly reduced.

The key points to making your site compatible are:

  1. Make sure that testing your site against the Safari password manager is incorporated into your user acceptance test plans from now on.
  2. Make sure that testing includes your password change page and password recovery pages. Specifically make sure that when your user picks a new password that this gets saved away properly by Safari and is used next time they need to logon.
  3. Make sure that your site can accept the long complex passwords generated by Safari – currently 15 long containing upper and lower case and dashes.  For example:

    Apple Safari Web designers and developers password manager guidelines.
    The most frequent issue we encounter is that sites don’t allow the hyphen in passwords.

  4. Make sure that your website does not undermine this great security by then emailing out this strong password to the user/customer as part of their registration confirmation.
  5. Make sure that your website does not store passwords as clear text in its database. It should be using a one way hashing algorithm so that the password itself can never be retrieved.

If you discover any hints or tips for making your website work really well with Apple’s Safari / iCloud KeyChain password manager do please get in touch and leave a comment below.  We’ll be sure to update this blog post as we discover more about it.

How to download an entire website on Mac OSX

I needed to secure a copy of an old blog site before we started redeveloping it. I’d always assumed that in Mac Safari there was an option to not only download a page but also all the attached pages but there isn’t.  I couldn’t believe it and so googled it and found that sure enough Safari doesn’t support downloading an entire site.

I was sure that someone else must have already solved this problem so I looked around the Mac App Store.  I couldn’t find anything that would do this initially.  Then I came across an App called Kiosk Monster.  This is designed to download a website to your Mac Laptop so that you can take it to trade shows / opens days etc and run it in kiosk mode. That means that it’s secured or locked down so that people can click around the website you’ve downloaded but they can’t go to other websites or indeed start messing about with your Mac.  That’s actually really useful and I’m sure I’ll use it from time to time but the added bonus is that to achieve this the app does download the entire site to your Mac.

It wasn’t obvious to start with whereabouts the app was storing the downloaded site.  With a little research I discovered that for each site it downloads it creates a new directory in ~\Library\Application Support\KioskMonster so from there you can backup or copy the  website to wherever you want to store it.

Use the Copy Site button to completely copy any site. Once the site is copied you can view this copied site by clicking on the "star" icon.  Full screen mode can be locked with a password and also can prevent users from leaving the active site.

I highly recommend this app, at £4.99 it solved an immediate problem and I’m sure I’ll be using this a lot in the future. Click here to view it in the Mac App Store.

If you have any questions or alternative suggestions for doing this type of work do please get in touch.

Why won’t the latest version of a Java Jar file run on my computer?

I recently received updated VPN software from a client.  I’d been using their previous GBAuth.jar quite happily for a number of years on my Mac but after installing the new version it just failed to work at all.  Double clicking on the GBAuth.Jar file to run it and the Mac would think about it for a moment and then do nothing.  Not a single error message, just nothing.  I keep my Mac up to date with all the latest patches so I knew I had the latest version of Java installed – or so I thought.  What I’d forgotten is that Apple only maintain Java version 6 if you want Java 7 or above you have to download it from Oracle.

Before I went to all the trouble of downloading and installing Java 7 from Oracle I wanted to check the version of Java used to build the old and new versions of the Jar file.  There are Jar file viewers but the easiest way for non-Java developers is simply to rename the jar file so it has a .zip extension, e.g. rename GBAuth.jar to GBAuth.zip.  You can then double click on it and have OSX expand the zip file. Within the root of this zip file you’ll find the Java Jar manifest.

Java Jar example manifest structure

 

You can right click on the  MANIFEST.MF file and open it with a text editor.

Java Jar Manifest created by Java 7

 

As you can see the new Jar file was actually created by Java 1.7.0-b18 so I couldn’t really expect it to work on my Java 6 installation on my Mac.  Just to prove this was the issue I looked at the old Jar file….

Java JAR created by Java 6

 

So this proved that the previous version of the Jar had been compiled with an earlier Java version.

I then downloaded and installed Java 7 for the Mac from the Oracle site and the Jar file worked perfectly.  In all of this I was only really surprised that double clicking a Jar file built under a previous version of Java just caused it to failed to run silently without any error message or assistance.  It’s not a great consumer experience.