So, you don't want to publish your brand new groundbreaking web app to the world with a boring old url like http://sydneyinlinehockey.appspot.com ?
Just say say you want to use your own custom domain such as sydneyinlinehockey.com.
One would think this would be a relatively simple and straight forward thing to do, but apparently not so...
First they make you sign up to Google Apps, then you have to prove you own the domain, then finally you have to tell them the domain name you plan to use, finally you have to update the details with your dns registrar so it points to google apps hosted website.
This was the tricky bit... so if anyone else wants to know how to do it, here's how I did it.
you need to create a CNAME record for your website,
eg:
www.sydneyinlinehockey.com
and point it to:
ghs.googlehosted.com.
Google app engine does not support naked domains, such as
http://sydneyinlinehockey.com.
to get this to work I setup a 301 redirect with my dns registrar, redirecting
sydneyinlinehockey.com
to
www.sydneyinlinehockey.com
voila.
just posting this cos I spent hours googling this...
Interesting computer programming things, hardware hacks, electronics, ai, music and other stuff I find interesting
Labels
3G
(1)
8600GT
(1)
AI
(4)
amazon
(1)
API
(1)
apple
(3)
apple mail
(1)
atlassian
(1)
audio
(1)
bambo
(1)
Bamboo
(1)
bloat
(1)
boost
(1)
bugbear
(1)
C++
(5)
calling conventions
(1)
cdecl
(1)
chromecast
(1)
CI
(1)
compiler
(1)
continuous integration
(1)
coursera
(1)
custom domain
(1)
debugging
(1)
deltanine
(1)
diagnosis
(1)
diy
(5)
DLL
(1)
dns
(1)
don't be evil
(1)
ec2
(1)
education
(1)
electronics
(1)
express checkout
(1)
fail
(6)
fink
(1)
firewire
(1)
free hosting
(1)
GAE
(1)
google
(1)
Google App Engine
(4)
H170
(1)
hackerx
(1)
hackintosh
(1)
Haskell
(3)
homebrew
(2)
i1394
(1)
icloud
(2)
iOS 9
(1)
ipad2
(2)
jobhunting
(2)
lag
(1)
letsencrypt
(2)
libjpeg
(1)
linux
(1)
mac
(2)
mbcs
(1)
mechanic
(1)
memory
(1)
MFC
(3)
Microsoft
(1)
migration
(1)
ML
(1)
mobile
(1)
movi
(1)
MSBuild
(1)
music
(1)
naked domain
(1)
NLP
(2)
o2 sensor
(1)
obd
(1)
Optiplex960
(1)
osx
(1)
outlook express
(1)
payments
(1)
paypal
(1)
photos
(2)
PIL
(1)
Project Euler
(1)
projectmix
(1)
python
(2)
raspberrypi
(3)
recruitment
(1)
renwal
(1)
skylake
(1)
soundcloud
(1)
ssl
(2)
stdcall
(1)
stripe
(1)
subaru
(2)
supermemo
(1)
supermemo anki java
(1)
sync
(2)
Telstra
(1)
tests
(1)
thunderbird
(1)
udacity
(1)
unicode
(1)
Uniform Cost Search
(1)
university
(1)
upgrade
(2)
vodafail
(1)
vodafone
(1)
VS2010
(1)
vs2013
(1)
VS6.0
(1)
weather
(1)
win
(1)
Win32
(1)
Z170
(1)
Wednesday, 11 July 2012
Friday, 6 July 2012
Installing Python Image Library (PIL) with jpeg support on mac os 10.7.4
Recently I have been playing with Google App Engine - I'm porting the Sydney Inline Hockey website from PHP (ugh!) to Google App Engine using Python.
Anyway, in order to use the google image library to manipulate images in App Engine, you need to have Python Image Library installed locally if you want to test your code.
Python's easy_install module maged to install PIL, however at runtime it would crash with an error about no jpeg decoder. No jpeg support was a bit of a dealbreaker... it seems libjpeg needs to be installed before PIL.
That's cool - lets just install libjpeg using fink, which seems to be one of a myriad of different tools for installing package on unix systems. But I didn't have fink installed...
after much yak shaving, I was finally able to to type:
sudo fink install libjpeg
sudo easy_install PIL
and it was all good!
For detailed instructions - see this post on Marcio Garcia's blog. Thanks Marcio!
Anyway, in order to use the google image library to manipulate images in App Engine, you need to have Python Image Library installed locally if you want to test your code.
Python's easy_install module maged to install PIL, however at runtime it would crash with an error about no jpeg decoder. No jpeg support was a bit of a dealbreaker... it seems libjpeg needs to be installed before PIL.
That's cool - lets just install libjpeg using fink, which seems to be one of a myriad of different tools for installing package on unix systems. But I didn't have fink installed...
after much yak shaving, I was finally able to to type:
sudo fink install libjpeg
sudo easy_install PIL
and it was all good!
For detailed instructions - see this post on Marcio Garcia's blog. Thanks Marcio!
Monday, 7 May 2012
Subaru Outback check engine light diagnosis
The other day the check engine light came on on my 2005 Subaru Outback. The manual says take it in to a service centre to have them check it out... sounds expensive!
Most modern cars have an OBD II interface you can connect to the cars computer to find out what the check engine light means. The OBD port on my Subaru Outback is located under the dash above the accelerator pedal. OBD scanners or code readers can be found on ebay for as little as $15 dollars so I thought I would try and diagnose the issue myself.
I actually opted for a bluetooth OBD scanner from a local seller based on the ELM-327 chipset for around $30 - thinking "cool, I can use my iPad or iphone to see what my car is doing"
That was a mistake - Apple have crippled the bluetooth interface on the iphone so that it only works with handsfrees and does not support the serial port profile. But it will work with android devices.
The other mistake was that pairing a bluetooth device adds another layer of complexity compared to using a USB scanner. I could pair it with my mac, but could I find any free software I could use to download the codes from my car? No... the only thing that seems to exist on the mac are two python projects, confusingly both named pyobd - this one and this one - pyobd2. Neither of which I could get to work - pyobd2 would run but not find my bluetooth serial port and pyobd would crash when I tried to run it.
So then I turned to windows - which has a myriad of software for reading OBD scanners - most incredibly ugly VB apps. Unfortunately I couldn't get any of them to read codes from my OBD bluetooth scanner under parallels on the mac... at best they would connect but then fail to read any data from my OBD scanner.
However, there is some nice software on the mac that will do the trick- movi. I downloaded the demo version, verified that it works with my scanner. But I could read any codes until I bought the full version, so I gritted my teeth and forked out $52 bucks to buy it from the App store.
Lo and behold - the mysterious code was P0032 - which means high voltage on the front oxygen sensor heater coil. Most likely the heater coil had burned out - which is not that serious - it just means it will take a little while to get accurate readings from the air -fuel sensor when the engine is cold until the sensor warms up. But having an engine warning light may mean your car will not pass rego.
So i called my local subaru dealers spare parts desk, gave him my vehicles VIN code and he advised me that the part I needed was part number 22641aa230, which was in stock and available for the bargain price of $530!!!
After my jaw hit hit the ground in shock I did some googling and found I could buy the genuine subaru part online in Australia for as little as $250. But I kept searching, and discovered that the subaru genuine part is manufactured by Denso, and the Denso equivalent part number is 234-9015. There is also a Bosch part 15501.
Further googling revealed that the Denso part on ebay could be had for $105 including shipping from the USA to Australia- what a saving! I think that is where I will be buying it from. But first I need to open the hood, and see if I can locate that pesky air/fuel sensor and see how feasible it is for a car novice like me to replace.
Anyway, I just thought I would post this info for the benefit of anyone else to save me the hours of googling I wen through.
Most modern cars have an OBD II interface you can connect to the cars computer to find out what the check engine light means. The OBD port on my Subaru Outback is located under the dash above the accelerator pedal. OBD scanners or code readers can be found on ebay for as little as $15 dollars so I thought I would try and diagnose the issue myself.
I actually opted for a bluetooth OBD scanner from a local seller based on the ELM-327 chipset for around $30 - thinking "cool, I can use my iPad or iphone to see what my car is doing"
That was a mistake - Apple have crippled the bluetooth interface on the iphone so that it only works with handsfrees and does not support the serial port profile. But it will work with android devices.
The other mistake was that pairing a bluetooth device adds another layer of complexity compared to using a USB scanner. I could pair it with my mac, but could I find any free software I could use to download the codes from my car? No... the only thing that seems to exist on the mac are two python projects, confusingly both named pyobd - this one and this one - pyobd2. Neither of which I could get to work - pyobd2 would run but not find my bluetooth serial port and pyobd would crash when I tried to run it.
So then I turned to windows - which has a myriad of software for reading OBD scanners - most incredibly ugly VB apps. Unfortunately I couldn't get any of them to read codes from my OBD bluetooth scanner under parallels on the mac... at best they would connect but then fail to read any data from my OBD scanner.
However, there is some nice software on the mac that will do the trick- movi. I downloaded the demo version, verified that it works with my scanner. But I could read any codes until I bought the full version, so I gritted my teeth and forked out $52 bucks to buy it from the App store.
Lo and behold - the mysterious code was P0032 - which means high voltage on the front oxygen sensor heater coil. Most likely the heater coil had burned out - which is not that serious - it just means it will take a little while to get accurate readings from the air -fuel sensor when the engine is cold until the sensor warms up. But having an engine warning light may mean your car will not pass rego.
So i called my local subaru dealers spare parts desk, gave him my vehicles VIN code and he advised me that the part I needed was part number 22641aa230, which was in stock and available for the bargain price of $530!!!
After my jaw hit hit the ground in shock I did some googling and found I could buy the genuine subaru part online in Australia for as little as $250. But I kept searching, and discovered that the subaru genuine part is manufactured by Denso, and the Denso equivalent part number is 234-9015. There is also a Bosch part 15501.
Further googling revealed that the Denso part on ebay could be had for $105 including shipping from the USA to Australia- what a saving! I think that is where I will be buying it from. But first I need to open the hood, and see if I can locate that pesky air/fuel sensor and see how feasible it is for a car novice like me to replace.
Anyway, I just thought I would post this info for the benefit of anyone else to save me the hours of googling I wen through.
Wednesday, 25 April 2012
Hackintosh on Dell Optiplex 960 with Nvidia GeForce 8600 GT
Recently, I bought a GoPro Hero HD2 camera which I have used to gather some 1080 footage... unfortunately the extremely long in the tooth early 2008 MacBook Pro I'm typing this on struggles to edit it. I really need to upgrade it - only only one USB works, and intermittently at that - and the audio has its good and bad days - however I can work around those issues with the odd NVRAM reset to fix the USB ( hold down the power button for 5 seconds when the machine is off and the battery removed) and some bluetooth headphones solves the audio issues - so no need to upgrade just yet.
I tried Windows Live Movie Maker on a fairly grunty Dell optiplex 960 with 8 Gig RAM- but that POS software kept crashing every time I rendered my video, and anyway it only supports Microsofts proprietary WMV format.
Since I know how to use iMovie and I didn't want to learn anything else, I thought I would see if I could install OSX lion 10.7.3. I had already managed to run it in a VM, but the video driver for the VM didn't support Quartz Extreme, which is required to run iMovie.
Anyway, after several days I managed to get it all working for the following configuration with my Nvidia GeForce 8600GT card, so if anyone else wants to give it a try here a few tips that might save you the several days of pain I went through.
* Make sure your bios is in AHCI mode
* I used the iATKOS L2 installer DVD - which hangs during boot on an Optiplex 960. So I removed my HDD, put it in an Optiplex 755 which managed to boot and install the OS. I then swapped the disk back into my Optiplex 960 which successfully booted. I then ran software update, and downloaded the 10.7.3 Combo update standalone to bring the machine up to 10.7.3. There are other ways to install OSX, which involve using a USB key to boot the machine and a retail copy of the OSX lion DVD
* I now had OSX with no network, sound and only basic graphics
* using MultiBeast I was able to install the kernel extensions (kexts) to get the network card working. I used the AppleIntelE1000e network driver, which is packaged with Multibeast.
* I couldn't find any drivers to support the onboard sound hardware ADI 198x Integrated HD Audio.
Luckily I had an old soundblaster live card lying around and was able to install the awesome kx project audio drivers by Eugene Garilov. Unfortunately the audio inputs don't work, but I was pretty stoked that my 12 year old soundcard has a new lease on life in my hackintosh!
Getting the video working was the biggest pain.
Some suggestions I found by trawling the forums such as adding the GraphicsEnabler=Yes setting in the org.chameleon.boot.plist file that is used by the boot loader did NOT work. Neither did hardcoding some magic EFI string distilled from the video cards ROM.
What finally worked was installing NVEnabler64.kext. All the forum posts seem to assume you know how to install kexts... kext utility is what you need to do this. Just drag the kext file onto kext utility and it does all the magic, copying the files and repairing permissions. I found it only worked if it was in System/Libaries/Extensions... not Extras/Extensions as mentioned in a few forum posts.
And voila... you now have a working Hackintosh.
If you are thinking of trying this then http://www.osx86.net and http://tonymacx86.blogspot.com.au/ or http://www.tonymacx86.com/ are great resources. Good luck!
I tried Windows Live Movie Maker on a fairly grunty Dell optiplex 960 with 8 Gig RAM- but that POS software kept crashing every time I rendered my video, and anyway it only supports Microsofts proprietary WMV format.
Since I know how to use iMovie and I didn't want to learn anything else, I thought I would see if I could install OSX lion 10.7.3. I had already managed to run it in a VM, but the video driver for the VM didn't support Quartz Extreme, which is required to run iMovie.
Anyway, after several days I managed to get it all working for the following configuration with my Nvidia GeForce 8600GT card, so if anyone else wants to give it a try here a few tips that might save you the several days of pain I went through.
* Make sure your bios is in AHCI mode
* I used the iATKOS L2 installer DVD - which hangs during boot on an Optiplex 960. So I removed my HDD, put it in an Optiplex 755 which managed to boot and install the OS. I then swapped the disk back into my Optiplex 960 which successfully booted. I then ran software update, and downloaded the 10.7.3 Combo update standalone to bring the machine up to 10.7.3. There are other ways to install OSX, which involve using a USB key to boot the machine and a retail copy of the OSX lion DVD
* I now had OSX with no network, sound and only basic graphics
* using MultiBeast I was able to install the kernel extensions (kexts) to get the network card working. I used the AppleIntelE1000e network driver, which is packaged with Multibeast.
* I couldn't find any drivers to support the onboard sound hardware ADI 198x Integrated HD Audio.
Luckily I had an old soundblaster live card lying around and was able to install the awesome kx project audio drivers by Eugene Garilov. Unfortunately the audio inputs don't work, but I was pretty stoked that my 12 year old soundcard has a new lease on life in my hackintosh!
Getting the video working was the biggest pain.
Some suggestions I found by trawling the forums such as adding the GraphicsEnabler=Yes setting in the org.chameleon.boot.plist file that is used by the boot loader did NOT work. Neither did hardcoding some magic EFI string distilled from the video cards ROM.
What finally worked was installing NVEnabler64.kext. All the forum posts seem to assume you know how to install kexts... kext utility is what you need to do this. Just drag the kext file onto kext utility and it does all the magic, copying the files and repairing permissions. I found it only worked if it was in System/Libaries/Extensions... not Extras/Extensions as mentioned in a few forum posts.
And voila... you now have a working Hackintosh.
If you are thinking of trying this then http://www.osx86.net and http://tonymacx86.blogspot.com.au/ or http://www.tonymacx86.com/ are great resources. Good luck!
Monday, 23 April 2012
Awesome free online university level classes.
I just finished the inaugural offering of CS373 - Programming a robotic car at udacity.com. It was a really interesting course taught by the world leader in self driving cars and winner of the 2005 DARPA grand challenge, Prof Sebastian Thrun. I really enjoyed his teaching style last year when I did the Stanford Introduction to Artificial Intelligence course that was made available online. The other teacher of that class, Peter Norvig, also has a new class he's teaching at udacity - CS212 - The design of computer programs, which I'm enjoying as well.
Udacity have really done a good job adapting their content to the web - the lectures are made up of short, easily digestible videos for each topic with plenty of interactive quizzes and programming assignments along the way, which make it much more engaging than your traditional university lecture. Best of all, they are free and taught by experts in their fields.
There are also a lot of new courses from bricks and mortar universities coming online at Coursera too.
I just enrolled in Stanford's highly regarded Machine Learning course which starts this week.
Udacity have really done a good job adapting their content to the web - the lectures are made up of short, easily digestible videos for each topic with plenty of interactive quizzes and programming assignments along the way, which make it much more engaging than your traditional university lecture. Best of all, they are free and taught by experts in their fields.
There are also a lot of new courses from bricks and mortar universities coming online at Coursera too.
I just enrolled in Stanford's highly regarded Machine Learning course which starts this week.
Tuesday, 20 March 2012
Tuesday, 14 February 2012
Subaru Engine Immobilizer Shennanigans
My key for my Subaru Outback no longer remotely locks or opens the vehicle. This has been a minor inconvenience for a while- I have to open the drivers door manually and then operate the central locking to open the rear hatch or other doors. Anyway, today whilst strolling through Newtown I had the brilliant idea to get the battery replaced at one of those little key cutting places that for some reason was located at the back of a tobacconist. Strangely, this is not the only multi-function tobacconist in Newtown, there is another place across he road that features a barber out the back of pipes, bongs and incense blends of dubious legality. Anyway, I digress...
This particular key cutting business seemed to exist to provide employment for the tobacconist proprietors elderly father, who deftly went about opening my car key with a jewellers screwdriver and inscrutably inspected the innards. After much hunting through his poorly organised shelving, he indicated for me to come over and showed me the battery with the number 1620 inscribed on it that apparently he did not have in stock. This is what I assumed, because at this point I realised he had the faintest grasp of the English language. As he fumbled to reassemble my key, I heard the sound of something tiny hitting the floor which I assumed to be a screw, but when he continued assembling the key it seemed the screw was accounted for.
I thanked him and wandered off, half heartedly checking every store that I walked past that looked it might sell batteries for the elusive 1620 with no luck until I finally made it back to my car.
I turned the ignition and the car started then immediately stalled, which was extremely unusual, even more so considering the car had just been serviced. I tried again with the same result, and then my hear sank when I saw the little key light on the dashboard blinking plaintively. It was then I realised that the sound of a tiny thing dropping to the floor as my key was reassembled was actually the sound of my tiny immobiliser chip dropping to the floor and no doubt bouncing off into an awkward and inconvenient place somewhere out the back of the tobacconist/key-cutter business.
Fortunately I was able to grab a spare key, and armed with the working ignition key and my other non-ignition key that was now only useful for opening the drivers door, I made my way back to the tobacconist on a mission to explain to the man who spoke no English that he had lost an extremely important and expensive thing and could I have a look on his floor? This was accomplished with help from the tobacconist proprietor, and when the old man opened my spare working key we could see a small, black rectangular prism shaped immobiliser chip was indeed missing. After a cursory look on the floor, he gave up and then with a small pair of scissors began fashioning me a replacement immobiliser chip out of a piece of black rubber to fill the sad void in the body of my car key remote. I explained it was a computer chip, which remarkably he seemed to understand, and ceased his miraculous feat of semiconductor engineering with the rubber and the scissors, and we had another proper look.
Finally, only after moving the extremely heavy rickety workbench where he had emasculated my key, the tiny chip was located and the key reassembled. Thankfully, it started my car the first time... but it still doesn't work the remote central locking!
Anyone know where i can find the elusive 1620 battery?
This particular key cutting business seemed to exist to provide employment for the tobacconist proprietors elderly father, who deftly went about opening my car key with a jewellers screwdriver and inscrutably inspected the innards. After much hunting through his poorly organised shelving, he indicated for me to come over and showed me the battery with the number 1620 inscribed on it that apparently he did not have in stock. This is what I assumed, because at this point I realised he had the faintest grasp of the English language. As he fumbled to reassemble my key, I heard the sound of something tiny hitting the floor which I assumed to be a screw, but when he continued assembling the key it seemed the screw was accounted for.
I thanked him and wandered off, half heartedly checking every store that I walked past that looked it might sell batteries for the elusive 1620 with no luck until I finally made it back to my car.
I turned the ignition and the car started then immediately stalled, which was extremely unusual, even more so considering the car had just been serviced. I tried again with the same result, and then my hear sank when I saw the little key light on the dashboard blinking plaintively. It was then I realised that the sound of a tiny thing dropping to the floor as my key was reassembled was actually the sound of my tiny immobiliser chip dropping to the floor and no doubt bouncing off into an awkward and inconvenient place somewhere out the back of the tobacconist/key-cutter business.
Fortunately I was able to grab a spare key, and armed with the working ignition key and my other non-ignition key that was now only useful for opening the drivers door, I made my way back to the tobacconist on a mission to explain to the man who spoke no English that he had lost an extremely important and expensive thing and could I have a look on his floor? This was accomplished with help from the tobacconist proprietor, and when the old man opened my spare working key we could see a small, black rectangular prism shaped immobiliser chip was indeed missing. After a cursory look on the floor, he gave up and then with a small pair of scissors began fashioning me a replacement immobiliser chip out of a piece of black rubber to fill the sad void in the body of my car key remote. I explained it was a computer chip, which remarkably he seemed to understand, and ceased his miraculous feat of semiconductor engineering with the rubber and the scissors, and we had another proper look.
Finally, only after moving the extremely heavy rickety workbench where he had emasculated my key, the tiny chip was located and the key reassembled. Thankfully, it started my car the first time... but it still doesn't work the remote central locking!
Anyone know where i can find the elusive 1620 battery?
Subscribe to:
Posts (Atom)