Pages

Monday, February 4, 2013

Need to Open Up Space on an iOS Device? PhoneClean 2.0

0 comments

I was doing some Groundhog Day cleaning on my iPad, you know, moving photos, videos, and such off to get back a little storage space.  When I was done, I saw that I had nearly 5 gig of space being eaten up by 'Other'.

Some of that space usage is legit.  Application data, contacts and the like. But devices can accumulate quite a bit of detritus just from day-to-day usage; temp files, caches, off-line files, cookies, scripts, and corrupt media files from failed iTunes syncs.

So I took a little walk around the Interwebs to see if there was something that would survey my storage and assess what it found.

I came across a little freeware tool called PhoneClean that seemed to be just what I was looking for, so I decided to go ahead and give it a whirl.  You can download PhoneClean directly from the developer’s website.  PhoneClean is available for both Windows PC and Mac.  Once installed onto your computer, it’s just a few steps to run through the files on your device and scrub the unneeded ones.

So here we go:
  1. Back up your device.
         Before I do anything that might fubar my data I always do a backup.  I used iTunes to sync my iPad so I'd be able to rollback if this didn't go well.
  2. Connect your device to the computer
  3. Launch PhoneClean.
    You'll get a screen similar to this:
          You can see how much free space you have, and you can select what type of file to look for.
  1. Start the scan.
    When it's done you'll get a screen showing how much space can be freed up and what apps have files that can be deleted:
          Clicking on any of the apps will show you what files can go.
          And you have complete control of which files are removed and which ones stay.

  1. Click Clean Up to start the process of deleting the files.
              When it's all done you'll see a confirmation of how much space was freed up.

When I ran PhoneClean it about 20 minutes all together to scan and clear out the files.  In the end it opened up 2.89GB space.

Definitely worth the time and the price is right.
Continue reading →
Sunday, February 3, 2013

CFIMAP, SSL, and CACERT

0 comments
I was working on a little ColdFusion project the other day.  Something rather uncomplicated actually.  We needed to write an application that would:
  1. automatically check a mailbox for messages
  2. parse information from valid messages into a database
  3. move those messages from the Inbox to another folder
  4. delete any other messages from the box
Simple enough to do; now time to test.

I kick-off the process and -
An exception occurred when setting up mail server parameters.
This exception was caused by: javax.mail.MessagingException: sun.security.validator.ValidatorException: PKIX path validation failed: java.security.cert.CertPathValidatorException: Path does not chain with any of the trust anchors;


Well yippee, CF doesn't have the mail server's cert in its list.  This'll be fun- go generate a cert file and try to remember the command line to install it in CF's stores.

"But wait" says a friend, "there's an app for that" :) .  She clues me in on a little tool called KeyStore Explorer that's much better than all the command line stuff.    I take her advice (my friends are very smart) and grab a download at http://www.lazgosoftware.com/kse/index.html to check it out.  A couple of minutes later I point the tool at the cacerts file  (%cfroot%/jre/lib/security/cacerts) and install the mail server's cert.  No muss, no fuss, no bother.

The parser is humming along like it should and I'm on to the next 'to-do'.




Continue reading →
Thursday, January 24, 2013

Finding Empty ntext and varchar Fields in SQL

1 comments
Just the other day, I ran into another one of those little ‘slips your mind until you need it’ items.
In SQL, when checking for empty (no, NOT null, empty) fields with data types of ntext or varchar, querying for >’’ is not valid.
So, how can I find the records with empty fields? The test here would be to check for ANY string.
Well, LIKE ‘_%’ would be the way to do it.
For example, looking for records with an empty 'description' field (data type ntext) in a table with 200 entries:
SELECT * FROM widgets WHERE description IS NULL OR description NOT LIKE ‘_%’ 
would return the 17 records with empty or null description fields.
Conversely,
SELECT * FROM widgets WHERE description LIKE ‘_%’
would return the 183 records where there is something in the description field.
Continue reading →
Sunday, January 20, 2013

Price Increase on Windows 8

0 comments
If you're interested in picking up a license for Windows 8 now's the time to do it. Microsoft has announced an increase of $160 that will take effect on February 1st. The retail price will jump from $40 to $200. Here's the breakdown:
  • The Windows 8 Pro upgrade edition will be available online and at retail for $199.99 
  • The Windows 8 upgrade edition will be available online and at retail for $119.99 MSRP 
  • The Windows 8 Pro Pack will cost $99.99
  • The Windows 8 Media Center Pack will cost $9.99
Continue reading →
Sunday, December 23, 2012

ASCII Characters and Symbols

0 comments
Every so often I find that I need to place a special character and I just don't remember the coding.  I've usually had to Google around and look at multiple sites before finding the character I want. So I decided to compile a comprehensive list and put it here for easy reference.

