Prusak.com

Serving up my thoughts since 2004

Author: ophir (page 6 of 8)

Portable Divx DVD Players

I’m looking to buy a small (7 or 8 inch) DVD player that will also play Divx files so I can put a few of my daughters movies on one DVD. Here are the models I”ve found so far:

update: I’ve deciced on the avayon dxp-7p. It’s multi voltage and in stock from a local store (B&H photo).

Are you promoting someone else’s site without even knowing it?

Are you promoting someone else’s site without even knowing it?
My tale of being victim to a below-the-belt SEO tactic.

Recently, we added user forums to our company web site, in order to give our customers and potential customers a place to voice their questions and opinions. We settled on using Invision Power Board (IPB) which runs using PHP and MySQL.

A couple of weeks ago I installed a modification to our forums which makes the URL of the pages appear to be static html pages and it also inserts the topic title into the URL. The modification package (also called a “mod”) is called FURL, which is short for “Friendly URL”.
Friendly meaning the URLs are more search engine friendly.

After installing the FURL modification, instead of using this URL:
http://forum.resperate.com/index.php?showtopic=19
it uses this URL:
http://forum.resperate.com/My-doctor-said-pills-for-the-rest-of-your-life-t19.html

Both of the above URLs take you to the same page, but the second one both looks nicer, and is supposed to improve search engine placement.

Last night, I wanted to check if Google was picking up the URLs with the static or dynamic URLs, so I searched for a pretty unique phrase from one of the pages: “It sounds like RESPeRATE is working well for you” and surely enough, the page had been picked up, but the URL it was showing was the dynamic one, not the static one.

I was curious to see how Google was seeing the page so I clicked on the cached button:

google result

That’s when my jaw dropped

There was some additional stuff I had never seen before at the top of the page which looked like this:

with furl header

Instead of the normal forum section header which looks like this:

header without furl

The modification I installed didn’t just modify the URLs. It also added, unknowingly to me, some extra text at the top of the page as well as some links to other pages – but the added text was only being shown to the Google spider, and was not visible to a normal human viewing the site. This alone can get you banned from Google.

The fact that FURL adds this content is not mentioned anywhere in the documentation or installation instructions.

It really saddens me that the author of FURL added a very underhanded tactic improve their search engine rankings.
If they would have added a small footer to the bottom the page that was shown to everyone, I would have been perfectly OK with that and would have left it.

It seems that quite a few sites have FURL installed and are affected by this SEO hack. If you do a search for “SEO Powered by FURL” in Google, it says over 2 million results.

* sigh *

update:
I looked at the source code of the mod itself which does have this “”disclaimer”:

//FURL END

// Tracking Code / Copyright String - DO NOT REMOVE
// -----------------------------------------------=
// !!Please leave this code in, if you dont then please remove the mod from your site!!
// !!You are only free to use this mod while the following line is in!!
// I went to alot of time making this mod and would like a little
// in return so i can continue to spend time upgrading it,
// instead of charging for this mod ive put some link code in
// this just links back to my site using my keywords to improve
// my rating on Search Engines, the links only appears to search
// bots though so its not on every page.
//
// Its also because i like seeing my mods in use on other peoples sites!

also – I got a writeup from john andrews at http://www.threadwatch.org/node/5589

ipb seo friendly urls with iis

So we’ve been running the user forums at http://forum.resperate.com for a few weeks and we’re getting some good user entries. We’re using invision power board 2.1 on a windows 2003 box running IIS6 and php 4.3.

Of course I want the URLs to be search engine friendly, but I was not able to find anyone claiming to have a solution for IIS. they all want mod_rewrite under apache.

So after a bit of googling, this looks like what I want:
http://www.alt-man.co.uk/FURL/Documentation.htm

but of course it also wants mod_rewrite. no biggie – I say to myself. I’ll just google mod_rewrite and IIS.
after of searching, this seems to be what I want – isapirewrite:
http://www.isapirewrite.com/

