Aerial Photography – Canon SD500 – Trainer


I recently have been playing around with doing some R/C plane aerial photography.    I have an old .40 size trainer that I electrified a couple years ago.  It is fairly light for a big (60″ wingspan) trainer.  I have a AXI 2826 with a 3S 4400 battery that will push 700 watts into a 12 x 7 prop.   It will float around nicely, but I have enough watts to go vertical if needed.

I built a simple plywood mount for the Canon SD500, and mounted a servo above it so that I could control the shutter from a switch on my radio.  I am still working on getting all the bugs out, and I have recently installed CHDK to try and get a faster shutter speed.  I will post more about those experiments later.

This first shot is a picture after the plane made an unexpected landing in a soy-bean field.  Also shows the camera mount with servo nicely.

.40 Trainer with a AXI 2826 and camera mount

This is a shot of my house, I am also in this picture, but very small!

Lisbon, MD from the Air

A view of Mt Airy, MD, the water tower in the middle is about four miles away from where this was taken.
Mt Airy, MD from the Air

A view looking South-West, in this picture you can see SugerLoaf Mountain, and to the right the mountains past Frederick, MD.
Suger Loaf Mountain and beyond


Top My.CNF Optimizations for Innodb

worried-girl-computer

These are the four parameters which will have the most affect on the performance of MySQL 5.1x and Innodb.   If you are suffering from poor performance, try changing the following settings.  Remember, each individual situation will vary, and in many cases, the actual design of your queries will have more to do with your overall performance than any system tuning tricks.  The best tool I have found to capture, review, and analyse query performance for MySQL is Jet Profiler for MySQL.  If you need help optimizing your queries, let us know.

innodb_buffer_pool_size =8G
Set this to ~80% of free server memory.  For example, if you have a dedicated MySQL server with 10G, set to 8G

innodb_flush_log_at_trx_commit =0
Setting this to 0 will have a huge performance improvement, however your data is at somewhat more if you have a hardware failure

sync_binlog =0
Setting this to 0 will have a huge performance improvement, however your data is at somewhat more if you have a hardware failure

innodb_flush_method=O_DIRECT
On many systems, this will provide a performance improvement.  However, this can actually have a negative affect, so make sure you test appropriately.

Pictures from Above the Clouds

Last year I spent a lot of time flying between Baltimore and Tampa on Southwest Airlines. So much that I was an A-List member, which sadly I no longer am, although that is a different story…

I found myself often flying back from Tampa just as the sun was setting to the West, I saw some amazing sunsets, many through the broken clouds of a summer thunderstorm.  At some point, I started bringing my Canon SD870 IS along and snapping some pictures out the window.  Even with the Plexiglas, I was able to get some surprisingly good shots.  Here are a couple of my favorites.

Oh! I have slipped the surly bonds of Earth
And danced the skies on laughter-silvered wings;

Sunward I’ve climbed, and joined the tumbling mirth
Of sun-split clouds
Above the Clouds

Up, up the long, delirious burning blue
I’ve topped the wind-swept heights with easy grace
Where never lark, or ever eagle flew —
And, while with silent, lifting mind I’ve trod
Pictures from an Airplane

The high untrespassed sanctity of space,
Put out my hand, and touched the face of God.
Dramatic Sunset above the clouds


Cold Fire on The Discovery Channel, Put a Hex on You!

Wow, the second season of Pitchmen aired last night on the Discovery Channel®, without Billy Mays (RIP).  This year the show will be hosted by Andrew “Sully” Sullivan, and the first two main products that got the spotlight were Cold Fire® and Hex Light®.

Cold Fire™ is an environmentally friendly fire extinguishing agent that puts out ANY fire faster, safer, with less water, less damage to property, and less risk to firefighters. Cold Fire cools 21 times faster than water, and works to remove heat and the fuel sources from the fire tetrahedron, preventing re-ignition.  The Cold Fire fire extinguisher was used on Sully, after he lit himself on fire, and as expected, Cold Fire worked to put the fire out on Sullivan.

During test marketing the product sold nearly 1 million units according to Pitchmen, so it certainly seems that people are excited about Cold Fire.  As the show explained, this is not really a new product, it is  just being pitched in a new way.

HexLight was the second product featured, it is a LED flashlight that is worn around the wrist or forearm, so that both of your hands can be free.  What you end up with is a battery operated hands free flashlight that ingeniously beams a surprising strong burst of light in the direction the wearers hand is pointing.


MySQL- Allowing Access to Root Remotely

girl using computer

MySQL includes all the basic methods needed to secure your user accounts.  However, the syntax and style used to manage it is often confusing to MySQL novices.  Here are a couple tips to get you started, however I strongly suggest your read the MySQL User Account Management documentation.

If you need to change your password for your localhost root account, here is the proper syntax.

mysql -u root
mysql> SET PASSWORD FOR 'ROOT'@'LOCALHOST' = PASSWORD('new_password');

You can also grant access to all remote servers as well by using the following syntax.

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;
mysql> FLUSH PRIVILEGES;

By default, MySQL only allows access by the ‘root’ account from the host running the database server (‘localhost’).

The percent symbol ("%") in the notation root@"%" means “any host”, but it doesn’t imply localhost. You need to repeat the commands above with root@localhost in order to grant/revoke permissions for localhost.

If you are setting up your server and require NO remote access, add skip-networking to your my.cnf file.

skip-networking : Don’t listen for TCP/IP connections at all. All interaction with mysqld must be made via Unix sockets. This option is highly recommended for systems where only local requests are allowed. Since you need to allow remote connection this line should be removed from my.cnf or put it in comment state.

 


MySQL Delimiters – Or why I hate stored procedures and Error Code : 1064 You have an error in your SQL syntax.

girl looking at computerMySQL 5.0+ gave DBA’s the ability to write stored procedures and functions. This is a great addition, and one that all “real” DB engines should provide. But, as many DBA have found out, writing stored procedures using most MySQL clients can be a bit of a challenge. Usually after writing their first attempt, they are greeted with, “Error Code : 1064 You have have an error in your SQL syntax;”.

So, what is going on?  Well, by default the MySQL statement delimiter is the semi-colon (;).  However, the mysql command-line utility also uses a semi-colon as a delimiter. So, if the command-line utility were to interpret the ; characters inside of the stored procedure itself, those would not end up becoming part of the stored procedure, and that would make the SQL in the stored procedure syntactically invalid.

The solution is to temporarily change the command-line utility delimiter using the DELIMITER command, as seen here:

DELIMITER //

CREATE PROCEDURE sku_pricing( OUT low_price DECIMAL(8,2), OUT high_price DECIMAL(8,2), OUT avg_price DECIMAL(8,2) )

BEGIN

SELECT Min(prod_price) INTO low_price FROM sku_items;

SELECT Max(prod_price) INTO high_price FROM items;

SELECT Avg(prod_price) INTO avg_price FROM items;

END; //

DELIMITER ;

Here, DELIMITER // tells the command-line utility to use // as the new end of statement delimiter, and you will notice that the END that closes the stored procedure is defined as END // instead of the expected END;. This way the ; within the stored procedure body remains intact and is correctly passed to the database engine, rather than being interpreted by the client. And then, to restore things back to how they were initially, the statement closes with a DELIMITER ;.   Any character may be used as the delimiter except for , as it is an escape character in mySQL.