Archive for March, 2010

Rafter – iPhone Game Mini-Review

Thursday, March 25th, 2010

Rafter is a physics based puzzle game from Punflay. I came across this game after the developer commented on another review I posted. They – very kindly – offered me redeem codes so that I could try, and I assume review, their game. I went to the AppStore to look at Rafter and, I must admit, my first impression was that this was not a game I would have purchased on my own. I was tempted to take the code, but I wanted the freedom to do an unbiased review. This does not mean I won’t ever take free stuff (Apple? iPad?). But iPhone apps are usually very inexpensive, so I prefer to buy anything I think I might review. Rafter sells for just $.99, and I bought it.

RafterHelpLets start with the look of the game. I mentioned above that I didn’t think I would have purchased this game if I had not been asked to, but why? It is designed to look like Leonardo Da Vinci sketches. The result, at first glance, is a lack of color, and punch, in the AppStore screen shots. Don’t we all pre-judge applications based on those screen shots? I am happy to report that those sample images don’t do the game justice.

When you first launch Rafter it presents you with a screen asking if you want to enable OpenFeint. I had no plan on sharing my score, so I declined and started looking around.

The in-game info screen states:

Rafter is inspired from the work of Leonardo Da Vinci. This game not only utilizes the skills of the player it also takes on his creative problem solving ability.

That seems about right. The game consists of 51 levels that must be finished in order, each getting progressively harder. Each level presents you with a red target that is obstructed by platforms, gears, swinging hammers and more. Your job is to hit the red target, and you are given two tools to accomplish this feat. Circles and rectangles. To draw one of those objects, you first select the object type and then drag your finger inside a pre-defined area at the top of the screen. This took some getting used to since my finger blocks the drawing area, making it difficult to draw small objects. Within the first few minutes I was reminded of Touch Physics by Games4Touch. Rafter, however, is more complex with some excellent levels. I was at level 34 by the end of the first day, and I quickly finished the game on day 2. That’s not a ton of gameplay, but it was addicting while it lasted.

During the game I was confused by some of the physics. I would create rectangles that, when dropped, would bounce – forever. I could see this happening with a circle, but with rectangles it was just weird. Also, some game levels have fans that can blow your objects across the screen. Cool effect, but getting them to work was not always easy. Circles appear to not be effected at all, and rectangles seemed like they had to be exactly perpendicular to the air flow to catch the air. Now, I am not a physics person, but I would think the airflow would have effected some of the rectangles I dropped that passed by the fan at 45 degrees.

RafterLevel24For scoring, each level has a timer and your score is based on the speed at which you solve the level. When I was finished with the game I went looking for my score but I could not find it anywhere. Remember, I had declined the OpenFeint option at the beginning because I had no plan to share my score. It appears that it is required, even to see your own score. That’s odd, very odd. I must be missing something. I did really want to know how I did, so I decided to enable OpenFeint. Having declined it at the start, when I clicked the Scores link I was again presented with the option to enable it, which I did. My score was not very good – hey, I said I was not a physics genius. I scored 2446 which appears to have placed me 157th on the list.

The game is well designed and, at the price, is a great buy. If you like puzzle games, and specifically physics type games, you should try Rafter. It passed the biggest test. I did not want to stop playing, and I was left wanting more when I was done.

Cut Spam with SpamAssassin Rules

Tuesday, March 23rd, 2010

I don’t admit it often, but I read email headers. It’s my form of entertainment. I get, like everyone, a good amount of spam. The other day I decided to try and take an active role in blocking it. While I had always used the SpamAssassin options available through my control panel, I had never really gone deep into SpamAssassin Rules.

SpamAssassin is an open source project to assist with the filtering of spam. It runs on the server-side, and is available through many hosting plans. The popular CPanel interface has an icon dedicated to it. The examples in this post are based on the CPanel configuration, which will be enough for most users. If you are interested in more advanced configuration options, I provide a link below.

The idea is simple, while the actual function is complex. SpamAssassin examines all incoming emails and assigns scores based on a combination of header and text analysis, Bayesian filtering, DNS blocklists, and collaborative filtering databases. Each test adds to the score and the result is then used to decide if the email is spam, or not. The higher the number the more likely it is that the message is spam.

