Halfwit Geek

Thursday, February 25, 2010

Calendar Apps -- what I wish they were

Update: Matt informs me that I'm oh-so two-thousand-and-late, and that Gmail does this: under "More actions", you can generate "Add to tasks" or "Create event", and it guesses the date from the text. Yay Google!

-------------------------------------

Every email app, it seems, comes with a calendar (or can have one plugged in). Blackboard (for you academics out there), comes with a calendar. Google's got a calendar app, and of course Gmail (I'm sure there's people that would call those web apps or some such.) Many of these include or can include "to-do" lists, which might have a deadline but don't actually occur in a particular time slot (different apps call these different things.)

It seems to me that they're woefully un-integrated. I get emails telling me about appointments or things to do, and the email program of my dreams would have a "convert to appointment" button and a "convert to to-do item" button AND a "convert to appointment with associated to-do item/list" button. What's more, it would scour the email and try to guess when the appointment/deadline was and pre-enter it.

Implied in the above is the idea of appointments with associated to-dos. Surely I'm not the only one who not only has appointments, but has things that have to get done BEFORE the appointment?

The thing that boggles my mind is that these applications ALREADY HAVE THESE. They just refuse to have them work together. Why should I have to read an email, then create an appointment, look back to the email to remember the date/time/place, and enter it in by hand? Outlook is ridiculous in this regard, in that I actually have to open up a new window to show the email so that I can switch from Inbox to Calendar to put an appointment in. There's even a configuration option to make the Calendar window show the pane where the selected email normally previews. But the calendar obstinately refuses to show anything in that pane.

Which just shows me the Calendar part of the application and the email are completely un-integrated. Which makes it kind of useless to bundle them together in the first place.

I also don't see why Google hasn't done this already. Of the calendars I've tried, that one's the most practical, and they seem to go to the most effort to integrate pieces together.

end rant. FOR NOW.

Monday, October 5, 2009

Everyone needs this.

Okay, not everyone. Not the supercool Linux junkies, not for the stylish Mac peeps. But for everyone who has been annoyed by Windows trying to tell you to clean up your desktop, you need this.

Thursday, June 18, 2009

Twitter Widget on Blogger

Here's the link.

Tweetdeck update error #16824

Tip for anyone trying to update Tweetdeck automatically, and getting the above error: I went direct to the website and downloaded from there (listed as version 0.26, but after the install it says v0.26.1) The install stops if Tweetdeck is open, but you can just close Tweetdeck and continue.

It asks you to log in, and I forgot my Tweetdeck password, but the "Forgot your password?" link worked peachy. Then the install didn't claim to detect any of my groups, but it restarted Tweetdeck with all the groups I had previously.

The update solves the annoying problem of 0.25 re-showing tweets you've marked as read and cleared.

Summary: update direct from the Tweetdeck website, and the error message doesn't come up.

Tuesday, July 8, 2008

Weird Firefox problem and solution

The problem: Firefox was ignoring my location bar (the text area at the top that you can type a URL in, and when you hit enter, it'll load up.) I could type in it, but pressing enter didn't do anything, and changing tabs didn't change it to the new location.

The solution: (from helpful advice here): I uninstalled two add-ons: BlogRovr and Web Developer, and after the restart, it worked fine. I don't know which of those was at fault, but I don't care now. :)
[Side note: for diagnostic purposes, I did like the advice at the link said and made a clean profile, and found the location bar worked fine there, which pointed the finger at the add-ons.]

Tuesday, June 3, 2008

Blogger trick #2

You may have noticed that the previous post has some text

For the nitty-gritty details, do like it says and click to see the rest.

that appears on the front page but NOT on the post's "item" page (where it wouldn't make sense).

This is a simple little addition I made to the template modification for expandable posts.
--------------------------------------------
In the template, just before the </head> tag, Vin's guide says to put the code

<style>
<b:if cond='data:blog.pageType == "item"'>
span.fullpost {display:inline;}
<b:else/>
span.fullpost {display:none;}
</b:if>
</style>

