Tag Archives: MCslp Coalface

Podcast Producer Variables

The first of a new series of articles on using and extending the functionality of Apple’s Podcast Producer has just been published (see Podcast Producer: Anatomy of a Workflow).

One of the things that you might find useful when working with Workflows in Podcast Producer are the properties that are defined automatically when a podcast is submitted for processing. These runtime properties are used to specify information such as the source file name and job name. You need these within the action specification to select the input file, Podcast title, description and other parameters to process the content.

The combination of standard properties, and job specific properties, are combined together into a file called properties.plist that becomes part of the Workflow specification that is submitted for processing. Because global properties can change or be modified, by copying the specification into the properties.plist file during assembly, the system can ensure that the configuration at the time of submission of the podcast is used. This helps to prevent problems if the job gets queued and the configuration changes between submission and processing.

The dynamic properties submitted as part of the job will differ depending on the submission type, but the main properties generated are shown in the table below.

Property Description
Base Directory The base directory for the Podcast submission. The directory is automatically created within the shared filesystem when a new job is submitted to Podcast Producer. A new universally unique ID (UUID) is created and used as the directory name. All of the resources for the submission are then placed into that directory. This information is required so that actions can
access the raw contents.
Content File Basename The basename (filename without extension) of the source content.
Content File Extensions The extension of the source content.
Content File Name The full filename (basename and extension) of the source content.
Date_YYYY-MM-DD The date of submission for the podcast. The property demonstrates the format of the date (year, month, day).
Global Resource Path The path to the global resource for this instance of Podcast Producer. The directory holds all of the global resources (such as organization specific videos, preambles, and introductions) that can be used during processing.
Podcast Producer URL The URL of the Podcast Producer server. This is used when communicating information back to the Podcast Producer instance.
Recording Started At The date/time when the Podcast was started. This information is represented as the number of seconds since the epoch.
Recording Stopped At The date/time when the Podcast was stopped. This information is represented as the number of seconds since the epoch.
Server UUID The UUID of the server to which the podcast was submitted.
Shared Filesystem The base directory that holds all Podcast information. This directory is set within the General Settings portion of the Podcast Producer section of Server Admin.
Title The title of the podcast, as set by the user when the job was submitted using Podcast Capture.
User Full Name The full name of the user that submitted the job. When a job is submitted by Podcast Capture, the user must login to the Podcast Capture application. It is these credentials that are used to identify the user.
User Home Directory The home directory configured for the user.
User ID The user ID of the user that submitted the podcast.
User Short Name The shortname (login) of the user that submitted the podcast.
Workflow Bundle Path The path to the Workflow Bundle that was selected when the job was submitted. This will be one of the Workflows configured in the system and selected at the point of submission from within Podcast Capture.
Workflow Resource Path The path to the Resources directory for the Workflow selected when the job was submitted.
Xgrid Job Name The Xgrid job name. By default, the job name is a combination of the job title, the user?s full name, and the name of the Workflow that was selected. You can control this within the individual workflow, but often the standard configuration is enough for you to be able to identify the job as it progresses through the Xgrid processing stage.

These dynamic properties are vital to the execution of an individual action as they provide the unique properties required to process an individual podcast processing request.

MySQL on i5/OS

i5/OS doesn’t immediately strike you as the most natural environment for running MySQL, but in fact, there some advantages and benefits of making use of the hardware and i5/OS environment. The System i environment used with i5/OS is scalable, and the i5/OS itself provides lots of benefits over the control and separate of work.

Obviously another key advantage is that if you are already using i5/OS for your application, then being able to plug in MySQL into that equation on the same machine makes a big difference. For those companies and organizations that already have a business application on their server, you can use MySQL in combination with ODBC or more direct interfaces such as PHP to provide a web interface to your business application all in the same box.

MySQL works through PASE (Portable Application Solutions Environment) which allows AIX applications to run directly on i5/OS through a direct application binary interface.

As a supported platform for MySQL 5.0 we obviously have instructions for installing MySQL into your i5/OS environment. Once installed, MySQL on i5/OS works just like any other MySQL installation.

