Archive for the ‘Uncategorized’ Category.

SMTP & Gmail

Sometimes someone else posts the definitive piece. Read this blog post by Lee Lukeheart, founder of Savvy Data, for the skinny on Filemaker and Gmail.

Pre-fill new fields with related data, quickly

Sometimes you need to add a field to an existing database that should have values for all the already existing records in the table.

Say you’ve added a new field on an existing database.

It’s not a calc field, but will have an auto-entered calculation field that will always be filled out.

For example, in the table People you add a field called “Full Name”. It’s a combination of First Name and Last Name fields which are in the same table.
= First Name & “ “ & Last Name.
You want users to be able to modify the combination, so it’s an auto-enter field and not an uneditable calculation. Easy enough, except that for existing records, there’s no value in the field for any of the existing records.

You could script adding data, using Replace[], or a Loop and Set Field[], but that can take a long time, especially if the table has a lot of dependencies, there’s a large record set, and / or you’re working on a served file. Instead you can leverage the power of the Filemaker’s storage and one little trick.

The trick is if you change a stored calculation field to a non-calculated (Text, Number, Date, etc) field, the values persist in the field.

Make that field a regular calculation field. Save out of Manage Databases. Filemaker then store the data and al your records now have the value you want, but in an un-editable calculation field. Re-open Manage Databases and change the field to Text, check the auto-enter calc box (the calculation should auto-fill) and Save out again.

Now you have a Full Name field where every existing record has the calculated value pre-filled in!

Additionally, this can work with related data.

If you want to pull the Full Name field from your Contacts table into an Invoice table, but have it stored, you would create a text field with an auto-enter calc that looks through a relationship based on INVOICE::fk ContactID <–> CONTACTS::pk ContactID.

To pre-fill all the existing records you again make it a calculation field, but since Filemaker won’t let you store a calculation that references related data, we get help from our friend Evaluate(). Wrap the related table field name inside an Evaluate()
= Evaluate ( “CONTACTS::Full Name”)

You can then store that calculation and save to exit Manage Database. Open Manage Database again, change the field to a text field, remove the Evaluate() wrapper and save to exit again.

Your  new auto-enter text field now has related data in all the existing records.

Migrating Word Press

We’ve got a few websites based on WordPress. They’re little sites and have been hosted with GoDaddy since launch. GoDaddy is cheap, cheap, cheap, and good enough for the sites we’ve had up. But we want to drive more traffic to those sites, take hosting control of a couple other more complicated sites, and get out from GoDaddy’s limitations.

We settled on a hosting reseller account through HostGator. That gives us room to expand and freedom to configure the server as we want.

This was fairly easy. We logged into cPanel and then followed the directions in this video here. The video is great and there’s no need to re-say here what they say there. Basically it shows how to set up ‘packages’, which determine how much space and bandwidth a particular site will get.

Then you can ‘Add a New Account’ in cPanel where you tell it the domain name and choose a package for its settings.

After we had the account for the new set up, we followed HostGator’s directions for moving a WordPress blog. (See here ).

Their directions are pretty good. We backed up the database, downloaded and uploaded the WP files, changed wp-config.php and imported the blog as directed.

Ta-dah! We now could go to our new IP address and see the site. However, the css wasn’t taking effect and the links all went back to our old site.

At the end of their directions HostGator has a little section on this very problem. They say you should log-in to wp-admin for your site and in the General Settings change the site url and home to the new address. We did this and then realized because we hadn’t changed the DNS name servers yet, we now had a loop happening which didn’t allow us to log back into wp-admin! In effect, we changed the old database instead of the new database. Now the new database was telling it to go to the old url and the old database was telling it to go to the new url! To fix this, we followed HostGator’s directions here. This meant logging into phpMyadmin for both databases and changing the url and home variables in both places.

Then we logged into the the new wp-admin and changed the links from ‘pretty’ links to the default setting.

Now we had wp-admin’s accessible for both versions of the site and the links were working, but our css still wasn’t taking effect. We looked at the page source and it was telling it the right link to the file. We tried uploading a new image and placing it in a new post. The wp-admin could find the photo just fine, but the page wouldn’t display it.

Finally, we thought to look at the Error log in cPanel. It told us over and over ” (13)Permission denied: /home/public_html/wp-content/uploads/.htaccess pcfg_openfile: unable to check htaccess file, ensure it is readable” for this files and various other ones in the wp-content file.

After doing some web searching, we read of other accounts of there being problems with FrontPage, a WYSIWYG editor. We uninstalled it. CSS still wasn’t taking effect. Then we took a look at the permissions on the wp-content file. On the actual file they were fine, but the lower files with the themes, uploads, etc, were set way too low. So we changed the entire contents of the wp-content folder to 755 and all of its files to 644.

