A WorkLife FrameWork Blog
 

 

About A WorkLife FrameWork | Purchase

Mathematica 7 and A WorkLife FrameWork 3.0

Posted on: Wednesday, November 19, 2008 at 03:28 PM UT

Mathematica 7 was just released and A WorkLife FrameWork is fully compatible with it.  

When Mathematica 6 was released, A WorkLife FrameWork was the first add-on package that was compatible with it—on the first day of the Version 6 release.  And A WorkLife FrameWork is fully compatible with Mathematica 7 on the first day of its release.

A WorkLife FrameWork version 3.0 is in a late beta stage and is currently available to all users.  It is the version that I use every day and I have made it available for some while to all current users, as well as all of those people who are exploring the fully functional trial version.

I have increased the trial period from 15 days to 30 days.  

The final release for Version 3.0 of A WorkLife FrameWork will likely have a price increase from $150 to $195 (student, academic, and retiree price will remain at $100).  But until I complete the release cycle the price will remain unchanged.

The beta version is largely finished except for some aspects involving updating the documentation and perhaps the addition of some additional features.

Download the version 3.0 trial here: http://scientificarts.com/worklife/trial.html

As has been my policy, upgrades will be free to version 3.0 for all current users.

If you are a current user or are currently trying A WorkLife FrameWork, you should download the current beta.

Enjoy exporing the wide range of of tools in  A WorkLife FrameWork that E x p a n d the reach of Mathematica's notebook interface.

Users consider it an indespensible and addictive productivity tool.

...of course this blog is created directly from Mathematica using  A WorkLife FrameWork...

Permalink

A Notebook Tagging Tutorial

Posted on: Monday, November 17, 2008 at 07:51 PM UT

I gave a talk at this year's International Mathematica User Conference titled: "The Joy of Tagging."  It covers some useful tricks for creating tools that manipulate the content of notebooks.  And these are some of the tricks that I use internally throughout A WorkLife FrameWork to implement all sorts of things.

You can get the notebook version of this talk from http://scientificarts.com/worklife/notebooks/

Here is the abstract of the talk:

One of the key elements of a Mathematica application that deals with a variety of documents is tagging. Mathematica's user interface for the tagging of notebooks is minimal, even though the functional interface is very powerful. This talk is about the tricks of the trade for tagging and manipulating notebooks that I have learned and discovered through creating a very large document-oriented Mathematica add-on called A WorkLife FrameWork. A great deal of tagging of notebooks is done in A WorkLife FrameWork, and this is used to create a very wide range of functionalities to automatically navigate among content, as well as to nonlinearly extract desired content from notebooks that have a random assortment of material in them—the wheat from the chaff. Also, A WorkLife FrameWork provides user interface tools to enhance and make much more useful Mathematica's tagging potential. I will describe how these tools were created and provide useful examples. The tricks that I will describe will allow you to design your own tagging tools whether or not you have a license to A WorkLife FrameWork.

Permalink

The Mathematica Documentation Center

Posted on: Friday, April 18, 2008 at 07:41 PM UT  Notebook Version

It is not a very simple matter to add new material to the Mathematica Documentation Center.  One key reason is that Wolfram Research has not yet released tools to doing this.  One suite of such tools will reside within Wolfram WorkBench, and the version of WorkBench that contains these is currently in Beta.  A set of tools will also be included in the next version of A WorkLife FrameWork.

The Documentation Center tools included in Wolfram WorkBench require that your locus for you work be centered n WorkBench: this is the habit of some Mathematica programmers  and this services that community.  The tools that will be included in A WorkLife FrameWork are strictly Mathematica-centric and allow you to keep your work's focus within Mathematica.  In this way the two different toolsets are helpfully complementary.

The tools contained in the next version of A WorkLife FrameWork will enable you to convert arbitrary notebooks into a form that can automatically be placed in the Documentation Center—this includes documentation for packages that you write and wish to distribute to others.  But it also includes documents—in the absence of a package—that you want to distribute so that people can read and interact with them through the Documentation Center.