At this point I actually started reading about their linkfreeze product, which seemed like a plug and play solution for what I wanted (albeit not as good as FURL) so I downloaded it and tried it out. To make a long story short, linkfreeze doesn’t work with Invision Power Board 2.1 out of the box.Update: I just got a reply from them saying that linkfreeze doesn’t work with http compression turned on (makes sense).

So, back to my original plan, I decide to go with isapirewrite. This is a commercial product, but for some strange reason, I figured that it’s of better quality than the free mod_rewrite for IIS solutions out there.

I install it, but it’s not doing anything. Zilch.

A bit more reading the docs (if all else fails, read the docs) it seems that there are some special notes on using isapirewrite under IIS 6. as per the instructions I add iis_wpg group access to the files and viola – it’s working!
of course the syntax for isapirewrite is not exactly the same as mod_rewrite so I had to make a few changes to the .htaccess file the comes with FURL.

Here is the correct syntax to get FURL to work with IIS and isapirewrite:


#
# mod_rewrite in use
#
#RewriteEngine On
# Uncomment following line if your webserver's URL
# is not directly related to physival file paths.
# This is usually not needed.
# RewriteBase /YourForumDirectory
#
# Rules
#
# Gallery
RewriteRule /gallery.html(.*) /index.php?act=module&module=gallery$1
# DO THE TOPIC URLS
RewriteRule /(.*)-t([0-9][0-9]*)-s([0-9][0-9]*).html(.*) /index.php?showtopic=$2&st=$3
RewriteRule /(.*)-t([0-9][0-9]*).html(.*) /index.php?showtopic=$2$3
# DO THE FORUM URLS
RewriteRule /(.*)-new-topic-f([0-9]*).html(.*) /index.php?act=Post&CODE=00&f=$2$3
RewriteRule /(.*)-new-poll-f([0-9]*).html(.*) /index.php?act=Post&CODE=10&f=$2$3
RewriteRule /(.*)-f([0-9][0-9]*).html(.*) /index.php?showforum=$2$3
# DO EMAIL AND PM URLS
RewriteRule /(.*)-a-private-message-m([0-9]*).html(.*) /index.php?act=Msg&CODE=4&MID=$2$3
RewriteRule /(.*)-an-email-m([0-9]*).html(.*) /index.php?act=Mail&CODE=00&MID=$2$3
# DO THE PROFILE URLS
RewriteRule /(.*)-m([0-9]*).html(.*) /index.php?showuser=$2$3
# Login/Logout
RewriteRule /logout.html(.*) /index.php?act=Login&CODE=03$1
RewriteRule /login.html(.*) /index.php?act=Login&CODE=00$1
RewriteRule /register.html(.*) /index.php?act=Reg&CODE=00$1
# STATS AND LEGENDS
RewriteRule /the-moderating-team.html(.*) /index.php?act=Stats&CODE=leaders$1
RewriteRule /todays-top-10-posters.html(.*) /index.php?act=Stats$1
# MEMBERS LIST
RewriteRule /member-list.html(.*) /index.php?act=Members$1
# ONLINE LIST
RewriteRule /online-list.html(.*) /index.php?act=Online$1
# HELP
RewriteRule /(.*)-h([0-9]*).html(.*) /index.php?act=help&CODE=01&HID=$2$3
RewriteRule /(.*)help.html(.*) /index.php?act=Help$2
# USER CP
RewriteRule /my-controls.html(.*) /index.php?act=UserCP&CODE=00$1
# MESSENGER
RewriteRule /compose-new-message.html(.*) /index.php?act=Msg&CODE=04$1
RewriteRule /inbox.html(.*) /index.php?act=Msg&CODE=01&VID=in$1
RewriteRule /sent-items.html(.*) /index.php?act=Msg&CODE=01&VID=sent$1
RewriteRule /saved-pms.html(.*) /index.php?act=Msg&CODE=20$1
RewriteRule /empty-pm-folders.html(.*) /index.php?act=Msg&CODE=delete$1
RewriteRule /edit-storage-folders.html(.*) /index.php?act=Msg&CODE=07$1
RewriteRule /pm-buddies.html(.*) /index.php?act=Msg&CODE=02$1
RewriteRule /archive-messages.html(.*) /index.php?act=Msg&CODE=14$1
RewriteRule /message-tracker.html(.*) /index.php?act=Msg&CODE=30$1
RewriteRule /new-messages.html(.*) /index.php?act=Msg&CODE=01$1
# SUBSCRIPTIONS
RewriteRule /view-topic-subscriptions.html(.*) /index.php?act=UserCP&CODE=26$1
RewriteRule /view-forum-subscriptions.html(.*) /index.php?act=UserCP&CODE=50$1
# PERSONAL PROFILE
RewriteRule /edit-profile-info.html(.*) /index.php?act=UserCP&CODE=01$1
RewriteRule /edit-signature.html(.*) /index.php?act=UserCP&CODE=22$1
RewriteRule /edit-avatar-settings.html(.*) /index.php?act=UserCP&CODE=24$1
RewriteRule /change-personal-photo.html(.*) /index.php?act=UserCP&CODE=photo$1
# OPTIONS
RewriteRule /manage-your-attachments.html(.*) /index.php?act=UserCP&CODE=attach$1
RewriteRule /manage-ignored-users.html(.*) /index.php?act=UserCP&CODE=ignore$1
RewriteRule /email-settings.html(.*) /index.php?act=UserCP&CODE=02$1
RewriteRule /board-settings.html(.*) /index.php?act=UserCP&CODE=04$1
RewriteRule /change-email-address.html(.*) /index.php?act=UserCP&CODE=08$1
RewriteRule /change-password.html(.*) /index.php?act=UserCP&CODE=28$1
# MODERATOR TOOLS
RewriteRule /ip-tool.html(.*) /index.php?act=UserCP&CODE=iptool$1
RewriteRule /member-tool.html(.*) /index.php?act=UserCP&CODE=memtool$1
RewriteRule /manage-anoucements.html(.*) /index.php?act=UserCP&CODE=announce_start$1
# GET NEW POSTS
RewriteRule /get-new-posts.html(.*) /index.php?act=Search&CODE=getnew$1
# DO THE FORUM INDEX
RewriteRule /forums.html(.*) /index.php?act=idx$3

