So, I just downloaded the new Opera, and ran a JavaScript speed check, and was amazed how their new engines compare to the other browsers around. It also supports Windows 7 taskbar highlights properly
The test I ran was on http://www2.webkit.org/perf/sunspider-0.9/sunspider-driver.html and here are the results
Opera 10.50
============================================
RESULTS (means and 95% confidence intervals)
——————————————–
Total: 388.6ms +/- 2.3%
——————————————–
Chrome 4.0.249
============================================
RESULTS (means and 95% confidence intervals)
——————————————–
Total: 556.2ms +/- 3.1%
——————————————–
Firefox 3.5.8
============================================
RESULTS (means and 95% confidence intervals)
——————————————–
Total: 1155.4ms +/- 1.6%
——————————————–
Internet Explorer 8
============================================
RESULTS (means and 95% confidence intervals)
——————————————–
Total: 5145.4ms +/- 0.6%
——————————————–
About 20 minutes ago I got my invite to google wave. I now have my account live (brooke@wavesandbox.com) as well as my secondary account (brooke-test@wavesandbox.com), so I can start testing out the wave. I haven’t had any time to get into it and play, but here is a screenshot of an empty preview account
Update:
After about 20 minutes, everyone started using wave and this is what it looks like
Update 2:
When I tried to reply to a wave that was created after I first loaded the page.
If you know me, you will know I hate Mac’s. However, the day has finally arrived where I decided to take a risk and go to buy one for myself. Not being a strong follower of the Apple movement, I purchased my MacBook Pro on sunday 7th June. I got home, installed some apps (dragging an icon around the screen seemed to be how you install an app), and started to get used to the interface. All was great until the afternoon on Monday. I had James, the designer @ Just Develop It send me a text message telling me Apple dropped the price of the MacBook Range and also upgraded all of the hardware… Gutted.
I called the Apple Store straight away, and they said it would be fine to just bring it back and get a new one when it came in stock. Yesterday it arrived at the store so I went down and exchanged my old MacBook Pro for a nice shiny new one. They even gave me money back. Money Back for an upgrade? Are they mad. I dont know how I have gone from hating apple, to loving them within the space of a week, and also now being the owner of my second apple.