I just added a couple lines:
<style>
<b:if cond='data:blog.pageType == "item"'>
span.fullpost {display:inline;}
span.toppost {display:none;}
<b:else/>
span.fullpost {display:none;}
span.toppost {display:inline;}
</b:if>
</style>

Now, any part of a post that I put between <span class="toppost"> and </span> will appear only on the front page, not on the post's "item" page, which is handy for little summaries that don't make sense when the full post is displayed.

Click here to see the rest of this post...

Blogger trick

The trick to getting expandable blog posts in Blogger is described here and, in even more detail, here. However, a significant drawback is that this approach puts a "Read more..." link at the bottom of every post, whether there's actually more to read or not.

Here's a variation which uses a post label to figure out which posts need "Read more..." links and which don't. It doesn't require publishing to figure out the post link then editing, like some workarounds, and it doesn't require anything more complex than the original post.

You can see it in action on this very post (which has a "Click to see the rest..." link, which is what I decided to call my "Read More..." link) and the previous post (which doesn't have more to show, so the link doesn't come up.)

For the nitty-gritty details, do like it says and click to see the rest.-----------------------------------------------------------

I'm not going to repeat the entire scheme described at the above links -- most people reading this have presumably already read at least one of those. So summarizing, there are three places you have to put code for expandable posts:

  1. Include a <style> block in the Blogger template right before the </head> command
  2. Include a <b:if cond="..."> block in the Blogger template post widget (have to check "Expand widget templates") to put a "Read More..." link at the end of the post if we're NOT at the post's "item" page (also called the "permalink")
  3. Edit the HTML of each expandable post, putting the part that doesn't appear on the front page inside a <span class="fullpost"> block.
My amendment requires changing the code block inserted at step 2, and using a particular post label for expandable posts.

So assume you're at step 2. To get to the code block, in Blogger click the "Layout" tab, the "Edit HTML" subtab, and check the "Expand Widget Templates" box. In the template, find the lines
<div class='post-body entry-content'>
<p><data:post.body/></p>
<div style='clear: both;'/> <!-- clear for photos floats -->
</div>
Right before the closing </div>, put this block (instead of the <b:if cond=...> given in the above links):
<b:if cond='data:blog.pageType != "item"'>
<b:if cond='data:post.labels'>
<b:loop values='data:post.labels' var='label'>
<b:if cond='data:label.name == "summarized"'>
<p><a expr:href='data:post.url'>Click here to see the rest of this post...</a></p>
</b:if>
</b:loop>
</b:if>
<b:else/>
<p><a expr:href='data:blog.homepageUrl'>Click here to return to <data:blog.title/> home page</a></p>
</b:if>
This block, like the original solution, first checks to see if we're already at a post "item" page or not. If not, it looks through all the labels of each post, and if it finds the label "summarized", creates a link to the post's "item" page with the text "Click here to see the rest of this post..." (if the post doesn't have that label, it doesn't get a link inserted.)

If we are at the post's "item" page already, a "go back" link gets inserted which goes to the home page of the blog, with the text "Click here to return to [blog name] home page". I put this in so a blog reader, after "expanding" the post, has a parallel link to "contract" it again, and go back to seeing all the current posts.

If you want to use a different label (such as "expandable") or different text for your "Read more..." link (such as "Read more...") you can just change the appropriate text in the block above.

Note: Blogger will automatically change the double quotes around "summarized" and "item" into &quot; if you go to re-edit the template -- this is normal, and the template will work fine.

The only other change is that when you make an expandable post (step 3), make sure to give it the label "summarized" (or whatever you've changed the required label to). If you don't, the reader won't get a "Read more..." link, so they might not know that there's more to see at the post's item page.

Going Further
The main idea behind this is screening posts based on post label. The potential applications extend far past expandable posts -- you could have posts on different subjects come up in different colors, for example, by using the same sort of conditional block.

Click here to see the rest of this post...