The most common settings are:

Enable/Disable: Enables or disables the filtering
Required Score: The score at which an email is considered spam
Auto Delete Enable/Disable: Enables auto-deletion of emails
Auto Delete Score: The score at which the emails will be deleted automatically
Blacklist: A list of email addresses or patterns that should always be blocked
Whitelist: A list of email addresses or patterns that should always be allowed
Rule/Test Scores: The ability to override the default scoring system

Many of these are self-explanatory, and the scoring system is interesting.

Note that, in the list above, there are three scores – Required Score, Auto Delete Score, and Rule/Test Score. The third one is the one I have come to see as very powerful, and we’ll get to that in a moment, but first lets examine the others. Both the Required Score and the Auto Delete Score default to 5. (Remember that a higher number means it is more likely to be spam). What many people don’t realize is that these two scores do not need to be the same. Before you start changing these, you need to understand that if you are too aggressive you may end up with false positives, which would mark valid emails as spam. Worse yet, you could auto delete an important email. Your clients will frown on this, so be careful. If you adjust it in small amounts, and then watch your spam folder, you can tune it over time.

I have my Required Score set at 2.7. That means any email that scores 2.7 or higher will be marked as spam. SpamAssassin then adds ***SPAM*** to the start of the subject line, and adds a flag in the email header as well. Your email client can then use the header information to filter the spam into a SPAM /Junk Mail folder. I suggest you watch those, read their headers, and learn what score those emails are getting. Are there any false positives? If so, adjust the settings as needed.

I have the Auto Delete Score set at 4. That means any email scoring 4 or higher is removed. I never see it. The result is that any email scoring 2.6 or less makes it to my inbox, 2.7 – 3.9 is flagged as SPAM, and 4.0 and higher are deleted.

These settings were actually working for a long time. Recently however, I have noticed some changes. I have seen an increase in emails that are clearly spam but not scoring high enough to be auto-deleted. These spammers, while I hate them, are getting smarter. They figured out how to beat the default, well published rules. No problem, we can change the default scoring to match their messages. First, we need to know what rules to change, and that’s where reading the headers comes in. Below is a sample email header from a recent spam email:

X-Spam-Status: Yes, score=2.9

X-Spam-Score: 29

X-Spam-Bar: ++

X-Spam-Report: Content analysis details:   (2.9 points, 2.7 required) pts rule name              description —- ———————- ————————————————– -0.0 SPF_HELO_PASS          SPF: HELO matches SPF record 0.2 HTML_IMAGE_RATIO_04    BODY: HTML has a low ratio of text to image area 0.0 HTML_MESSAGE           BODY: HTML included in message 1.7 MIME_HTML_ONLY         BODY: Message only has text/html MIME parts 1.1 HTML_MIME_NO_HTML_TAG  HTML-only message, but there is no HTML tag

X-Spam-Flag: YES

In the list of rules you will notice that each rule is preceded with the score given this email. For example:

1.1 HTML_MIME_NO_HTML_TAG  HTML-only message, but there is no HTML tag

In this case, the test name is HTML_MIME_NO_HTML_TAG and it has a default score of 1.1. Why would an HTML message not have an HTML tag? Most clients, such as Apple Mail or Outlook, would create properly written emails – we hope. So SpamAssassin gave this email 1.1 points for the error. What you need to do is identify a pattern in the spam messages you are getting.

In my case I found the rule RDNS_NONE was very common. This test checks the reverse DNS for the last untrusted relay. The default score for this rule is .1 and I was seeing this in well over 50% of my spam. I decided to change it to 2. After a week or so, I noticed that the new score was causing more spam to be caught. I was getting no false positives, and some obvious spam messages were now being flagged properly. For most,the resulting score was around 2.9. That meant the message would have had only a .9 before my change. A lot of messages were now landing in the 3.5-3.8 area. In an attempt to push those to the auto delete range, I bumped the RDNS_NONE score to 2.5 and the amount of Inbox spam fell greatly. Some was auto-deleted, and some was simply moved to the Spam / Junk Mail folder. While I still check the Spam folder for false positives, the main goal was achieved –  it was not in my Inbox.

