Monthly Archives: February 2011

Which is better: to embed images or link images in HTML emails?

Early this morning, and later in the evening, I was working on a PHP script that composes HTML emails with extra files included, but rather than making images as attachments, the script embeds the images so they don’t actually appear as attachments, but appear instantly within the email.

It works fine for <img> tags, but the big issue comes when trying to use CSS.

<img src=”cid:20110212231111.1we615e” />

This works in Thunderbird, immediately.  And it works in Gmail’s web-interface.
BUT…

body { background-image: url(cid:20110212231111.1we615e); }

This DOES NOT work in Thunderibrd, and NOT in Gmail’s web interface.  These items do however appear as attachments.  So that defeats the purpose of having everything appear instantly and properly.

And given client demands, I need to make everything as perfectly seamless AND painless as possible.

So, I believe I’m going to simply link ALL images.  That will save on bandwidth, plus any email client that has image security will simply display a link that says something sounding like “Do you want to display images in this email?”.  If the recipient clicks to say yes they want to see, then everything will appear, instead of just the <img> tags, but no background.

This is an example of the far-out strange places I go in my work.

Trying to embed and compose HTML emails is difficult on a Windows machine since Thunderbird’s only HTML composing feature is old and not updated to work with the latest version, and Outlook only works (so I’ve read) with HTML composed from within Frontpage (not going to touch that with a 10-foot pole!!).  A few days ago I created an automated emailer that attaches vCard files, and in order to do this, I had to learn about MIME boundaries, content-type, content-disposition (inline vs attachment) and a whole lot of extra stuff.  Lots of technical stuff.  In the end, I’m here wasting time figuring out embedding images, just because Gmail’s web interface doesn’t operate to the most ideal level possible.

Oh well.  So I’ll just link every image.  And that’s a wrap! … several wasted hours later.

Posted in Activities & Adventures, Technology | Tagged , , , , , , , , , | 2 Comments

Mobile web problem on the Blackberry Torch/Tour/Style

One of the benefits of having smartphone is surfing the internet with a high-quality web browser while you’re driving down a high-speed highway.  Then, often if you’re looking for information on a destination, anything from a restaurant or hospital or mechanic or astrophysicist, you’ll discover a phone number.

And magically, any android phone or apple iphone, will see the phone numbers and make them clickable.  Even the Opera browser I have on the iPhone 4 does this.

But NOT the built-in browser in the OS 6 phones from RIM.. the Blackberry Torch, Blackberry Style and Blackberry Tour.

Unfortunately, there is no solution for that personlooking up a contact phone number on their Blackberry phone. HOWEVER, that does not mean it is impossible.  The solution rests completely on the shoulders of the creator of the web page.
For a web designer/developer, instead of putting a line of text within HTML in your page like

Call me!  1-800-123-4567

simply change the HTML code to

Call me! <a href=”tel:1-800-123-4567″>1-800-123-4567</a>

I’ve downloaded all the emulators for these devices, to verify the solution.  Yep, works. Very, very simple.

Posted in Technology | Tagged , , , , , , , , , , | Leave a comment

Optimism, self-development and word-of-mouth

Lots of things going on in life.

I’ve been lethargic/apathetic about a number of important parts of my life, and am really starting to focus.  Helps to rely on good writings by professionals in self-improvement.  Thanks, Brian Tracy!

A large-size whiteboard in my room has a number of papers taped to the perimeter, schedule for the YMCA, a story, a funny editorial cartoon.  Right in the middle, in big coloured letters are the two lines “START DECLARING AFFIRMATIVE STATEMENTS” and “MASTER TIME MANAGEMENT”.

So, that’s what I see when I wake up in the morning… if I look at the white board. hah.

A project that I’m developing, guided by a local real-estate agent, is turning into a minimally profitable venture.  That is good, because most projects I do are not profitable, and I’ve barely survived the last three years (sparing you the story about business partner who don’t pulling their own weight!)

It’s really nice to see projects being useful to other people, and enough so that word of mouth is present, and people start spreading their excitement of their experience with a product or service I have to offer.  Yeah!

Okay this is just a happy post.  I’m crossing my fingers.

Posted in Activities & Adventures, Thoughts | Tagged , , , | Leave a comment

Google’s Android OS and Apple’s iOS – Introduction

Other blog sites probably have content about this subject, but I felt a desire to share my two-cents-worth.

Now I’ve begun to learn Google’s Android OS and it’s helping me appreciate Apple’s iOS more.  Another reason, I found a blog with some good info on it yesterday and had an article something like “10 great things for ____”, and the author created a list of 5 things, and finished the list saying “I’ll get more written soon.”  That was 2 years ago.  Nothing was posted on the blog afterward.  Seems like one of those late-1990’s websites that were PERMANENTLY “under construction”.

So, this is the beginning of a number of writings about the two mobile smartphone operating systems, and I’m writing a bunch of this now, but posting it separately.

Topics:

  • Introduction
  • Hardware
  • OS & Software
  • User Interface
  • Apps
  • … more later, possibly!!

 

Introduction

Recently, I chose to put effort, serious and dedicated effort, into learning the Android OS for smart phones.  When doing development, it helps very much to have one of the real physical devices to test and give a sense of “yes it works!” excitement, and the money expense also helps force the progress, since a financial commitment has been made.

So I now own an iPod Touch 2nd generation, iPhone 4, and Acer Liquid E running Android.  These are my mobile development devices, and I am really getting to understand them both more than I could with only the simulators.  Having the iPod touch for two years before the iPhone 4, and having that 2 months before the Android phone, I would think I understand most everything in terms of how it works on iOS, and be irritated when the Android environment is different.  Well, it’s true in most cases, there are a lot of things I prefer about iOS than the Android OS, but the interesting thing is: I realize that I don’t appreciate Apple’s operating system as much without having something different to compare it to.  Thus I am now beginning to understand some philosophy behind the design in iOS, and how it is different to the Android philosophy.

The main difference is the open-versus-closed models; Android being open-source and you can mess around with the OS and recompile it, and install it on the phone, making it do what you want. That’s for the way-out-there developers, but people can install apps anyway in their own home, downloaded from the internet and installed using the Eclipse IDE, if a person is ambitious enough, and patient enough to go through the necessary steps.   The iPhones and iPod Touches can’t have any app downloaded from the internet and installed… they must be downloaded through the device’s App Store app, or through iTunes on the desktop/laptops and synced onto the phone.  Apps are developed in Xcode on  Mac computers, and can only be installed on the device if a person has paid $100 for a yearly subscription to the “iOS Developer Program”.  Then you can download sample apps from the internet, and install them on your device.

Most the other differences are under the hood, which only developers will see or understand.  For example:  Apple expects apps to be singular, and it’s the normal way of apps on a desktop like Microsoft Word or Firefox/Safari/Google Chrome.  You double click an icon for the program,  or a file that is viewed by the program, and the program opens.

With Android, an app can have different bits that are each disconnected from each-other, but are loosely joined together… for example an app that is designed for note taking, allows you to write notes.  But it can also convert notes to PDF files, and you can email those PDF files with the app.  The PDF part is secondary to the note-creation, and yet the app can be made so that any other app can “create a PDF” and this app will be run, but instead of showing the standard note-taking component, ONLY the PDF converter component will be activated.  I haven’t seen this in practical action yet, because I’m only just learning, but this is the way it is according to the introduction on http://developer.android.com.

So those are two examples of philosophy differences, each with a description for Android and iOS.

 

Next, the more useful information begins.

 

Posted in Activities & Adventures, Technology, Thoughts | Tagged , , , , , , , , , , | Leave a comment