However, if you want a more complete view of the support, environment, and deployment of MySQL on i5/OS and more detailed instructions for setting PASE and your system to accept MySQL, then check out the IBM Redbook Discovering MySQL on IBM i5/OS.

MySQL Topics now added directly to the reference manual

Last week I mentioned that we had added a topic-based interface to the MySQL documentation to make it easier to go to specific topics, identified either by your needs, user type or technology.

It occurred to me at the end of the week that the information is just as useful when reading the documentation, so you can go direct to a topic within the online reference manual, rather than trying to work out what chapter it is in.

This works in all reference manuals, whether you are viewing the online HTML version:

Topics embedded in the reference manual, HTML

Topics embedded in the reference manual, HTML

It also works in all the offline versions, including HTML and PDF, as here:

Topics in the reference manual, PDF

Topics in the reference manual, PDF

For those topics that are outside the normal scope of the manual, such as all the standalone guides, the links take you to the online version of those guides directly.

General Purpose vs Specialized systems

Yesterday at Computerworld I talked about the X4150 and how it fits into a general purpose piece of hardware that can easily be redeployed and reused.

Interestingly I’ve just found this item in my blog post queue from way back in 2006, Jonathan Schwartz: The Rise of the General Purpose System, where Jonathan pretty much spells out that general purpose was the way to go. Obviously the X4150 is an embodiment of that belief.

MySQL 5.1 Cluster DBA Certification Study Guide now everywhere

If you want to get certified for MySQL Cluster then there is only one guide that you need, the MySQL 5.1 Cluster DBA Certification Study Guide.

Since the move to Sun, we have changed the method that you can get the title. You can now order a ‘print-on-demand version of the guide directly from Vervante. You can go ahead and order a copy now using this link.

If you think you want the book, or just want a read anyway, but don’t want to commit to buying the full guide, then you can read three of the key chapters in their entirety on docs.sun.com. You can read the chapters online here.

As always, let us know what you think, whether thats about the chapters on docs.sun.com, the guide itself, or what you think of the printed Vervante guide.

Wanted: GUI developer for MySQL Enterprise Monitor

One of the great things about working on great products is that you get to meet such intelligent and interesting people. I can apply that to everybody that I work with, but there are some teams where not only are they working on great products, they are also all great people just to spend time with.

I have had the good fortune of working with the MySQL Enterprise Monitor team as an advisor, and more recently in writing the documentation, for the last 18 months. We’ve had some great fun at meetings in Amsterdam, Heidelberg, Santa Cruz and recently Riga. In the meeting rooms we are professional, but fun. But in the evenings we’ve gone out and just had plain good fun. Unless you’ve experienced a full day, or even week, of non-stop meetings for 12 hours a day you have no idea how important it is to kick back i the evenings. That, as a team, we are still able to have a good time at the end of each day while still being in the same room together is a good indication of how well we all get on.

Why am I telling you this? Because there is an opportunity to come and work for MySQL Enterprise Monitor team as a GUI developer, and if you are going to join us, you need to be as much fun at the dinner table as you are in the meeting room.

We are looking for talented people, obviously, and you are going to need to be good both with the design and the programming aspects of the GUi development. We use frameworks like Hibernate and Spring, and build our interfaces using DHTML and AJAX. If you know about MySQL and scale-up/out environments, that would be even better.

If it sounds like a good fit for you, and you just happen to want to have a good time to boot, apply here.

What they don’t tell you on the official pages is how much you will be expected to also get on with the rest of the team. It’s really important, because when we have those meetings we’ll be looking to the new guy to provide us with entertainment and interesting stories, at least until the next guy comes along.

MySQL Documentation by Topic

The MySQL documentation is huge. In fact, it can sometimes be difficult to get a handle on exactly how big. The main reference manual is large by most documentation standards, the MySQL 6.0 reference manual is almost 2400 pages in length now. Keep in mind that we also have 4.1, 5.0, 5.1 and 5.1-Maria manuals, in addition to the GUI tools, NDBAPI and other material that we produce and you realize that there are thousands of pages of documentation to wade through, if you want.

