Zach Inglis
I am a Scottish graphic designer and programmer with over 10 years experience in the industry. I am versed in both design and development giving me a very well-rounded skill set that allows me to fully realise your idea and put it to life.
Posts
- January 12, 09:59 AM
- January 06, 12:36 PM
-
January 05, 04:26 AM
Words You Won't Find In The Entire Tumblr Codebase
- Factory.
Ooh; a game.
- Stability
:D
Factories are quite a useful tool with tests I must say. Considering how many finickity bugs do pop up on Tumblr; I could not expect there to be any tests. Granted that the major bugs seem like server load, there are so many tiny ones that I could only imagine would be bypassed by decent test coverage.
I hardly think Tumblr is the right company to preach on HOW to code, though? Especially when the server outages and bugs are getting more often and worse. If anything; you saying shows the reason to use Factories.
-
December 29, 03:00 PM
Open Letter To Tumblr
Dear Marco et al,
I have just been alerted to your new ‘Ask’ feature, which gives you exactly the same featureset as Formspring.me. I appreciate the fact you are trying to satisfy the Tumblrverse, but everyone would of been quite happy if you hadn’t. There was nothing broken, so nothing needed fixing on that front.

However; Tumblr is probably THE buggiest website I have ever used. Including Twitter. Everything is broken in some way or another and the website can not stay up for more than 50 minutes. As someone who likes to Tumbl and has a few Tumblogs (some with 1100 followers, some with 2600 followers), it frustrates me no end.
Everyone knows the core principles of a successful web application is keeping your feature-set clean, relevant and to do as little things as possible; as good as possible. This is just an un-needed.
Tumblr is a great place, with a great community but having watched quite a few people leave it because of the lack of visible care going into this place, I wonder what really is happening behind the scenes.
Please can you focus on what makes this website great? And less about random new toy features.
Cheers very much,
Zach
- December 22, 06:59 PM
-
December 07, 12:39 PM
"Your portfolio is pink, I hope you are not homosexual"
After having a quite pleasant phone conversation with a client and discussing a proposed strategy for moving forward, they told me they hope I was not homosexual, because my site looked a “bit gay” with the pink.
I wrote off the hour and a half on the phone and did not proceed with any more negotiations.
My submission got through!
This happened to me a few years ago. I had a lot of comments to me over the years on the pink of my portfolio (I only have a dash at the moment; I need to add more) but I never felt so insulted. It was partly to do with the tone.
-
December 04, 03:30 PM
How To Take a Great Portrait
Taking portraits is a very popular way to use a camera. However, everyone can be sensitive about having themeslves photographed. As with the whole of photography; it is our job as photographers to get the best result we can and hopefully this tutorial will help with that. Every subject is different (be it face shape, skin colour, hair colour, etc).
-
November 19, 07:36 AM
Crummy now on GemCutter.
Crummy, the simple and tasty way to add breadcrumbs to your Rails applications is now on GemCutter.
Thanks to netzpiraten for getting this started.
-
November 17, 04:00 PM
The Importance Of Pocket Books.
Many times in my years as an entrepreneur and networker, I have raised the question of best organizational practices. I am constantly looking for quick tips to create a better and more productive me. One of the most vital tools, especially for the forgetful, is a pocket book.
Throughout mine you can find random questions and thoughts. The image above shows one task page list. Other items in the book consist of thoughts like “Best Wacom to get?”, “Do I want to go to Ruby Manor 2?” and “Price for 50mm ƒ/1.4 lens”. Some of which I may have forgot.
While a phone could be a good replacement, I don’t have to worry about eating into my battery which I would possibly need later.
The book I use, as shown above is called WhiteLines* which is only $3 and lovely and minimalist.
* The link goes to Amazon.com and has my affiliate code attached.
-
November 06, 04:36 PM
I have just redesigned my portfolio. I try to keep my portfolio a proper reflection of my skills.
Click to see. Please enjoy :)
-
October 23, 06:36 PM
My resume is now online! I am available for permanent and contract work and am more than willing to relocate.
- September 28, 02:31 AM
- September 22, 02:08 AM
- September 17, 10:05 PM
-
September 17, 05:03 PM
Quick Note
I lost my feed when MediaTemple rudely shut my blog down and I moved to Tumblr. I have just managed to claim my Feedburner URL again, so thanks to the few that stuck around.
-
August 26, 09:36 PM
RailsRumble Picks '09
I was randomly assigned a group of Rails Rumble entries to judge this year. I’d like to call out my favourites of the ones I’ve judged. I’m looking forward to seeing the full list after I judge.
In no perticular order, my favourites are:
-
August 13, 11:18 PM
Judging Rails Rumble
So after doing having the great honour of doing the preliminary design for Rails Rumble, It has just been announced that I am joining some amazing people and judging Rails Rumble aswell. It’s a great privallage and I look forward to judging your apps.
-
August 10, 11:57 PM
Minor Suggestion: Unless.nil? - Down with double negatives
This is a very small tip aimed for people to clean up their code-base and remove some of the double negatives.
Often I shall see:
unless @user.nil?The issue with this is approach is that unless is harder to read than if, then you have to mentally process the
#nil?The other approach is:
if @userHowever, for a lot of people this is not explicit enough. I find that too few know about
#present?methodif @user.present?
#present?is literally the opposite of#blank?and thus checks if it is notnil?or if it is notempty?Hopefully with this small tidbit of knowledge, you can clean up your code and make it easier to read.
-
August 05, 10:04 AM
Deploying Thinking Sphinx with Capistrano.
I’ve had a lot of issues trying to deploy ThinkingSphinx with Capistrano. This has been for a multitude of reasons. The following is my recipe for deploying and hopefully making it public will make a few peoples lives easier.
This assumes you are using the plugin, not the gem.
In your
deploy.rb, add the following at the top:require 'vendor/plugins/thinking-sphinx/lib/thinking_sphinx/deploy/capistrano'
Then, at the bottom add this:
before "deploy:rollback:revision", "thinking_sphinx:stop_gracefully"
namespace :thinking_sphinx do
after "deploy:default", "thinking_sphinx:symlink"
after "deploy:default", "thinking_sphinx:ready"
task :stop_gracefully do
begin
thinking_sphinx.stop
rescue
puts "ThinkingSphinx is not running. No stop required."
end
end
desc "Configure, Index and then run Thinking Sphinx"
task :ready do
thinking_sphinx.configure
thinking_sphinx.index
thinking_sphinx.start
end
desc "Link up Sphinx's indexes."
task :symlink do
run "ln -nfs #{shared_path}/db/sphinx #{release_path}/db/sphinx"
end
end -
July 25, 09:47 PM
Don't Accept Doing Anything But Your Best
Now this may seem vulagrly blatent, but I have been mulling over past jobs the last few days. I realised that I did myself no favours by being constantly belevonant. When I was asked to “Complete a design in 2 days” or such, I would say jump at the oppurtunity to prove myself or to try and help out in any way I can. Now I realised, by rushing the design work, my performance was lackluster and the results were not of that I was proud of. I was proud that I got the work out, but it was forgettable and obviously, you don’t ever want your work to ever be forgettable.
If your boss ever says “Can you do me a design in 3 days”, mostly I think the correct answer should be “No”, unless it’s a once off request. To be utilised as an average designer, will earn you that position and make you despensable, leaving little reward. It’s a mistake I shall try not to make again in the future, to only put out my best work and not accept putting out anything but that.
-
July 16, 09:04 PM
New jQuery Plugin: Animated Linethrough
I have created a new plugin for jQuery that allows you to animate the text in an element with linethrough.
-
July 09, 10:12 AM
Make Your Rails Development Environment Slower, Easily.
I’m about to do some work on a Rails project that requires the environment to be that of a real production environment for users. I have created 2 bash functions to aid me in this;
I put them in my bash profile. This is my first foray into bash programming, so if you think something could be done better, please tell me.
-
July 05, 05:05 PM
Portfolio Updated!
I have updated my portfolio with a selection of recent clients and websites. They include:
- Rails Rumble: It was an honour when I was asked to design the yearly competition’s website.
- Clickscape: I developed for this website for a few months, refactoring and finishing any uncompleted features.
- Zach Inglis v7: The current website you’re looking at.
- Zach Inglis v6: The previous iteration of this website.
-
June 28, 12:50 AM
Tutorial: How to display your last played artist from Last.fm
In this tutorial I will teach you how to display your last listened to track on your website with the jQuery library (although it can be easily translated to any other library). The JSON library for Last.fm is not very well documented.
-
Log into the API Account page and fill in the form for your application however you would like. Name the Callback URL ‘
LastPlayed’. Write down your API key. -
Create an element somewhere in your page with the id of #song. I use the following:
<strong>Currently listening to:</strong> <span id="song">Nothing</span>That way, for the few seconds that the Javascript has not loaded, it will appear sensicle.
- Right before the
</head>tag on your website, add the following snippet of code:<script src="http://www.google.com/jsapi"></script>
<script type="text/javascript">
google.load("jquery", "1.3.2");
</script>
<script type="text/javascript">
function show_last_track(JSONdata) {
var last_track = JSONdata.recenttracks.track;
var track_artist = last_track.artist['#text'];
var track_name = last_track.name;
var track = track_artist + " - " + track_name;
$('#song').text(track);
}
</script> - Finally, add the following code just above the
</body>so that once your page is loaded, it will execute. Don’t forget to replace YOUR_API_KEY with the one you jotted down earleir.<script type="text/javascript" src="http://ws.audioscrobbler.com/2.0/?method=user.getrecenttracks&user=piemaster&api_key=YOUR_API_KEY&limit=1&format=json&callback=show_last_track"></script> - Reload your page and check it works!
-
-
June 25, 11:18 PM
New Start
After some ‘complications’ with MediaTemple which ended up with them deleting my data, including all my posts from 4+ years, I have now switched over to a hosted soloution for my blog.
I am going to try and post a lot more than I did, through here.
Tweets
-
Moving in: Destroyed back moving furniture. Moving more tomorrow. Sat: Rest. Sun: Moving bags/travelling. Mon: Moving furniture. Then Rest!5 hours ago from TweetDeck
-
God I hate Paypal. I need to refuse to use them. #paypal #fuckedmeover #again37 hours ago from TweetDeck
-
Anyone got a link to the LED display/Autotest pass/fail post from all those years ago?37 hours ago from TweetDeck
-
@dburkes I know quite a few girls who'd love it actually :)5 days ago from TweetDeck
-
Pantone Messenger bags. :D http://bit.ly/aPBaUn5 days ago from TweetDeck
-
@lukeredpath Looking forward to seeing it!5 days ago from TweetDeck
-
@Netflix also there should be a way to contact you if I am outside the States. -_- Very unpleased.6 days ago from TweetDeck
-
@Netflix Don't offer me an account to watch TV on my Xbox, then after I pay for it… tell me I can't use Netflix outside America.6 days ago from TweetDeck
-
Wishing all those who go to SXSW tomorrow a fun time. Sorry I couldn't make it :)14 days ago from TweetDeck
-
How awesome. A Ruby conference in Maddison, WI. Nice idea @jremsikjr — Everyone else; fill the very brief survey out; http://bit.ly/bXaC8z17 days ago from TweetDeck
-
PHOTO: Angus Steak Houses, Leicester Square. Missing that vital G. http://bit.ly/amnV5X18 days ago from TweetDeck
-
(Factory reset. All apps are missing and so are settings.)2 weeks ago from TweetDeck
-
The battery died in my HTC Tattoo and it seems to have reset itself and asked me to do the Setup Wizard again o.O;2 weeks ago from TweetDeck
-
@gillianmarshall You tell 'em.2 weeks ago from TweetDeck
-
@antoniojl Twitter Application for Facebook?2 weeks ago from TweetDeck
-
Any idea how I activated Free Apple iPad spam? I'm usually really careful.2 weeks ago from TweetDeck
-
Are there any Instant Messaging apps fro the Android that covers all services and has notifications?2 weeks ago from TweetDeck
-
@sd thank you sir. Good work.2 weeks ago from Swift
-
@sd Any suggestions (free — I don't use Twitter enough to justify paying)?2 weeks ago from TweetDeck
-
1000$ Walmart Gift Card! Limited offer! See Details http://bit.ly/98ONH1 #shininghongstar Asian Network BBC Chile2 weeks ago from API
Recent tracks
-
Folsom Prison Blues - Overdubbed Version by Johnny Cash5 hours ago
-
It Is No Secret (What God Can Do) by Johnny Cash5 hours ago
-
Folsom Prison Blues by Johnny Cash5 hours ago
-
Papparazzi - Composed Or Made Famous By Lady GaGa by MIDIFine Systems5 hours ago
-
Poker Face (DJ ReMix) (As Made Famous by Lady GaGa) by Ultimate Dance Hits5 hours ago
-
Bad Romance (In The Style Of Lady Gaga) by Karaoke - Ameritz5 hours ago
-
5 hours ago
-
Pokerface - Radio Gaga Acapella by Lady XTC5 hours ago
-
Brown Eyes by Lady GaGa5 hours ago
-
Beautiful, Dirty, Rich (Made Famous by Lady GaGa) by The Disco Sticks6 hours ago
Top artists
Top tracks
-
32 plays
-
29 plays
-
21 plays
-
21 plays
-
21 plays
-
19 plays
-
17 plays
-
17 plays
-
16 plays
-
15 plays
-
14 plays
-
14 plays
-
13 plays
-
12 plays
-
Hurt by Johnny Cash12 plays
-
12 plays
-
11 plays
-
11 plays
-
11 plays
-
10 plays
-
10 plays
-
10 plays
-
10 plays
-
10 plays
-
9 plays
-
9 plays
-
9 plays
-
9 plays
-
9 plays
-
9 plays
-
9 plays
-
9 plays
-
9 plays
-
9 plays
-
8 plays
-
8 plays
-
8 plays
-
8 plays
-
8 plays
-
8 plays
-
8 plays
-
8 plays
-
8 plays
-
7 plays
-
7 plays
-
7 plays
-
7 plays
-
7 plays
-
7 plays
-
7 plays
Updates
-
Any idea how I activated Free Apple iPad spam? I'm usually really careful.Posted 2 weeks ago
-
Are there any Instant Messaging apps fro the Android that covers all services and has notifications?Posted 2 weeks ago
-
1000$ Walmart Gift Card! Limited offer! See Details http://bit.ly/98ONH1 #shininghongstar Asian Network BBC ChilePosted 2 weeks ago
-
Free Apple iPad! Limited offer so hurry up! See details http://bit.ly/d5Zmc1 #uknowurhigh #shininghongstar #amitheonlyone Single RTPosted 2 weeks ago
-
I keep having to check my new phone is in my pocket as the last one was a brick. Nice feeling.Posted 2 weeks ago
-
New mobile number. Message me if you want it.Posted 2 weeks ago
-
Okay. Time to take bestfriend to Emergency Walk-In -_- Then come back and work.Posted 2 weeks ago
-
Gave him a link to Beginning Ruby, as the instructions could not have been more simple.Posted 2 weeks ago
-
Mmm. Rude support requests telling me "You forget..it's that simple when you already know it!" on an open source plugin I did.Posted 2 weeks ago
-
Any tips or apps you can recommend for a soon-to-be-new Android user?Posted 2 weeks ago







