Index » This day in Tech : Blob 9aa202 / README.rtf
{\rtf1\ansi\ansicpg1252\uc1\deff0\stshfdbch0\stshfloch0\stshfhich0\stshfbi0\deflang2057\deflangfe2057{\fonttbl{\f0\froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}
{\f2\fmodern\fcharset0\fprq1{\*\panose 02070309020205020404}Courier New;}{\f36\froman\fcharset238\fprq2 Times New Roman CE;}{\f37\froman\fcharset204\fprq2 Times New Roman Cyr;}{\f39\froman\fcharset161\fprq2 Times New Roman Greek;}
{\f40\froman\fcharset162\fprq2 Times New Roman Tur;}{\f41\froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\f42\froman\fcharset178\fprq2 Times New Roman (Arabic);}{\f43\froman\fcharset186\fprq2 Times New Roman Baltic;}
{\f44\froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\f56\fmodern\fcharset238\fprq1 Courier New CE;}{\f57\fmodern\fcharset204\fprq1 Courier New Cyr;}{\f59\fmodern\fcharset161\fprq1 Courier New Greek;}
{\f60\fmodern\fcharset162\fprq1 Courier New Tur;}{\f61\fmodern\fcharset177\fprq1 Courier New (Hebrew);}{\f62\fmodern\fcharset178\fprq1 Courier New (Arabic);}{\f63\fmodern\fcharset186\fprq1 Courier New Baltic;}
{\f64\fmodern\fcharset163\fprq1 Courier New (Vietnamese);}}{\colortbl;\red0\green0\blue0;\red0\green0\blue255;\red0\green255\blue255;\red0\green255\blue0;\red255\green0\blue255;\red255\green0\blue0;\red255\green255\blue0;\red255\green255\blue255;
\red0\green0\blue128;\red0\green128\blue128;\red0\green128\blue0;\red128\green0\blue128;\red128\green0\blue0;\red128\green128\blue0;\red128\green128\blue128;\red192\green192\blue192;}{\stylesheet{
\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \fs24\lang2057\langfe2057\cgrid\langnp2057\langfenp2057 \snext0 Normal;}{\*\cs10 \additive \ssemihidden Default Paragraph Font;}{\*
\ts11\tsrowd\trftsWidthB3\trpaddl108\trpaddr108\trpaddfl3\trpaddft3\trpaddfb3\trpaddfr3\trcbpat1\trcfpat1\tblind0\tblindtype3\tscellwidthfts0\tsvertalt\tsbrdrt\tsbrdrl\tsbrdrb\tsbrdrr\tsbrdrdgl\tsbrdrdgr\tsbrdrh\tsbrdrv
\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \fs20\lang1024\langfe1024\cgrid\langnp1024\langfenp1024 \snext11 \ssemihidden Normal Table;}{\*\cs15 \additive \ul\cf2 \sbasedon10 \styrsid13853993 Hyperlink;}{\*\cs16
\additive \ul\cf12 \sbasedon10 \styrsid5596022 FollowedHyperlink;}}{\*\pgptbl {\pgp\ipgp0\itap0\li0\ri0\sb0\sa0}}{\*\rsidtbl \rsid345032\rsid861233\rsid944166\rsid3498570\rsid5051812\rsid5124431\rsid5311063\rsid5468722\rsid5596022\rsid5778391\rsid5862125
\rsid6041561\rsid7552663\rsid7820615\rsid8198281\rsid10358075\rsid11168300\rsid11173549\rsid11560373\rsid11739991\rsid12593940\rsid12781889\rsid13386254\rsid13853993\rsid14174426\rsid15497629}{\*\generator Microsoft Word 10.0.6866;}{\info
{\title This Day in Tech}{\author Matthew Smith}{\operator Matthew Smith}{\creatim\yr2012\mo11\dy1\hr16\min32}{\revtim\yr2012\mo11\dy1\hr18\min9}{\version8}{\edmins94}{\nofpages3}{\nofwords635}{\nofchars3620}{\*\company ID Consultants}{\nofcharsws4247}
{\vern16393}{\*\password 00000000}}{\*\xmlnstbl }\paperw11906\paperh16838\margl1800\margr1800\margt1440\margb1440\gutter0 \widowctrl\ftnbj\aenddoc\grfdocevents0\noxlattoyen\expshrtn\noultrlspc\dntblnsbdb\nospaceforul\formshade\horzdoc\dgmargin\dghspace180
\dgvspace180\dghorigin1800\dgvorigin1440\dghshow1\dgvshow1
\jexpand\viewkind1\viewscale100\pgbrdrhead\pgbrdrfoot\splytwnine\ftnlytwnine\htmautsp\nolnhtadjtbl\useltbaln\alntblind\lytcalctblwd\lyttblrtgr\lnbrkrule\nobrkwrptbl\snaptogridincell\allowfieldendsel\wrppunct\asianbrkrule\rsidroot5778391 \fet0
{\*\wgrffmtfilter 013f}\sectd \linex0\headery708\footery708\colsx708\endnhere\sectlinegrid360\sectdefaultcl\sftnbj {\*\pnseclvl1\pnucrm\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl2\pnucltr\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl3
\pndec\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl4\pnlcltr\pnstart1\pnindent720\pnhang {\pntxta )}}{\*\pnseclvl5\pndec\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl6\pnlcltr\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}
{\*\pnseclvl7\pnlcrm\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl8\pnlcltr\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl9\pnlcrm\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}\pard\plain
\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \fs24\lang2057\langfe2057\cgrid\langnp2057\langfenp2057 {\b\insrsid13853993\charrsid5862125 This Day in Tech}{\b\insrsid12593940\charrsid5862125
\par }{\insrsid13853993 This is a set of scripts and console applications that dump }{\insrsid10358075 text }{\insrsid13853993 entries from Tom Merritt's }{\insrsid13853993\charrsid13853993 Chronology of Tech }{\insrsid13853993 H}{
\insrsid13853993\charrsid13853993 istory}{\insrsid13853993  book for the current day.
\par
\par }{\field\fldedit{\*\fldinst {\insrsid13853993  HYPERLINK "https://merrittbooks.squarespace.com/2012/10/17/chronology-of-tech-history" }{\insrsid12781889 {\*\datafield
00d0c9ea79f9bace118c8200aa004ba90b0200000003000000e0c9ea79f9bace118c8200aa004ba90bae000000680074007400700073003a002f002f006d0065007200720069007400740062006f006f006b0073002e00730071007500610072006500730070006100630065002e0063006f006d002f003200300031003200
2f00310030002f00310037002f006300680072006f006e006f006c006f00670079002d006f0066002d0074006500630068002d0068006900730074006f00720079000000795881f43b1d7f48af2c825dc485276300000000a5ab000000}}}{\fldrslt {\cs15\ul\cf2\insrsid13853993
https://merrittbooks.squarespace.com/2012/10/17/chronology-of-tech-history}}}\sectd \linex0\headery708\footery708\colsx708\endnhere\sectlinegrid360\sectdefaultcl\sftnbj {\insrsid13853993
\par
\par It's a nice bit of geeky fun.}{\insrsid10358075  The idea of this scripts was to be able to use it in Message of the Day type setups.}{\insrsid13853993
\par }{\insrsid7552663
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid11173549 {\b\insrsid11173549\charrsid11173549 Download
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 {\insrsid11173549
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid11173549 {\insrsid11173549 The binarie}{\insrsid5311063 s are available from }{\field\fldedit{\*\fldinst {\insrsid5596022
HYPERLINK "http://kinggeek.co.uk/download"}{\insrsid5596022 {\*\datafield
00d0c9ea79f9bace118c8200aa004ba90b0200000003000000e0c9ea79f9bace118c8200aa004ba90b5600000068007400740070003a002f002f006b0069006e0067006700650065006b002e0063006f002e0075006b002f0064006f0077006e006c006f00610064000000795881f43b1d7f48af2c825dc485276300000000
a5ab0000}}}{\fldrslt {\cs15\ul\cf2\insrsid11168300 http://kinggeek.co.uk/download}}}\sectd \linex0\headery708\footery708\colsx708\endnhere\sectlinegrid360\sectdefaultcl\sftnbj {\insrsid11168300  in the tdit folder.}{\insrsid11173549
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 {\insrsid5311063 The source from }{\field\fldedit{\*\fldinst {\insrsid5311063  HYPERLINK "http://kinggeek.co.uk/source" }{\insrsid5596022 {\*\datafield
00d0c9ea79f9bace118c8200aa004ba90b0200000003000000e0c9ea79f9bace118c8200aa004ba90b5200000068007400740070003a002f002f006b0069006e0067006700650065006b002e0063006f002e0075006b002f0073006f0075007200630065000000795881f43b1d7f48af2c825dc485276300000000a5ab0000}
}}{\fldrslt {\cs15\ul\cf2\insrsid5311063 http://kinggeek.co.uk/source}}}\sectd \linex0\headery708\footery708\colsx708\endnhere\sectlinegrid360\sectdefaultcl\sftnbj {\insrsid5311063
\par
\par }{\b\insrsid5468722\charrsid5468722 Installation
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13853993 {\insrsid13853993 The}{\insrsid7552663 re are }{\insrsid13853993 console versions }{\insrsid7552663 that can be/}{\insrsid13853993
are compiled for Linux, OSX, and Windows. }{\insrsid3498570
\par }{\insrsid345032
\par }{\insrsid13853993 It uses an sqlite3 database for it's storage so you need probably need this installed on your}{\insrsid10358075  system if it isn't already. A W}{\insrsid13853993 indows DLL is included with the windows binary}{\insrsid7552663
 which should take care of this}{\insrsid13853993 . On OSX it should work out of the box. On linux you might need to install sqlite3. On }{\insrsid11739991 R}{\insrsid13853993 edhat type dist}{\insrsid14174426 r}{\insrsid13853993 os something like
\par
\par }{\f2\insrsid13853993\charrsid7552663 yum install sqlite
\par }{\insrsid13853993
\par should do the job. On }{\insrsid11739991 D}{\insrsid13853993 ebian style dist}{\insrsid14174426 r}{\insrsid13853993 os something like
\par
\par }{\f2\insrsid13853993\charrsid11560373 apt-get install sqlite}{\f2\insrsid5862125\charrsid11560373 3}{\f2\insrsid13853993\charrsid11560373
\par }{\insrsid13853993
\par }{\insrsid7552663 Should }{\insrsid11560373 do the trick}{\insrsid7552663 .
\par }{\insrsid13853993
\par }{\b\insrsid7552663\charrsid7552663 Command line }{\b\insrsid5862125 usages }{\b\insrsid7552663\charrsid7552663 options for the console program:-
\par }{\insrsid13853993 You can copy the data}{\insrsid7552663 base to }{\f2\insrsid7552663\charrsid7552663 /etc }{\insrsid7552663 for linux distros, o}{\insrsid13853993 r you can specify where to find the db with the -d command line option. }{\insrsid7552663
The help from the console app:-}{\insrsid13853993
\par
\par }{\f2\insrsid13853993\charrsid7552663 This Day in Tech
\par Based on Tom Merritt's Chronology of Tech History
\par Usage: tdit [-d databasefile] [-r] [--help]
\par
\par -d databasefile : specify the database file to use.
\par                   Will try /etc/tdit.db or ./td}{\f2\insrsid7552663 it.db if
\par                   }{\f2\insrsid13853993\charrsid7552663 not specified or found.
\par -r              : print a single random entry for the day
\par }{\f2\insrsid7552663                  }{\f2\insrsid13853993\charrsid7552663 (otherwise print all entries)
\par --help          : print this help
\par }{\insrsid13853993
\par
\par }{\b\insrsid13386254 Plain ol' }{\b\insrsid13386254\charrsid13386254 PHP
\par }{\insrsid13386254
\par }{\insrsid13853993 There is a plain PHP version which can be used by }{\insrsid7552663 including the }{\insrsid13386254 e}{\f2\insrsid7552663\charrsid7552663 dit_functions.php }{\insrsid7552663 file and calling the }{\f2\insrsid7552663\charrsid7552663
tdit}{\f2\insrsid8198281 ()}{\insrsid7552663  function:-}{\insrsid13853993
\par
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7552663 {\f2\insrsid7552663\charrsid7552663 function tdit($action)}{\f2\insrsid7552663
\par }{\insrsid13386254
\par }{\insrsid7552663\charrsid13386254   returns a string with This Day in Tech Quote(s).
\par  }{\insrsid13386254
\par }{\insrsid7552663\charrsid13386254 Specify the strings 'all' or 'random' as the $action parameter to print all entries for today, or just a single random one respectively.
\par }{\f2\insrsid13386254
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13386254 {\f2\insrsid13386254\charrsid7552663 function tdit}{\f2\insrsid13386254 _dm}{\f2\insrsid13386254\charrsid7552663 ($action}{\f2\insrsid13386254
,$day,$month}{\f2\insrsid13386254\charrsid7552663 )
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7552663 {\f2\insrsid13386254
\par }{\insrsid13386254 Does as above but lets you specify a day and month. There is also test script which dumps the whole book.
\par
\par }{\b\insrsid13386254 Joomla Plugins}{\b\insrsid13386254\charrsid13386254
\par }{\insrsid13386254
\par There is a Joomla 2.5 and a }{\insrsid7552663 Joomla 1.5> version.}{\insrsid13386254
\par
\par Tested with only  Joomla 3.0 and Joomla 1.5 because that is what I had access to.}{\insrsid7552663
\par
\par Install the plugin in the normal way. You need sqlite3 php support on your server}{\insrsid944166  (usually built in to PHP5+)}{\insrsid7552663 . To use the plugin, in your content insert
\par
\par }{\f2\insrsid7552663\charrsid7552663 \{tdit\}single\{/tdi}{\f2\insrsid861233 t}{\f2\insrsid7552663\charrsid7552663 \}
\par }{\insrsid7552663
\par or
\par
\par }{\f2\insrsid7552663\charrsid7552663 \{tdit\}}{\f2\insrsid7552663 all}{\f2\insrsid7552663\charrsid7552663 \{/tdi}{\f2\insrsid861233 t}{\f2\insrsid7552663\charrsid7552663 \}}{\f2\insrsid7552663
\par }{\insrsid7552663
\par and the text above will be replaced in an article with the either a single event for the day or all the events for the day as a unordered list with the css class}{\insrsid5862125  }{\f2\insrsid5862125\charrsid5862125 tdit_list}{\insrsid5862125 .}{
\insrsid7552663
\par }{\insrsid5862125
\par }{\insrsid13386254 NB: If you get no output for an entry check the }{\f2\insrsid13386254\charrsid13386254 tdit/tdit_functions.php}{\insrsid13386254   file in the joomla plugin install. The }{\f2\insrsid13386254\charrsid13386254 htmlentities}{
\insrsid13386254  function was ca}{\insrsid944166 using output to disappear on one}{\insrsid13386254  server I tried it on. YMMV.
\par
\par }{\insrsid7552663
\par }{\b\insrsid13386254\charrsid13386254 Building }{\b\insrsid5468722 the console programs }{\b\insrsid13386254\charrsid13386254 from source
\par }{\insrsid13386254
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13386254 {\insrsid13386254 Download the source code from }{\field{\*\fldinst {\insrsid13386254
 HYPERLINK "http://kinggeek.co.uk/?option=com_k2&view=item&layout=item&id=2&Itemid=105&a=summary&p=This%20day%20in%20Tech" }{\insrsid12781889 {\*\datafield
00d0c9ea79f9bace118c8200aa004ba90b0200000003000000e0c9ea79f9bace118c8200aa004ba90bf400000068007400740070003a002f002f006b0069006e0067006700650065006b002e0063006f002e0075006b002f003f006f007000740069006f006e003d0063006f006d005f006b00320026007600690065007700
3d006900740065006d0026006c00610079006f00750074003d006900740065006d002600690064003d00320026004900740065006d00690064003d00310030003500260061003d00730075006d006d00610072007900260070003d00540068006900730025003200300064006100790025003200300069006e002500320030
0054006500630068000000795881f43b1d7f48af2c825dc485276300000000a5ab00000000}}}{\fldrslt {\cs15\ul\cf2\insrsid13386254\charrsid13386254 here}}}\sectd \linex0\headery708\footery708\colsx708\endnhere\sectlinegrid360\sectdefaultcl\sftnbj {\insrsid13386254
. Extract the archive somewhere. I'}{\insrsid5468722 ve built successfully so far for }{\insrsid13386254 32 bit linux, 64 bit linux, 32 bit OSX and }{\insrsid5468722 for 32 }{\insrsid13386254 bit }{\insrsid5468722 Windows (on 64 bit windows).}{
\insrsid13386254
\par }{\insrsid5468722
\par For windows you need a }{\field{\*\fldinst {\insrsid5468722  HYPERLINK "http://www.mingw.org/wiki/MSYS" }{\insrsid12781889 {\*\datafield
00d0c9ea79f9bace118c8200aa004ba90b0200000003000000e0c9ea79f9bace118c8200aa004ba90b5600000068007400740070003a002f002f007700770077002e006d0069006e00670077002e006f00720067002f00770069006b0069002f004d005300590053000000795881f43b1d7f48af2c825dc485276300000000
a5ab00000100}}}{\fldrslt {\cs15\ul\cf2\insrsid5468722\charrsid5468722 MinGW/msys}}}\sectd \linex0\headery708\footery708\colsx708\endnhere\sectlinegrid360\sectdefaultcl\sftnbj {\insrsid5468722  setup. Thou
gh it should build easily enough with any C complier.
\par
\par It just seemed to work on OSX. On linux you need the usual gcc GNU make etc.
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5468722 {\f2\insrsid5468722
\par }{\insrsid5468722\charrsid5468722 To build:-
\par }{\f2\insrsid5468722
\par }{\f2\insrsid5468722\charrsid5468722 cd}{\insrsid5468722  into the extracted directory.
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13386254 {\insrsid5468722
\par
\par Just type:-
\par
\par }{\f2\insrsid5468722\charrsid5468722 make -f nameofthemakefilefortheplatformyouron }{\f2\insrsid5468722
\par
\par }{\insrsid5468722\charrsid5468722 e.g. }{\insrsid5468722
\par
\par }{\f2\insrsid5468722\charrsid5468722 make -f Makefile.linux
\par }{\insrsid5468722
\par And it should all build.
\par
\par NB: The Makefile.linux32 makefile is to build a 32bit binary on a 64bit linux system.
\par
\par Follow the installation instructions to install.
\par
\par }{\insrsid5051812
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid5051812 {\b\insrsid5051812\charrsid5051812 Licence
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid13386254 {\insrsid5051812
\par }{\insrsid5051812\charrsid5051812 This work is licensed under a Creative Commons Attribution-}{\insrsid5051812 ShareAlike 3.0 Unported License as is Tom's original work.
\par
\par }{\field\fldedit{\*\fldinst {\insrsid5051812  HYPERLINK "http://creativecommons.org/licenses/by-sa/3.0/deed.en" }{\insrsid12781889 {\*\datafield
00d0c9ea79f9bace118c8200aa004ba90b0200000003000000e0c9ea79f9bace118c8200aa004ba90b8400000068007400740070003a002f002f006300720065006100740069007600650063006f006d006d006f006e0073002e006f00720067002f006c006900630065006e007300650073002f00620079002d0073006100
2f0033002e0030002f0064006500650064002e0065006e000000795881f43b1d7f48af2c825dc485276300000000a5ab000000}}}{\fldrslt {\cs15\ul\cf2\insrsid5051812 http://creativecommons.org/licenses/by-sa/3.0/deed.en}}}\sectd
\linex0\headery708\footery708\colsx708\endnhere\sectlinegrid360\sectdefaultcl\sftnbj {\insrsid5051812
\par }{\insrsid5051812\charrsid5051812
\par }\pard \ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid7552663 {\b\insrsid5862125\charrsid8198281 Thanks to Tom Merritt for a great project.
\par }{\insrsid5862125
\par }{\insrsid7552663\charrsid7552663
\par }{\insrsid7552663
\par
\par }}