Friday, March 7, 2008

iPhone fullscreen web apps

Along with the iPhone sdk, apple has also added some updates for web developers, including the ability to create iPhone web apps in dashcode and ability to run web apps in full screen mode. To get full screen mode working all you need to do is add the html

<meta name="'apple-touch-fullscreen'" content="YES">

to the head of your web page. This sounds great but does not appear to be working yet. I tested this in both the iPhone simulator "Aspen" and directly on the iPhone itself. I also would have thought this to be an option on the dashcode page attributes, but it isn't, atleast for now. Also, the css animation effects don't appear to be working on the iPhone but those do work in the simulator. This most likely won't be available until the release of the iPhone 2.0 software.

Thursday, February 21, 2008

Mark Russinovich Blog & Vista SP1 file copy improvements

"Mark Russinovich's technical blog covering topics such as Windows troubleshooting, technologies and security."

Mark is of Sysinternals fame. Sysinternals is a great resource for Windows based tools and tips (including BgInfo and Process Explorer).

There is an interesting entry in Mark's blog that was brought to attention via a Microsoft "TechNet Flash" e-mail newsletter. It discusses details of Vista SP1 file copy improvements:

http://blogs.technet.com/markrussinovich/


March 18, 2008 additions:

Wednesday, February 20, 2008

Examining Load Average (via top, uptime, etc.)

"In general, the intuitive idea of load averages is the higher they rise above the number of processors, the more demand there is for the CPUs, and the lower they fall below the number of processors, the more untapped CPU capacity there is. But all is not as it appears."

http://www.linuxjournal.com/article/9001

Monday, January 14, 2008

OpenWrt on Linksys NSLU2

With a help from a online few resources (listed below), I was able to flash the firmware of a Linksys NSLU2 (Network Storage Link for USB 2.0 Disk Drives) to utilize a more capable OS with more options than provided by the default firmware.

Future plans include installing and setting up:

There are many other devices (e.g. available ASUS WL-500g Premium, Buffalo NAS devices, etc.) that can be flashed with various operating systems (DD-WRT, OpenWrt, etc.) that provide additional better and more options and features than the stock firmware that is included with the devices. These embedded devices utilize Linux. Searching online for these OS and devices yields a multitude of projects, forums, and documentation. Here is a sampling for the flashing the NSLU2:


NSLU2-Linux - OpenWrt / HomePage
http://www.nslu2-linux.org/wiki/OpenWrt/HomePage

Kamikaze 7.09 on NSLU2
http://forum.openwrt.org/viewtopic.php?id=13034

Wiki about OpenWrt on NSLU2
http://tisnix.wikispaces.com/SlugNix

Tuesday, January 8, 2008

Windows 2003 Server OS Unnecessary Services

The following are list of some unnecessary services that are not needed (depending on the services being performed) on Microsoft Windows 2003 Server OS:

  • DHCP Client - Dhcp
    Not needed if using static IP addresses
  • Print Spooler - Spooler
    Not needed if there is no printer to be used
  • Help ad Support - helpsvc
    Not needed if not planning to use Windows built-in help
  • Windows Audio - AudioSrv
    Not needed if there are no audio devices to be used
  • Wireless Configuration - WZCSVC
    Not needed if there are no wireless devices to be used
Although the following URL is about Microsoft Windows XP, it is still a relevant resource.
http://www.blackviper.com/WinXP/servicecfg.htm

Friday, January 4, 2008

Printing PDFs

Creating Portable Document Format (PDF) files from applications that do not natively create the format is helpful when trying to maintain formating of a document, making it easy to share with others, or printing at a later date. For example, when purchasing an item online, the final order step will often suggest you print the page for your records or you discover an article online which may only be published for a short time that you want to save for your personal reference which. What if you do not want to waste psychical paper and ink or toner, or you are working on a system that does not have connectivity to a printer?

Consider printing to a PDF file. Some applications such as OpenOffice provide the ability to export to a directly to a PDF file (see the File menu). However, by default, applications such as Mozilla Firefox or Microsoft Internet Explorer do not provide this functionally.

Discover CutePDF Writer <http://www.cutepdf.com/Products/CutePDF/writer.asp>.
Installing this free software package along with the free (and required and recommended) Ghostscript writer will create a new printer on your system called "CutePDF". Whenever the need arises to create a PDF file for the current document you are viewing, simply print it and select "CutePDF" as your printer. You will be prompted for a filename and location. Once the "printing" process is completed, a PDF file

CutePDF Writer supports Microsoft Windows 98/ME/2000/XP/2003/Vista (x32/x64).

(Apple OS X natively supports printing to PDFs - so I am told.)

Thursday, December 27, 2007

MyISAM and InnoDB storage engines

Deciding which storage engine to use for you MySQL tables can be an important decision.  I have seen the question raised a few times here and there, most times by people who probably haven't bothered to look at the MySQL manual. Here, I will try to consolidate some of the important advantages and disadvantages to help you decide which storage engine you should use for your tables.  Some of the unique characteristics include:


MyISAMInnoDB
LockingTable LevelRow Level
TransactionsNoYes
Full Text IndexesYesNo
Foreign Key SupportNoYes

Go here for a full list

If you need transactions or foreign key support you can really only chose InnoDB, or if you need full text indexes you will have to choose MyISAM.  

If the above are not important to you, you may want to consider concurrency.  For this you should chose MyISAM if the number of reads vs writes is unbalanced one way or the other by more than 40%.  If your number of reads and writes is relatively equal you will get better concurrency with InnoDB.  

If your code uses a lot of "count (*) FROM table" you will need to rethink this if you need to use InnoDB because InnoDB tables do not store the number of rows in a table, every row needs to be counted each time this query is called and this can be extremely slow for large tables.

Sources: