<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-10004347</id><updated>2011-04-21T13:29:10.460-07:00</updated><title type='text'>mitchell_j_friedman</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://mitchelljfriedman.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10004347/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://mitchelljfriedman.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>mjf</name><uri>http://www.blogger.com/profile/06780261185933831607</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>6</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-10004347.post-113589563514452669</id><published>2005-12-29T14:31:00.000-08:00</published><updated>2005-12-29T14:36:45.196-08:00</updated><title type='text'>Got the writing bug again</title><content type='html'>It seems like once I got that next job - contract java developing for Intercontinental Hotels Group through Matrix Resources - I was done writing.&lt;br /&gt;&lt;br /&gt;And I probably wouldn't be writing here now - but I lost the key to ultra edit and that's pretty much how I update my  &lt;a href="http://www.mindspring.com/%7Emjfriedman/mjfresumefaq.html"&gt;faq&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;So rather than updating that I'll try to get this to be a little more constant - using my buddy Kipp's &lt;a href="http://kippsterblaster.blogspot.com/"&gt;blog&lt;/a&gt; for inspiration.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10004347-113589563514452669?l=mitchelljfriedman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mitchelljfriedman.blogspot.com/feeds/113589563514452669/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10004347&amp;postID=113589563514452669' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10004347/posts/default/113589563514452669'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10004347/posts/default/113589563514452669'/><link rel='alternate' type='text/html' href='http://mitchelljfriedman.blogspot.com/2005/12/got-writing-bug-again.html' title='Got the writing bug again'/><author><name>mjf</name><uri>http://www.blogger.com/profile/06780261185933831607</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-10004347.post-111046862194613419</id><published>2005-03-10T07:14:00.000-08:00</published><updated>2005-03-10T07:30:21.976-08:00</updated><title type='text'>Learning a database schema faster(er)</title><content type='html'>I am at a new job-site now.  And I was thinking of extending &lt;a href="http://www.mindspring.com/%7Emjfriedman/javasrc/mjf/utility/JdbcSql.java"&gt;JdbcSql&lt;/a&gt;   to help learn a schema faster using some techniques discovered at Harbinger/Peregrine and nuBridges.&lt;br /&gt;&lt;br /&gt;So essentially you would run survey mode and it would return something like the following:&lt;br /&gt;&lt;br /&gt;Summary Statistics:&lt;br /&gt;&lt;ul&gt;   &lt;li&gt;# catalogs&lt;/li&gt;   &lt;li&gt;# tables&lt;/li&gt;   &lt;li&gt;# views&lt;/li&gt;   &lt;li&gt;# sequences&lt;/li&gt;   &lt;li&gt;# indexes&lt;/li&gt;   &lt;li&gt;# columns&lt;/li&gt;   &lt;li&gt;# schemas&lt;/li&gt;&lt;li&gt;# data types&lt;/li&gt;   &lt;li&gt;# native types&lt;br /&gt;  &lt;/li&gt;  &lt;/ul&gt; Table Row Count Statistics:&lt;br /&gt;&lt;ul&gt;   &lt;li&gt;# empty tables&lt;/li&gt;   &lt;li&gt;# tables with &lt;&gt;   &lt;/li&gt;&lt;li&gt;# tables with 10-99 rows&lt;/li&gt;   &lt;li&gt;# tables with 100-999 rows&lt;/li&gt;   &lt;li&gt;# tables with 1000-9999 rows&lt;/li&gt;   &lt;li&gt;# tables with 100000-99999 rows (and so on until the largest table is found)&lt;/li&gt; &lt;/ul&gt; Table Column Count Statistics:&lt;br /&gt;&lt;ul&gt;   &lt;li&gt;# tables with 1 column&lt;/li&gt;   &lt;li&gt;# tables with 2 columns&lt;/li&gt;   &lt;li&gt;# tables with 3-4 columns&lt;/li&gt;   &lt;li&gt;# tables with 5-7 columns&lt;/li&gt;   &lt;li&gt;# tables with 8-15 columns&lt;/li&gt;   &lt;li&gt;# tables with 16-31 columns&lt;/li&gt;   &lt;li&gt;# tables with 32-63 columns&lt;/li&gt;   &lt;li&gt;# tables with 64-127 columns (and so on until the table with the most columns is found)&lt;/li&gt; &lt;/ul&gt; Column Name Distribution Frequency&lt;br /&gt;&lt;ul&gt;   &lt;li&gt;# column names  that appear in 1 table only&lt;/li&gt;   &lt;li&gt;# column names that appear in 2 tables&lt;/li&gt;   &lt;li&gt;# column names that appear in 3-4 tables&lt;/li&gt;   &lt;li&gt;# column names that appear in 5-7 tables&lt;/li&gt;   &lt;li&gt;# column names that appear in 8-15 tables (and so on until the column name that appears most is found)&lt;/li&gt; &lt;/ul&gt; List of all tables by name - with # rows, #columns,#columns in other tables&lt;br /&gt;&lt;br /&gt;List of all tables by row count - biggest to smallest&lt;br /&gt;&lt;br /&gt;List of all tables by column count - biggest to smallest&lt;br /&gt;&lt;br /&gt;Then perhaps some table specific analysis&lt;br /&gt;&lt;br /&gt;Tables with columns, columns with count(distinct foo)&lt;br /&gt;&lt;br /&gt;&lt;hr /&gt;&lt;br /&gt;The format of the output could be:&lt;br /&gt;&lt;ul&gt;   &lt;li&gt;pure text&lt;/li&gt;   &lt;li&gt;self-referential html&lt;/li&gt;   &lt;li&gt;xml&lt;/li&gt;   &lt;li&gt;database create schema&lt;/li&gt; &lt;/ul&gt; Building a full monitoring schema would be even better as well as a set of screens that let you drill down on a particular table at choice. Or perhaps a front-end in swing that allows you to drill-down while a back end is performing column analysis - that way you wouldn't have to wait.&lt;br /&gt;&lt;br /&gt;Wouldn't seem to be very difficult and would give me a project to do swing experimentation.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10004347-111046862194613419?l=mitchelljfriedman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mitchelljfriedman.blogspot.com/feeds/111046862194613419/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10004347&amp;postID=111046862194613419' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10004347/posts/default/111046862194613419'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10004347/posts/default/111046862194613419'/><link rel='alternate' type='text/html' href='http://mitchelljfriedman.blogspot.com/2005/03/learning-database-schema-fasterer.html' title='Learning a database schema faster(er)'/><author><name>mjf</name><uri>http://www.blogger.com/profile/06780261185933831607</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-10004347.post-110954421946974024</id><published>2005-02-27T14:35:00.000-08:00</published><updated>2005-02-27T14:43:39.476-08:00</updated><title type='text'>Loading Data from Public Internet into Local Data Files</title><content type='html'>In support of the Free World Address Database, I had started a project to simplify loading publicly available data into a local database.&lt;br /&gt;&lt;br /&gt;Some assumptions:&lt;br /&gt;&lt;ol&gt;   &lt;li&gt;The code would be written in java and made available open source probably as part of LGPL&lt;br /&gt;  &lt;/li&gt;   &lt;li&gt;The data would not be duplicated, it would be retrieved directly from the Internet&lt;/li&gt;   &lt;li&gt;Loading the data would be tested on my local copy of MySQL&lt;/li&gt; &lt;/ol&gt; The first step of this project is essentially complete.  As documented on my open source java page, a person could download my java code, compile and run it and load local tables.  Well almost.  Still need to:&lt;br /&gt;&lt;ol&gt;   &lt;li&gt;Add a main to LoadDataFile&lt;/li&gt;   &lt;li&gt;Build a jar file&lt;/li&gt;   &lt;li&gt;Give instructions and documentation on running LoadDataFile from jar file&lt;/li&gt; &lt;/ol&gt; In any case, multiple files are now available using delimiters as well as positional fields:&lt;br /&gt;&lt;ol&gt;   &lt;li&gt;country sub entities&lt;/li&gt;   &lt;li&gt;census counties&lt;/li&gt;   &lt;li&gt;census zip codes&lt;br /&gt;  &lt;/li&gt; &lt;/ol&gt;&lt;br /&gt;Next steps:&lt;br /&gt;&lt;ol&gt;   &lt;li&gt;finish census by including census tracts, places,  county subdivisions&lt;/li&gt;   &lt;li&gt;implement sax processor to load country info from cia - http://www.cia.gov/cia/publications/factbook/appendix/appendix-d.html&lt;/li&gt; &lt;/ol&gt; So far this has been a fun little project&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10004347-110954421946974024?l=mitchelljfriedman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mitchelljfriedman.blogspot.com/feeds/110954421946974024/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10004347&amp;postID=110954421946974024' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10004347/posts/default/110954421946974024'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10004347/posts/default/110954421946974024'/><link rel='alternate' type='text/html' href='http://mitchelljfriedman.blogspot.com/2005/02/loading-data-from-public-internet-into.html' title='Loading Data from Public Internet into Local Data Files'/><author><name>mjf</name><uri>http://www.blogger.com/profile/06780261185933831607</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-10004347.post-110925284987908984</id><published>2005-02-24T05:26:00.000-08:00</published><updated>2005-02-24T05:49:07.650-08:00</updated><title type='text'>Support Census files</title><content type='html'>I have been interested in working with geographical data for a long time, which is why I put together the &lt;a href="http://www.mindspring.com/%7Emjfriedman/freeworldaddressdb.html"&gt;Free World Address Database&lt;/a&gt; page.&lt;br /&gt;&lt;br /&gt;I have also been looking to do some open source work in both java and mysql, so it seems like making the &lt;a href="http://www.census.gov/geo/www/gazetteer/places2k.html"&gt;Census Files &lt;/a&gt;more available, would be an interesting piece of work.&lt;br /&gt;&lt;br /&gt;1. Create a utility (in java) which would take an input file and a set of field locations and insert a comma at those points. Something like&lt;br /&gt;&lt;pre&gt;java FixedToDelim &amp;lt;InputFile&amp;gt; "3,5,14,22" ","&lt;/pre&gt;2. Create a set of database tables for all census bureau files:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Census Tracts&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Places&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Counties&lt;br /&gt;&lt;/li&gt;&lt;li&gt;County Subdivisions&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Zip Code Tabulation Areas&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;3. Document procedure for creating the tables, downloading the census tables, FixedToDelim, and then load the database tables (into mysql).&lt;br /&gt;&lt;br /&gt;4. Perhaps even create a further java program which would take db access parameters, connect to the database, create tables if necessary, get files from web, convert them, update database.&lt;br /&gt;&lt;pre&gt;java LoadCensusTables "&amp;lt;dburl&amp;gt;"&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10004347-110925284987908984?l=mitchelljfriedman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mitchelljfriedman.blogspot.com/feeds/110925284987908984/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10004347&amp;postID=110925284987908984' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10004347/posts/default/110925284987908984'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10004347/posts/default/110925284987908984'/><link rel='alternate' type='text/html' href='http://mitchelljfriedman.blogspot.com/2005/02/support-census-files.html' title='Support Census files'/><author><name>mjf</name><uri>http://www.blogger.com/profile/06780261185933831607</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-10004347.post-110709378244473413</id><published>2005-01-30T05:50:00.000-08:00</published><updated>2005-01-30T06:03:02.443-08:00</updated><title type='text'>Starting this blog up</title><content type='html'>I haven't been much of a blogger to date, neither as a reader or a writer.  But I have been a ranter.  I rant in person, sure, but also in email, on a corporate twiki, and even on personal web pages.  So I figure I'd start this blog off by transfering my various rants from those places to here - one rant at a time. So here's what's coming:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;From my &lt;a href="http://www.mindspring.com/~mjfriedman/mjf.html"&gt;home page&lt;/a&gt;&lt;br /&gt;&lt;li&gt;Osmosis or Diffusion? Thesis or Hypothethis?&lt;/li&gt;&lt;br /&gt;&lt;li&gt;The Pizza Algorithm?&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Free World Address Database&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Resume FAQ&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Science Fiction Recommendations&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;From Elsewhere:&lt;br /&gt;&lt;li&gt;Six Degrees&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Yahoo Egroups&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Wikis&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Skills Inventory&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;Corporate wiki:&lt;br /&gt;&lt;li&gt;Easy Fudge Recipe&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Other Recipes&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Quotes Page&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Amusing Stuff&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;So if I were to do one blog a day, and devote that to each of the above,&lt;br /&gt;that would keep me busy blogging for almost two weeks - pretty unlikely,&lt;br /&gt;but possible.&lt;br /&gt;&lt;br /&gt;mjf&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10004347-110709378244473413?l=mitchelljfriedman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mitchelljfriedman.blogspot.com/feeds/110709378244473413/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10004347&amp;postID=110709378244473413' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10004347/posts/default/110709378244473413'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10004347/posts/default/110709378244473413'/><link rel='alternate' type='text/html' href='http://mitchelljfriedman.blogspot.com/2005/01/starting-this-blog-up.html' title='Starting this blog up'/><author><name>mjf</name><uri>http://www.blogger.com/profile/06780261185933831607</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-10004347.post-110507531812017045</id><published>2005-01-06T21:20:00.000-08:00</published><updated>2005-01-06T21:21:58.120-08:00</updated><title type='text'>Is this thing on?</title><content type='html'>Well I've meant to do this and &lt;a href="http://kippsterblaster.blogspot.com/"&gt;Kippster&lt;/a&gt; inspired me, so we'll see where this goes...&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10004347-110507531812017045?l=mitchelljfriedman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://mitchelljfriedman.blogspot.com/feeds/110507531812017045/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=10004347&amp;postID=110507531812017045' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/10004347/posts/default/110507531812017045'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/10004347/posts/default/110507531812017045'/><link rel='alternate' type='text/html' href='http://mitchelljfriedman.blogspot.com/2005/01/is-this-thing-on.html' title='Is this thing on?'/><author><name>mjf</name><uri>http://www.blogger.com/profile/06780261185933831607</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
