Google Gears issues Google Gears issues
  • Home
  • Posts
  • Home
  • Posts

Google Gears issues

If you’re running (or trying to run) Google Gears under Mac OS X and persistently receive this message:

A Google Gears update has been downloaded.

Please close all browser windows to complete the upgrade process.

— It’s a problem with locks that never get unlocked. I’m not sure how this happens, but it’s easily fixed:

  1. Open a Finder window
  2. Navigate to your temporary folder:
    1. Press Command-Shift-G
    2. Type in /private/var/folders
    3. Navigate through folders to find the -Tmp- folder. For me, this is located at LW/LWyYk1hzEbCzrBJpFMdhE++++TI/-Tmp- within /private/var/folders
  3. Look for any files that look like IsRunning{gears} or IsRunning{gears}-##.##.##.##
  4. Delete those files
  5. Start/Restart your web browser, and all should be fixed
Read More

Firming up WordPress’s security

There’re thousands of articles out there describing how to secure WordPress better against attacks, but I still had a little difficulty with the nuts and bolts, so I thought I’d detail the process I underwent here.

I recently had a bit of a security breach – some lowlife broke into my account and injected some phishing stuff into my personal webmail software. Consequently, I went on a bit of a security binge and deleted some apps I wasn’t using much, changed all of my passwords to ridiculously long strings, and set up layers of HTTP authentication on my WordPress login/admin pages, the latter of which is described here.

The general idea is to make it hard to get to the login/admin pages in the first place, which should block some attacks.

The AskApache password protect WordPress plugin will do all of this for you, unless it thinks your webserver doesn’t have the supporting software. It failed for me on Site5, saying I lacked HTTP digest authentication support, which is actually not true, as it’s enabled. I couldn’t be bothered debugging it though, so I proceeded with the manual route.

Create the password file

First, I created an htpasswd file, containing a login and password. There’re many sites describing how to do this, but on the terminal, it’s fairly easy:

htpasswd -c /path/to/.htpasswd myusername

Note that it’s a good idea to put the .htpasswd file somewhere outside the web root – your account’s home directory is one option.

Protect the login page

I opened up the .htaccess in the WordPress root folder, and added the following:

ErrorDocument 401 default
 
AuthUserFile /path/to/.htpasswd
AuthName "Blog"
AuthType Basic
 
 
    require valid-user

ErrorDocument 401 default AuthUserFile /path/to/.htpasswd AuthName "Blog" AuthType Basic require valid-user

Note that ‘ErrorDocument 401 default’ line – this is in place to avoid getting a ‘404’ error whenever you load up the login page. I’m not entirely sure of the details, but it seems that if the rewrite module is used (the thing that allows WordPress to define an arbitrary website structure, without needing physical files), then this causes problems with HTTP authentication.

Also, if you wish to protect access to the XMLRPC access point as well, you can add the following:

 
    require valid-user

require valid-user

However, if you do this, I’m pretty sure pingbacks (the WordPress-specific version of trackbacks) will no longer work. I think trackbacks will still be functional – as far as I know, they use a different access point. If you use a desktop blogging app, you’ll want to make sure it can handle HTTP authentication. I know ecto can.

Protect the admin area

Finally, I created a new .htaccess file in the wp-admin directory, which looks like this:

ErrorDocument 401 default
 
AuthUserFile /path/to/.htpasswd
AuthName "Blog"
AuthType Basic
 
require valid-user

ErrorDocument 401 default AuthUserFile /path/to/.htpasswd AuthName "Blog" AuthType Basic require valid-user

Read More

Links for March 17th through April 24th

Links for March 17th through April 24th:

  • XSD Schema XML Validator A XSD Schema validator in Java, provides lots of useful information; use it with a schema and an xml instance
  • Three20 Three20 is a collection of iPhone UI classes, like a photo viewer, and general utilities, like an HTTP disk cache. Three20 is derived from the Facebook iPhone app, which is one of the most downloaded iPhone apps ever.
  • CSS Decorative Gallery …How to decorate your images and photo galleries without editing the source images. The trick is very simple. All you need is an extra <span> tag and apply a background image to create the overlaying effect.
  • Comet (programming) – Wikipedia, the free encyclopedia Comet is a neologism to describe a web application model in which a long-held HTTP request allows a web server to push data to a browser, without the browser explicitly requesting it
  • Cocoa Is My Girlfriend » Cocoa Tutorial: awakeFromNib vs applicationDidFinishLaunching A very good overview of the 'startup' procedure for objects stored in IB nib/xibs.
Read More

Private Tags WordPress Plugin

The “Private Tags” WordPress plugin allows users to specify a list of tags or categories to keep hidden from the public – all posts within the specified tags/categories, and the tags/categories themselves, will not be visible to anyone but the original author.

Alternatively, in ‘inclusive’ mode specify a list of tags/categories to make public – all other tags/categories will remain hidden.

Read More

AutoRate 1.5.0 release