Now the CSS is working!

Rational descision making

An excellent list of how to rationally achieve a goal rationally…

1) Ask ourselves what we’re trying to achieve.
2) Ask ourselves how we could tell if we achieved it (“what does it look like to be a good comedian?”) and how we can track progress.
3) Find ourselves strongly, intrinsically curious about information that would help us achieve our goal.
4) Gather that information (e.g., by asking as how folks commonly achieve our goal, or similar goals, or by tallying which strategies have and haven’t worked for us in the past).
5) Systematically test many different conjectures for how to achieve the goals, including methods that aren’t habitual for us, while tracking which ones do and don’t work.
6) Focus most of the energy that *isn’t* going into systematic exploration, on the methods that work best.
7) Make sure that our “goal” is really our goal, that we coherently want it and are not constrained by fears or by uncertainty as to whether it is worth the effort, and that we have thought through any questions and decisions in advance so they won’t continually sap our energies.
8) Use environmental cues and social contexts to bolster our motivation, so we can keep working effectively in the face of intermittent frustrations, or temptations based in hyperbolic discounting.

Some links

Some good links for the week…

An analysis of To Do lists by 43 Folders.

This transcription of an old talk by Richard W. HammingOn scientists doing good work, but applicable in any field.

An explanation of why not all procrastination is bad.

A potentially interesting book on design.

And a business development book I’m considering getting for my sister and me.

Can’t Keep Up

Greetings. I just spent several hours reading about Filemaker Go solutions and development. Baaaaaahhhhhh. Of what I read, about 5% interested me and 95% frustrated or bored me. Where do you begin? What is a good idea? How do you know what to invest your time and energy in when everything is CONSTANTLY changing – and changing more quickly than you even know?

I just learned that the makers of FMTouch (an iphone app to access Filemaker databases on the iphone, ipod touch, ipad etc.) are providing a service that allows a Filemaker developer to submit a standalone database that will be converted to a standalone iphone app and sold in the Apple app store. This seems like it could be a cool idea… except that it costs a TON of money for the developer and honestly, who is going to pay more than a dollar or two for an app that is just a database built by some unknown developer, that won’t really sync or do anything cool other than store data, accessible only through a very small screen? No one that I can think of. I looked at some of the available ‘apps’ on the FMTouch website and was remarkably unimpressed. First off, they looked stupid and so narrowly focused that I can’t imagine using them. Second, some of them were ridiculously expensive ($50!?!?!).

Side-note: I own an ipad and an ipod touch. Not gonna lie, I’m a huge fan of apple products – the hardware and operating system especially. The rest of Apple’s software is cute but generally not particularly exceptional. Anyway, I own these devices, and my sole computer is a macbook pro, so I think I can speak as a consumer of such apps, and in doing so I can’t see reason to buy any of these. Also, a well-known problem in the app store is the inability to test an app. Sure, you can see some screenshots, but not many, and it doesn’t let you experience the app (or database in the case of these FMTouch apps) and see whether or not it’s something you could use often.

Here’s my issue. I don’t know what kind of apps would succeed as independent database applications. In theory it sounds cool to make niche databases built for the iOS, but in practice who really wants niche products? Are there that many things that I want a solution to (or someone wants a solution to) that are so isolated they require their own app or database? Granted, it’s good to keep things simple when programming, but I do not want five million different apps (either on my computer or my iOS device) to do all the little things I may want to do and record all the data I may need recorded. I don’t really see the purpose in a niche application unless it syncs flawlessly with all the other ways I may want to access and work with my data. If it doesn’t sync with every other application I use then what good does it do me? Honestly, I’d like JUST ONE that does nearly everything. I want the user interface to be consistent and the data to be accessible system-wide. I want it to sync between devices and online storage. I want it to look good and work well. Is that so much to ask? Actually, I suppose it really is.

So… if I were to develop something that I thought was worthy of marketing and selling to others, it would have to be infinitely complex and perfect… which is impossible. Alas, I suppose the niche market is the way to go until I can think of a way to exponentially surpass the bounds of my abilities.

A long week.

David has been away, and there is nothing like having your boss gone to make you think about what you do and how you do it.

I figured there would not be a whole lot for us to work on while David was gone – we each have some smaller projects we are working on, but for larger stuff it’s better to have David around to ask questions and get constant feedback. So I assumed that I’d end up working about half-days for the days David was gone… I couldn’t have been more wrong!

I don’t understand what happened or why, but it seemed like as soon as David left town things started breaking. It has almost felt like someone is sabotaging us. Instead of spending half-days, I have spent double-days, trying frantically to fix all the little problems that have cropped up in the past week – some of which became major problems for a while.

