there’s this groove that i experience only when i’ve done absolutely everything else i could possibly do, when i’ve already been staring at my computer for way too long, when i haven’t gotten enough sleep for a number of nights, when i’ve been slightly over-eating, and when i have a modicum of caffeine in me. then it just flows. nothing distracts me. i’m focused. and i love what i’m doing.
but the rest of the time i wish i heard voices so i could say i’m distracted because i hear voices. i get distracted by my own thoughts. by email. by weblogs. by looking things up i don’t know. by following links. by posting links to my blog. by reading the news. by the noises outside my office. by interuptions and requests and not having enough time to start anything before the next meeting. by my own body and its itches and muscles that want to be stretched.
at work, starting to program is like entering the matrix. it’s hard. i’ve got to foresake all my worldly desires and senses and fix my eyes to a screen and fingers to a keyboard. i am so distracted by sounds that i can only work in my office with headphones on and familar music playing. the difference is amazing, it’s like the hertz at which my otherwise stalled mind thinks hitches a ride on the forward momentum of the music.
gum chewing cuts down on the desire to eat and the distraction of a dry and souring mouth. remembering to always have water helps, as it’s a long walk to the water fountain. i started chewing gum during graduate school in order to help me stay awake in class. now i’ve developed a bad habit of playing with my gum while i’m chewing. gross, i know. but programming is usually more thinking and less typing, so i find i need something to do with my fingers. i need to find a substitute.
tonight i had an idea for something i thought would be a nice enhancement to one of the user-interfaces of the financial system i’m developing. four hours later i discover it would be possible if it weren’t for a bug in the core web browser behind mozilla firefox. 4 hours and 1 bug report. that was my night tonight.
over the last two weeks i wrote 904 lines of new code for the PIMS (not counting blank lines). actually most of the coding occurred during thursday and friday of last week and monday and tuesday of this–bringing the daily average to 226.
in microsoft word that’s the equivalent of a 17 page paper (after replacing all the paragraph marks with spaces and double spacing the whole thing). like many papers, it doesn’t make for much of an interesting read:
Option Compare Database Option Explicit Dim int_indicator_id As Integer Dim is_form_dirty As Boolean Private Sub Form_Load() Call reset_form DoCmd.Maximize End Sub ' public so that f_settings can call it Public Sub reset_form() Call preload_lists(Me.Controls) Call select_first(Me.lst_indicator_id) Call lst_indicator_id_AfterUpdate End Sub Private Sub lst_indicator_id_AfterUpdate() int_indicator_id = Me.lst_indicator_id Call retrieve End Sub
of course i did more than just hack out vba. i redesigned the backend database to make the system more flexible. i completely revamped the user interface to include totally new data analysis and indicator configuration functionality. i sat in on many meetings about health indicators, offering my common sense and experience whenever appropriate. i started the process of getting usaid/washington’s approval for this and all future PIMSs. and i wrote 4 new pages of documentation.
after all that, my favorite interface is the new About dialog:
It seems like a good idea from the start. Take data that’s getting out of control in a massive Word document (or documents) and put it in a database like Microsoft Access. The advantages being the added functionality of customized grouping, sorting, filtering, and searching. If all that you need is a graphical user interface to manipulate and manage your data, then Access is enough. If all that you need to extract from your database are printed reports, then Access is enough.
The Problem with Access
What if you want to use the database to periodically generate those documents that were the motivation for creating the database in the first place? Access cannot generate reports which you can save to a file and later edit or attach to an email. Actually this is a half truth. If we think of documents as a combination of content and style/layout, then Access can rudimentarily export the content of a report to Microsoft Word, but it cannot export the style or the layout.
Using Mail Merge?
What about using some sort of Mail Merge with Word? In other words, set up a reporting “template” in Word with all the style and layout, and then pull in the data from Access. Turns out that this only works well when you’re pulling data from a single table (like a mailing list). If you want information to be pulled from several tables and you want the information to be grouped in outline fashion, using Mail Merge will not work.
Activity X
Task 1
Task 2
Task 3
Activity Y
Task 1
Task 2
…
…
Using Adobe Acrobat and the PDF File Format
It seems then that taking the data out of Microsoft Word and putting it into Microsoft Access effectively isolates the information from ever being used again (in a format other than on paper). However, it turns out that with Adobe Acrobat, Access can generate PDF files which match exactly the reports which Access produces for on-screen and printed consumption.
The implication here is that large documents could be assembled with the combination of Access and Acrobat, and without using Word except to creating a table of contents (and other “pages to insert” not generated by the database). In fact even those ‘custom’ pages created in Word can be ‘exported’ as PDFs, and inserted into the final document. Since the Acrobat reader is free (and widely installed), PDF files can be attached to emails, made accessible via the web, and of course printed out.
PDF is not the Perfect Solution
To generate PDFs with Access, you must have the full version of Acrobat installed on your computer (academic license costs $60,
otherwise costs $200!).
PDFs can only be edited minimally (to make small corrections or edit typos)—the PDF file format is not intended for making extensive changes. Large changes are intended to be made using the application from with the PDF originated (be it Access, Word, Pagemaker, etc) and not in the PDF file.
When the primary reporting purpose of a database is the generation of large reports and documents, page numbering and table of contents creation becomes an issue. Neither Acrobat nor Access provides a suitable solution for automating this task. Very likely a custom table of contents will have to be created in Word (and exported to PDF) once the bulk of the document has been finalized.
this post is dedicated to melanie and pj in tennessee
weight
first you have to decide laptop or desktop. let me make this easy. if the laptop you’re looking to buy weighs more than 4lbs, you’re not going to enjoy carrying it around–which in my mind defeats the purpose of getting a laptop. best case scenario for laptops: 3lbs or under. i highly recommend the IBM thinkpad X-series.
memory (RAM)
the most important (and expensive) variable in a computer purchase is memory. when you’ve got several programs open (firefox/internet explorer, microsoft word, winamp, kazaa, etc.), they are all loaded in memory, so the more programs (including the operating system) you want running smoothly at the same time, the more memory you should get. presently 256 megabytes (MB) is standard bordering on low, 512MB is great, 1GB (1024MB) is out of this world. anything higher than that is obscene. don’t worry about the type of memory, you won’t notice the difference.
hard drive
a hard drive is for long term storage of data. because laptops are small, you’ll usually only have two options: 20 gigabytes (GB) or 40GB. if you actually have an 60 or 80GB option, your laptop is going to be as heavy as a cinderblock (or you’re reading this from the year 2005). desktops apparently start at 80GB and head for the stars, like 250GB, or 800GB in a RAID configuration. my laptop from feb 2002 has a 30GB hard drive with 2300 mp3s (which take up 10GB). i still have 7GB left.
CPU (the processor)
the red herring of computer purchases is processor speed. people buy new computers because they run at 3 gigahertz (GHz) rather than 1GHz, but what they don’t realize is that their memory and their hard drives will slow them down first. desktop processors range from 2.4GHz to 3.6GHz. laptops run from 1.5GHz to 3GHz. IBM’s latest X40 laptops actually have slower processors than their predecessors so that they consume less power (which equals longer battery life)! save money by choosing a slower processor.
misc
get a 17″ flat panel LCD monitor. the resolution is going to be the same as a 18 or 19″ lcd display (1280×1024 pixels), but 17″ will be cheaper and crisper.
get a CD-RW/DVD combo drive. you’re probably not going to be burning DVDs.
i love my optical mouse. i did not like using a cordless mouse, because the two AA batteries inside weighed a lot and made me mouse like i was drunk.
buy a printer from hp. i would avoid epson or lexmark.
make sure your laptop has built in 802.11b/g wireless.
edit BetterBlogThis’s URL/Location by right-clicking on the bookmark, selecting properties, and changing the initial xxxxxx to the blog ID of the blog you want to be your default.