The process for entering a test with a custom score is not obvious, so the next screen shot displays the test entered before it is applied:

It is important to note that the RDNS_NONE test is not without risk. As stated on the official site:

Note that this may be done by interpreting information in the relevant Received header – if reverse DNS checks are not performed by the first trusted relay, or if they are not recorded in the Received header, this test will be triggered (regardless of the actual rDNS status).

That means that false positives are possible, but that is why my Auto Delete Score is higher than the Required Score. While a legitimate message may get 2.5 points for this test, I am gambling it won’t get enough total points to be auto-deleted.

RDNS_NONE is just one example of possible tests, but why stop there? By customizing a well thought out list of test scores you can greatly cut down on the amount of spam in your inbox. You can find a list of  the available tests for your version of SpamAssassin, and their default scores, here.

For those that want more control, you would require access to a few configuration files. Depending on the file, changes can be site-wide or user-specific. See the documentation for more information.

Colorbind – iPhone Game Mini-Review – Updated

Sunday, March 21st, 2010

If you like puzzles then the iPhone game Colorbind by Nonverbal is something you should get. However, if you only like the easy ones then stop reading now and move on with your day. As a point of reference, I used to love the Myst adventure game series. Almost everyone I know gave up on that series long before finishing, claiming the puzzles were ‘too hard’. What about you? Are you up for the challenge?

Colorbind is a bit difficult to describe. Their own description starts by saying it’s a “relaxing but challenging puzzle game”. Relaxing? I think not. Addicting would be a better term, and I know of few addictions that are relaxing. The game consists of 84 levels with 10 additional achievements. Basically it is a connect the dots game, but it’s well thought out. Each level will present you with various colored ‘paper’ ribbons on a graph paper looking screen. There will be dots placed around the screen matching each of those colors. The idea, using your finger, is to drag the ribbons and connect the matching color dots. It sounds so easy, and on some levels it is. Don’t be fooled. They get really hard at times. If you get stuck on a level you can reset it by shaking the phone gently. A double tap displays a menu with options for resetting, or quitting the level. While dragging a ribbon, if you turn, the ribbon will fold to make a corner. You cannot capture a dot on a corner.

ColorbindLevel66On levels with multiple colors there is the additional twist of overlapping ribbons. If two ribbons overlap the same dot, the ribbon on top wins. It took me awhile to figure it out, since the game has few instructions, but the ribbon on the vertical path is always on top. You can complete unlocked levels in any order. As you complete one level, the adjacent levels in the level selection screen unlock. Level 82 was particularly fun, and there are two achievements that might get you trapped.

Colorbind is available through the AppStore in a full version for $1.99, or as a free lite version with 10 sample levels. I suggest playing with the lite version, as with any app, before buying the full version.

Spoiler Alert! If you continue reading, I give the solutions for two of the achievements.

(more…)

iPhone & iPad Apps – A Wish List

Tuesday, March 2nd, 2010

I have had an iPhone since the day it was released. I upgraded to the 2nd generation, and eventually the 3GS, the day they were released. Why? Because they have changed the way I interact with the data and technology I access regularly. Once the App Store opened, that interaction exploded. Research shows that iPhone users use 5X more monthly data than BlackBerry users. Yes, 5X! Users now have access to a large selection of handset operating systems, but not all with the wide selection of apps available for the iPhone. Android is coming on fast and strong, and Windows Phone 7 Series based handsets will be here before you know it, but the iPhone & App Store are here now. Add the soon to be released iPad to the mix and this will be an interesting year for the mobile user.

A few months ago I started thinking about apps I wished were available for the iPhone, and then it happened. Apple announced the iPad. I am not here to debate if the iPad will succeed, while I think that it will. I know that, for my needs, it could have a place in my workflow. If I do buy an iPad, it will be because of the apps.

Below is a list of some apps I would like to see on the iPhone, iPad, or both. Some of these already exist from third parties, but I would like to see what an Apple implementation would be like.

(more…)