It may be timing, it may be attitude, it may be … chance??, but it’s interesting the way things have turned out. First of all, it’s made me appreciate David as a boss even more: one – that he trusts us to fix stuff and deal with problems (even when maybe he shouldn’t have) and two that he commands a respect for his abilities that makes us feel confident in our abilities when he’s there as our safety net. It has been fascinating to me to see the way we’ve each dealt with all these mishaps – at first we tackled the problems confidently, then failed, started floundering in an ocean of problems and doubt, and slowly, slowly dragged ourselves out of the depths in the best way we knew how. Wendy may have had a different experience, as I think her endeavors of the past week have been slightly more successful, but Christian and I have certainly taken a beating trying to set up a VERY old database on a VERY old computer system.

Anyway, despite having worked for hours and hours on end to make very little progress, it’s been a good week. I worked really hard, learned a lot, eventually fixed things a little bit, and had fun drowning in the sea of computer ignorance. Thanks David (but don’t leave again anytime soon, please)!

Also, side-note: Mac OS 9 is something else! It makes me eager for the day OS 11 arrives (or something).

How to get a CMS to read code

A recent problem I’ve had with working in WordPress and Magento has to do with their code ‘helpers’.  If you write a post in WordPress or a Page or Block in Magento, you may have discovered the same thing that I did:  These CMSs let you view the HTML, but they don’t always actually read it or show it.  For example, I recently needed to edit a page (that I didn’t originally make) on Magento.  Unbeknownst to me, there were empty divs for design purposes that Magento didn’t show to me in the HTML view.  (I’m guessing because they were empty.)  I made my little change to a link, must have backspaced an ’empty’ space and saved…. Voila!  The front page is now missing its main photo.  I had no idea where the main photo had been saved, what it was called, or even why it disappeared to begin with.  Needless to say, I stressed for a little while.

I finally figured out what had happened when I decided to add an empty div to place the photo back in place, only to not be able to see the HTML I had just typed in after I saved it.  Thank you Magento; your design helper for HTML illiterates is so helpful!

I had seen this problem before in WordPress.  In the past I’d tried to recreate a page in WP by copying and pasting an entire page of code.  When I did that, I realized that everytime I had hit ‘enter’ while typing in a normal editor, WP had interpreted that into a paragraph or break.  (and didn’t show that to me in the HTML.  You can only see how many paragraphs or breaks it’s adding by viewing the page source after it’s live.)  However, when I wanted to code in a ‘break’, it completely ignored it!

What is the point of letting one ‘view’ the HTML, if it is going to hide some of the code and ignore other bits?  I know there are plug-ins for WP to let you override the HTML ‘helps’.  However, I don’t want to have to add the plug-in on every single site I work on and I also don’t think there is an equivalent for Magento.  You’re so unhelpful, ‘helper’!

Visit the “competition”

Karen Weaver at Desert Dog is a competitor and if you’re looking for custom FileMaker databases, I recommend contacting her.

Karen is not only a competitor, but she may be the ONLY other shop in the STATE of New Mexico doing FileMaker work.  Now that I write this I realize I haven’t actually seen any of her work, I’ve just discussed FileMaker with her. (Note to Karen: I’d love to compare dbs sometime). She knows what she’s talking about and is a trustworthy person.  That’s good enough for me for an endorsement.

“David”, you’re thinking, “why the hell are you advertising for a competitor???  How stupid is that??!”

“Well, friend, I have good reasons. And ‘stupid’ is a crappy argument. Like calling something ‘crappy’.”

Anyone spending any significant amount of money ought to check with three professionals.  Whether you’re looking to invest ten grand into a database or see a therapist or find a seller’s agent, you should find three professionals and get their free or nominally priced opinion before even considering one. Obviously, it will give you perspective on the task you’re trying to accomplish. But you also need to match your business and personal needs with that developer.

Obviously, you have specific business needs, like pushing data to the web, or managing rental inventory, or connecting to your company’s ‘big’ database.  And Karen and I have different specialties that may match those technical needs more effectively.

But the BIG mistake we make in forming service business relationships (and my friend, building a custom database IS a service business), is not recognizing that our personalities mesh.  It’s not necessary that the designer and the client like each other.  I crossed that out.  It’s not necessary, but it sure is helpful.  If not like, then at least be able to communicate effectively. We’ll be spending a lot of time together. Clear open communication is really important.

I don’t want you to be a client of mine, I want you to be happy client of someone.  If you’d be more satisfied working with Karen because you mesh better, then godspeed.

There’s only one way to find out.


It’s a beautiful autumn Friday and we’re blogging here at Wing Forward.

What does that look like? Like this!