Are you over 18 and want to see adult content?
More Annotations
A complete backup of jamiehowardauthor.com
Are you over 18 and want to see adult content?
Albatros Airlines | Tan lejos como quieras…
Are you over 18 and want to see adult content?
Buyers Agents in Brisbane | Property Strategists
Are you over 18 and want to see adult content?
Vagas de Emprego | Emprego-brasil.com
Are you over 18 and want to see adult content?
First Draft | Liberal Politics, Media Criticism & General Mayhem
Are you over 18 and want to see adult content?
Favourite Annotations
A complete backup of www.fortunegreece.com/article/teleti-pros-timin-tou-spoudeou-kompi-braiant-ke-tis-koris-tou-tzianna-sparakt
Are you over 18 and want to see adult content?
A complete backup of www.radio.kielce.pl/pl/post-100674
Are you over 18 and want to see adult content?
A complete backup of www.thetoc.gr/people-style/article/xaris-romas-pantreutika-inkogknito-se-mikri-ilikia---o-pateras-mou-me-up
Are you over 18 and want to see adult content?
A complete backup of wiadomosci.onet.pl/tylko-w-onecie/halina-konopacka-heroina-stadionow-swiata-historia-ewakuacji-zlota-banku-
Are you over 18 and want to see adult content?
Text
ABOUT - IONCANNON
About. I've been doing consulting since 1999 and I currently work for a software development company in Louisville, Ky. I do a wide range of software development and systems administration consulting. I started programming in 1989 and professional programming in the 1997. SEGMENTING WEBM VIDEO AND THE MEDIASOURCE API What follows is a simple technique for segmenting a WebM video in a way that allows standard streaming with the MediaSource API in the same fasion as the Pantos draft technique. While this example will not support variable rate streams it could be expanded to do so and would be the next logical step. The basics of how the Pantos technique works PHP RRDTOOL TUTORIAL The next step is to update your RRD on the frequency you set when you created it. In the case above the frequency was set to 5 minutes (300 seconds). The following script generates random input and output values as input to the update function, sleeps for 300 seconds andthen loops. 01. 02.
USING FETCHMAIL AND PROCMAIL FOR MAILDIR STYLE STORAGE Here are the steps I used to fetch mail from a POP3 mailbox and store the messages in Maildir style folders. 1. Fetchmail setup. The following configuration file for fetchmail will pop all the mail off the server and purge it so be careful. The main thing to notice is the mta line at the end that calls procmail. set logfile/tmp/fetchmail.log
10 TIPS FOR CREATING GOOD LOOKING DIAGRAMS USING INKSCAPE Pingback: 10 Tips For Creating Good Looking Diagrams Using Inkscape « the inkscape tutorials blog — a big list of cool inkscape tutorials Alex August 24, 2007 at 4:05 am. I think the issue with dropshadows can be simplified a bit; the workaround is as follows: 1. HOWTO BASE64 ENCODE WITH C/C++ AND OPENSSL I've been doing a little C programming lately and I have found that if you have a up to date distribution of linux there are a lot of libraries out there that make doing things you do in other languages like java easier. As I have time I'm going to post some examples ofwhat
HOW TO SET UP DIFFERENT WINDOW MANAGERS WITH VNC I recently needed to replace twm as the window manager I used under VNC. I wanted something light so I looked at: blackbox, fluxbox, and flwm. These window managers have been around for some time and are probably available as binary packages for most distributions. I went with blackbox after installing them all. To change USING THE GOOGLE CLOSURE COMPILER IN JAVA Using the Google Closure Compiler in Java. I recently had a chance to try out Google's closure compiler. The closure compiler is similar to the YUI compressor except that along with minimizing it may rewrite the JavaScript. If you want to understand more about what it does start at the overview documentation and then go from there. FREERADIUS WITH ORACLE I recently needed to find a RADIUS server for use in a project where I could stick profile data into Oracle. I remembered seeing FreeRADIUS a while back so I checked to see if it was active and supported Oracle. Sure enough it did. It was a little tricky to set up because some of IONCANNONEMAILEMBEDDATABASE ADMINISTRATIONAPPLE WATCHPROGRAMMINGPHP I've been hacking around with FileAPI and XHR2 in HTML5 recently (more on why hopefully in another month or so). So when Amazon announced S3 CORS support I figured I should create a demo of directly uploading a file to S3 from a browser.. The first thing to understand is that while the upload happens directly to S3 there still needs to be some server side code that signs the URL used by theABOUT - IONCANNON
About. I've been doing consulting since 1999 and I currently work for a software development company in Louisville, Ky. I do a wide range of software development and systems administration consulting. I started programming in 1989 and professional programming in the 1997. SEGMENTING WEBM VIDEO AND THE MEDIASOURCE API What follows is a simple technique for segmenting a WebM video in a way that allows standard streaming with the MediaSource API in the same fasion as the Pantos draft technique. While this example will not support variable rate streams it could be expanded to do so and would be the next logical step. The basics of how the Pantos technique works PHP RRDTOOL TUTORIAL The next step is to update your RRD on the frequency you set when you created it. In the case above the frequency was set to 5 minutes (300 seconds). The following script generates random input and output values as input to the update function, sleeps for 300 seconds andthen loops. 01. 02.
USING FETCHMAIL AND PROCMAIL FOR MAILDIR STYLE STORAGE Here are the steps I used to fetch mail from a POP3 mailbox and store the messages in Maildir style folders. 1. Fetchmail setup. The following configuration file for fetchmail will pop all the mail off the server and purge it so be careful. The main thing to notice is the mta line at the end that calls procmail. set logfile/tmp/fetchmail.log
10 TIPS FOR CREATING GOOD LOOKING DIAGRAMS USING INKSCAPE Pingback: 10 Tips For Creating Good Looking Diagrams Using Inkscape « the inkscape tutorials blog — a big list of cool inkscape tutorials Alex August 24, 2007 at 4:05 am. I think the issue with dropshadows can be simplified a bit; the workaround is as follows: 1. HOWTO BASE64 ENCODE WITH C/C++ AND OPENSSL I've been doing a little C programming lately and I have found that if you have a up to date distribution of linux there are a lot of libraries out there that make doing things you do in other languages like java easier. As I have time I'm going to post some examples ofwhat
HOW TO SET UP DIFFERENT WINDOW MANAGERS WITH VNC I recently needed to replace twm as the window manager I used under VNC. I wanted something light so I looked at: blackbox, fluxbox, and flwm. These window managers have been around for some time and are probably available as binary packages for most distributions. I went with blackbox after installing them all. To change USING THE GOOGLE CLOSURE COMPILER IN JAVA Using the Google Closure Compiler in Java. I recently had a chance to try out Google's closure compiler. The closure compiler is similar to the YUI compressor except that along with minimizing it may rewrite the JavaScript. If you want to understand more about what it does start at the overview documentation and then go from there. FREERADIUS WITH ORACLE I recently needed to find a RADIUS server for use in a project where I could stick profile data into Oracle. I remembered seeing FreeRADIUS a while back so I checked to see if it was active and supported Oracle. Sure enough it did. It was a little tricky to set up because some ofABOUT - IONCANNON
I've been doing consulting since 1999 and I currently work for a software development company in Louisville, Ky. I do a wide range of software development and systems administration consulting. I started programming in 1989 and professional programming in the 1997. I created this blog because I seem to continuously think that when Idon't
HTTP LIVE VIDEO STREAM SEGMENTER AND DISTRIBUTOR This project is an attempt to make it easier to set up a live streaming server using Apple's HTTP Live Streaming protocol. The source includes a ruby script and a C program that use FFMpeg to encode and segment an input video stream in the correct format for use with the HTTP streaming protocol. YouUSING MODERNIZR
Modernizr is a Javascript library that detects the presence of browser functionality. This makes life a lot easier when using more modern features on your website by encapsulating all the feature tests into a library you don't have to worry about. USING ORACLE INSTANT CLIENT AND SQLPLUS Now you are ready to go. Just run the following to connect to your Oracle database: 1. ./sqlplus username/password@XE.WORLD. Oracle's Instant Client makes the world much easier now. In just a few steps you are able to connect to an Oracle database with SQLPlus and don't have to go through a ton of installation mess. CONVERTING FROM VIRTUALBOX OR VMWARE TO EC2 NOW EASIER The new PV-Grub ability introduced by Amazon for EC2 has opened the door for more than just custom kernels, it also makes it a lot easier to turn VirtualBox and VMWare instances into EC2 instances. In the past I have written about transfering VirtualBox FREERADIUS WITH ORACLE I recently needed to find a RADIUS server for use in a project where I could stick profile data into Oracle. I remembered seeing FreeRADIUS a while back so I checked to see if it was active and supported Oracle. Sure enough it did. It was a little tricky to set up because some of USING WEBP TO REDUCE NATIVE IOS APP SIZE Last year Google released WebM as an alternative to h264 encoded video. They followed that up with the release of WebP as an alternative to JPG. Ever since the release I've been thinking about giving it a try on iOS to see how well it might work to reduce application size. As a bonus to C# CUSTOM SOAP HEADER First off you need a custom header class that derives from SoapHeader. This class will contain the attributes that get sent in the SOAP header. Here is an example: Next you will need an instance of the custom header in the generated service client. The variable name needs to match what gets stuck in something later so make it readable: The DIRECT BROWSER UPLOADING I've been hacking around with FileAPI and XHR2 in HTML5 recently (more on why hopefully in another month or so). So when Amazon announced S3 CORS support I figured I should create a demo of directly uploading a file to S3 from a browser.. The first thing to understand is that while the upload happens directly to S3 there still needs to be some server side code that signs the URL used by the HOWTO BASE64 DECODE WITH C/C++ AND OPENSSL Heavy October 1, 2009 at 8:03 am. Hi I had some trouble with the openssl base 64 de/encoding too. This was because openssl does no 'pure' base64 encoding by default but uses the pem standard base64 encoding scheme ( this is why adding the lines from roxas will make it work in the most cases because the newlines are ignored ) but if you want to decode base64 that is used inside a IONCANNONEMAILEMBEDDATABASE ADMINISTRATIONAPPLE WATCHPROGRAMMINGPHP I've been hacking around with FileAPI and XHR2 in HTML5 recently (more on why hopefully in another month or so). So when Amazon announced S3 CORS support I figured I should create a demo of directly uploading a file to S3 from a browser.. The first thing to understand is that while the upload happens directly to S3 there still needs to be some server side code that signs the URL used by theABOUT - IONCANNON
About. I've been doing consulting since 1999 and I currently work for a software development company in Louisville, Ky. I do a wide range of software development and systems administration consulting. I started programming in 1989 and professional programming in the 1997. SEGMENTING WEBM VIDEO AND THE MEDIASOURCE API What follows is a simple technique for segmenting a WebM video in a way that allows standard streaming with the MediaSource API in the same fasion as the Pantos draft technique. While this example will not support variable rate streams it could be expanded to do so and would be the next logical step. The basics of how the Pantos technique works PHP RRDTOOL TUTORIAL The next step is to update your RRD on the frequency you set when you created it. In the case above the frequency was set to 5 minutes (300 seconds). The following script generates random input and output values as input to the update function, sleeps for 300 seconds andthen loops. 01. 02.
USING FETCHMAIL AND PROCMAIL FOR MAILDIR STYLE STORAGE Here are the steps I used to fetch mail from a POP3 mailbox and store the messages in Maildir style folders. 1. Fetchmail setup. The following configuration file for fetchmail will pop all the mail off the server and purge it so be careful. The main thing to notice is the mta line at the end that calls procmail. set logfile/tmp/fetchmail.log
HOW TO SET UP DIFFERENT WINDOW MANAGERS WITH VNC I recently needed to replace twm as the window manager I used under VNC. I wanted something light so I looked at: blackbox, fluxbox, and flwm. These window managers have been around for some time and are probably available as binary packages for most distributions. I went with blackbox after installing them all. To change HOWTO BASE64 ENCODE WITH C/C++ AND OPENSSL I've been doing a little C programming lately and I have found that if you have a up to date distribution of linux there are a lot of libraries out there that make doing things you do in other languages like java easier. As I have time I'm going to post some examples ofwhat
10 TIPS FOR CREATING GOOD LOOKING DIAGRAMS USING INKSCAPE Pingback: 10 Tips For Creating Good Looking Diagrams Using Inkscape « the inkscape tutorials blog — a big list of cool inkscape tutorials Alex August 24, 2007 at 4:05 am. I think the issue with dropshadows can be simplified a bit; the workaround is as follows: 1. USING THE GOOGLE CLOSURE COMPILER IN JAVA Using the Google Closure Compiler in Java. I recently had a chance to try out Google's closure compiler. The closure compiler is similar to the YUI compressor except that along with minimizing it may rewrite the JavaScript. If you want to understand more about what it does start at the overview documentation and then go from there. HOWTO BASE64 DECODE WITH C/C++ AND OPENSSL Heavy October 1, 2009 at 8:03 am. Hi I had some trouble with the openssl base 64 de/encoding too. This was because openssl does no 'pure' base64 encoding by default but uses the pem standard base64 encoding scheme ( this is why adding the lines from roxas will make it work in the most cases because the newlines are ignored ) but if you want to decode base64 that is used inside a IONCANNONEMAILEMBEDDATABASE ADMINISTRATIONAPPLE WATCHPROGRAMMINGPHP I've been hacking around with FileAPI and XHR2 in HTML5 recently (more on why hopefully in another month or so). So when Amazon announced S3 CORS support I figured I should create a demo of directly uploading a file to S3 from a browser.. The first thing to understand is that while the upload happens directly to S3 there still needs to be some server side code that signs the URL used by theABOUT - IONCANNON
About. I've been doing consulting since 1999 and I currently work for a software development company in Louisville, Ky. I do a wide range of software development and systems administration consulting. I started programming in 1989 and professional programming in the 1997. SEGMENTING WEBM VIDEO AND THE MEDIASOURCE API What follows is a simple technique for segmenting a WebM video in a way that allows standard streaming with the MediaSource API in the same fasion as the Pantos draft technique. While this example will not support variable rate streams it could be expanded to do so and would be the next logical step. The basics of how the Pantos technique works PHP RRDTOOL TUTORIAL The next step is to update your RRD on the frequency you set when you created it. In the case above the frequency was set to 5 minutes (300 seconds). The following script generates random input and output values as input to the update function, sleeps for 300 seconds andthen loops. 01. 02.
USING FETCHMAIL AND PROCMAIL FOR MAILDIR STYLE STORAGE Here are the steps I used to fetch mail from a POP3 mailbox and store the messages in Maildir style folders. 1. Fetchmail setup. The following configuration file for fetchmail will pop all the mail off the server and purge it so be careful. The main thing to notice is the mta line at the end that calls procmail. set logfile/tmp/fetchmail.log
HOW TO SET UP DIFFERENT WINDOW MANAGERS WITH VNC I recently needed to replace twm as the window manager I used under VNC. I wanted something light so I looked at: blackbox, fluxbox, and flwm. These window managers have been around for some time and are probably available as binary packages for most distributions. I went with blackbox after installing them all. To change HOWTO BASE64 ENCODE WITH C/C++ AND OPENSSL I've been doing a little C programming lately and I have found that if you have a up to date distribution of linux there are a lot of libraries out there that make doing things you do in other languages like java easier. As I have time I'm going to post some examples ofwhat
10 TIPS FOR CREATING GOOD LOOKING DIAGRAMS USING INKSCAPE Pingback: 10 Tips For Creating Good Looking Diagrams Using Inkscape « the inkscape tutorials blog — a big list of cool inkscape tutorials Alex August 24, 2007 at 4:05 am. I think the issue with dropshadows can be simplified a bit; the workaround is as follows: 1. USING THE GOOGLE CLOSURE COMPILER IN JAVA Using the Google Closure Compiler in Java. I recently had a chance to try out Google's closure compiler. The closure compiler is similar to the YUI compressor except that along with minimizing it may rewrite the JavaScript. If you want to understand more about what it does start at the overview documentation and then go from there. HOWTO BASE64 DECODE WITH C/C++ AND OPENSSL Heavy October 1, 2009 at 8:03 am. Hi I had some trouble with the openssl base 64 de/encoding too. This was because openssl does no 'pure' base64 encoding by default but uses the pem standard base64 encoding scheme ( this is why adding the lines from roxas will make it work in the most cases because the newlines are ignored ) but if you want to decode base64 that is used inside a SYSTEM ADMINISTRATION After a week delay Fedora 13 has been released and it is time to upgrade of course. As always there are a decent number of features in this release but here are a few that stand out to me: boot.fedoraproject.org – A small bootable image to start the install from.; IntelliJ IDEA – IntelliJ IDEA community edition. I'm glad to see my favorite IDE make it in along with Netbeans and Eclipse SITEMAP - IONCANNON.NET I am Carson McDonald a software engineer and this blog is a small slice of what I do every day. I started developing software in 1989 and since then have work with a wide range of languages and systems.LINUX - IONCANNON
I've been doing iPhone development lately using a mac mini. When we first started looking at developing for the iPhone it seemed like overkill to go out and buy multiple macbooks or one macbook to share between developers so instead we got a mac mini to share using Vine VNC.. For reference we are able to share the mac mini by taking advantage of fast user switching for more information see ARCHIVES - IONCANNON.NET I am Carson McDonald a software engineer and this blog is a small slice of what I do every day. I started developing software in 1989 and since then have work with a wide range of languages and systems.USING MODERNIZR
Modernizr is a Javascript library that detects the presence of browser functionality. This makes life a lot easier when using more modern features on your website by encapsulating all the feature tests into a library you don't have to worry about. 5 IMAGEMAGICK COMMAND LINE EXAMPLES If you have ever wanted to manipulate images under linux you probably have used Gimp. This isn't your only option and if you want to do things from the command line a better option is to use ImageMagick's convert utility. I've put together 5 simple command line examples thatI
FREERADIUS WITH ORACLE I recently needed to find a RADIUS server for use in a project where I could stick profile data into Oracle. I remembered seeing FreeRADIUS a while back so I checked to see if it was active and supported Oracle. Sure enough it did. It was a little tricky to set up because some of HOWTO BASE64 DECODE WITH C/C++ AND OPENSSL Heavy October 1, 2009 at 8:03 am. Hi I had some trouble with the openssl base 64 de/encoding too. This was because openssl does no 'pure' base64 encoding by default but uses the pem standard base64 encoding scheme ( this is why adding the lines from roxas will make it work in the most cases because the newlines are ignored ) but if you want to decode base64 that is used inside a HOW TO CREATE IPAD FORMATTED VIDEOS USING HANDBRAKE OR FFMPEG If you want to use FFMpeg to do all this you can. The following is a slightly modified version of the streaming command I'm using that will output a high bitrate version of the input video: 1. ffmpeg -y -i input.avi -acodec aac -ar 48000 -ab 128k -ac 2 -s 1024x768 -vcodec libx264 -b 1200k -flags +loop+mv4 -cmp 256 -partitions+parti4x4+partp8x8
HOW TO BUILD THE PHP RRDTOOL EXTENSION BY HAND 15 thoughts on “ How to build the PHP rrdtool extension by hand ” Pingback: IONCANNON » PHP RRDTool tutorial Scott November 22, 2006 at 4:34 pm. Hi, I am trying to following your instructions (thank you btw) and while everything compiles I am not seeing any IONCANNONEMAILEMBEDDATABASE ADMINISTRATIONAPPLE WATCHPROGRAMMINGPHP I've been hacking around with FileAPI and XHR2 in HTML5 recently (more on why hopefully in another month or so). So when Amazon announced S3 CORS support I figured I should create a demo of directly uploading a file to S3 from a browser.. The first thing to understand is that while the upload happens directly to S3 there still needs to be some server side code that signs the URL used by theABOUT - IONCANNON
About. I've been doing consulting since 1999 and I currently work for a software development company in Louisville, Ky. I do a wide range of software development and systems administration consulting. I started programming in 1989 and professional programming in the 1997. SEGMENTING WEBM VIDEO AND THE MEDIASOURCE API What follows is a simple technique for segmenting a WebM video in a way that allows standard streaming with the MediaSource API in the same fasion as the Pantos draft technique. While this example will not support variable rate streams it could be expanded to do so and would be the next logical step. The basics of how the Pantos technique works PHP RRDTOOL TUTORIAL The next step is to update your RRD on the frequency you set when you created it. In the case above the frequency was set to 5 minutes (300 seconds). The following script generates random input and output values as input to the update function, sleeps for 300 seconds andthen loops. 01. 02.
USING FETCHMAIL AND PROCMAIL FOR MAILDIR STYLE STORAGE Here are the steps I used to fetch mail from a POP3 mailbox and store the messages in Maildir style folders. 1. Fetchmail setup. The following configuration file for fetchmail will pop all the mail off the server and purge it so be careful. The main thing to notice is the mta line at the end that calls procmail. set logfile/tmp/fetchmail.log
HOW TO SET UP DIFFERENT WINDOW MANAGERS WITH VNC I recently needed to replace twm as the window manager I used under VNC. I wanted something light so I looked at: blackbox, fluxbox, and flwm. These window managers have been around for some time and are probably available as binary packages for most distributions. I went with blackbox after installing them all. To change HOWTO BASE64 ENCODE WITH C/C++ AND OPENSSL I've been doing a little C programming lately and I have found that if you have a up to date distribution of linux there are a lot of libraries out there that make doing things you do in other languages like java easier. As I have time I'm going to post some examples ofwhat
10 TIPS FOR CREATING GOOD LOOKING DIAGRAMS USING INKSCAPE Pingback: 10 Tips For Creating Good Looking Diagrams Using Inkscape « the inkscape tutorials blog — a big list of cool inkscape tutorials Alex August 24, 2007 at 4:05 am. I think the issue with dropshadows can be simplified a bit; the workaround is as follows: 1. USING THE GOOGLE CLOSURE COMPILER IN JAVA Using the Google Closure Compiler in Java. I recently had a chance to try out Google's closure compiler. The closure compiler is similar to the YUI compressor except that along with minimizing it may rewrite the JavaScript. If you want to understand more about what it does start at the overview documentation and then go from there. HOWTO BASE64 DECODE WITH C/C++ AND OPENSSL Heavy October 1, 2009 at 8:03 am. Hi I had some trouble with the openssl base 64 de/encoding too. This was because openssl does no 'pure' base64 encoding by default but uses the pem standard base64 encoding scheme ( this is why adding the lines from roxas will make it work in the most cases because the newlines are ignored ) but if you want to decode base64 that is used inside a IONCANNONEMAILEMBEDDATABASE ADMINISTRATIONAPPLE WATCHPROGRAMMINGPHP I've been hacking around with FileAPI and XHR2 in HTML5 recently (more on why hopefully in another month or so). So when Amazon announced S3 CORS support I figured I should create a demo of directly uploading a file to S3 from a browser.. The first thing to understand is that while the upload happens directly to S3 there still needs to be some server side code that signs the URL used by theABOUT - IONCANNON
About. I've been doing consulting since 1999 and I currently work for a software development company in Louisville, Ky. I do a wide range of software development and systems administration consulting. I started programming in 1989 and professional programming in the 1997. SEGMENTING WEBM VIDEO AND THE MEDIASOURCE API What follows is a simple technique for segmenting a WebM video in a way that allows standard streaming with the MediaSource API in the same fasion as the Pantos draft technique. While this example will not support variable rate streams it could be expanded to do so and would be the next logical step. The basics of how the Pantos technique works PHP RRDTOOL TUTORIAL The next step is to update your RRD on the frequency you set when you created it. In the case above the frequency was set to 5 minutes (300 seconds). The following script generates random input and output values as input to the update function, sleeps for 300 seconds andthen loops. 01. 02.
USING FETCHMAIL AND PROCMAIL FOR MAILDIR STYLE STORAGE Here are the steps I used to fetch mail from a POP3 mailbox and store the messages in Maildir style folders. 1. Fetchmail setup. The following configuration file for fetchmail will pop all the mail off the server and purge it so be careful. The main thing to notice is the mta line at the end that calls procmail. set logfile/tmp/fetchmail.log
HOW TO SET UP DIFFERENT WINDOW MANAGERS WITH VNC I recently needed to replace twm as the window manager I used under VNC. I wanted something light so I looked at: blackbox, fluxbox, and flwm. These window managers have been around for some time and are probably available as binary packages for most distributions. I went with blackbox after installing them all. To change HOWTO BASE64 ENCODE WITH C/C++ AND OPENSSL I've been doing a little C programming lately and I have found that if you have a up to date distribution of linux there are a lot of libraries out there that make doing things you do in other languages like java easier. As I have time I'm going to post some examples ofwhat
10 TIPS FOR CREATING GOOD LOOKING DIAGRAMS USING INKSCAPE Pingback: 10 Tips For Creating Good Looking Diagrams Using Inkscape « the inkscape tutorials blog — a big list of cool inkscape tutorials Alex August 24, 2007 at 4:05 am. I think the issue with dropshadows can be simplified a bit; the workaround is as follows: 1. USING THE GOOGLE CLOSURE COMPILER IN JAVA Using the Google Closure Compiler in Java. I recently had a chance to try out Google's closure compiler. The closure compiler is similar to the YUI compressor except that along with minimizing it may rewrite the JavaScript. If you want to understand more about what it does start at the overview documentation and then go from there. HOWTO BASE64 DECODE WITH C/C++ AND OPENSSL Heavy October 1, 2009 at 8:03 am. Hi I had some trouble with the openssl base 64 de/encoding too. This was because openssl does no 'pure' base64 encoding by default but uses the pem standard base64 encoding scheme ( this is why adding the lines from roxas will make it work in the most cases because the newlines are ignored ) but if you want to decode base64 that is used inside a SYSTEM ADMINISTRATION After a week delay Fedora 13 has been released and it is time to upgrade of course. As always there are a decent number of features in this release but here are a few that stand out to me: boot.fedoraproject.org – A small bootable image to start the install from.; IntelliJ IDEA – IntelliJ IDEA community edition. I'm glad to see my favorite IDE make it in along with Netbeans and Eclipse SITEMAP - IONCANNON.NET I am Carson McDonald a software engineer and this blog is a small slice of what I do every day. I started developing software in 1989 and since then have work with a wide range of languages and systems.LINUX - IONCANNON
I've been doing iPhone development lately using a mac mini. When we first started looking at developing for the iPhone it seemed like overkill to go out and buy multiple macbooks or one macbook to share between developers so instead we got a mac mini to share using Vine VNC.. For reference we are able to share the mac mini by taking advantage of fast user switching for more information see ARCHIVES - IONCANNON.NET I am Carson McDonald a software engineer and this blog is a small slice of what I do every day. I started developing software in 1989 and since then have work with a wide range of languages and systems.USING MODERNIZR
Modernizr is a Javascript library that detects the presence of browser functionality. This makes life a lot easier when using more modern features on your website by encapsulating all the feature tests into a library you don't have to worry about. 5 IMAGEMAGICK COMMAND LINE EXAMPLES If you have ever wanted to manipulate images under linux you probably have used Gimp. This isn't your only option and if you want to do things from the command line a better option is to use ImageMagick's convert utility. I've put together 5 simple command line examples thatI
FREERADIUS WITH ORACLE I recently needed to find a RADIUS server for use in a project where I could stick profile data into Oracle. I remembered seeing FreeRADIUS a while back so I checked to see if it was active and supported Oracle. Sure enough it did. It was a little tricky to set up because some of HOWTO BASE64 DECODE WITH C/C++ AND OPENSSL Heavy October 1, 2009 at 8:03 am. Hi I had some trouble with the openssl base 64 de/encoding too. This was because openssl does no 'pure' base64 encoding by default but uses the pem standard base64 encoding scheme ( this is why adding the lines from roxas will make it work in the most cases because the newlines are ignored ) but if you want to decode base64 that is used inside a HOW TO CREATE IPAD FORMATTED VIDEOS USING HANDBRAKE OR FFMPEG If you want to use FFMpeg to do all this you can. The following is a slightly modified version of the streaming command I'm using that will output a high bitrate version of the input video: 1. ffmpeg -y -i input.avi -acodec aac -ar 48000 -ab 128k -ac 2 -s 1024x768 -vcodec libx264 -b 1200k -flags +loop+mv4 -cmp 256 -partitions+parti4x4+partp8x8
HOW TO BUILD THE PHP RRDTOOL EXTENSION BY HAND 15 thoughts on “ How to build the PHP rrdtool extension by hand ” Pingback: IONCANNON » PHP RRDTool tutorial Scott November 22, 2006 at 4:34 pm. Hi, I am trying to following your instructions (thank you btw) and while everything compiles I am not seeing any IONCANNONEMAILEMBEDDATABASE ADMINISTRATIONAPPLE WATCHPROGRAMMINGPHP I've been hacking around with FileAPI and XHR2 in HTML5 recently (more on why hopefully in another month or so). So when Amazon announced S3 CORS support I figured I should create a demo of directly uploading a file to S3 from a browser.. The first thing to understand is that while the upload happens directly to S3 there still needs to be some server side code that signs the URL used by theABOUT - IONCANNON
About. I've been doing consulting since 1999 and I currently work for a software development company in Louisville, Ky. I do a wide range of software development and systems administration consulting. I started programming in 1989 and professional programming in the 1997. SEGMENTING WEBM VIDEO AND THE MEDIASOURCE API What follows is a simple technique for segmenting a WebM video in a way that allows standard streaming with the MediaSource API in the same fasion as the Pantos draft technique. While this example will not support variable rate streams it could be expanded to do so and would be the next logical step. The basics of how the Pantos technique works PHP RRDTOOL TUTORIAL The next step is to update your RRD on the frequency you set when you created it. In the case above the frequency was set to 5 minutes (300 seconds). The following script generates random input and output values as input to the update function, sleeps for 300 seconds andthen loops. 01. 02.
USING FETCHMAIL AND PROCMAIL FOR MAILDIR STYLE STORAGE Here are the steps I used to fetch mail from a POP3 mailbox and store the messages in Maildir style folders. 1. Fetchmail setup. The following configuration file for fetchmail will pop all the mail off the server and purge it so be careful. The main thing to notice is the mta line at the end that calls procmail. set logfile/tmp/fetchmail.log
HOW TO SET UP DIFFERENT WINDOW MANAGERS WITH VNC I recently needed to replace twm as the window manager I used under VNC. I wanted something light so I looked at: blackbox, fluxbox, and flwm. These window managers have been around for some time and are probably available as binary packages for most distributions. I went with blackbox after installing them all. To change HOWTO BASE64 ENCODE WITH C/C++ AND OPENSSL I've been doing a little C programming lately and I have found that if you have a up to date distribution of linux there are a lot of libraries out there that make doing things you do in other languages like java easier. As I have time I'm going to post some examples ofwhat
10 TIPS FOR CREATING GOOD LOOKING DIAGRAMS USING INKSCAPE Pingback: 10 Tips For Creating Good Looking Diagrams Using Inkscape « the inkscape tutorials blog — a big list of cool inkscape tutorials Alex August 24, 2007 at 4:05 am. I think the issue with dropshadows can be simplified a bit; the workaround is as follows: 1. USING THE GOOGLE CLOSURE COMPILER IN JAVA Using the Google Closure Compiler in Java. I recently had a chance to try out Google's closure compiler. The closure compiler is similar to the YUI compressor except that along with minimizing it may rewrite the JavaScript. If you want to understand more about what it does start at the overview documentation and then go from there. HOWTO BASE64 DECODE WITH C/C++ AND OPENSSL Heavy October 1, 2009 at 8:03 am. Hi I had some trouble with the openssl base 64 de/encoding too. This was because openssl does no 'pure' base64 encoding by default but uses the pem standard base64 encoding scheme ( this is why adding the lines from roxas will make it work in the most cases because the newlines are ignored ) but if you want to decode base64 that is used inside a IONCANNONEMAILEMBEDDATABASE ADMINISTRATIONAPPLE WATCHPROGRAMMINGPHP I've been hacking around with FileAPI and XHR2 in HTML5 recently (more on why hopefully in another month or so). So when Amazon announced S3 CORS support I figured I should create a demo of directly uploading a file to S3 from a browser.. The first thing to understand is that while the upload happens directly to S3 there still needs to be some server side code that signs the URL used by theABOUT - IONCANNON
About. I've been doing consulting since 1999 and I currently work for a software development company in Louisville, Ky. I do a wide range of software development and systems administration consulting. I started programming in 1989 and professional programming in the 1997. SEGMENTING WEBM VIDEO AND THE MEDIASOURCE API What follows is a simple technique for segmenting a WebM video in a way that allows standard streaming with the MediaSource API in the same fasion as the Pantos draft technique. While this example will not support variable rate streams it could be expanded to do so and would be the next logical step. The basics of how the Pantos technique works PHP RRDTOOL TUTORIAL The next step is to update your RRD on the frequency you set when you created it. In the case above the frequency was set to 5 minutes (300 seconds). The following script generates random input and output values as input to the update function, sleeps for 300 seconds andthen loops. 01. 02.
USING FETCHMAIL AND PROCMAIL FOR MAILDIR STYLE STORAGE Here are the steps I used to fetch mail from a POP3 mailbox and store the messages in Maildir style folders. 1. Fetchmail setup. The following configuration file for fetchmail will pop all the mail off the server and purge it so be careful. The main thing to notice is the mta line at the end that calls procmail. set logfile/tmp/fetchmail.log
HOW TO SET UP DIFFERENT WINDOW MANAGERS WITH VNC I recently needed to replace twm as the window manager I used under VNC. I wanted something light so I looked at: blackbox, fluxbox, and flwm. These window managers have been around for some time and are probably available as binary packages for most distributions. I went with blackbox after installing them all. To change HOWTO BASE64 ENCODE WITH C/C++ AND OPENSSL I've been doing a little C programming lately and I have found that if you have a up to date distribution of linux there are a lot of libraries out there that make doing things you do in other languages like java easier. As I have time I'm going to post some examples ofwhat
10 TIPS FOR CREATING GOOD LOOKING DIAGRAMS USING INKSCAPE Pingback: 10 Tips For Creating Good Looking Diagrams Using Inkscape « the inkscape tutorials blog — a big list of cool inkscape tutorials Alex August 24, 2007 at 4:05 am. I think the issue with dropshadows can be simplified a bit; the workaround is as follows: 1. USING THE GOOGLE CLOSURE COMPILER IN JAVA Using the Google Closure Compiler in Java. I recently had a chance to try out Google's closure compiler. The closure compiler is similar to the YUI compressor except that along with minimizing it may rewrite the JavaScript. If you want to understand more about what it does start at the overview documentation and then go from there. HOWTO BASE64 DECODE WITH C/C++ AND OPENSSL Heavy October 1, 2009 at 8:03 am. Hi I had some trouble with the openssl base 64 de/encoding too. This was because openssl does no 'pure' base64 encoding by default but uses the pem standard base64 encoding scheme ( this is why adding the lines from roxas will make it work in the most cases because the newlines are ignored ) but if you want to decode base64 that is used inside a SYSTEM ADMINISTRATION After a week delay Fedora 13 has been released and it is time to upgrade of course. As always there are a decent number of features in this release but here are a few that stand out to me: boot.fedoraproject.org – A small bootable image to start the install from.; IntelliJ IDEA – IntelliJ IDEA community edition. I'm glad to see my favorite IDE make it in along with Netbeans and Eclipse SITEMAP - IONCANNON.NET I am Carson McDonald a software engineer and this blog is a small slice of what I do every day. I started developing software in 1989 and since then have work with a wide range of languages and systems.LINUX - IONCANNON
I've been doing iPhone development lately using a mac mini. When we first started looking at developing for the iPhone it seemed like overkill to go out and buy multiple macbooks or one macbook to share between developers so instead we got a mac mini to share using Vine VNC.. For reference we are able to share the mac mini by taking advantage of fast user switching for more information see ARCHIVES - IONCANNON.NET I am Carson McDonald a software engineer and this blog is a small slice of what I do every day. I started developing software in 1989 and since then have work with a wide range of languages and systems.USING MODERNIZR
Modernizr is a Javascript library that detects the presence of browser functionality. This makes life a lot easier when using more modern features on your website by encapsulating all the feature tests into a library you don't have to worry about. 5 IMAGEMAGICK COMMAND LINE EXAMPLES If you have ever wanted to manipulate images under linux you probably have used Gimp. This isn't your only option and if you want to do things from the command line a better option is to use ImageMagick's convert utility. I've put together 5 simple command line examples thatI
FREERADIUS WITH ORACLE I recently needed to find a RADIUS server for use in a project where I could stick profile data into Oracle. I remembered seeing FreeRADIUS a while back so I checked to see if it was active and supported Oracle. Sure enough it did. It was a little tricky to set up because some of HOWTO BASE64 DECODE WITH C/C++ AND OPENSSL Heavy October 1, 2009 at 8:03 am. Hi I had some trouble with the openssl base 64 de/encoding too. This was because openssl does no 'pure' base64 encoding by default but uses the pem standard base64 encoding scheme ( this is why adding the lines from roxas will make it work in the most cases because the newlines are ignored ) but if you want to decode base64 that is used inside a HOW TO CREATE IPAD FORMATTED VIDEOS USING HANDBRAKE OR FFMPEG If you want to use FFMpeg to do all this you can. The following is a slightly modified version of the streaming command I'm using that will output a high bitrate version of the input video: 1. ffmpeg -y -i input.avi -acodec aac -ar 48000 -ab 128k -ac 2 -s 1024x768 -vcodec libx264 -b 1200k -flags +loop+mv4 -cmp 256 -partitions+parti4x4+partp8x8
HOW TO BUILD THE PHP RRDTOOL EXTENSION BY HAND 15 thoughts on “ How to build the PHP rrdtool extension by hand ” Pingback: IONCANNON » PHP RRDTool tutorial Scott November 22, 2006 at 4:34 pm. Hi, I am trying to following your instructions (thank you btw) and while everything compiles I am not seeing any IONCANNONEMAILEMBEDDATABASE ADMINISTRATIONAPPLE WATCHPROGRAMMINGPHP I've been hacking around with FileAPI and XHR2 in HTML5 recently (more on why hopefully in another month or so). So when Amazon announced S3 CORS support I figured I should create a demo of directly uploading a file to S3 from a browser.. The first thing to understand is that while the upload happens directly to S3 there still needs to be some server side code that signs the URL used by theABOUT - IONCANNON
About. I've been doing consulting since 1999 and I currently work for a software development company in Louisville, Ky. I do a wide range of software development and systems administration consulting. I started programming in 1989 and professional programming in the 1997. SEGMENTING WEBM VIDEO AND THE MEDIASOURCE APIHTML5 API LISTHTML5 FILEAPI TUTORIAL
What follows is a simple technique for segmenting a WebM video in a way that allows standard streaming with the MediaSource API in the same fasion as the Pantos draft technique. While this example will not support variable rate streams it could be expanded to do so and would be the next logical step. The basics of how the Pantos technique works PHP RRDTOOL TUTORIAL The next step is to update your RRD on the frequency you set when you created it. In the case above the frequency was set to 5 minutes (300 seconds). The following script generates random input and output values as input to the update function, sleeps for 300 seconds andthen loops. 01. 02.
USING FETCHMAIL AND PROCMAIL FOR MAILDIR STYLE STORAGE Here are the steps I used to fetch mail from a POP3 mailbox and store the messages in Maildir style folders. 1. Fetchmail setup. The following configuration file for fetchmail will pop all the mail off the server and purge it so be careful. The main thing to notice is the mta line at the end that calls procmail. set logfile/tmp/fetchmail.log
HOW TO SET UP DIFFERENT WINDOW MANAGERS WITH VNC I recently needed to replace twm as the window manager I used under VNC. I wanted something light so I looked at: blackbox, fluxbox, and flwm. These window managers have been around for some time and are probably available as binary packages for most distributions. I went with blackbox after installing them all. To change 10 TIPS FOR CREATING GOOD LOOKING DIAGRAMS USING INKSCAPE Pingback: 10 Tips For Creating Good Looking Diagrams Using Inkscape « the inkscape tutorials blog — a big list of cool inkscape tutorials Alex August 24, 2007 at 4:05 am. I think the issue with dropshadows can be simplified a bit; the workaround is as follows: 1. FREERADIUS WITH ORACLE I recently needed to find a RADIUS server for use in a project where I could stick profile data into Oracle. I remembered seeing FreeRADIUS a while back so I checked to see if it was active and supported Oracle. Sure enough it did. It was a little tricky to set up because some of USING THE GOOGLE CLOSURE COMPILER IN JAVA Using the Google Closure Compiler in Java. I recently had a chance to try out Google's closure compiler. The closure compiler is similar to the YUI compressor except that along with minimizing it may rewrite the JavaScript. If you want to understand more about what it does start at the overview documentation and then go from there. C# CUSTOM SOAP HEADER First off you need a custom header class that derives from SoapHeader. This class will contain the attributes that get sent in the SOAP header. Here is an example: Next you will need an instance of the custom header in the generated service client. The variable name needs to match what gets stuck in something later so make it readable: The IONCANNONEMAILEMBEDDATABASE ADMINISTRATIONAPPLE WATCHPROGRAMMINGPHP I've been hacking around with FileAPI and XHR2 in HTML5 recently (more on why hopefully in another month or so). So when Amazon announced S3 CORS support I figured I should create a demo of directly uploading a file to S3 from a browser.. The first thing to understand is that while the upload happens directly to S3 there still needs to be some server side code that signs the URL used by theABOUT - IONCANNON
About. I've been doing consulting since 1999 and I currently work for a software development company in Louisville, Ky. I do a wide range of software development and systems administration consulting. I started programming in 1989 and professional programming in the 1997. SEGMENTING WEBM VIDEO AND THE MEDIASOURCE APIHTML5 API LISTHTML5 FILEAPI TUTORIAL
What follows is a simple technique for segmenting a WebM video in a way that allows standard streaming with the MediaSource API in the same fasion as the Pantos draft technique. While this example will not support variable rate streams it could be expanded to do so and would be the next logical step. The basics of how the Pantos technique works PHP RRDTOOL TUTORIAL The next step is to update your RRD on the frequency you set when you created it. In the case above the frequency was set to 5 minutes (300 seconds). The following script generates random input and output values as input to the update function, sleeps for 300 seconds andthen loops. 01. 02.
USING FETCHMAIL AND PROCMAIL FOR MAILDIR STYLE STORAGE Here are the steps I used to fetch mail from a POP3 mailbox and store the messages in Maildir style folders. 1. Fetchmail setup. The following configuration file for fetchmail will pop all the mail off the server and purge it so be careful. The main thing to notice is the mta line at the end that calls procmail. set logfile/tmp/fetchmail.log
HOW TO SET UP DIFFERENT WINDOW MANAGERS WITH VNC I recently needed to replace twm as the window manager I used under VNC. I wanted something light so I looked at: blackbox, fluxbox, and flwm. These window managers have been around for some time and are probably available as binary packages for most distributions. I went with blackbox after installing them all. To change 10 TIPS FOR CREATING GOOD LOOKING DIAGRAMS USING INKSCAPE Pingback: 10 Tips For Creating Good Looking Diagrams Using Inkscape « the inkscape tutorials blog — a big list of cool inkscape tutorials Alex August 24, 2007 at 4:05 am. I think the issue with dropshadows can be simplified a bit; the workaround is as follows: 1. FREERADIUS WITH ORACLE I recently needed to find a RADIUS server for use in a project where I could stick profile data into Oracle. I remembered seeing FreeRADIUS a while back so I checked to see if it was active and supported Oracle. Sure enough it did. It was a little tricky to set up because some of USING THE GOOGLE CLOSURE COMPILER IN JAVA Using the Google Closure Compiler in Java. I recently had a chance to try out Google's closure compiler. The closure compiler is similar to the YUI compressor except that along with minimizing it may rewrite the JavaScript. If you want to understand more about what it does start at the overview documentation and then go from there. C# CUSTOM SOAP HEADER First off you need a custom header class that derives from SoapHeader. This class will contain the attributes that get sent in the SOAP header. Here is an example: Next you will need an instance of the custom header in the generated service client. The variable name needs to match what gets stuck in something later so make it readable: The SITEMAP - IONCANNON.NET I am Carson McDonald a software engineer and this blog is a small slice of what I do every day. I started developing software in 1989 and since then have work with a wide range of languages and systems. HARDWARE - IONCANNON Earlier this year Apple added the concept of beacon region monitoring into Core Location. This is more widely known as iBeacon. Right now there isn't a large amount of information on how to take advantage of it outside of iOS and Macs but it is actually pretty easy toimplement.
LINUX - IONCANNON
I've been doing iPhone development lately using a mac mini. When we first started looking at developing for the iPhone it seemed like overkill to go out and buy multiple macbooks or one macbook to share between developers so instead we got a mac mini to share using Vine VNC.. For reference we are able to share the mac mini by taking advantage of fast user switching for more information see HOWTO BASE64 ENCODE WITH C/C++ AND OPENSSL I've been doing a little C programming lately and I have found that if you have a up to date distribution of linux there are a lot of libraries out there that make doing things you do in other languages like java easier. As I have time I'm going to post some examples ofwhat
5 IMAGEMAGICK COMMAND LINE EXAMPLES If you have ever wanted to manipulate images under linux you probably have used Gimp. This isn't your only option and if you want to do things from the command line a better option is to use ImageMagick's convert utility. I've put together 5 simple command line examples thatI
HOW TO CREATE A STREAMING FLASH VIDEO PLAYER USING MING I mentioned in creating Flash videos using FFMpeg that you could use Ming to create your own Flash video player. I've added a patch to the ruby -ming extension for video streaming so now it is possible to create a streaming player with both PHP and Ruby using their Ming extensions. The following examples show you how. First a little background. You can read about playing back external FLV CONVERTING FROM VIRTUALBOX OR VMWARE TO EC2 NOW EASIER The new PV-Grub ability introduced by Amazon for EC2 has opened the door for more than just custom kernels, it also makes it a lot easier to turn VirtualBox and VMWare instances into EC2 instances. In the past I have written about transfering VirtualBox HOW TO CREATE IPAD FORMATTED VIDEOS USING HANDBRAKE OR FFMPEG If you want to use FFMpeg to do all this you can. The following is a slightly modified version of the streaming command I'm using that will output a high bitrate version of the input video: 1. ffmpeg -y -i input.avi -acodec aac -ar 48000 -ab 128k -ac 2 -s 1024x768 -vcodec libx264 -b 1200k -flags +loop+mv4 -cmp 256 -partitions+parti4x4+partp8x8
USING A HTTP PROXY TO DEBUG JAX-WS AND SOAP OVER HTTPS Every once in a while I run into something I need to debug from the network up. Most of the time I can do this using Wireshark but there are a few instances where what I'm really looking for is a man in the middle proxy. I usually find an alternative way to debug what I'm working on but recently I decided to find a combination that worked so the next time I can use it. HOW TO GET THE NEXT DATE FOR A WEEKDAY USING ORACLE If you ever need to find the next weekday from a given date in Oracle it turns out they have a built in function for doing just that. If you want the next Sunday from yesterday you would do: 1. SELECT NEXT_DAY (SYSDATE - 1, 'SUN') FROM dual; Valid entries for the day are: SUN, MON, TUE, WED, THU, FRI, and SAT. Tags: Oracle, SQL. Post navigation.IONCANNON
THOUGHTS ON SOFTWARE DEVELOPMENT AND ENGINEERING Menu Skip to content* Home
* About
* Archives
* Projects
* AP4J Player – Java AirPlay Player * GeeQE – Native Stack Overflow iPhone Application* Building GeeQE
* Google Analytics Dashboard WordPress Widget * HTTP Live Video Stream Segmenter and Distributor * Miscellaneous Projects * Fedora 12 Screenshots and Videos * Mozilla Jetpack – Google Reader Starred Post Browser * Swatch – A Firefox Stack Exchange Profile Watcher* Contact
* Sitemap
USING RUBY TO SEND TARGETED EMAIL TO AN APPLE WATCHLeave a reply
The other day I ran into a post about sending emails that could fall back to support the limited HTML that the Apple watch can display called hidden Apple Watch email.
After reading the post I wondered if I could write a quick example to do what they demonstrated. I turned to Ruby + Ruby mail gem to give this a try and found that there are a few things to know but generally it works well. To get started make sure you have the mail gem installed:1
gem install mail
Next there are two main points to remember before diving into theexamples:
* The sort order of the mime types is important, they need to come in the order listed in the examples or you will end up with the plain text version of the email on the watch * You need to include something in the full featured HTML section that can't render on the watch or you will see the full featured HTML on the watch. See the article above for some pointers but generally the watch isn't going to fetch an image from the web so that should do it and is what I have in the following images. First a simple example that will show plain text for mail clients that don't support HTML at all, normal HTML for full featured clients and a subset of HTML for the Apple watch.01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
require 'mail'
mail = Mail.new do
to 'user@something.com' from 'person@company.com' subject 'Watch mail example'end
#
# The order supplied here matters#
mail.body.set_sort_order#
# The order here doesn't matter#
text_part = Mail::Part.new do body 'This is plain text'end
mail.text_part = text_part watch_part = Mail::Part.new do content_type 'text/watch-html; charset=UTF-8' body 'This is HTML for the Apple watch'end
mail.add_part watch_part#
# If this part has something in it that can't display on the watchthen
# the watch part will display. Keep that in mind if you want to forcethe
# watch part to display. Here the link out to an image will force the # fallback to happen.#
html_part = Mail::Part.new do content_type 'text/html; charset=UTF-8' body 'This is HTML
'end
mail.html_part = html_partmail.deliver
Here is an example that includes an image that will display on the watch. It is important that in this case the image comes first in thesort order.
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
require 'mail'
mail = Mail.new do
to 'user@something.com' from 'person@company.com' subject 'Watch mail example with image'end
#
# The order supplied here matters#
mail.body.set_sort_order#
# The order here doesn't matter but you will need to # reference the image later.#
mail.attachments = File.read('/tmp/test.png') image_cid = mail.parts.first.url text_part = Mail::Part.new do body 'This is plain text'end
mail.text_part = text_part watch_part = Mail::Part.new do content_type 'text/watch-html; charset=UTF-8' body 'This is HTML for the watch'
end
mail.add_part watch_part html_part = Mail::Part.new do content_type 'text/html; charset=UTF-8' body 'This is HTML
'end
mail.html_part = html_partmail.deliver
This entry was posted in programming, ruby
and tagged apple watch, ruby
on May 26, 2015
by carson .
TURN A RASPBERRY PI INTO AN IBEACONLeave a reply
Earlier this year Apple added the concept of beacon region monitoring into Core Location. This is more widely known as iBeacon. Right now there isn't a large amount of information on how to take advantage of it outside of iOS and Macs but it is actually pretty easy to implement. The following instructions will get you to a point where a Raspberry Pi can function as an iBeacon (any Linux box should actuallywork).
Before diving into the technical details I think it is worth noting a few things. There are a few hardware based iBeacons already available in various "beta" states, to name a few: KST's iBeacon, coin for arduino
and ReadBearLab's iBeacon . These dedicated devices are going to have a power and most likely a price advantage over the Raspberry Pi so that is something to keep in mind. The setup I used cost around $70 for example and that is around the cost of the KST device but more than the others and the more that are made the more the price will probably decrease. The main advantage of the Raspberry Pi is flexibility and included in that $70 is a wifi dongle that the other devices don't have. My configuration for this post:* Raspberry Pi
Model B. The Model A would work as well but currently you wouldn't be able to run both wifi and bluetooth at the same time. You also needpower
,
storage
and maybe a case
.
* I've used both the IOGEAR Bluetooth 4.0 USB Micro Adapter (GBU521) and the Cirago Bluetooth 4.0 USB Mini Adapter (BTA8000) adapterssuccessfully.
* For wifi I've been using the Edimaxdevice.
Assuming you have your Pi hardware ready the first step is to install the Raspbian distro . I tested on the 2013-09-25-wheezy-raspbian version. Make sure it boots and then run the following commands as root to get the dependancies ready:1
2
apt-get update
apt-get install libglib2.0-dev libdbus-1-dev libudev-dev libical-devlibreadline6-dev
Next you will need to download and compile a more recent version of Bluez than what is available for the Raspbain distro. I've been able to use a number of versions in the Bluez 5.X family but for this I'll assume Bluez 5.9 . Use the following to get it installed and compiled (make sure to do the install part here asroot):
1
2
3
4
5
6
wget https://www.kernel.org/pub/linux/bluetooth/bluez-5.9.tar.xz tar xvJf bluez-5.9.tar.xzcd bluez-5.9
./configure --disable-systemd --enable-librarymake
make install
Now you have Bluez installed with bluetooth library support. There are also a number of tools available at this point. The first one you want to run is hciconfig to configure your bluetooth device. It works a lot like ifconfig if you are familiar with setting up network interface. If you run it without any command line arguments you will get a list of bluetooth devices:1
2
3
4
5
6
7
hciconfig
# hci0: Type: BR/EDR Bus: USB # BD Address: 00:02:72:32:CA:23 ACL MTU: 1021:8SCO MTU: 64:1
# DOWN # RX bytes:340 acl:0 sco:0 events:7 errors:0 # TX bytes:54 acl:0 sco:0 commands:12 errors:0 You want to bring the bluetooth device up so it is available:1
2
3
4
5
6
7
8
hciconfig hci0 up
hciconfig
# hci0: Type: BR/EDR Bus: USB # BD Address: 00:02:72:32:CA:23 ACL MTU: 1021:8SCO MTU: 64:1
# UP RUNNING # RX bytes:813 acl:0 sco:0 events:26 errors:0 # TX bytes:374 acl:0 sco:0 commands:31 errors:0 Make sure you see "UP RUNNING" before proceeding. You will probably want to add the command to bring the bluetooth device up to the startup script. Next you will want to grab my bluez-ibeacon repo from github andbuild it:
1
2
3
git clone https://github.com/carsonmcdonald/bluez-ibeacon.git bluez-ibeacon/bluez-beacon/make
Now you have a binary named ibeacon that you can run and that will turn the Pi into an iBeacon:1
./ibeacon 200 e2c56db5dffb48d2b060d0f5a71096e0 1 1 -29 You can read more about what the above means in the README for the bluez-ibeacon project. There is a demo iOS app in the same bluez-ibeacon project that you can use to then detect the beacon now that it is running. This entry was posted in hardware, programming
and tagged bluetooth, ibeacon
, rpi
on October 12, 2013
by carson .
BLUETOOTH 4.0 LE ON RASPBERRY PI WITH BLUEZ 5.X1 Reply
Over the holiday I had a little time to fiddle with the Raspberry Pi I got earlier in the summer and I started wondering how hard it would be to get a Bluetooth LEadapter working.
It turned out not to be as hard to get working as I thought it might be thanks to recently added support in the Bluez 5.x Bluetooth stack. What follows is the information you need to get things going. To start with I picked the IOGEAR Bluetooth 4.0 USB Micro Adapter (GBU521) that can be found onAmazon for just $13
since it looked like the chip it uses is decently supported with recent Linux kernels. The only issue I had is the size itself, if it didn't have a little nub on the end it would be too small to pull back out of the USB plug. Continue reading → This entry was posted in hardware, linux
, programming
and tagged bluethooth, rpi
on January 21, 2013
by carson .
DIRECT BROWSER UPLOADING – AMAZON S3, CORS, FILEAPI, XHR2 ANDSIGNED PUTS
7 Replies
I've been hacking around with FileAPI and XHR2 in HTML5 recently (more on why hopefully in another month or so). So when Amazon announced S3CORS support
I figured I should create a demo of directly uploading a file to S3from a browser.
The first thing to understand is that while the upload happens directly to S3 there still needs to be some server side code that signs the URL used by the PUT call. That bit of code is really simple and I'm including an example at the end for both PHP and Ruby. If you want to skip to the fun part you can check out the PHP and Rubyexample code
on github (instructions there on deploying to Heroku as well). Second there are a good number of technologies involved here so I've compiled a list of helpful links in case you aren't already familiar with them and/or want a reference:* FileAPI
* XHR2
* CORS
* S3 CORS support docs * S3 REST Authentication* S3 PUT requests
Continue reading → This entry was posted in programming on September 2, 2012by carson .
EMBED RUBY IN YOUR IOS APPS USING MRUBYLeave a reply
I've been playing with mruby for the past week or so. If you haven't seen it yet it is an embeddable version of Ruby. The first thing I wonder about when I heard about mruby last year a RubyConf was embedding it in iOS apps. Now that the initial version has been released I figured I would give it a try. There are a few things to take into account before diving into this. The first is that the mruby project is very new and there are a number of gaps in the language support right now but the goal is to support the ISO definition of Ruby at some point. The second thing to know is that I'm talking about embedding Ruby here and not writing iOS apps using Ruby. I'm more interested in the potential of Ruby as a scripting language for something like a game. If you want to look into writing iOS apps using Ruby check out RubyMotionor the MobiRuby
project (MobiRuby is based on mruby). Continue reading → This entry was posted in programmingand tagged embed
, iOS
, mruby
, objective-c
on May 8, 2012
by carson .
SEGMENTING WEBM VIDEO AND THE MEDIASOURCE API4 Replies
For a while now I've seen people ask when support for Apple's PantosHTTP live streaming
would
make it past Safari and iOS. The answer seems to have been that it wasn't clear that Pantos streaming was the best option and something else would come about eventually that would be more flexible. There have been other options but they involve either Flash or Silverlight and most people want something that works with html5 video. After a long wait it seems like the time is getting close now with theMediaSource API
.
The MediaSource API has experimental support in Chrome and can be enabled by using the chrome://flags option. To see it in action you can go to the MediaSource demo page.
You can also read a litte more about it here although the spec linked to above is probably a better place to learnabout it.
A while ago I created a tool for segmenting H264 video in a Pantos compliant way. When I saw the MediaSource API I wondered how the same type of tool might fit in. The first thing to note is that the Pantos draft describes a complete technique for video streaming while the MediaSource API gives you the tools to stream video and leaves the technique. What follows is a simple technique for segmenting a WebM video in a way that allows standard streaming with the MediaSource API in the same fasion as the Pantos draft technique. While this example will not support variable rate streams it could be expanded to do so and would be the next logical step. Continue reading → This entry was posted in utilitieson January 3, 2012
by carson .
RANGE REQUESTS WITH AJAXLeave a reply
I ran across something the other day that made wonder about doing range requests using ajax. For some reason it wasn't obvious at first if this would be easy but as it turns out it is. If you aren't familiar with range requests head over to the HTTP RFC and check out the range header. Your web server
needs to support range requests for this to be useful but most do so that shouldn't be a huge issue. As a bonus you will find that some CDNs support range request as well (Amazon S3 for example). Continue reading → This entry was posted in programmingand tagged ajax
, http
, javascript
on November 22, 2011by
carson .
USING WEBP TO REDUCE NATIVE IOS APP SIZE9 Replies
Last year Google released WebM as an alternative to h264 encoded video. They followed that up with the release of WebP as an alternative to JPG. Ever since the release I've been thinking about giving it a try on iOS to see how well it might work to reduce application size. As a bonus to reduced size, WebP also supports an alpha channel that JPG doesn't (there is more information available on the originalrelease
blog post).
Continue reading → This entry was posted in programmingand tagged iOS
, WebP
on June 29, 2011
by carson .
USING THE GOOGLE CLOSURE COMPILER IN JAVALeave a reply
I recently had a chance to try out Google's closure compiler . The closure compiler is similar to the YUI compressor except that along with minimizing it may rewrite the JavaScript. If you want to understand more about what it does start at the overview documentationand then
go from there.
What I needed was a way to use the closure compiler in an Ant task. The Ant task that comes with the library is good but there wasn't a way for me to integrate it into an existing system that wasn't going to change. After looking around for some example code and not finding any I went into the library's Ant task and figured out how to wire itall up myself.
Continue reading → This entry was posted in programmingand tagged closure
, java
, javascript
on March 8, 2011
by carson .
GOOGLE ANALYTICS DASHBOARD WORDPRESS PLUGIN VERSION 2.0 RELEASED1 Reply
It has taken me a while but I've finally been able to release version 2 of the Google Analytics Dashboard WordPress Plugin.
The primary enhancement of this version is that it no longer blocks the dashboard, posts or pages interfaces while loading. The next major change is an upgrade to using Google's OAuth login system (see my Google OAuth example using PHP for more information on how I did that if you are interested). The old login system is still available but the OAuth login is the one to use going forward and I may remove the old one at some point. The move to OAuth along with the refactoring I did to the code will allow support for other Google sites such as Feedburner. As a bonus I also moved the caching system to the newer WordPress transient storage interface. The use of the transient storage interface should fix one of the biggest issues people have seen in the past so no more worrying about finding a temp directory that is writable. Here are a list of the major changes: * The dashboard panel now loads asynchronously so the entire dashboard doesn't block while it is loading * Made the analytics column in posts and pages load asynchronously so that it doesn't block the loading of the page * Added support for Google OAuth logins * Use transient API support with wordpress version 2.8+ * Added ability to support multiple analytics sources Some other minor changes: * Stop unlink warnings when caching won't work * Refactored code so that major parts are split into classes * Refactored code to better seperate UI code * Fixed mime type not being sent correctly for admin area javascriptfile
* Fix bug in wordpress version checking This entry was posted in utilities and tagged wordpress on February 22, 2011by carson .
POST NAVIGATION
← Older posts
ABOUT ME
I am Carson McDonald a software engineer and this blog is a small slice of what I do every day. I started developing software in 1989 and since then have work with a wide range of languages and systems. You can also find me at the following:* GitHub
* Stack Overflow
Search for:
CATEGORIES
* database administration* gis
* hardware
* java
* linux
* meta
* php
* programming
* ruby
* software
* system administration* Uncategorized
* utilities
* web design
RSS
All Posts
Proudly powered by WordPressDetails
Copyright © 2024 ArchiveBay.com. All rights reserved. Terms of Use | Privacy Policy | DMCA | 2021 | Feedback | Advertising | RSS 2.0