{"id":158,"date":"2006-07-12T10:32:54","date_gmt":"2006-07-12T17:32:54","guid":{"rendered":"http:\/\/www.red-sweater.com\/blog\/158\/flextime-nearing-10"},"modified":"2006-07-12T10:32:58","modified_gmt":"2006-07-12T17:32:58","slug":"flextime-nearing-10","status":"publish","type":"post","link":"https:\/\/redsweater.com\/blog\/158\/flextime-nearing-10","title":{"rendered":"FlexTime Nearing 1.0"},"content":{"rendered":"<p>Over the past several months I have been putting a lot of work into FlexTime, the project I <a href=\"http:\/\/www.red-sweater.com\/blog\/77\/flextime-10-beta\">first announced<\/a> here back in late December.<\/p>\n<p>\nThe product has been massively (and sometimes drastically) improved since that time, and I&#8217;m happy to announce that a new public beta is available for your download, critique, and hopefully enjoyment:\n<\/p>\n<p>\n<img decoding=\"async\" src=\"http:\/\/www.red-sweater.com\/images\/FlexTimeIcon64.jpg\" align=\"center\"\/><a href=\"http:\/\/www.red-sweater.com\/flextime\/FlexTime1.0b5.zip\">Download FlexTime 1.0b5<\/a> (expires two weeks from today)\n<\/p>\n<p>\nNote: FlexTime requires Mac OS X 10.4 or later. FlexTime is a universal app.\n<\/p>\n<p><h4>What is FlexTime?<\/h4>\n<p>FlexTime is a generic timed routine scheduling application. Can you tell it&#8217;s hard for me to figure out how to summarize it in one sentence? Basically, it makes it easy for <em>users<\/em> to program complex time-sensitive scheduled activities, where it&#8217;s useful to be reminded at regular intervals that it&#8217;s time to &#8220;move along&#8221; to the next activity.\n<\/p>\n<p>\nFlexTime turns your Mac into a hard-assed training coach for whatever it is that you do.\n<\/p>\n<p>\nExamples of things you might use FlexTime for:\n<\/p>\n<ul>\n<li>Manage the work\/play\/break ratios for the time you spend at the computer.<\/li>\n<li>Practice a stretching or martial art regimen such as Yoga or Tai Chi.<\/li>\n<li>Set up a metronome for rhythmic exercises such as dance or music.<\/li>\n<li>Arrange for scripts to be run at regular intervals throughout the day.<\/li>\n<li>Just about anything that follows a schedule!<\/li>\n<\/ul>\n<p>I&#8217;d love to get feedback about all aspects of the application. For the most part the UI is pretty fixed for the 1.0 release, but future enhancements will undoubtedly bring changes.\n<\/p>\n<p>\nMost of all I&#8217;d love to hear about any uses of FlexTime you come up with that aren&#8217;t on my list!  I think the success or failure of this product will be in finding <em>specific uses<\/em> that resonate with the market. It&#8217;s possible the market will reject it for its generic-ness. In other words, a customer who might buy &#8220;Yoga Stretcher&#8221; could just walk right past FlexTime. But I didn&#8217;t want to sell a yoga app at the expense of being useful for hundreds or thousands of <em>other people<\/em> with different interests.\n<\/p>\n<p><h4>Caveats<\/h4>\n<\/p>\n<p>\nThis is a beta release and therefore I have a list of caveats. These basically correspond to the &#8220;still needs to get done&#8221; list in my project. Hopefully mentioning these here will head off criticism of some of these shortcomings:\n<\/p>\n<ul>\n<li>Documentation is not written yet. Yeah &#8211; it should have been done incrementally. I&#8217;m bad!<\/li>\n<li>Scripting support is not complete. Most of  FlexTime&#8217;s guts are accessible via AppleScript, but I&#8217;ve hit a stumbling block on implementing access to setting the cues via scripting. The difficulties lie in the generic, untyped nature of the cue type. It can be just about anything, depending on the type of cue handler.<\/li>\n<li>Per-document UI dimensions are not saved with document. This means if you set up a FlexTime routine&#8217;s window size and table columns to look just perfect, it will look crappy again when you reopen it.<\/li>\n<li>Document format still in flux. I&#8217;m still tweaking the document format, but I&#8217;m leaving in &#8220;upgrade&#8221; mechanisms for all beta releases. With the public 1.0 release, I will maintain all of those upgrade mechanisms, but afterward they will be stripped out. This is just advance warning that if you use FlexTime now, be sure to open and save any important documents once 1.0 comes out. That will be the &#8220;official format&#8221; from that point forward.<\/li>\n<li>Document icon is generic. For 1.0 I will make a &#8220;branded&#8221; document icon.<\/li>\n<\/ul>\n<h4>The Tough Love of 1.0<\/h4>\n<\/p>\n<p>\nIn whittling down the feature list of this 1.0 release, I had to make a lot of tough choices. Lots of &#8220;would be cool&#8221; things are not present, though planned for a future release (assuming anybody likes the product). So perhaps to tease you and perhaps to head off another category of feedback, here is a list of where I see the product going post-1.0:\n<\/p>\n<ul>\n<li>Multiple cues at once. I know it&#8217;s very frustrating that you can&#8217;t, for instance, both display a sound and show a message at the same instance. To some extent this can be &#8220;hacked&#8221; in 1.0 by using &#8220;0 seconds&#8221; long activities, but it&#8217;s definitely at the top of the list for future improvement. This is mainly blocked now by the disruption to the UI that such a feature would cause.<\/li>\n<li>Export to iTunes. I&#8217;d really like to be able to take FlexTime&#8217;s audio (and perhaps visual) cues &#8220;on the road,&#8221; by sending the output to a media file that iTunes can understand and pop onto your iPod.<\/li>\n<li>More cue types. FlexTime 1.0 supports a number of very useful cue types, but the possibilities here are endless.<\/li>\n<li>Growl integration. FlexTime includes a light-weight &#8220;show text message&#8221; functionality, but I&#8217;m sure some users will appreciate a feature that forwards such requests on to Growl.<\/li>\n<li>Printing support. By printing a pretty view of the entire routine schedule, FlexTime could be useful in scenarios where not everybody being cued has access to the video screen.<\/li>\n<\/ul>\n<h4>One Last Question<\/h4>\n<\/p>\n<p>\nBefore I leave you to try out the program, and open the floodgates for criticism, let me ask one question: What do you think of the word &#8220;cue?&#8221; Should it be something else instead, such as &#8220;action&#8221; or &#8220;event?&#8221; This word choice is a very tough one for me and I&#8217;m very open to feedback (reasoned, preferably!).\n<\/p>\n<p>\nThanks for trying FlexTime!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Over the past several months I have been putting a lot of work into FlexTime, the project I first announced here back in late December. The product has been massively (and sometimes drastically) improved since that time, and I&#8217;m happy to announce that a new public beta is available for your download, critique, and hopefully [&hellip;]<\/p>\n","protected":false},"author":10,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[7,30,18,16],"tags":[],"class_list":["post-158","post","type-post","status-publish","format-standard","hentry","category-applescript","category-business","category-flextime","category-red-sweater-news"],"_links":{"self":[{"href":"https:\/\/redsweater.com\/blog\/wp-json\/wp\/v2\/posts\/158","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/redsweater.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/redsweater.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/redsweater.com\/blog\/wp-json\/wp\/v2\/users\/10"}],"replies":[{"embeddable":true,"href":"https:\/\/redsweater.com\/blog\/wp-json\/wp\/v2\/comments?post=158"}],"version-history":[{"count":0,"href":"https:\/\/redsweater.com\/blog\/wp-json\/wp\/v2\/posts\/158\/revisions"}],"wp:attachment":[{"href":"https:\/\/redsweater.com\/blog\/wp-json\/wp\/v2\/media?parent=158"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/redsweater.com\/blog\/wp-json\/wp\/v2\/categories?post=158"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/redsweater.com\/blog\/wp-json\/wp\/v2\/tags?post=158"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}