CHR(#)HTML EntitySymbol
chr(160) 
chr(161)¡¡
chr(162)¢¢
chr(163)££
chr(164)¤¤
chr(165)¥¥
chr(166)¦¦
chr(167)§§
chr(168)¨¨
chr(169)©©
chr(170)ªª
chr(171)««
chr(172)¬¬
chr(173)­­
chr(174)®®
chr(175)¯¯
chr(176)°°
chr(177)±±
chr(178)²²
chr(179)³³
chr(180)´´
chr(181)µµ
chr(182)¶
chr(183)··
chr(184)¸¸
chr(185)¹¹
chr(186)ºº
chr(187)»»
chr(188)¼¼
chr(189)½½
chr(190)¾¾
chr(191)¿¿
chr(192)ÀÀ
chr(193)ÁÁ
chr(194)ÂÂ
chr(195)ÃÃ
chr(196)ÄÄ
chr(197)ÅÅ
chr(198)ÆÆ
chr(199)ÇÇ
chr(200)ÈÈ
chr(201)ÉÉ
chr(202)ÊÊ
chr(203)ËË
chr(204)ÌÌ
chr(205)ÍÍ
chr(206)ÎÎ
chr(207)ÏÏ
chr(208)ÐÐ
chr(209)ÑÑ
chr(210)ÒÒ
chr(211)ÓÓ
chr(212)ÔÔ
chr(213)ÕÕ
chr(214)ÖÖ
chr(215)××
chr(216)ØØ
chr(217)ÙÙ
chr(218)ÚÚ
chr(219)ÛÛ
chr(220)ÜÜ
chr(221)ÝÝ
chr(222)ÞÞ
chr(223)ßß
chr(224)àà
chr(225)áá
chr(226)ââ
chr(227)ãã
chr(228)ää
chr(229)åå
chr(230)ææ
chr(231)çç
chr(232)èè
chr(233)éé
chr(234)êê
chr(235)ëë
chr(236)ìì
chr(237)íí
chr(238)îî
chr(239)ïï
chr(240)ðð
chr(241)ññ
chr(242)òò
chr(243)óó
chr(244)ôô
chr(245)õõ
chr(246)öö
chr(247)÷÷
chr(248)øø
chr(249)ùù
chr(250)úú
chr(251)ûû
chr(252)üü
chr(253)ýý
chr(254)þþ
chr(255)ÿÿ
chr(34)""
chr(38)&&
chr(60)&lt;<
chr(62)&gt;>
chr(39)&apos;'
chr(338)&OElig;Œ
chr(339)&oelig;œ
chr(352)&Scaron;Š
chr(353)&scaron;š
chr(376)&Yuml;Ÿ
chr(710)&circ;ˆ
chr(732)&tilde;˜
chr(8194)&ensp; 
chr(8195)&emsp; 
chr(8201)&thinsp; 
chr(8204)&zwnj;‌
chr(8205)&zwj;‍
chr(8206)&lrm;‎
chr(8207)&rlm;‏
chr(8211)&ndash;–
chr(8212)&mdash;—
chr(8216)&lsquo;‘
chr(8217)&rsquo;’
chr(8218)&sbquo;‚
chr(8220)&ldquo;“
chr(8221)&rdquo;”
chr(8222)&bdquo;„
chr(8224)&dagger;†
chr(8225)&Dagger;‡
chr(8240)&permil;‰
chr(8249)&lsaquo;‹
chr(8250)&rsaquo;›
chr(8364)&euro;€
chr(402)&fnof;ƒ
chr(913)&Alpha;Α
chr(914)&Beta;Β
chr(915)&Gamma;Γ
chr(916)&Delta;Δ
chr(917)&Epsilon;Ε
chr(918)&Zeta;Ζ
chr(919)&Eta;Η
chr(920)&Theta;Θ
chr(921)&Iota;Ι
chr(922)&Kappa;Κ
chr(923)&Lambda;Λ
chr(924)&Mu;Μ
chr(925)&Nu;Ν
chr(926)&Xi;Ξ
chr(927)&Omicron;Ο
chr(928)&Pi;Π
chr(929)&Rho;Ρ
chr(931)&Sigma;Σ
chr(932)&Tau;Τ
chr(933)&Upsilon;Υ
chr(934)&Phi;Φ
chr(935)&Chi;Χ
chr(936)&Psi;Ψ
chr(937)&Omega;Ω
chr(945)&alpha;α
chr(946)&beta;β
chr(947)&gamma;γ
chr(948)&delta;δ
chr(949)&epsilon;ε
chr(950)&zeta;ζ
chr(951)&eta;η
chr(952)&theta;θ
chr(953)&iota;ι
chr(954)&kappa;κ
chr(955)&lambda;λ
chr(956)&mu;μ
chr(957)&nu;ν
chr(958)&xi;ξ
chr(959)&omicron;ο
chr(960)&pi;π
chr(961)&rho;ρ
chr(962)&sigmaf;ς
chr(963)&sigma;σ
chr(964)&tau;τ
chr(965)&upsilon;υ
chr(966)&phi;φ
chr(967)&chi;χ
chr(968)&psi;ψ
chr(969)&omega;ω
chr(977)&thetasym;ϑ
chr(978)&upsih;ϒ
chr(982)&piv;ϖ
chr(8226)&bull;•
chr(8230)&hellip;…
chr(8242)&prime;′
chr(8243)&Prime;″
chr(8254)&oline;‾
chr(8260)&frasl;⁄
chr(8472)&weierp;℘
chr(8465)&image;ℑ
chr(8476)&real;ℜ
chr(8482)&trade;™
chr(8501)&alefsym;ℵ
chr(8592)&larr;←
chr(8593)&uarr;↑
chr(8594)&rarr;→
chr(8595)&darr;↓
chr(8596)&harr;↔
chr(8629)&crarr;↵
chr(8656)&lArr;⇐
chr(8657)&uArr;⇑
chr(8658)&rArr;⇒
chr(8659)&dArr;⇓
chr(8660)&hArr;⇔
chr(8704)&forall;∀
chr(8706)&part;∂
chr(8707)&exist;∃
chr(8709)&empty;∅
chr(8711)&nabla;∇
chr(8712)&isin;∈
chr(8713)&notin;∉
chr(8715)&ni;∋
chr(8719)&prod;∏
chr(8721)&sum;∑
chr(8722)&minus;−
chr(8727)&lowast;∗
chr(8730)&radic;√
chr(8733)&prop;∝
chr(8734)&infin;∞
chr(8736)&ang;∠
chr(8743)&and;∧
chr(8744)&or;∨
chr(8745)&cap;∩
chr(8746)&cup;∪
chr(8747)&int;∫
chr(8756)&there4;∴
chr(8764)&sim;∼
chr(8773)&cong;≅
chr(8776)&asymp;≈
chr(8800)&ne;≠
chr(8801)&equiv;≡
chr(8804)&le;≤
chr(8805)&ge;≥
chr(8834)&sub;⊂
chr(8835)&sup;⊃
chr(8836)&nsub;⊄
chr(8838)&sube;⊆
chr(8839)&supe;⊇
chr(8853)&oplus;⊕
chr(8855)&otimes;⊗
chr(8869)&perp;⊥
chr(8901)&sdot;⋅
chr(8968)&lceil;⌈
chr(8969)&rceil;⌉
chr(8970)&lfloor;⌊
chr(8971)&rfloor;⌋
chr(9001)&lang;⟨
chr(9002)&rang;⟩
chr(9674)&loz;◊
chr(9824)&spades;♠
chr(9827)&clubs;♣
chr(9829)&hearts;♥
chr(9830)&diams;♦
Continue reading →
Tuesday, December 11, 2012

Finding Occurrences of a Word in MSSQL Stored Procedures

0 comments

Here's a little trick that slipped my mind until I needed to search through about 2400 SPs looking for a specific word.
The query is very simple, and it returns a listing of all of the SPs with the word you're looking for.
It's just another one of those 'you don't know what you've forgotten until you need it' things.
SELECT ROUTINE_NAME, ROUTINE_DEFINITION 
    FROM INFORMATION_SCHEMA.ROUTINES 
    WHERE ROUTINE_DEFINITION LIKE '%foobar%' 
    AND ROUTINE_TYPE='PROCEDURE'
Continue reading →

RSS in Coldfusion

0 comments
ColdFusion Logo
Faster isn't always better, but sometimes it is.

Using the CFFEED tag, I set up an RSS feed on a site in less than 5 minutes. The coding is dead simple and about as straight forward as you can get.

I have a CMS set up so that my content editors can add news items to the site. When they save the new item, the code below fires off and updates the RSS feed

<!--- pull the 20 latest items --->
<cfquery name="getFeedDetails" datasource="#application.db#">
SELECT     TOP (20) ID, Title, NewsText, NewsDate, linkData
FROM         myNewsTable
ORDER BY NewsDate DESC 
</cfquery>

<!--- Set up the structure with the feed meta data --->
<cfscript>
myStruct = StructNew();
mystruct.link = "http://foobar.com";
myStruct.title = "FooBar News";
mystruct.description = "The authoritative online resource on how much wood a 
woodchuck would chuck if a woodchuck would chuck wood.";
mystruct.pubDate = Now();
mystruct.version = "rss_2.0";

// Map the orders column names to the feed query column names.
columnMapStruct = StructNew();
columnMapStruct.publisheddate = "NEWSDATE"; 
columnMapStruct.content = "NEWSTEXT"; 
columnMapStruct.title = "TITLE"; 
columnMapStruct.rsslink = "LINKDATA";
</cfscript>

<!--- Create the feed --->
<cffeed action = "create"
query= "#getFeedDetails#"
properties="#mystruct#"
columnMap="#columnMapStruct#"
outputFile = "myRSS.xml" 
overwrite = "yes"
xmlVar = "myXML">
That's all there is to it. myRSS.xml is a properly formatted feed file.
Continue reading →

Labels