Jul/100
5 Things I’ve Learned Lately
Talia’s 10 Things… has inspired me to write a new blog post to put down a few thoughts on my blog. Here’s 5 things that I’ve learned lately.
1. Jquery’s Draggable and Droppable classes don’t work on iOS devices. Obviously this is because the browser uses this drag/drop motion to scroll and pan around the screen. There is one JS library that I found that provides drag and drop abilities to iOS, though. It can be found here. I’m considering taking the code and turning it into a JQuery plugin.
2. The account of the Gracchus brother (Tiberius and Gaius) in “Plutarch’s Lives” is fascinating. In fact, the entire document is surprisingly readable. Tiberius, and after his death, Caius led sort of a sudo-revolution in Rome through the office of tribune of the people – cut short by the senate. The effects of which, one could argue, led to the downfall of Rome.
3. When Hitler implemented the ‘Final Solution’, he asked Jozeph Tiso, then President of the Slovak State (a satellite state of Nazi Germany) and a Catholic Priest, to send all the Jews in Slovakia state to Nazi Germany / Poland for ‘processing’. Although Tiso was anti-semetic, he also knew that (some of) the Jewish population of Slovakia was crucial to the economy. He ended up sending Jews anyway, to maintain an alliance with Nazi Germany, but not all of them. He personally allowed about 25,000 out of 200,000 to remain. After the war Tiso was tried and executed for war crimes – but many Slovaks maintain that he was a good guy because he saved so many Jews.
4. Isaac Casaubon was a Genevan born Humanist and Scholar in the Renaissance. He wrote a commentary on “Theophrastus’s Characteres”, which contained an unusual note on the front cover. It was unusual because it wasn’t written in Greek or Latin, but rather, in Hebrew – not a language you expect to find on a book about Theophrastus, an Athenian writer. It said “Praise be to God, creator of the universe”. One of the discoveries you make when you look into the life of Casaubon is that a prominent Jewish element exists. He copied and annotated many Hebrew texts (including books of the bible) that now reside in the Library of London.
5. To add an Arduino library (such as WiShield) to Arduino for Mac, you need to right click the Arduino application and choose Show Package Contents. From there, navigate to Contents -> Resources -> Java -> libraries and copy the library to this folder.
Jun/102
Internet Speeds & Page Sizes
One of my uni subject this term is web design. My first assignment is a webpage (link), and you are penalised if your submission is more than 200kb! My site is 299kb.
I appreciate that image optimisation and download times are extremely important, however, a 200kb limit is far too small.
For example:
The facebook front page (logged out) loads 507kb
The Amazon.com homepage loads 877kb.
The Ebay.com.au homepage loads 861kb
The ABC.net.au homepage loads 1.26 MB
The ninemsn.com.au homepage loads 1.458MB (I think this is the default IE homepage?)
THE WEB DESIGN COURSE MOODLE PAGE loads 589kb!
And even the W3C.org homepage is 203kb!
(These stats were taken from the firebug firefox extension)
In 2008, only 14% of Australians had dial up. If we extrapolate this data based on previous years decline, in 2010, only approx. 4.3% of Australians use dial up. (see http://www.abs.gov.au/AUSSTATS/abs@.nsf/Lookup/8153.0Main+Features1Dec%202008?OpenDocument). I would personally believe this to be a generous estimate.
Dial up support is an interesting topic. Do we continue to develop pages that support the minority of the population at the expense of good design and UI? If so, we should stop using Jquery and other JS libraries, as well as any CMS systems which are typically bulky (read: wordpress, joomla), CSS3 fonts and some great things that are happening with HTML5 and SVGs.
As an <aside> (get it? That was my first HTML5 joke), the course also requires that your page supports an 800×600 display – the industry has clearly moved to 1024 minimum support. The disconnection between uni and reality really annoys me!
I’d appreciate thoughts from other developers on this.
Apr/101
Public Roadmap
Here’s a roadmap for the development of CHARLES.
http://spreadsheets.google.com/pub?key=t__njtrdxttvetJznTvRiWQ&single=true&gid=0&output=html
Nov/092
How to upgrade PHP in Ubuntu
I decided to upgrade my PHP version as part of my Moodle 2.0 install. It wasn’t easy. Here’s the answer:
Step 1 – Update and Upgrade your existing software repositories
sudo apt-get update
sudo apt-get upgrade
Step 2 – Add some extra repositories so you can get the latest version
sudo nano /etc/apt/sources.list
Then add the following to that file, and save it:
deb http://http.us.debian.org/debian stable all
deb http://security.debian.org/ stable/updates main contrib
deb http://packages.dotdeb.org/ stable all
Step 3: Update your new repositories
sudo apt-get update
(I got some 404 errors with this step, but you can ignore them)
Step 4: Install the latest version of php
sudo apt-get install php5-cli
Step 5: Restart Apache
sudo /etc/init.d/apache2 restart
Nov/090
Install Moodle 2.0 on PHP 5.2.0 or higher
While installing Moodle 2.0, I ran into a little problem. It says that it requires a minimum PHP version of 5.2.8 – but I was running 5.2.6. Updating PHP in Ubuntu is a pain in the bum, so instead, I used this little hack.
A quick look at the source for install.php reveals this on line 489:
$version_fail = (version_compare(phpversion(), “5.2.8″) < 0);
If you just change 5.2.8 to your version (in my case, 5.2.6), it will install. There aren’t heaps of changes between these two versions, so I’m hoping there won’t be any major side effects!
Sep/091
Dear Talia…
Dear Talia…
Please buy this for me. You don’t need an excuse, it’s just because you love me. Or Christmas. Whichever makes me get it faster.
Logitech® Performance Mouse MX™
http://www.logitech.com/index.cfm/mice_pointers/mice/devices/5845&cl=us,en
And as much as I love my Microsoft Ergonomic 4000 keyboard, the wireless USB dongle which comes with the mouse supports a wireless logitech keyboard too, so I might have to borrow your keyboard to test it out (http://www.logitech.com/index.cfm/keyboards/keyboard/devices/6040&cl=us,en).
Aug/090
I’m working on an iPhone app
It’s going to be a take on something familiar – I think you’ll like it.
So far I’ve been having fun with:
- Pulling a cross domain JSON file (can’t do it with XML I discovered) into my app
- Experimenting with jQuery and $.ajax
- Using some of HTML 5’s cool new features like LOCAL SQL STORAGE! (Can you believe it???!! Very handy)
I’m hoping to use Phone Gap to compile all my hardwork into a native app, so hopefully Apple doesn’t mind. I’m going to probably submit it by this time next week.
Stay tuned for more updates! Maybe even a sneak preview – email me if you want one.
Jul/090
Alarm now in beta!
I’ve finally released a beta of the Alarm program I’ve been writing.
Download it and take a look. It’s only been tested on Mac OS X 10.5, but there’s no reason it shouldn’t work in 10.4. There’s not, nor will there ever be, a windows version.
If you like it, please let me know. It’s free, not even donationware, all I ask is that you tell me that you like it. You can comment on this post if you like.
Please, also remember that it’s beta software, so if you find bugs (and you probably will), make sure you let me know what they are, as well.
So here it is, the DOWNLOAD LINK. Like I used to say to all of my customers when I worked for Uncle Tony’s Kebabs, ‘Enjoy’.
Jul/090
No Address Bar Chrome on Google Latitude for iPhone
Before you ask…
Here’s how to add Google Latitude to your iPhone as a web clip without Mobile Safari’s top and bottom navigation bars.
- On your iPhone, go to http://carbis.fu8.com/iPhone/latitude (the capital ‘P’ matters)
- Before you are redirected to the latitude page, quickly press the + button, and press Add to Home Screen
- If the icon loads with a black background, you didn’t quite get it before it redirected – try again
- Press Add in the top right hand corner
And that’s that. You’ll notice I also edited the ugly Latitude home screen icon so that it matches all of Google’s other web apps.
Hope you like.
Jun/092
How to use Google Apps Chat in Beejive / Adium / Pidgin
… or any third party instant messaging client for that matter. So that you can use Google Talk on your Google Apps domain on your iPhone (through Beejive or IM+), or through your instant messaging client of choice. Even iChat!
First of all, you’ll need to update your SRV records. Don’t worry if you’ve never heard of them before, it’s really easy. Log into your domain control, and, in the same way you would add DNS records, add the following SRV records (replacing domain.com with your domain):
_xmpp-server._tcp.domain.com. IN SRV 5 0 5269 xmpp-server.l.google.com.
_xmpp-server._tcp.domain.com. IN SRV 20 0 5269 xmpp-server1.l.google.com.
_xmpp-server._tcp.domain.com. IN SRV 20 0 5269 xmpp-server2.l.google.com.
_xmpp-server._tcp.domain.com. IN SRV 20 0 5269 xmpp-server3.l.google.com.
_xmpp-server._tcp.domain.com. IN SRV 20 0 5269 xmpp-server4.l.google.com.
_jabber._tcp.gmail.domain. IN SRV 5 0 5269 xmpp-server.l.google.com.
_jabber._tcp.gmail.domain. IN SRV 20 0 5269 xmpp-server1.l.google.com.
_jabber._tcp.gmail.domain. IN SRV 20 0 5269 xmpp-server2.l.google.com.
_jabber._tcp.gmail.domain. IN SRV 20 0 5269 xmpp-server3.l.google.com.
_jabber._tcp.gmail.domain. IN SRV 20 0 5269 xmpp-server4.l.google.com.
_xmpp-client._tcp.domain.com. IN SRV 5 0 5222 xmpp-server.l.google.com.
_xmpp-client._tcp.domain.com. IN SRV 20 0 5222 xmpp-server1.l.google.com.
_xmpp-client._tcp.domain.com. IN SRV 20 0 5222 xmpp-server2.l.google.com.
_xmpp-client._tcp.domain.com. IN SRV 20 0 5222 xmpp-server3.l.google.com.
_xmpp-client._tcp.domain.com. IN SRV 20 0 5222 xmpp-server4.l.google.com.
The last five are the most important, and they’re not included in Google’s article on the topic. They are the part that lets you log in from a different instant messaging client.
Next, just add a Google Talk account, with the username being ‘username@yourdomain.com’ . It should all be good from there.
Let me know how you go, if this works for you (or if it doesn’t).