Autorate150.pngThanks to the efforts of Brandon Mol and a few dedicated testers, AutoRate 1.5.0 is ready for public consumption. Sporting a brand new rating algorithm and shiny new interface, this new version features more intelligent, more adjustable rating.

Read More

Great Elegant Grunge mods

200903302038.jpg

I came across this beautiful Elegant Grunge modification today, at Gawariel.com. Fantastic!

Here’s another cool one by Rodrigo Muñoz:

_3585_3350962677_59c4701a7d.jpg

And one from Nistha Tripathi:

200905210921.jpg

Read More

Sneak preview of my new web framework Michaelangelo

I’ve been working on a new web framework which provides image theming – a little like what Elegant Grunge does with its image frames, but much more sophisticated.

For example:
boathouse.jpg

A dynamic caption

thailand.jpg

This is a PHP framework that uses the common GD library to manipulate images.

It’s main interface is a content filter – give it HTML, containing images, and it will return the same HTML modified so that the images are now the converted versions, according to their ‘class’ attributes, with appropriate width/height attributes, etc. This makes it super easy to work with.

It stands alone, but it is also going to be a WordPress plugin (as you can see on this site, it’s already operational), a Joomla plugin, and I’m considering establishing a web service too, so those who don’t have adequate software on their server can still use it.

IMG_1773.jpg

It has a plugin-based architecture so anyone can add new ‘themes’ (props to my partner Katherine for that beautiful wooden frame, by the way). I’m going to also implement a simple XML-based plugin schema, and possibly an interface to it, so that it’s easy to do so. I’m planning a ‘community’ style directory site to host contributed styles.

The base frame rendering code is such that it is trivially easy to add a new ‘theme’. It extracts segments from a single frame image, and handles seamless tiling to make the frame the right dimensions, so you don’t even have to worry about overlapping regions.

I will release it soon, after adding a little more content – keep your eyes peeled.

For now, check out the Michaelangelo showcase, which gives an idea of the different styles, and contains an interactive sampler to play with styles (IE users should stop being IE users to view this).

Doing my bit to beautify the web.

Read More

Align comments in Textmate

Unless I’m using Objective-C, which is fantastically self-documenting, I often like to add comments to parameters to remind me of what they do. For example:

imagecopy($image, $frame, 
          ($x=max($width-$this-&gt;topRightCap[kCapWidth], $this-&gt;topLeftCap[kCapWidth])), // Destination x
          0,  // Destination y
          $x,  // Source x
          0,  // Source y
          min($this-&gt;topRightCap[kCapWidth], $width-$this-&gt;topLeftCap[kCapWidth]),  // Source width
          $this-&gt;topRightCap[kCapHeight]); // Source height

imagecopy($image, $frame, ($x=max($width-$this-&gt;topRightCap[kCapWidth], $this-&gt;topLeftCap[kCapWidth])), // Destination x 0, // Destination y $x, // Source x 0, // Source y min($this-&gt;topRightCap[kCapWidth], $width-$this-&gt;topLeftCap[kCapWidth]), // Source width $this-&gt;topRightCap[kCapHeight]); // Source height

The only thing is, it looks terrible and is very hard to read. I usually carefully insert spaces before the comments so they line up, but that’s really hard to maintain.

I use Textmate, and found an ‘Align Assignments’ script by Chris Poirier which applies very nice formatting to a block of assignments.

Some trivial modifications resulted in a similar script to align comments. Hit Ctrl-Option-Command-/, and:

imagecopy($image, $frame, 
          ($x=max($width-$this-&gt;topRightCap[kCapWidth], $this-&gt;topLeftCap[kCapWidth])), // Destination x
          0,                                                                            // Destination y
          $x,                                                                           // Source x
          0,                                                                            // Source y
          min($this-&gt;topRightCap[kCapWidth], $width-$this-&gt;topLeftCap[kCapWidth]),      // Source width
          $this-&gt;topRightCap[kCapHeight]);                                              // Source height

imagecopy($image, $frame, ($x=max($width-$this-&gt;topRightCap[kCapWidth], $this-&gt;topLeftCap[kCapWidth])), // Destination x 0, // Destination y $x, // Source x 0, // Source y min($this-&gt;topRightCap[kCapWidth], $width-$this-&gt;topLeftCap[kCapWidth]), // Source width $this-&gt;topRightCap[kCapHeight]); // Source height

Here it is:

Align Comments.tmCommand.zip

Read More

Hi! I'm Michael Tyson, and I run A Tasty Pixel from our home in the hills of Melbourne, Australia. I occasionally write on a variety of technology and software development topics. I've also spent 3.5-years travelling around Europe in a motorhome.

I make Loopy, the live-looper for iOS, Audiobus, the app-to-app audio platform, and Samplebot, a sampler and sequencer app for iOS.

Follow me on Twitter.

Posts pagination

« 1 … 24 25 26 … 36 »
© 2021 A Tasty Pixel.