The Mathematica Documentation Center is actually a very plastic environment for adding material to Mathematica, but to do so you currently need to understand quite a bit of arcana that pertains to Paclets and to the formatting and tagging of notebooks.   There have been many questions over the past year or so on MathGroup on how to format and prepare material for the Mathematica Documentation Center.  And in the course of creating tools for the next version of A WorkLife FrameWork I have learned quite a bit about how to do this.  So, in the interest of helping people at least get started on this, I wrote up some of what I have learned so that I could share it with the larger Mathematica community.  I have placed this write-up in a Mathematica notebook which you can download from here: http://www.scientificarts.com/worklife/notebooks/

I hope that this is helpful to folks....

Permalink   Notebook Version

Security Tools

Posted on: Sunday, March 2, 2008 at 08:01 PM UT  Notebook Version

When creating a general system in Mathematica like A WorkLife FrameWork (http://scientificarts.com/worklife) I often need to process multiple notebooks to gather data from those notebooks to distill and present to the user. Often I open these notebooks with the option Visible→False so that the user doesn't see them opening and closing as the processing takes place.  But if those notebooks have dynamic content in them then, each time they are opened (even if invisible), a dialog will open asking if the user gives permission for dynamic content to be evaluated.  This is a very good feature--it is key to security in a system that allows automatic evaluation of dynamic content that can access the operating system.  Mathematica allows you to mark a directory as "Trusted" and, if so marked, opening notebooks from a trusted directory will not prompt the permission dialog.

The interface in Mathematica for adding a new directory to the list of trusted directories is not very user friendly at the moment (it involves knowing how to edit FrontEnd`FileName expressions) and so I have created a function that does this in a way that is more intuitive in that it simply prompts you to select a directory from the standard file system Open dialog.

In fact, in A WorkLife FrameWork, there are a very large number of features that make underlying functionality of Mathematica much more useful; hence the tagline for the product: "Extending Mathematica's Reach..."  You can download the fully functional trial version of A WorkLife FrameWork from http://scientificarts.com/worklife/trial.html

Here is the code that defines a function AddTrustedPath that presents the more useful interface to taking this action (note that, as it should, it still opens a dialog at the end that will ask for confirmation that you do indeed want to add the directory that you choose).  A set of functions like this (also ones for adding un-trusted paths, for example) are currently in the Development version of A WorkLife FrameWork:

"BE3413476880_1.gif"

"BE3413476880_2.gif"

I hope that this is useful to folks!  Just remember that there are a huge number of things like this in A WorkLife FrameWork and more in development...  Give it a try: http://scientificarts.com/worklife/trial.html

Permalink   Notebook Version

December Discount

Posted on: Monday, December 10, 2007 at 04:26 AM UT


A WorkLife FrameWork:  E x t e n d i n g MATHEMATICA's Reach...

For the month of December I am offering a $25 discount on the price of a license to A WorkLife FrameWork.

Single User License Special Discount price: $125 (usually $150)

Academic, Student, or Retiree Special Discount price: $75: (usually $100)

To receive the discounted price please use the following URL:
http://scientificarts.com/worklife/purchase/december2007.html

Compatible with Mathematica 6.0, since its release, A WorkLife FrameWork is also compatible with Mathematica 5.2 and 5.1.

Mathematica is far more than a powerful environment for technical work and discovery. A WorkLife FrameWork extends Mathematica's reach so that it becomes the focal point for your larger creative work.

With the next release of A WorkLife FrameWork there will be a price increase.  However, upgrades to the new version will continue to be free for all license holders of this and earlier versions.

Download it at:
http://scientificarts.com/worklife/purchase/download/licenseagreement.html

View Screen Casts at:
http://scientificarts.com/worklife/screencasts/

Read Testimonials at:
http://scientificarts.com/worklife/testimonial.html

See Screen Shots at:
http://scientificarts.com/worklife/screenshots/index.html

Read the Blog (created directly from A WorkLife FrameWork) at:
http://scientificarts.com/worklife/wlfwblog/

Email for any and all questions: info@scientificarts.com (I answer quickly!)

A fully functional 15 day trial password is available: please give it a try!



A WorkLife FrameWork is a broad, customizable, creative tool set tuned to the varied ways that practicing Scientists, Engineers, and Mathematicians work.

A WorkLife FrameWork exposes the potential of the Mathematica FrontEnd: it is the "desktop for Mathematica"

A sampling of its continually expanding repertoire includes the following.

** Palette- and dialog-oriented interface with 42 Palettes with a simple navigation system

** Create Journals/Diaries/Laboratory notebooks containing arbitrary technical and other content

** Create, organize, and track ToDos within Diaries

** Automatically perform computations on data that you have entered into notebooks

** Automatically create reports and extract content from material arbitrarily located within notebooks

** Create supporting applications with a Mathematica-native Database language with a simple GUI interface

** Blog from within Mathematica using its full graphical and technical typesetting capabilities

** Email from within Mathematica--keep emails with the work that is relevant to them and maintain notes for these emails

** Tag and extract information from Mathematica Notebooks in arbitrary ways

** Define and automatically open sets of files (notebooks, URLs, Documents in other applications)

** Backup your work with added commentary for Notebooks and Diaries

** Password Protect and Encrypt Notebooks and Diaries

** Read RSS feeds through Mathematica; search search engines from Mathematica

** Define reusable templates for complex Notebook entries and define templates for Diaries/Journals

** Palette driven access to all style sheets and Notebook styles including hidden styles

** Track favorite Notebooks, Diaries, and Packages

** Track cell execution: Save aspects of the state of a Mathematica session;

** Full functional access with 700+ new functions and parameters.

** And Very Much more...

*Scientific Arts, LLC is not affiliated with Wolfram Research Inc.; MATHEMATICA(R) a is a registered trademark of Wolfram Research, Inc.

Permalink

Creating a new Stylesheet: an exercise in refinement

Posted on: Monday 10/1, 2007;  11:09 PM  Notebook Version

Many things are going into the next version of A WorkLife FrameWork, and I will write about them soon. In fact I have been busy with them and so haven't written to this blog for a while because of that.

Today a question was asked on MathGroup about how to create and save one's own stylesheet.  At first I answered the question in a pretty complex way.  But then I learned some more and posted an update.  Then after that, and after dinner, I sat down to write a function that would do the job automatically.   I decided that it would be easy to do this: to write a function that would create a new StyleSheet for you to reuse as needed based on modifications to style definitions that you have made to a particular notebook.  

It wasn't quite a simple as I first thought though, and I will perhaps have to modify it somewhat before releasing it into A WorkLife FrameWork.  Here is the code that I wrote...

Well, hang on a moment.  I really need to make a marketing announcement first...

If you are reading this you are most likely on the website for A WorkLife FrameWork.  Perhaps you have come here from MathGroup.  Whatever circuitous route has brought you here, you really should take a moment to download a trial copy of A WorkLife FrameWork.  It's a great product and will help you with all sorts of things. It extends Mathematica in all sorts of useful directions—and the simple function that follows is one of a huge number of such extensions.

Give it a go.  Please. And if you find it useful, it is quite inexpensive and is like getting several thousand hours of my consulting time  for about a single hour's cost.

Ok, so that's not enough to get you interested?  Then take a look at the screencasts to get a better sense of a small bit of A WorkLife FrameWork's scope and usefulness.

OK, I'm done with my marketing spiel.  Now on to the code—hot off the press with the ink still drying.

Here, first is the code (jump past it for continued discussion; also, you can download a Mathematica notebook with this blog post in it—including the code—by using the "Notebook" link at the end  of the post):

"BE3400283395_1.gif"

"BE3400283395_2.gif"

"BE3400283395_3.gif"

It turns out that this was trickier to do than I first thought.  The problem is not processing the notebook's private Stylesheet.  Rather the problem is figuring out how to get the NotebookObject for that Stylesheet notebook.   It's there, but the Mathematica function Notebooks[] doesn't show Stylesheet notebooks.  This is by design.  So one needs a trick to figure it out. And embedded in this code is a trick that I figured out.  

Now this piece of code seems to work fine (well, you should add a check to make sure that the notebook nb is open).

But, I started to write this blog posting and, as I was writing it I realized that I could do this in a much simpler way.  So between the previous two paragraphs I rewrote the code and came up with what follows.  But I decided to leave the previous bit of code above in this blog posting because it shows something that is pedagogically interesting—at least I think so, and I learned something...

So here is the revised version of the code (which also needs a check for whether the notebook, nb, is actually open. (That's easy to do, but the way I do it is to use a function, NotebookOpenQ, that is inA WorkLife FrameWork, but I want to make this posting independent of that.  One way to do it is to evaluate NotebookInformation[nb] and if it doesn't return $Failed then nb is open...)

The function FE`InstallDialog`InstallDialogFunc is not documented in Mathematica, but it does the job that is required.
  
Normally one would try to use

FrontEndExecute[FrontEndToken["Install"]]

which is documented.  However this doesn' t work.  This is because, although the Install FrontEndToken is documented, it actually is not implemented in Mathematica.  I checked this out with the developers at Wolfram Research and they say that it is a documentation oversight that it is included in the documentation (though I personally think that it should just be implemented) and that the internal function FE`InstallDialog`InstallDialogFunc is what can be used instead.   Of course this makes the code slightly fragile as this function, or its name, may change in future versions of Mathematica.   But for now the function does work ...

Here's the revised code:

"BE3400283395_4.gif"

"BE3400283395_5.gif"

"BE3400283395_6.gif"

"BE3400283395_7.gif"

Now, that really is a bit simpler.  I will sit on it a bit, add a bit of functionality, and then add it to the StyleSheetsPalette for A WorkLife FrameWork for easy use.

Perhaps I should have thought a bit more before coding the first version, but I learned something from the process...

So, I hope that you find this useful.

"BE3400283395_8.gif" Now, go download the fully functional trial version of A WorkLife FrameWork. It's worth spending some time with...

Permalink   Notebook Version

Where is WorkLife Going?  And why was version 2.0 ready when Mathematica 6 was released?

Posted on: Saturday 7/28, 2007;  3:04 PM

Just a few thoughts on the development path for  A WorkLife FrameWork...

With  A WorkLife FrameWork I take an incremental development approach.  As I use it, and as users feed me with questions and suggestions, I modify and add features.

With the release of Mathematica 6 there was a major transition for A WorkLife FrameWork: the simple (but by no means trivial) transition to Mathematica 6 compatibility.

In fact, A WorkLife FrameWork was the first Mathematica 6 compatible add-on (though I waited to announce this for some weeks afterwards).  A WorkLife FrameWork 2.0 was ready, and Mathematica 6 compatible, several weeks before the May 1st release of Mathematica.

Why was this possible?  The simple reason is the incremental development approach that I take with  A WorkLife FrameWork.  All along, through the many alpha and beta releases of Mathematica 6, I continued to add to and modify A WorkLife FrameWork as I have all through the history of its development.  As developmental bugs and features were fixed and honed by Wolfram in Mathematica 6, I made associated changes to A WorkLife FrameWork.  And, when Mathematica 6 hit the streets,  A WorkLife FrameWork was right there with it.

The continued development of  A WorkLife FrameWork follows the same path.  I modify and add to it pretty much a bit each day, and I constantly use the development version, so it is being tested as it is being created—and I am a hard taskmaster.

A WorkLife FrameWork was originally developed with Mathematica 5.0, 5.1, and 5.2.  And with version 2.0 on I am developing it with Mathematica 6.  For this reason it is compatible with Mathematica 5.1, 5.2 (A WorkLife FrameWork version 1.2) and Mathematica 6 and greater (A WorkLife FrameWork version 2.0 and higher).  [[The reason why it is not compatible with Mathematica 5.0 is because too many features would not be available with the limitations of Mathematica 5.0 relative to higher versions.]]

In a way,  A WorkLife FrameWork is the most sophisticated (and I think, the most useful) Mathematica program that leverages the Mathematica FrontEnd.  In creating it for Mathematica 5.1 and 5.2 I pushed many of the limits of what is possible with FrontEnd programming for those versions of Mathematica.

But, with the appearance of Mathematica 6, the floodgates are wide open with regard to huge sets of possibilities for new features for future versions of  A WorkLife FrameWork.  And my incremental development approach is ideal for folding many new Mathematica 6 catalyzed techniques and features into A WorkLife FrameWork over time.

Another aspect of my incremental development approach is that I release new versions of  A WorkLife FrameWork quite frequently so that its users can get their hands on the new features and enhancements as quickly as possible.  (And, as I mentioned above, many of these come from user requests.)

So, in a way, the purchase of a license to  A WorkLife FrameWork is a purchase of an ongoing consulting service, but for a vastly low price (and, though I know that generally this is not the way that folks visualize the value content of a product, the $149.95 price of  A WorkLife FrameWork [$99.95 for academics, students, and retired persons] buys you something like 2000 hours of prior consulting time and more into the future).

Here, just as a teaser is the look of a new palette in the development version of  A WorkLife FrameWork: an Outlining and SlideShow Palette:

"BE3394638276_1.gif"

This is still in a new state, and I am likely to add features to it before release.  But if you have a particular suggestion, please send it to me!

Permalink

A Practical Matter: Restarting WorkLife

Posted on: Tuesday 17/7, 2007;  10:28 PM

There will be times when using Mathematica that you will want to kill (quit) the Kernel without completely restarting Mathematica. For example if you have a computation running that seems to have locked up your Mathematica session, and for which choosing the Evaluation »Abort Evaluation menu command has no effect, you can terminate the Kernel session (but still leave the Front End running) by using the Evaluation »Quit Kernel sub menu.

However, once you have done this, the new Mathematica Kernel that starts when you do your next evaluation does not know about A WorkLife FrameWork, since it has not yet been loaded in that Kernel.  But, the palettes that you had open during before you quit the Kernel make it seem as though A WorkLife FrameWork is available to you. But it is not, and if you try to use the palettes that left over, you will likely get a bunch of error messages.

So, what to do?

What to do.

The simplest approach is to just execute

"BE3393714489_1.gif"

in a fresh notebook.  This will load A WorkLife FrameWork and, in the process of doing so, A WorkLife FrameWork will detect the old palettes, close them, and open them in the configuration that they were last in.

Another approach is to open the LoadWorkLifeFrameWork palette that appears on Mathematica's Palettes menu.  This palette has a single button which, when clicked, will load A WorkLife FrameWork.  There is one caveat here—this is that the LoadWorkLifeFrameWork palette may appear behind the left over palettes from your previous Kernel session.  To solve this simply close these left over palettes by using their window's CloseBox.  (Note that I do mean the CloseBox and not the Palette's "Close" button—use of the latter will elicit error messages.)

Permalink

Recent Posts

Blogged From
A
WorkLife FrameWork

RSS Feed

11/19, 2008; 10:28 AM:
Mathematica 7 and A WorkLife FrameWork 3.0
11/17, 2008; 2:51 PM:
A Notebook Tagging Tutorial
4/18, 2008; 2:41 PM:
The Mathematica Documentation Center
3/2, 2008; 3:01 PM:
Security Tools
12/9, 2007; 11:26 PM:
December Discount
10/1, 2007; 10:09 PM:
Creating a new Stylesheet: an exercise in refinement
7/28, 2007; 2:04 PM:
Where is WorkLife Going? And why was version 2.0 ready when Mathematica 6 was released?
7/17, 2007; 9:28 PM:
A Practical Matter: Restarting WorkLife
7/10, 2007; 10:12 PM:
Almost nothing to do with A WorkLife FrameWork, but time will tell...
6/28, 2007; 12:01 PM:
A WorkLife FrameWork: It is Many Applications...
6/19, 2007; 9:59 AM:
A New Screencast: Getting Started
6/15, 2007; 9:33 AM:
Notebook History comment...
6/10, 2007; 9:07 PM:
Nonlinear Work Habits and Tagging
6/10, 2007; 5:29 PM:
A Palette for Standard Packages
6/9, 2007; 10:19 AM:
A discussion

Archive


Links
Mathematica
Mathematica Google Group
Scientific Arts
WorkLife

All material on this website Copyright © 2005-2009, Scientific Arts, LLC.