I have to admit, Apple products are Very well designed, even the packaging is amazing. I hope that my previous view on Mac Users was wrong, because I dont want to trade productivity for a good looking laptop. Setup was fairly painless with nearly everything being done for me, and I just had to go into the settings to tweak the system to act more like windows. Working out all the short cut keys didnt take long (apart from Home & End, which I later found to just be cmd + the arrow keys) . I have enabled the ‘right’ mouse button (bottom right of the trackpad) and am loving Expose and Spaces. The only problem I have faced so far is the mouse guestures in Opera, but then what do you expect from a trackpad
Without having the full expierence of a Mac yet, im going to hold of saying any more unless it turns out to be a nightmare
It has now reached the stage where I am logging into 20 – 40 different servers a day, which itself is quite time consuming when you know the server logins stored in your head. However, all our servers have different access passwords and finding each server password takes a little too long (there is no way I could remember all our server logins).
There is a great feature on UNIX machines which will allow you to simply ssh into a server without the password as long as you have configured each machine.
The setup of this is pretty quick, there are only 3 main things you need to remember.
1. Generate the Key on the client box
2. Copy the Key into your clipboard from the client box
3. Enter the Key into the server box from your clipboard
Stage 1: Generating the Key
ssh-keygen -t dsa
By running the above command, you will generate your client key. You will be faced with a few questions, you should just be able to press enter with no answer on each question.
Generating public/private dsa key pair.
Enter file in which to save the key (/root/.ssh/id_dsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_dsa.
Your public key has been saved in /root/.ssh/id_dsa.pub.
The key fingerprint is:
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Stage 2: Access the Key
You will need to access the key that was just generated to place on your server so you can quickly access it. First things first, you need to get the key onto the screen or into your email. I would recommend using the screen output to avoid any formatting errors by your mail client.
Outputting onto the screen:
cat ~/.ssh/id_dsa.pub
Sending the output to your email:
cat ~/.ssh/id_dsa.pub | mail email@domain.com
Stage 3: Storing the Key on the Server
Now you have the key, you just need to add it onto the server you are going to be SSH’ing into.
Open up the file ‘~/.ssh/authorized_keys’ using your preferred editor. I usually use nano, so:
nano ~/.ssh/authorized_keys
Then copy the key into the end of the file. You need to ensure that the key stays on one line and you have one key per line.
Once you have saved the authorized_keys file, you should be able to hop back onto the client box and just type
ssh root@hostname
and you will be logged straight into shell on the ‘hostname’ box.
And thats all you need to do
This has saved me soo much time on a day to day basis and probably given me an extra 30 mins > 1 hour a day to get some real work done.
So, its only a few hours away from the timestamp 1234567890 and we just went past 1234543210. As always, sad enough to take a photo (well, Jordan (www.oxcreative.com) took the photo) on a monitor in our office which is displaying www.coolepochcountdown.com. Its only 6 or so hours till all hell breaks out and the time starts going backwards (or we just see a nice timestamp come and go).

A few weeks back Jordan (designer @ Just Develop It) brought in his rubiks cube into the office and we were all amazed that he could complete the cube. The fact he could do it in under 5 minutes just added to the amazement. Between writing code and sleeping, Rich and myself found ourselves trying to solve the cube wondering what logic we could apply to come to a solution. After about a week not being able to complete more than the first 2 layers I cracked and looked around youtube.com for a way to complete the cube.
Much to my suprise, there was a logical way to solve the cube based on a few algorithms. Easy when you know how
So, the youtube video I found was by pogobat and made the cube easy to understand. You can see the video here: http://uk.youtube.com/watch?v=HsQIoPyfQzM. The algorithms for the cube are as follows:
- Fi U Li Ui
- Ri Di R D
- U R Ui Ri Ui Fi U F
- Ui Li U L U F Ui Fi
- F R U Ri Ui Fi
- R U Ri U R U U Ri
- U R Ui Li U Ri Ui L
- Ri Di R D
Ok, the letters above dont mean very much unless you can watched the video. You always need to hold the cube in the same position for any of this to work
F = The face closest to you (Front)
U = The face on the top (Up)
L = The face in your left hand (Left)
R = The face in your right hand (Right)
D = The face on the bottom of the cube (Down)
There is also i. This stands for ‘inverted’ or ‘counter clockwise’
If you see Ri, you should turn the right face counter clockwise. Should you see R you should turn the right face clockwise. Be sure to only move that one face and not rotate the cube, else it will all end in disaster
Once I got to grips with the algorithms, everything slotted into place and I could complete the cube serveral times in one night. Its a very impressive skill to learn.
Get yourself onto youtube.com and watch the video linked above and learn the cube for yourself
I have been spending a few days looking into optimisation for a few of our products, the biggest of which is Intellichat, which this great MySQL function is soon to be used for. Intellichat handles thousands of chats every hour, we average at about 190,000 chats a day, which is increasing daily. Every one of these chats holds information about the chat, from the Agent name, through the the IP address that launched the chat. This data allows us to provide detailed statistics to our customers from which Agent name converts best to which Country generates the most sales for their product.
*** Please note that all data sizes below are taken from the PHPMyAdmin row size and not the individual data size as listed in the mysql manual ***
Since starting out, I had always used a char(15) which uses 16 bytes to store ‘192.168.0.1′. Since discovering the INET_ATON function, I can now store the same IP address in just 7 bytes. Here are the results from the 3 main data types you should use for this type of data.
VARCHAR(15) - 20 bytes to store '192.168.0.1' CHAR(15) - 16 bytes to store '192.168.0.1' INT(UNSIGNED) - 7 bytes to store '192.168.0.1'
So, if you don’t already know the INET_ATON function, it simply converts the IP address you give it to an integer. This means that when you store 192.168.0.1 into the database, the data value is held as 3232235521. Its a great way to save some space in your database, and you will also have the added benefit of faster searches (looking for IPs within a range can be greatly improved by doing something similar to the following).
mysql> SELECT INET_NTOA(ip) FROM ip_addresses WHERE ip BETWEEN INET_ATON('192.168.0.1')
AND INET_ATON('192.168.0.255');
If you wish to translate the numerical IP back into the IP address you originally saved, you can use the INET_NTOA function, which will just reverse the original function.
Conversion in action:
mysql> SELECT INET_ATON('192.168.0.1');
+--------------------------+
| INET_ATON('192.168.0.1') |
+--------------------------+
| 3232235521 |
+--------------------------+
1 row in set (0.03 sec)
And to convert back:
mysql> SELECT INET_NTOA('3232235521');
+-------------------------+
| INET_NTOA('3232235521') |
+-------------------------+
| 192.168.0.1 |
+-------------------------+
1 row in set (0.00 sec)
One thing to note when using this function is to ensure you use an INT UNSIGNED column. If you used a signed INT you will not be able to store any IP addresses where the first octet is greater than 127. For those of you who dont know what that means, 127.255.255.255 is the last IP address you will be able to store
.
I have finally started working on a new product for JDI a few weeks back, its called Visitors 2 You. This product is based around Search Engine Optimisation, allowing customers to enter in their domain, and a few search criteria they expect / want to appear under, and we will start recording historical data of search positions, link popularity and a few other bits. I have been looking to get a product like this for the past few months to watch our own websites grow, see our improvements in Search Engine Rankings and make sure we are always improving our sites for both customers and search engines.
Visitors 2 You aims to help you improve your natural search positions through a range of methods, from code improvement, correct meta tags, improved content and much more. We aim to have this product live within the next week or so, so make sure you signup to the newsletter and be the first to know when you can signup.
We are always looking for new features to add into the product to make sure its the only SEO tool you need, so if you have any ideas, feel free to email them to me : brooke [at] justdevelop.it
Visitors 2 You can be accessed at: www.visitors2you.com
The Ultimate Wireless Base Station – Apparently
I purchased a 1TB Apple Time Capsule two weeks ago in the hope that it would work perfectly with iTunes, Apple TV and most of all, file sharing.
Im sorry to report that it did a pretty awful job at all of these things I expected to come as standard. On the up side of this, the wireless connectivity I received was amazing, and I can’t fault apple there.
The Setup Process
When I first plugged in my Time Capsule, I got a wireless signal straight away and connected my laptop instantly. I installed the CD that came in the HUGE box and the setup program ran away and connected and asked me for more information to join the network. As I was in the office at the time, I decided to give this a miss until I got home (where the TC would be living), and tried to access the default network share. This just prompted me for some logins, obviously I hadn’t setup the device, so I shut everything down and waited till I got home. So far, not looking too great compared to other NAS drives I have purchased.
When I arrived home, I plugged in and went through the setup. Now, apple have some great ‘Extend your wireless network’ option, which sounds great, but in fact simply just brings down your existing network and the time capsule. So I had to reset the device settings and go again. Finally, I got everything setup and working as it should.
Connecting To The Drive
Apple decided it wanted to have the IP address of 192.168.0.2, (very annoying as there is already a machine in the office on that IP, so using the Time Capsule when connected to VPN was a big no no unless I wanted to change all my local IP setup. So I went ahead and just didn’t connect to VPN until I had transferred all my files. And I wish it was that easy. \\192.168.0.2 – The usual ‘Windows’ way only worked about 50% of the time. I can’t even start to wonder how I can ping the TC but not connect to the file share. I then setup a hostname for the damn thing and got going on \\timecap which actually worked out pretty well.
After I started transferring the 600GB or so (in a few different connections) the whole thing would seem to close all the transfer windows and the drive would appear offline. I then had to wait about 10 minutes and it would automagically come back online. During this time, I was able to access the internet without problems, but the time capsule configuration tool could not see the device, and nor could windows. I was however connected to the wireless network provided by the TC (so I guess it only half crashed).
Refund Time
So, obviously 90% of Apple devices are not for me, and im not at all upset about that. I have the iPhone and the Apple TV, but I think that is about as far as my life will delve into Apple. I phoned Apple today and after telling them I had a windows machine, they were fresh out of ideas of how to fix the problems (I would like to point out, they didn’t have any ideas… at all). I requested a full refund, and somehow, being passed around various departments, this ended up to be a replacement? I shouldn’t think so Apple. I want my money back! In the end they decided they could give me a refund, so im waiting for a call from their courier to arrange a time for collection.
It sucks that Apple can’t create products that just work… they are big enough!
I have ordered up my new NAS drive, which supports iTunes amongst other things, so I hope all goes well
________________________________________
SEAGATE BARRACUDA 7200.11 1TB SATA II 7200RPM 32MB CACHE 11MS 300MB/S
________________________________________
SYNOLOGY DS108J 1-BAY SATA NAS SERVER FOR HOME AND SMALL WORKGROUP
________________________________________
It arrives tomorrow! YEY! I can hopefully get my data off the Time Capsule and onto my new drive before the TC is collected.















