At $25 a year the iTunes Match service can be a little tough to swallow given all it does is synchronize your music across iTunes especially when other file-sharing services are cheaper and more general purpose (OneDrive, Mega, DropBox etc).
One important thing to know however before you let your subscription lapse or cancel is that once it’s gone all your cloud-backed-up music will be unavailable.
That means if you don’t still have a local copy of the track your ripped from CD/download from anywhere but iTunes you’re going to be digging through backups or have to re-rip or repurchase it.
There is a simple way to download all your missing music before your subscription expires though.
Steps to download all your iTunes Match tracks
Start up iTunes
Create a new Smart Playlist with the criteria (as shown in screenshot)
iCloud Status is matched
Location is not on this computer
Save this Smart Playlist as say “iTunes Match Download”
Browse to this Smart Playlist and select one song
Select all with Ctrl-A (Windows) or Cmd-A (Mac)
Consider the total size at the bottom of the screen in terms of whether you have this disk space or bandwidth allowance.
Right click on the items and choose Download
This may take a while. You can see the status by opening the Downloads window.
If the downloads stop or fail for any reason just repeat steps 4-6 as your new playlist will keep shrinking as files are now available on your computer.
This post is part of a series on Turbocharging WordPress with NGINX and HipHopVM but also serves as a standalone beginners guide to getting an Ubuntu server ready at Digital Ocean.
Virtual machines are called Droplets at Digital Ocean so hit Create then:
1. Give it a name
Give your server a name. This has no bearing on the name your customers see and is only for initially connecting to it/in the Digital Ocean dashboard.
2. Select size
A popular blog should have no problem with the $10 a month 1GB/30GB/2TB option but I run a few sites so went for the next one up with more CPU and RAM.
You can scale up later although you won’t get the extra disk space as it can’t resize the disk. Given static storage like Amazon S3 is cheap and integrates with their CloudFront CDN this isn’t a problem.
3. Select region
Is your audience focused in a specific area?
Yes (e.g. a real estate site) then choose the closest server to them
No – choose the US East Coast like New York for good global coverage
4. Select Image
Here you select which distribution of Linux, which version and which CPU architecture you want to use.
For this guide I’m using Ubuntu 14.04 x64. In theory you could use alternative distributions or versions but you’re on your own.
Do not select x32 as HipHopVM is only supported on 64-bit architectures.
4. Add optional SSH keys
SSH keys let you automatically sign in without a password – the security being a key file on your computer instead. It’s worth learning how to use this but is outside the scope of this article so just use the normal password for now.
Leave the defaults on unless you want to pay extra for their backup service. Personally I like to use a WordPress plugin that backs up to S3 called UdraftPlus.
6. Hit Create Droplet
Within 60 seconds you should have a fresh virtual machine ready to go.
Connect to your Ubuntu virtual machine/droplet
You will need ssh (preinstalled on a Mac, Windows users should check out Putty) Check the IP address shown on your droplet’s page then:
You should confirm the fingerprint the first time by typing yes then be rewarded with a Welcome message and a cursor to type new commands into!
Update your Ubuntu virtual machine
Even though the version of Ubuntu you chose is quite up to date there will be a few updates to apply, thankfully this is very easy.
sudo apt-get update
Tells the package manager (known as “apt”) to go find out about all the updates. It doesn’t yet install them though, to do that we need to wait until it’s finished then type:
sudo apt-get upgrade
You’ll need to confirm this with Y and wait a little bit. This upgrades a lot of the packages and applications. Once complete then:
sudo apt-get dist-upgrade
This tells apt to upgrade the core operating system as well. Again confirm with Y and wait a little bit. Once this one is complete you’ll need to reboot your machine with:
sudo reboot now
You’re now ready to reconnect and starting installing packages to make your virtual machine do something useful!
I’ve been wanting to do a follow-up to the popular Typography in 8-bits: System fonts post and the 16-bit sequel for some time and recent Hacker News and ArsTechnica traffic reminded me that I’m not the only one nostalgic for chunky pixel fonts of old.
This time I’m focusing on a handful British machines that were much less well known around the globe which – all seem to borrow heavily from other machines!
Sinclair QL (1984)
256×256 (40×25 text)
512×256 (80×25 text)
Unknown Download in TrueType
The short-lived Sinclair QL was Sir Clive’s attempt at getting into the business market but the corner cutting on the CPU (a Motorola 68008 – the 8-bit data-bus version of the 68000) and storage (Microdrives consisting of loops of high speed tape instead of disc) meant it wasn’t taken very seriously. This was a shame as the operating system and software was advanced for its time.
True descenders making the font effectively 9 pixels tall
Single story lower case ‘a’
Squished lower-case ‘f’
Aligns braces and brackets to tightly wrap contents
Soft curves on ‘gil’
Unusual join on ‘k’
A rather tidy condensed font very similar to those used on LCD displays still today. Almost certainly looked good on a monitor although perhaps not using the system default colors shown here. Almost certainly too hard to read on a TV at the time.
Has similar proportions and characters to much of the Apple ][ font but with various visual improvements such as on the 6,9,2,$ etc.
Memotech were a peripheral maker who decided to get in on the action and produce their own machine in the 1984-1985 period that saw a lot of machines and failures. Despite some good specifications it never made a dent and its claim to fame is being the computer in the movie Weird Science.
Some very quirky decisions especially in lower-case
Awful character alignment especially on ‘q’
Uneven descenders on ‘gy’
Weird serifs on ‘adu’
This quirky font doesn’t looks okay on low-quality TVs of the time with oddities lost in the blur. On sharper screens it looks amateur and unfinished.
Despite some similarities in the upper-case to the Apple ][ font it doesn’t take many cues from anywhere else.
Alan Sugar’s Amstrad didn’t waste any time after the CPC in going after the business market with a range of cheap machines for word processing and other general tasks. In the UK these machines could be found everywhere either paired up with Amstrad’s own daisywheel or dot-matrix printers.
Pixels were actually rectangular (simulated here by doubling the vertical size)
Very distinctive curves on ‘CGOQ’
‘X’ looks like a different style because of high mid-point
These machines came with their own monochrome monitors and were very high resolution for consumers at the time. The font is not a bad choice and did allow for 90 columns of text but smarter alternatives existed in word processing programs such as Locoscript.
An almost direct copy of the Amstrad CPC font disguised by the double-height pixels. Actual changes are the 0 taking on the more oval shape, O and Q taking on the boxier shape and the apostrophe loosing its slant.
The PCW was not alone in using an existing 8×8 font in a double-height manner. The Atari ST, Commodore Amiga and Acorn Archimedes all used the same trick.
Acorn’s successor to the BBC Micro was a lovely piece of hardware with an all-new 32-bit RISC processor they developed dubbed ARM. While it did well in Acorn’s entrenched education markets it never found a foothold anywhere else. After various models they cancelled their upcoming Phoebe workstation (yes, named after the Friends character) and would concentrate on thin-clients before abandoning that and focusing purely on processor design where they had immense success. The ARM design now powers almost all the smart phones on the market today.
Pixels were actually rectangular (simulated here by doubling the vertical size)
These machines came with Acorn’s color monitors and were capable of running VGA-like resolutions. The GUI on these machines really missed an opportunity here to use a specifically designed font and to add proportional text printing and take on the Mac. Instead these used a scaled fixed-width font like the Amiga and ST despite being a couple of years late to that party. Proportional fonts were supported later.
Identical to the BBC font except for ‘^|’
SAM Coupé (1989)
256×192 (32×24 text)
512×192 (85×24 text)
Unknown Download in TrueType
MGT were a third-party producer of expansion products for the Sinclair ZX Spectrum who bet their company on a Spectrum successor using VLSI technology that would ‘rival an Amiga’ at a fraction of the price. While the machine was impressive by 8-bit standards when it finally arrived somewhat late and more expensive than originally touted it failed to make a dent as the market went to the 16-bit machines and it took MGT down with it.
Rather ugly ‘*’ asterisk
Inconsistent ‘.,;:’ set
Inconsistent ‘ and “
A smart font that despite the various inconsistencies looked good on a quality display in both high and low-resolution modes.
Almost a direct copy of the Sinclair QL font. The upper-case are identical and a most lower case with some exceptions to squeeze the QL’s 9 pixel high font into 8 pixels. This is especially apparent in the over-extended 7, the slashes and the bracket alignments.
There is a fair amount of info on making and publishing NuGet packages but I couldn’t find a simplified guide for the simple case. Here it is and start by downloading nuget.exe and putting it in your path.
1. Multi-platform considerations (optional)
Supporting multiple platforms gives you a choice to make:
If you can go with PCL do it. For CSharpAnalytics we use platform-specific system info and hooks so it’s not an option – we went with multiple projects.
Creating a separate .csproj for each platform and putting in the same folder means adding files isn’t too painful (show all files then include the ones you need) but you do need to take steps to make sure the build process for the projects don’t interfere with each other by separating the bin and obj paths:
Set the output path in the Build tab of project properties to be unique per configuration to for the bin files, e.g. “bin\Net45\Release\”
Edit the .csproj file adding a BaseIntermediateOutputPath tag for obj files, e.g. <BaseIntermediateOutputPath>obj\Net45</BaseIntermediateOutputPath>
2. Create your .nuspec definition
Now that you know which release dll files you need to include you can go ahead and create the nuspec file that tells nuget how to package your files up.
Open a PowerShell and type nuget spec to create you an XML file to edit in your text editor
Once you’ve entered your author details, a snappy description and links to your project page and license you can then add the files. Libraries will want to copy the .dlls into the lib folder with element like these:
Each platform will require a specific target and they should use platform name (e.g. net45, sl5, windows8) described in the NuSpec creating packages documentation. That page has a lot more detail on things such as content file types etc.
Remember to check your .nuspec file to source control (there is nothing private in it) and add it to your solution as a solution item so it doesn’t get missed.
3. Create your .nupkg package
The easiest part of the process. From PowerShell type:
nuget pack yourfile.nuspec
If all goes well it will create yourfile.nupkg.
4. Test your package
Just because your package was created doesn’t mean it works and you don’t want to publish to the world until you know it works especially given you can’t delete packages from NuGet:
Create a folder to be your own private testing NuGet repository, e.g. c:\testnuget
Publish to your test repository with nuget publish yourfile.nuspec -source c:\testnuget
Configure Visual Studio to use your test repository by going to Tools > Library Package Manager > Package Manager Settings > Package Sources and then adding your test folder to the Available package sources test
Create a new test application and then add a reference using Manage NuGet Packages to choose your new package from your test repository.
Write a few lines of code to test you can actually use your package ok!