IMAP Backups

I’ve been using imap for my email for few years now. I can’t think of ever going back to pop based email. One issue I’ve had in the back of my mind for a while is backups. Just found this link which looks like a good solution (since I use thunderbird):

http://gemal.dk/blog/2004/02/19/backup_your_imap_mail/

deceptive wording

This is one of the sneakiest uses I’ve seen in a while for deceptive wording:

Seen Advertised via Google on:

seen on

You can see it at: http://www.resanex.com/.

In other words, you might see their advertisements on the above sites, which are served via google.

* sigh *

how to ask a question

All to often, I read a question and feel like answering with “it depends”.

If you want a good answer, you need to ask a good question.

Here’s how to write a good question:
1. Explain your end goal – why you’re doing this

example:
I want my mother who lives out of state to see some videos of my daughter.

2. Provide detailed information:

ok: I have a digital camera that I’m using to take videos. It saves avi files.
better: I’m using a Canon SD500 to take videos at 640×480, 30fps. The videos are exported as avi files.
I prefer to use a digital camera for my videos (opposed to a camcorder) since I can carry it around with me at all times.

3. Discus the requirements of the solution, and why they are requirements.
Include both the positive requirements (it should be) and the negative requirements (it shouldn’t be)
This will limit answers you might get which won’t help you as well as allow for directions you might not have thought of,

My mom is using an old mac (model XX / OS 9 / quicktime version YY)
I cannot install a newer version of quicktime because ……
I would rather not install a different movie viewer because …
I am using a PC with windows XP.
I do not have access to a mac.
I’m tight on cash so I’d prefer a free solution, but if needed can spend up to $10
I’m not a technical guru so it needs to be a fairly simple solution.

