FileMaker & Applescript: Force a remote user commit

When editing a live FileMaker database, we’ll sometimes need to force clients to commit their records before the update can happen. If our users are on remote machines, this can be a real problem. The general fallback approach is to send a disconnect request from the FileMaker Server. This will close the database the client is using, so it isn’t the most friendly method.

Continue reading FileMaker & Applescript: Force a remote user commit

Mac OS: The killer within Terminal (how to kill a program)

Termianl-IconThere are cases when using the terminal to quit an application is helpful, especially when it’s on a remote computer. I often use this at the office to kick off people who are holding back an update the needs to be done, or who are just playing around and not getting work done. This same action could be done via the Finder, using Screen Sharing, but it is more stealthy to do it via the Terminal.

Three Ways To End It

Let’s say you want to quit the application Safari on your co-worker’s computer, since you can see she is just looking at lolcat images on the other end of the office. You would prefer to not make a scene, so you will just quit the application for her, so she can focus on her work again.

Continue reading Mac OS: The killer within Terminal (how to kill a program)

Mac OS: cURL your way to freedom

 Why cURL?

When we view a website (like this one), your computer’s browser is converting thousands upon thousands of lines of code to display all the images and content you see. Thankfully your browser does all this processing in the background while you wait for a website to load. With modern computers and fiberoptic cable, this is pretty fast. If we didn’t need to convert this code into a visual form for our eyes, just image how much faster a website could load! From there, if we could tell our computer to look at only the data we want, or to perform some automatic task, just think of all the time you could save!

What can it do?

The cURL command, to put it simply, connects your computer to other computers and accesses data using many of the standard file transfer protocols, such as HTTP and FTP. This may not seem like much at first, but apply a few additional commands in conjunction to it to it and you are on your way to taking over the internet.

Continue reading to see how you can use this tool to perform fast multi-site data processing to gather information faster and better.

Continue reading Mac OS: cURL your way to freedom

Life In Japan: Renewing Your Passport

So you’ve been living in Japan for a while, enjoying all the sights and flavors of your new life.  You’ve been enjoying it so much that you’ve forgotten about the status of your passport. Oh no, it’s expired!

Don’t worry, the secret police coming to arrest you, so long as your visa is still valid. If your passport has expired (or is going to be expiring soon) then you’ll need to get it renewed. The process is a little complicated, like any kind of bureaucratic work, but it can be done without setting foot inside the US embassy. For those living in 田舎 (Inaka, the country side), this is a relief.

Continue reading Life In Japan: Renewing Your Passport

Mac Essentials: Mounting Network Drives in Terminal

Termianl-IconSometimes when doing installs or working on remote machines, the use of standard mounting means is not possible. Fortunately we can use Terminal to mount some network drives when needed. It isn’t the easiest way to mount a drive, but it is always available if you have access to a Mac’s Terminal. I have found this to be especially useful when, after booting to a recovery partition, restoring my OS from an image that is saved on a network backup.

Continue reading Mac Essentials: Mounting Network Drives in Terminal

JPEG Compression: Let’s look at this in a practical way

Check out these two images below. The one on the left is set to JPG 35% quality. The one on the right is set to 55% quality. The overall quality different between 55 and 35 is minimal for the end user. If you were to ask a web designer or a design professional however they could probably catch the artifacts and shift of color tones.

 

left_35right_55

 

I am neither a designer nor an art professional, so I look at these two images from a practical sense – the end user experience.

A good user experience comes from a responsive UI, organized data, and a professional look. Using a higher levels of image compression can give the user a much faster web UI, since we’re able to squeeze the same visual experience within a smaller file size. In the example above, we are able to get a 30% reduction in file size thanks to the higher JPEG compression . This smaller size means a 30% faster download time for users.

I also think about these two images from a business sense – the cost.

From a business cost perspective it makes sense to compress more. Let’s assume you have a popular website that gets 200,000 hits a month (20,000 users who visit 10 times a month). Each time they are downloading a few new images, totaling about 5MB. Those images alone are going to be equal to 1TB of bandwidth per month, and at cheap amazon S3 rates that would be about $120/month. If we can reduce it by ~30% then we would be saving $430 a year. If your site becomes a hit and you now have 1,000,000 views a month, you’ll be very happy that you’re saving about $2,200 a year – and that’s just on those 5MB of images.

Some people argue that internet speeds are getting faster, so we don’t have to worry about these issues anymore, but I disagree. It is true the average person’s internet connection is getting faster, but the image resolution demands are getting greater. In the past having an image that was 800px x 600px would have been sufficient. Now customers are looking for full HD 1920 x 1080 or higher. New computers are coming with monitors with very sharp resolutions, so we need to be thinking about those changes in demands as well. A 800 x 600 is less than 1/4th the size of a full HD image in pixel count, so the base image size is going to be 4x larger for a full HD image.

Bellow you will find 4 images.
Two images are 1920 x 1080. Two images are 800 x 600.
One image is at 60% JPEG quality, while the other image is at 35%.

taiyaki_1920

60% Quality @ 1920px (250Kb)

taiyaki_1920s

35% Quality @ 1920px (115Kb)

taiyaki_800

60% Quality @ 800px (70Kb)

taiyaki_800s

35% Quality @ 800px (33Kb)

The smallest image is about 13% of the file size of the largest image. In both cases the object’s shape is communicated, but one did it using far less data. Finding a balance between data size and effective communication of ideas, including appealing esthetics, is one of those difficulties that will always be under evaluation and a point of argument between me and graphic designers.

Make Packages with Packages: Beginner’s Introduction

Why use a package?

For backing up documents and photos, you would be better off using a program like Keka and just compress the data. However, if you are making a custom OS install and always need the same files and applications in the same places, building an install package is a faster, easier way to do things. Mac users are lucky to have a great, free program that makes the process simple too.


Image

Packagesas the name would have you guess, is creates packages on the Mac OS. It’s homepage can be found here. It was built using part of the source code from Iceburg, a project by Stéphane Sudre that was used by developers in the pre OSX 10.7 days. Packages’ interface is easy to use for both beginners and advanced users. This introduction will walk through the steps needed to make your first installer package.

Continue reading Make Packages with Packages: Beginner’s Introduction