We’ve toyed for ages with different methods of splitting up the manual and making it more accessible, but the reality is that different manuals introduce other issues, and wouldn’t actually solve the issue of finding information in the online manual. The situation isn’t helped by the fact that we have traditionally listed our manuals by their titles, not, necessarily, by what they contain and what you might want to know.

For an example, imagine that you are a Java developer working with MySQL. If you went to the main documentation page how would you know to look in the reference manual, then the Connectors and APIs chapter, and finally the Connector/J section. Let’s ignore, for the moment, the issue of different versions.

This weekend we have hopefully solved all of that by introducing a new table at the top of the page that provides you with a direct interface into parts of the manual by topic. You can see a screenshot of the new topic table here:

MySQL Documentation by Topic

MysQL Documentation by Topic

The topics are divided by the potential user that you are - for example, Developer, Administrator, etc - and some are by functionality or feature, such as HA/Scalability or the Connectors.

There is a mixture of documentation provided through the table:

  • Some are links straight into a corresponding section of the 5.1 reference manual. For example, the Spatial Extensions link takes you to that chapter in the manual.
  • Some are standalone guides. We have had the MySQL Version Reference and Connector manuals as standalone for a while now, and you can download HTML and PDF versions of those guides like before. Others are new. The Security Guide, for example, takes information straight from the reference manual and puts it into a new standalone, downloadable, guide.

All of the documentation is up to date - the standalone guides are not snapshots of the documentation. If we update the main reference manuals, the standalone guides will be rebuilt too.

Already we have a pretty good list of top-level topics here, and standalone guides. Windows users, for example, should appreciate the new Windows-specific deployment guides.

But we want more ideas for standalone guides, and more ideas for topics and sections of the manual to be highlighted on this page. What don’t we have listed in that table that you want to see. Let me know!

MySQL University Sessions

We are looking at the MySQL University session list at the moment and would like to see some more topics and ideas for future sessions.

The original purpose of MySQL University sessions has been to cover some technical content on the internals of MySQL, but we’re looking into spreading out and looking in to more general areas.

For example, how about these for some ideas on potential sessions:

  • How to start a local MySQL user group
  • Using MySQL with different connectors
  • Using MySQL in different applications (including programming and/or end-user applications)
  • Making the best of MySQL on different platforms (our recent MySQL/Solaris session is an example)

These are just off the topic of my head, so don’t take these as hard list, I’m sure you can come up with some better ideas than these.

If you have any idea, leave it in the comments.

Automatic example generator

I wonder whether there is a market for creating an automated example generator for different projects.

I’m just doing a piece on XML schemas and would love to be able to create a ready to run sample of SOAP and WSDL XML files without having to actually create the example by hand. Just a quick ‘give me this function, these arguments’ and have it generate it.

Years I go I thought about this for things like contacts and book projects.

More MySQL UC 08 Videos

Hopefully you can’t get enough of the UC08 videos (and thanks to Sheeri for the link with the full Jonathan keynote video), so Zack has managed to get some most posted.

This morning, we learned what it meant to be a pirate in terms of patents, copyright and now politics with the Pirate Party. Don’t let the scary name put you off – these guys are about making all of us consumers (of software, video, audio, books, etc.) more in control of information. Please support these guys by visiting Piratpartiet.se.

Next we had the Scalability Panel with representatives from Facebook, Fotolog, Sun, YouTube, Flickr and Wikipedia talking about the problems (and some of the solutions) they have taken to approach the bane of any web company.

One option for scalability of course is just not to cover the problem yourself. Skip the issues of server rooms and use Amazon’s various services (EC2, S3, etc). If you need convincing, try Werner Vogels’ talk.

Yesterday, in a short but sweet visit to the podium, Rich Green talked about MySQL and Sun and it will all work. If you have concerns about the integration, this is a good place to get the situation from the guy who will make sure it doesn’t go wrong. And of course Rich will answer to Jonathan.

Marten talked about the significance of Storage engines and the significance of your data.

For a full list, try Zack’s profile page.