4. State what you have done so far.
bad: I’ve looking into a few options. None were promising.
better: I tried using software ABC version 3.4 for the PC. It was not able to open my file. I also did some googling and found software X, Y and Z, but they are all beyond my budget.

5. General
Use unambiguous terminology:
Don’t use terms which are relative like fast, large or cheap.
Use specific terms.
bad: How much memory do I need to edit large image files?
better: I’m trying to edit a 325MB uncompressed tif file (14,500 by 8,000 / 24bit) in photoshop 6.
My pc is a p4 2.8GHZ with 512MB ram. It currently takes 30 seconds ever time I make any change to it.
How much memory should I have so simple changes will take less than 3 seconds?

how to be a great programmer

Just a quick note.

I’ve been wanted to write about this subject for quite some time, but it doesn’t look like I’ll have the time to go into the level of detail I wanted to, so I’ll just tell you the main idea.

75% of what it takes to be a great programmer is understanding 100% of what’s happening (at the bit level) and why it’s that way.

For web developers doing PHP / Database programming, I mean truly understanding every process that’s going on from when a user enters a URL or click’s on a link to when the result is displayed back in the browser.
This includes:

  • How the a PC works, especially how browsers work (client side caching, cookies, HTTP, DNS, host files, etc)
  • How the Networks and the Internet Works (TCP/IP, Ports, firewalls, NAT, hops, latency, broadband, dial-up, DNS, etc)
  • How computer’s work (I’m thinking server side here), Memory, RAM, Hard disks, Operating systems, processes, threads, RAID, Binary Logic, how data is stored in memory, swapping, etc.
  • How databases work. (normal forms, indexes, triggers, stored procs, SQL, constraints, views, etc)
  • Comp Sci “Basics” – Data Structures and Algorithms

The other 25% is about the process. Software Engineering stuff. How to get from an idea in someone’s head to a final product and beyond in the most efficient way.

I’ll try to write more about this later.

Ophir

programming is easy

I’ve been programming professionally for about ten years. I still use my programming skills, but now I have to use many new skills such as sales, advertising, testing, typography, copy-writing, graphic design, etc.

programming is easy. selling is hard.

As a computer programmer, my tasks are usually well defined (and if they’re not, I can ask a few questions to define the task at hand). The outcome is measurable (it provides the defined functionality) and hopefully bug free.
For example I might be tasked to create a classifieds ads site. First I write down a detailed definition of what the site will (or won’t) do from a functional perspective. Then I can create mock-up screens of what the human interface will look like and finally I will write the code to implement the functionality. This is a pretty straight forward process where success is fairly well defined. Yes, I know that factors like security, performance, scalability and maintainability are not absolutes, but even with those factors you can usually reach a consensus on what’s good or bad.

The specifications of what I’m currently doing is something along the lines of “sell as many units as possible while still being profitable”. (We sell our product, on our site)
This is not easy.
There are probably a zillion different factors that come into play to make a sale. This is actually much more complex that computer programming, it’s just easier to understand each of the factors individually. More on this on a later post where I’ll break down the different factors that come into play.

Hebrew Speaking Parents on the Upper West Side

I just started a new site / mailing list as a pet project.

Hebrew Speaking Parents on the Upper West Side

For those of you that do not live in New York City, the Upper West Side is a neighborhood in Manhattan.

Now you know where I live 🙂

Ophir

UPDATE: Wow – it was a year ago that I wanted to this. It’s now Sept 2006. This really never got off the ground. I still have plans for web site for parents on the upper west side, but it won’t only be for Hebrew speakers.

What’s taking up your disk space?

In the Unix world, I’m used to using a utility called “du” to see how much space each directory uses. While looking for a windows version I came across this little gem: SC-DiskInfo – Analyse disk space usage

It gives you a very nice breakdown of subdirectory disk usage with nice graphs for instant visual feedback.

Older posts Newer posts

© 2025 Prusak.com

Theme by Anders NorenUp ↑