Anomaly Jobs for Users

PUGGY Talk Night Feb 12, 2006

Announcement: King shouts, "The Talk Night, Anomaly Jobs for Users, will be beginning in ten (10) minutes! @tel #399 to join the fun!"

King ouches..."Okay, thank you to everyone for attending this Talk Night entitled, Anomaly Jobs for Users. I'd like to introduce the host, Grey, who will be doing all the talking.

Grey waves. Thanks for coming out, everyone. First, could I see a show of hands for people who -have not- used Anomaly Jobs before?

Aelionn handraises.

Sabine raises her hand.

Quartz has arrived.

Grey says, "Alright. So looks like just two of us. Since most of us have used Jobs, I will focus on the changes from Jobs 4 to Jobs 5, but I will try and give you guys information on the system so you're not lost. Anomaly Jobs is the brain child of Starfleet from Anomaly TrekMUX. Due to some access problems he can't be here to do this himself, so I'm helping out."

Grey says, "The goods news about Jobs 5.0 is that, for day to day use, very little has changed. Most of the commands behave in the same way. The default jobs install looks the same. However, never fear. There is stuff for us to talk about tonight. The agenda for tonights talks looks like this:

  1. General introduction to Anomaly Jobs.
  2. +jobs/list
  3. +job/set
  4. Skins
  5. Customizing your personal jobs list
  6. Job Tracking - Old vs New
  7. +jobs/reports
  8. +job/query
  9. +job/publish
  10. +job/mail
  11. +jobs/summary"

Grey says, "If you have something you'd like to see added to the agenda, please page me."

Guest1 enters from the Forum.

Guest1 has arrived.

Grey says, "Aside from Kris and Erin, and the PUGGY people here, is anyone else using Jobs 5 yet?"

Quartz echoes that.

Grey says, "Alright then, so lets dive into the talk. Anomaly Jobs is a highly featured task and project tracking system. There are, quite literally, tons of commands for handling jobs and projects. However, like any project system, it only useful if one thing happens. All staff need to use it. All requests and tasks need to be tracked through the system. The power to Jobs comes from all tasks being publically, within the staff circle, tracked. If someone needs to take time off suddenly or is not handling their work, then the tacks are there with notes for others to pick up and handle. This is obviously better than @mail, since @mail is not shared automatically with everyone."

Molikai has only limited experience of the Jobs system from his days on metro. No /idea /what version that was.

Ack has arrived.

Grey says, "The system use what are called 'buckets'. You can think of them as categories, or types. They let you sort jobs. There are buckets for CODE, which are obviously code projects, and TPS, for Tinyplots, and so on. Plus each game can add their own buckets."

Grey says, "I've installed a local job system here, so everyone can do '+job 2' to read a test job I set up."

Output from '+job 2':
================================| View Job 2 |=================================
   Bucket: CODE                              Due On: -
    Title: +where Bug                        Status: Yellow (New)
Opened On: Mon Feb 13 19:38:02 2006     Assigned To: Nobody
Opened By: Grey
-------------------------------------------------------------------------------
[1-] Grey added on Mon Feb 13 19:38:02 2006: This is just a test job for the
talk night.
=================================| [Myjobs] |==================================

Grey says, "You can see this is a CODE job about a +where bug. I'm going to do a few things to job, so show you guys who aren't so famliar with Jobs how the system works."

Grey | +job/assign 2=mark

JOBS: Job 2 has been assigned to Mark by Grey.

Grey says, "This means what Mark is now assigned to handling this job and fixing the code bug."

Grey | +job/due 2=03/01/06

JOBS: Due date for job 2 set by Grey.

Grey says, "And that's a due date of March 1, 2006. That gives Mark a few weeks to work on it."

Grey | +job/add 2=I think that the problem is what +where is grabbing all connected players, even dark staff.

JOBS: Comments added to job 2 by Grey.

Grey just adds a comment to the job with more information. You can continue to add comment after comment to the job to track stuff as it progresses.

Grey says, "Now we'll pretent Mark has done some work on the job and almost has the bug fixed, so he wants to set the status."

JOBS: Comments added to job 2 by Mark.

Jeckel has reconnected.

JOBS: Status set to 3/4 COMPLETE on Job 2.

Grey | +job/set 2=75

Grey says, "And one last one. This is a bad bug, so we want it treated as very important."

Mark notes people should jump in with questions anytime.

Grey | +job/esc 2=red

JOBS: Job 2 set to RED priority by Grey.

Grey says, "So now if you look at the job again, you can see all of this changes reflected in the job."

Output from '+job 2':
================================| View Job 2 |=================================
   Bucket: CODE                              Due On: OVERDUE!
    Title: +where Bug                        Status: Red (On Hold)
Opened On: Mon Feb 13 19:38:02 2006     Assigned To: Mark
Opened By: Mark, Grey, and King
-------------------------------------------------------------------------------
[1-] Grey added on Mon Feb 13 19:38:02 2006: This is just a test job for the
talk night.
-------------------------------------------------------------------------------
[4-] Grey added on Mon Feb 13 20:18:49 2006: I think that the problem is what
+where is grabbing all connected players, even dark staff.
-------------------------------------------------------------------------------
[5-] Mark added on Mon Feb 13 20:19:59 2006: This bug is more complicated than
I thought. It may take some more time.
=================================| [Myjobs] |==================================

Grey says, "Any questions so for about how Jobs works or the idea behind it?"

Mark says, "Give us an example of how, in general, it used to track things on Anomaly."

Aelionn says, "What do the numbers in brackets mean?"

Grey says, "You mean the (75%)"

Grey says, "Or the [1+]?"

Aelionn says, "1+"

The Immortal has arrived.

Grey says, "I am going to leave the + and - part until later, as that is part of my talk about +job/publish. However, the numbers refer to comments. You might note that it skipped from 1 to 4, which seems odd. Where did comment 2 and 3 go? Well, the system tracks everything. Let's do '+job/act 2'."

Putput from '+job/act 2':
=============================| View Job Number 2 |=============================
   Bucket: CODE                              Due On: OVERDUE!
    Title: +where Bug                        Status: Red (On Hold)
Opened On: Mon Feb 13 19:38:02 2006     Assigned To: Mark
Opened By: Mark, Grey, and King
-------------------------------------------------------------------------------
Feb 13 19:38:02 2006 CRE Grey            This is just a test job for the tal
Feb 13 20:16:45 2006 ASN Grey            Assigned to Mark.
Feb 13 20:17:32 2006 DUE Grey            Due on Wed Mar 01 23:59:00 2006.
Feb 13 20:18:49 2006 ADD Grey            I think that the problem is what +w
Feb 13 20:19:59 2006 ADD Mark            This bug is more complicated than I
Feb 13 20:20:17 2006 STA Grey            Set to 3/4 COMPLETE.
Feb 13 20:21:00 2006 ESC Grey            Priority To RED.
===============================================================================

Jeckel has partially disconnected.

Aelionn says, "I see. 2 and 3 are where you updated the job, but it is not necessarily a comment."

Grey says, "You will see that 'comment 2' is me assigning the job to Mark. Since that is covered in the header by the 'Assigned To: Mark' comments about assigning the job aren't displayed in the main body of the job. They're just extra info. Ditto for comment 3, which was setting the due, comment 6 which was setting the status and comment 7 which is setting the priority."

Grey nods. They're not commnets that need to be shown, no. So they are still there so we can always see all the actions in a job, just some stuff just isn't needed normally so you only see it with +job/act.

Grey says, "Any other questions."

Faolin has arrived.

Guest2 has arrived.

Aelionn smiles. "Nope. You said you'd get to + and - later."

Grey gives everyone a moment for questions about that.

Mark points to +job 2 to look over what we've been discussing for Guest2

Grey says, "+jobs/list is a new command. Its a basic change in the system. Previously you would do '+jobs/code' to see all the jobs in the CODE bucket. Now you would use '+jobs/list code'. Its pretty straight forward. You can see the help file '+jhelp jobs/list'."

Putput from '+jobs/list code':
=============================| Anomaly Jobs v5.0 |=============================
*  Job# Type  Title                          Due On   Assigned To      Status
-------------------------------------------------------------------------------
      2 CODE  +where Bug                     --HOLD-- Mark             ON HOLD
*    16 CODE  BUG: +where bug                -------- -                  NEW
===============================================================================

Grey says, "This is obviously pretty straight forward and just a minor change. I don't think anyone will have questions about that, so I will move along in a moment."

King pauses. I know, but others don't...+jhelp? Is that something local to here, or is it a new feature?

Mark says, "+jhelp is local to here. It can be incorporated into any games +help system"

Grey says, "Its really neither."

Grey says, "MUX allows you to have different 'helpfile's. So rather than adding the Jobs stuff to +help, we just tossed all the stuff into +jhelp. Its makes it easy since all Jobs stuff is in one location."

Grey says, "+job/set has changed. Before the command used a scale from 0 to 6 for setting the status, and the scale wasn't intuitive. Now it uses 'hold', 'new', 'underway', '25', '50', '75' and '100' to set the status. You can see the helpfile '+jhelp job/set'."

Grey says, "I know many of us used to misremember what '1' or '3' meant and set the wrong status on the job. Now the settings are all pretty clear."

Grey says, "If you want to play with +job/set, feel free to change the status on Job 2 with '+job/set 2=<status>'"

Grey gives everyone a couple of minutes to use the command, and to ask any questions.

JOBS: Status set to ON HOLD on Job 2.

Azazel has arrived.

Guest1 has disconnected.

Grey says, "One more moment and I will move on."

Azazel says, "That is a much better way to set the status, I always have to look it up to set it so most of the time I just dont"

Grey nods. Yeah. And if you forget, the error message gives you the list too, so '+job/set 2=sfasfsa' is a quick reminder.

Grey says, "Jobs 5 includes the ability to 'skin' the look of the Jobs system. The install comes with two skins, the 'Default' skin which looks like the normal Jobs and is used by default, and 'Chrome', a contrast based skin. Setting the skin is covered in '+jhelp uconfig2', though for the moment don't worry about reading that."

Grey says, "I'd like everyone to do '&jobskin me=chrome' and then '+jobs', to see the Chrome skin in play. Now, every game can create their own skin, however that is covered in next weeks talk night."

Grey says, "You can also read the job with '+job 2' to see the new skin."

Output from '+jobs' while using the DEFAULT skin: (bear in mind colors are not shown)
=============================| Anomaly Jobs v5.0 |=============================
*  Job# Type  Title                          Due On   Assigned To      Status
-------------------------------------------------------------------------------
*     1 TPS   TPS Demo                       -------- -                  NEW
      2 CODE  +where Bug                     --HOLD-- Mark             ON HOLD
*     3 PITCH This is a whacky idea          -------- -                  NEW
==========================| * Denotes New Activity |===========================
Output from '+jobs' while using the CHROME skin: (bear in mind colors are not shown)
__| Anomaly Jobs v5.0 |________________________________________________________
*  Job# Type  Title                          Due On   Assigned To      Status

      1 TPS   TPS Demo                       -------- -                  NEW
      2 CODE  +where Bug                     --HOLD-- Mark             ON HOLD
      3 PITCH This is a whacky idea          -------- -                  NEW

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~| * Denotes New Activity |~~
Output from '+job 2' while using the DEFAULT skin: (bear in mind colors are not shown)
================================| View Job 2 |=================================
   Bucket: CODE                              Due On: OVERDUE!
    Title: +where Bug                        Status: Red (On Hold)
Opened On: Mon Feb 13 19:38:02 2006     Assigned To: Mark
Opened By: Mark, Grey, and King
-------------------------------------------------------------------------------
[1-] Grey added on Mon Feb 13 19:38:02 2006: This is just a test job for the
talk night.
-------------------------------------------------------------------------------
[4-] Grey added on Mon Feb 13 20:18:49 2006: I think that the problem is what
+where is grabbing all connected players, even dark staff.
-------------------------------------------------------------------------------
[5-] Mark added on Mon Feb 13 20:19:59 2006: This bug is more complicated than
I thought. It may take some more time.
=================================| [Myjobs] |==================================
Output from '+job 2' while using the CHROME skin: (bear in mind colors are not shown)
__| View Job 2 |_______________________________________________________________

   Bucket: CODE                              Due On: OVERDUE!
    Title: +where Bug                        Status: Red (On Hold)
Opened On: Mon Feb 13 19:38:02 2006     Assigned To: Mark
Opened By: Mark, Grey, and King

 1: | Grey |                                         Mon Feb 13 19:38:02 2006
    This is just a test job for the talk night.

 4: | Grey |                                         Mon Feb 13 20:18:49 2006
    I think that the problem is what +where is grabbing all connected players,
even dark staff.

 5: | Mark |                                         Mon Feb 13 20:19:59 2006
    This bug is more complicated than I thought. It may take some more time.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~| MYJOBS |~~

Aelionn nods.

Grey says, "Aelionn, I will note that in the Chrome skin the 'Published' part replaces the + - from earlier. However, I will still go into detail later on about that."

Grey says, "I should mention also for new PCs here, that turning on ANSI will display more of a difference, as its not just the look that changes with the skins, but also the colours."

Grey says, "Using the skins are straight forward (unlike coding one, obviously), but does anyone have any questions about skins?"

Azazel says, "I fail to see a difference"

Molikai says, "Did you &jobskin me=chrome"

Molikai says, "2?"

Aelionn says, "And you can customize the skin further yourself?"

Erin says, "How do you handle the possibility (aside from saying turn ANSI off) that with many default client settings, background coloration often decreases legibility?"

Grey says, "Aelionn, yes. You can either customize the skin or create a whole new one. That's on the agenda next week."

Grey says, "Azazel, the difference Azazel is mostly just in coloring and a little bit in layout. Obviously when we still need to display the same information, there is only so much changes we can make. But if you do '&jobskin me=chrome' and then '+job 2' and then '&jobskin me=' and '+job 2' you should see a difference in the look and feel."

Azazel says, "Oh, damn did &jobsskin. My bad, carry on. =P"

Grey says, "Erin, there is only limited control for that. Personally the Chrome skin is hard for me to read with my client. If you like a skin like chrome, but parts are hard to read you'd need to work with the coder on your game to tweak the colours some to make it less painful to read.'"

Grey says, "The nice thing is that, while colourful, the Default skin tends to be easy to read on pretty much any client."

Grey says, "Yes, jsut one 's'. :)"

Mark says, "Skins let you tailor to a particular game's output. You can tweak from there."

Grey says, "Did I answer everyone's questions? Any other questions?"

King nods. And if done right, speaking as someone that has seen the outcome, skins look really cool.

Grey says, "You can see another skin, the LCARS one from Anomaly in http://anomaly.reavan.net/lcars.jpg"

Grey says, "Its just a test report with nothing important data wise, but it will give you an idea of how flexible skins can be."

Molikai says, "Pretty.."

Sally says, "I love the skins!"

Grey says, "Now, since no one else seems to have questions I'm going to move on to another option for customizing the look of Jobs."

Grey says, "While the feature is not new to Jobs 5, it is relatively new to the Jobs system, so I will talk about it here. You can customize how the Jobs list is displayed and what information is shown. For example, do '&jobs me = #fBt' and then type '+jobs'. You'll see that the job list looks different. I'm going to let everyone play with it a little bit. You can read '+jhelp uconfig' to see the options for the jobs list, and try setting a few combinations on yourself."

Grey says, "So, for those of you playing around, you can see that this lets you change the data and the order of the data you see in the lists of +jobs. It lets you tailor things to your personal preference."

Grey says, "Anyone have questions on those settings?"

Faolin asks, "Where do I find what the job flags are?"

Grey says, "You can look at '+buckets'. They are in the footer. They're in the help somewhere too, but I don't recall the file off the top of my head."

Ouput from Wizard Level '+buckets':
================================| Bucket List |================================
Name     Flags   Description                   #Jobs  Pct   C  A  D  Due   ARTS
-------------------------------------------------------------------------------
BUILD   V---M--  For building issues and typo r    1   7%              0      -
CODE    V---M--  For bugs and code enhancements    2  13%              0      -
PITCH   VH-----  Pitched plots and stories.        2  13%              0      -
PUB     V---M--  Public jobs. Everyone has +myj    0   0%              0      -
QUERY   V---M--  Query bucket.                     0   0%            168     0d
REQ     V---M--  Player requests.                  3  20%  99 99      72     0d
TPS     V---M-S  Actively running tiny plots.      7  47%              0     0d
========| V=Viewing H=Hidden P=Published M=Myjobs L=Locked S=Summary |=========

Faolin aahhs, "Okay."

Grey says, "However, they are not 'job flags' but actually 'bucket flags'. They let you know the behaviour of the bucket."

Faolin growls, "Cool."

Grey says, "We'll cover the published and summary stuff in a little bit, actually."

Mark says, "So are the viewability features the major change from 4.x to 5.x?"

Grey says, "Any other questions?"

Grey says, "No. There's more coming about actual behaviour changes."

Mark nods

Grey says, "I'm going to create a job. Please do not read it yet. Its for demoing the next thing I'm talking about. If you read it now, then I need to create another job. :)"

JOBS: New PITCH job # 3 submitted by Grey: This is a whacky idea

Grey says, "In the old versions of Jobs you you would see a notification that a Job has new activity. This meant that since you last logged out of the game, the job was either created or had comments added to it. Since the notification of new activity was based on of your last logout time, the job still showed new activity even after you read the job."

Grey says, "Jobs 5 now lets you track activity on jobs in the old default manner, which means it shows you new activity since you last logged out of the game, or in the BBS style, which means that the job will show as having new activity until you read it, and then it will not. In preparing for the talk night I found that there is a bug in the Chrome skin so this doesn't work right with Chrome, so for testing this please do a '&jobskin me=' first, then do '&jobsn me=1'. Now take a look at '+jobs' and find a job with new activity (this is why I created Job 3), then read it. If you look at +jobs again you will see its no longer marked as new."

Grey says, "Actually the Pitch bucket is not monitored by default. Let me create another job real quick."

JOBS: New REQ job # 4 submitted by Grey: This is a whacky idea

Grey says, "Job 4 will show up in '+jobs' by default."

Grey says, "Everyone tried that? Any questions about that?"

Aelionn says, "Not sure what I am looking for."

King says, "When you do a +jobs, you see the *? That denotes new activity in the Job..."

Molikai says, "the little red star in the far left."

Aelionn says, "Okay."

Grey says, "Aelionn, do '+job/create req/Test Job=Test job'"

Grey says, "Then do '+jobs' and you will see the red star beside that job."

JOBS: New REQ job # 5 submitted by Aelionn: Test Job

Grey says, "If you haven't used Jobs before its a little harder to follow. Basically when a job was new, it would stay new until you logged out. You could read it five times and it would will be new. Now you can choose to have Jobs act like the bulletin board system. You see, via the red star *, that the job is new, but once you read the job the red star goes away. Like when you read a BBS post, its no longer new."

Grey says, "But to turn on the BBS style stuff, you do '&jobsn me=1'."

Grey says, "Otherwise it just works the old way. The jobs remains new until you log out, no matter how many times you read it."

Grey says, "If you're still confused, then I can talk with you about it after the talk night finishes."

Aelionn says, "I see it. :)"

Grey says, "Cool."

Grey says, "Anyone else have questions about that?"

Grey says, "Alright, moving on."

Grey says, "Jobs now includes a ton of behaviour tracking which are displayed in reports. Almost all of this is new behaviour with Jobs 5. '+jobs/reports' will list the reports available. Please take a look through the reports with '+jobs/reports <report name>' to see some of them."

Output from '+jobs/reports':
=============================| Available Reports |=============================
Name      Description                                                      Type
-------------------------------------------------------------------------------
ACTBY     Graph of one action across all buckets                            BAR
ACTIONS   System-wide Actions                                               BAR
ARTS      Average Resolution Times by Bucket                              STATS
ARTSGRAPH Average Resolution Times Graph                                    BAR
BACT      All actions on a specified bucket                                 BAR
BUCKETS   Job Dispersal Among Buckets                                       BAR
CLOSURE   Job Closure Patterns                                              PIE
CODES     A list of system-generated action codes                         STATS
ESC       Job Escalation Status                                             PIE
JACT      Actions performed on a job                                        BAR
STATS     General System Stats                                            STATS
STATUS    Job Status Settings                                               PIE
==========================| +jobs/reports <report> |===========================

NOTE: None of the actual reports will show up properly, so they are not shown here.

JOBS: Due date for job 2 set by Grey.

Grey says, "For example, '+jobs/reports status' will show you how many jobs are new, overdue, almost done, done, etc."

Grey says, "Now that I changed the due date on Job 2, it will show up on red in that report."

Azazel says, "Woah, that is colorful"

Grey says, "Yeah."

Grey says, "Any questions about the reports? They're pretty straight forward, and a good way to get info."

milk says, "Anyone know of an ASCII to MU* program?"

milk says, "Erg, wrong area. :P"

Aelionn says, "There was a converter..."

Aelionn says, "But when I tried to google it recently, I couldn't find it."

milk wants to convert an ascii cat he recreated into MU* so he can use it. :)

Grey says, "+job/query has changed. However, we'll cover the changes in baby steps. The biggest change for +job/query is the change in how the 'Opened By' list works. Previously the job could only be opened by one person. If a mail was sent, it was sent to that one person. Now 'opened by' can be a list of people."

Grey | +job/source 2=mark grey king

JOBS: Job 2 source changed by Grey.

Mark nudges milk, "Ask elsewhere the topic is specific tonight."

Guest2 says, "http://mform.kempe.net/"

Grey says, "Now, if you read Job 2 you will see Mark, myself and King listed in the Opened By line. Everyone see that?"

Output from '+job 2' header:
================================| View Job 2 |=================================
   Bucket: CODE                              Due On: OVERDUE!
    Title: +where Bug                        Status: Red (On Hold)
Opened On: Mon Feb 13 19:38:02 2006     Assigned To: Mark
Opened By: Mark, Grey, and King

Guest2 says, "Ascii/mush"

Erin nods.

King nods. Yeppers.

Faolin sees it.

milk nods to Mark.

Azazel says, "Oh that is a great addition to the code."

Grey says, "The second change in +job/query is the QUERY bucket is now part of the MYJOBS bucket list, so jobs in QUERY are accessible through +myjobs by players."

Grey says, "Now, let me tie those two changes together."

Grey says, "The 'opened by' list controls who can see the job via +myjobs. So since you can have several people in it, you could have the job 'opened by' five players and they can all then see the job in +myjobs."

Azazel says, "Can a player open a job and mark it opened by another or can only staff add names to the opened by list?"

Grey says, "Only staff."

Grey says, "Let me take one more moment, and finish explaining the +job/query changes."

Grey says, "The last change is that when you open a new query, it sets the opened by list to all the players in the query list. They can now see the job with +myjobs, and add comments directly to the query. Before, if you recall, you would query the player and it would send @mail, but the player couldn't see the original query. If they had questions they had to +request."

Grey says, "I am going to demonstrate. Everyone is going to get a new @mail and see a new job. Please do not read either yet."

JOBS: New QUERY job # 6 submitted by Grey: Test Query

Output from '+job 6' to see new Query job:
================================| View Job 6 |=================================
   Bucket: QUERY                             Due On: Mon Feb 27 18:53:39 2006
    Title: Test Query                        Status: Yellow (New)
Opened On: Mon Feb 20 18:53:39 2006     Assigned To: Grey
Opened By: Grey, Mark, King, nails, Kris, Erin, Aelionn, Molikai, milk, and
Sabine
-------------------------------------------------------------------------------
[1+] Grey added on Mon Feb 20 18:53:39 2006: Queried Grey:

This is a test query.
=================================| [Myjobs] |==================================

Grey says, "Hm. Did anyone else get an @mail?"

Molikai says, "Mhm!"

Hel has reconnected.

King raises hand. I did.

Jeckel nods

Hel merfs

Sabine did.

milk did.

Erin says, "Yup."

King says, "You get an @mail, Hel?"

Faolin did

Kris says, "Yeah"

Grey says, "Cool. Go ahead and read the @mail and follow the instructions in it for using +myjobs."

Grey says, "So, you see how as a player using +myjobs, all of you can read the job?"

Grey says, "For those who have read it, feel free to read '+jhelp myjobs' for the commands and add a command using +myjobs."

Output from '+myjobs':
=============================| Anomaly Jobs v5.0 |=============================
*  Job# Description                              Assigned To      Status
-------------------------------------------------------------------------------
     1  TPS Demo                                 Nobody             NEW
     2  +where Bug                               Mark             ON HOLD
     4  This is a whacky idea                    Nobody             NEW
     6  Test Query                               Grey               NEW     
    12  Grey's Plot                              Nobody             NEW
    13  A player's question                      Nobody             NEW
    15  Typo Reported                            Nobody             NEW
    16  BUG: +where bug                          Nobody             NEW
===============================================================================

Molikai says, "You mean.. that.. If I as a player, Sumbit a job, I'll actually be able t osee that staff are working on it? Hmm.

Idf so, what if there's astaff debate on the item? can they limit wh osees a given comment?"

Grey says, "No. I will cover that in a bit. That's actually related to Aelionn's +/- questions from earlier."

Grey says, "But let's add some comments via +myjobs to job 6 so we have some stuff to work with for the demo."

JOBS: Comments added to job 6 by Faolin.

Hel has partially disconnected.

JOBS: Comments added to job 6 by King.

Grey says, "Come on guys, lots of comments."

JOBS: Comments added to job 6 by Erin.

JOBS: Comments added to job 6 by King.

JOBS: Comments added to job 6 by Azazel.

JOBS: Comments added to job 6 by Mark.

JOBS: Comments added to job 6 by King.

Grey says, "Alright, awesome."

JOBS: Comments added to job 6 by Mark.

Grey says, "Now feel free to look '+job 6'."

King laughs.

Mark winks

Grey says, "Note that the 'Opened By' line includes all of our names. Which is why we can see the job in +myjobs."

JOBS: Comments added to job 6 by Sally.

JOBS: Comments added to job 6 by Sally.

Grey says, "So, Aelionn asked about +/- and Molikai asked what players can see. This bring us to publication."

JOBS: Comments added to job 6 by Faolin.

Grey says, "Everyone does need to look at +job 6. You will see my first comment has a + beside the 1. Everyone else has -."

Grey says, "You will also notice in '+myjob 6' that you /only/ see my comment and your comments, not everyone else's."

Grey says, "Everyone see that?"

Faolin nods

Jeckel sees

Molikai says, "Mhm."

JOBS: Comments added to job 6 by Aelionn.

Grey says, "Let's pretend that Mark want to share Mark's comment about King with all the players. Mark wants to publish it. So Mark will do '+job/publish <job>=<comment>', or '+job/publish 6=7'"

Aelionn says, "I think I see everyone's comments."

Grey says, "In '+job 6' or in '+myjob 6' Aelionn?"

Aelionn says, "Aha."

Grey says, "In '+myjob 6' you should only see my comments and your comments."

Grey says, "+myjob is the command that players can use to interact with the system."

Molikai says, "And players can only use +myjob, correct? ;)"

Azazel nods, "Um, how would a player know what the # of the comment is? That is not shown in myjobs

Molikai says, "Huzzah."

Grey nods. For viewing Jobs. There are also the +request, +pitch, +bug and +typo for submitting jobs.

Grey says, "The player doesn't need to know, Azazel."

JOBS: Job 6/Comment 4 published by Grey.

Output from +job 6' showing comment 1 and 4 published and 3 and 5 not published:
================================| View Job 17 |================================
   Bucket: QUERY                             Due On: Mon Feb 27 18:53:39 2006
    Title: Test Query                        Status: Yellow (New)
Opened On: Mon Feb 20 18:53:39 2006     Assigned To: Grey
Opened By: Grey, Mark, King, nails, Kris, Erin, Aelionn, Molikai, milk, and
Sabine
-------------------------------------------------------------------------------
[1+] Grey added on Mon Feb 20 18:53:39 2006: Queried Grey:

This is a test query.
-------------------------------------------------------------------------------
[3-] Kris added on Mon Feb 20 18:57:04 2006: This is a test.
-------------------------------------------------------------------------------
[4+] Mark added on Mon Feb 20 18:57:14 2006: Here is some random comment.
-------------------------------------------------------------------------------
[5-] Grey added on Mon Feb 20 18:57:20 2006: Does this work?
=================================| [Myjobs] |==================================

Azazel says, "So a player can't publish their own comments?"

Grey says, "So, now I published Mark's comment. Everyone do '+myjob 6'."

Grey says, "No, they can't. Otherwise they could say something you don't want shared, and share it."

Grey says, "+job/publish is just for staff, letting us as staff share comments with the players that we want shared."

JOBS: Job 6/Comment 9 published by Grey.

Grey says, "After you look at '+myjob 6' and see that /everyone/ can read Mark's comments now, since I published them, do back and look at '+job 6'. Mark's comments now have a + beside the number, showing they are published."

Grey says, "Everyone following along? Any questions about publishing so far?"

Faolin is good so far.

Molikai says, "Tres bien."

Aelionn says, "I think so."

Grey says, "Now there is one more version of publishing -- publishing the whole job to everything is visible."

Grey | +job/publish 6

JOBS: Job 6 published by Grey.

Grey says, "Now in '+myjob 6' the player can see all the comments by everyone."

Erin says, "After the full publish, could it then be unpublished? Or is publication permanent?"

Grey says, "No, you can unpublish the job or comments again."

Grey | +job/publish 6

Output from '+job 6' showing the bottom bar indicating the whole Job is published:
================================| View Job 6 |=================================
   Bucket: QUERY                             Due On: Mon Feb 27 18:53:39 2006
    Title: Test Query                        Status: Yellow (New)
Opened On: Mon Feb 20 18:53:39 2006     Assigned To: Grey
Opened By: Grey, Mark, King, nails, Kris, Erin, Aelionn, Molikai, milk, and
Sabine
-------------------------------------------------------------------------------
[1+] Grey added on Mon Feb 20 18:53:39 2006: Queried Grey:

This is a test query.
-------------------------------------------------------------------------------
[3+] Kris added on Mon Feb 20 18:57:04 2006: This is a test.
-------------------------------------------------------------------------------
[4+] Mark added on Mon Feb 20 18:57:14 2006: Here is some random comment.
-------------------------------------------------------------------------------
[5+] Grey added on Mon Feb 20 18:57:20 2006: Does this work?
============================| [Myjobs][Published] |============================

JOBS: Job 6 unpublished by Grey.

Jeckel has disconnected.

Grey says, "The job reverts back now to how it was /before/ getting published, with Mark's two comments still individually published and the rest not published."

Grey | +job/publish 6=13

JOBS: Job 6/Comment 13 published by Grey.

Grey | +job/publish 6=13

JOBS: Job 6/Comment 13 unpublished by Grey.

Faolin was about to ask about that :)

King hehs and was too. :P

Grey says, "So the same command basically toggles the publishing, either of the comment or whole job, on and then off."

Mark feels used. :)

Grey says, "You should."

King uses Mark to clean the windows.

Grey says, "Any questions questions about /query, or publishing?"

Grey notes that you can read '+jhelp job/query', '+jhelp job/publish' and '+jhelp publication' for more details.

Grey takes the silence as no.

Faolin doesn't have any questions...yet

Grey says, "So the change in 'Opened By' also affects +job/mail, and the commands to close a job, like +job/complete, +job/approve and +job/deny. The letters for all those commands get sent to everyone on the Opened By list."

JOBS: Mail sent about job #6 by Grey.

Grey typed | +job/mail 6=This is a demonstration of how +job/mail now works.

JOBS: Comments added to job 6 by Mark.

Grey says, "You will also note, if you do '+job 6' or even use '+myjob 6', that when you send an +job/mail, that comment is added as a published command for everyone to see."

JOBS: Comments added to job 6 by Faolin.

Grey says, "Lastly, I'm going to approve this job since we're done with it."

JOBS: Job 6 has been approved by Grey.

Grey says, "So everyone on the Opened By list got an @mail with my closing comments on the job. This would have worked the same way for /deny or /complete."

Grey says, "(As a side note for those new to +jobs, normally the system posts to the BBS with information when a job is completed with /approve, /deny or /complete. However, in this case this local install isn't setup to work with the BBS.)"

Grey says, "So, any questions about +job/mail?"

Molikai says, "Nada.."

Grey says, "Then I will move on to the last scheduled topic of the day. Summaries."

Grey says, "Summaries are a little difficult to explain. We go into much more detail with configuring them next week, from the code side. However, basically summaries are a customizable sub-header. Basically they allow you to put whatever you want in the summary section and extend the features of Jobs yourself, Summaries work on a bucket by bucket nature."

Grey says, "So a normal job looks like this :"

------------------------------------------------------------------------------
                                    Header                                    
------------------------------------------------------------------------------

                             The list of comments                             

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

Grey says, "You can look at '+job 2' so see the live thing."

Grey says, "A job with a summary looks like :"

------------------------------------------------------------------------------
                                    Header                                    
------------------------------------------------------------------------------
                            Sub Header, or Summary                            
------------------------------------------------------------------------------

                             The list of comments                             

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

Grey says, "You can do '+job 1' so see the live thing."

Output from '+job 1':
================================| View Job 1 |=================================
   Bucket: TPS                               Due On: -
    Title: TPS Demo                          Status: Green (New)
Opened On: Sat Feb 11 09:20:10 2006     Assigned To: Nobody
Opened By: Grey
-------------------------------------------------------------------------------
 Approved: Yes
  Players: Erin, Grey, and nails
 Schedule: Running within the next two weeks. Must run before Plot XX.
      Arc: Illusions of Renegades
    Staff: Grey and nails
 Synopsis: A plot to discover the hidden secret behind the Puggy Underground.
-------------------------------------------------------------------------------
[1+] Grey added on Sat Feb 11 09:20:10 2006: This is a demo of the TPS bucket
summary.
=================================| [Myjobs] |==================================

Molikai says, "How'd you d odat? ;)"

Grey says, "Job 1 is a TPS summary. Jobs 5 comes with this TPS summary as part of the default install, so anyone using Jobs 5 has access to it. As you can see, the summary was configured to displayed information relating to the tiny plot the job is about. (Remember that TPS is the Tinyplots buckets)."

Grey says, "The How is covered next week Molikai. :)"

Grey says, "This week is just covering seeing it and interacting with it."

Grey says, "I want to stress this though: Every game can create their own summaries for any Job bucket. This lets you guys add to the functionality of Jobs in way that help you. A couple of games have acreate an XP bucket and summary to automatically handle processing XP requests."

Grey says, "Here on Anomaly there is a talk night bucket, with a summary to help King oraganize talk nights. Its completely flexible."

Grey says, "But let's talk about using it. Anyone who wants to play around with this, create your own TPS job. Do '+job/create tps/<My TPS Job>=This is a test TPS job.'"

Grey gives everyone a couple of minutes to do that.

JOBS: New TPS job # 7 submitted by Molikai: <My TPS Job>

Mark says, "You can give a title, Mol. :)"

JOBS: New TPS job # 8 submitted by Faolin: Money

JOBS: New TPS job # 9 submitted by Aelionn: <My TPS Job>

JOBS: New TPS job # 10 submitted by Mark: Red Herring

JOBS: Job 10 has been assigned to King by Mark.

JOBS: Job 10 set to RED priority by Mark.

Molikai says, "No, No, I Don' want t ogive it a title. It's MY TPS job!"

Mark grins

JOBS: New TPS job # 11 submitted by Erin: The Other Shoe

JOBS: Comments added to job 11 by Mark.

Grey | +bucket/help tps

Output from '+bucket/help tps':
============================| Bucket Help For TPS |============================

     This bucket is for currently active plots that are running on the grid.
Care should be taken to keep the headers of these jobs up-to-date, especially
in terms of Progress settings and due dates. When the plot is completed, the
job should be set complete and left open until follow-up requests are
completed.

-----------------------------------------------------[Settings for +job/sumset]
PLAYERS    Accepts <player> as a valid parameter.
SCHEDULE   Describe when the plot is in effect.
ARC        Describes the story arc associated to this plot.
STAFF      Accepts <player> as a valid parameter.
SYNOPSIS   A brief synopsis of the plot.
APPROVED   Wiz-only, for approving plots. Accepts 'yes' or 'no'.
===============================================================================

Grey says, "That will tell you a little bit about what the setting are, and what you can enter in this TPS summary. (remember, you guys can have you coder easily modify this for your own games)."

JOBS: New TPS job # 12 submitted by Grey: Grey's Plot

Grey says, "So lets set the player information. Everyone choose two others here for your 'players'. I will choose Erin and Mark. So I will do '+job/sumset 1/players=erin mark'"

JOBS: Job 1's PLAYERS parameter updated by Grey.

JOBS: Job 12's PLAYERS parameter updated by Grey.

Grey updates the right job too. :)

Grey says, "So you guys can do the same thing, but to you job with your choosen players."

Molikai says, "Permission Denied? *sniff*"

Grey says, "Bah. one sec."

Azazel has disconnected.

JOBS: Job 8's PLAYERS parameter updated by Faolin.

Grey says, "There, the locks will let everyone change the settings now."

Grey says, "So go ahead and update your player information on your respective Jobs."

JOBS: Job 7's PLAYERS parameter updated by Molikai.

Grey says, "We can also update the synopsis information with '+job/sumset <job>/synopsis=<info>'"

JOBS: Job 11's PLAYERS parameter updated by Erin.

Mark scurries off. "Good night & topic, Grey. Night all."

Mark goes home.

Mark has left.

JOBS: Job 12's SYNOPSIS parameter updated by Grey.

JOBS: Job 11's SYNOPSIS parameter updated by Erin.

JOBS: Job 8's SYNOPSIS parameter updated by Faolin.

Grey says, "Obviously you can update the other stuff as indicated in '+bucket/help tps'. Go ahead and play with the settings and update your stuff."

JOBS: Job 7's SYNOPSIS parameter updated by Molikai.

Grey says, "Anyone have questions about the summaries, while we play with them?"

JOBS: Job 7's SCHEDULE parameter updated by Molikai.

JOBS: Job 7's ARC parameter updated by Molikai.

JOBS: Job 7's APPROVED parameter updated by Molikai.

JOBS: Job 8's SCHEDULE parameter updated by Faolin.

JOBS: Job 11's SCHEDULE parameter updated by Erin.

JOBS: Job 11's ARC parameter updated by Erin.

JOBS: Job 8's APPROVED parameter updated by Faolin.

King has disconnected.

JOBS: Job 8's ARC parameter updated by Faolin.

Azazel has connected.

Greygathers no one has questions about the summaries then?

JOBS: Job 8's STAFF parameter updated by Faolin.

Faolin is good

Grey says, "As you can see, all the settings for summaries are filtered through the +job/sumset command, so anything you configure in the summary is handled that way."

Grey says, "There is also a nifty new command."

Grey says, "Imagine you have a long CODE or TPS job with a whole load of comments in it. Its a pain to read it just to remember what that job is about."

Grey | +job/summary 1

Wizard level output from '+job/summary 1':
================================| View Job 1 |=================================
   Bucket: TPS                               Due On: -
    Title: TPS Demo                          Status: Green (New)
Opened On: Sat Feb 11 09:20:10 2006     Assigned To: Nobody
Opened By: Grey
-------------------------------------------------------------------------------
 Approved: Yes
  Players: Erin, Grey, and nails
 Schedule: Running within the next two weeks. Must run before Plot XX.
      Arc: Illusions of Renegades
    Staff: Grey and nails
 Synopsis: A plot to discover the hidden secret behind the Puggy Underground.
-------------------------------------------------------------------------------
      DB#: #1447           Comments: 10

  Players: (Players contributing to this job)
           Grey

  Readers: (Players who have read this job in the past)
           Molikai             Aelionn             Tester
           Erin                NOSR                Azazel
           Jeckel              Faolin              Grey
           King

    Stats:
           SUM 9


=================================| [Myjobs] |==================================

Grey says, "And if you're a wizard on your game, you can see some extra information as well with +job/summary. A count of the number of commnets, the players/staff who added comments fo the job, the list of people who have read it and a few other things."

Grey says, "So now we're in the free form part of the night. You can use and abuse +jobs to your heart's content. Play with commands, see how things work, create new jobs, close jobs, etc."

Grey says, "And you can ask about anything you're curious about. At least except the coding/configuring side that I will be covering nice week."

Faolin asks, "I miss the beginning, how to you assign a job?"

Azazel says, "How can we get a copy for use on our mush?"

Grey | +job/assign <job>=<person>

Molikai says, "Sure. Given that it's now approaching 4 am, I don't suppose I can get the second lecture put back, say, 5 hours? :) (I can dream!)"

Molikai says, "Yeah, I ech oazazel."

Grey says, "Good question Azazel. That was on my list and I forgot. Go to http://anomaly.mushpark.com, and go to the Transfer section. The MUSH/MUX copy is there."

JOBS: Job 8 has been assigned to Faolin by Faolin.

JOBS: Job 11's PLAYERS parameter updated by Erin.

Grey says, "There should be a Penn port soon as well, but the guy handling that is getting the pie chart working in Penn."

Faolin growls, "See...Grey is a mind-reader."

Faolin growls, "I can't seem to ask questions with you, you answer most of them before I can type them. :)"

Grey laughs.

Grey says, "I think someone is working on Rhost port, but the details are a little less firm there. I know though that getting it working on Rhost didn't take too much work."

Faolin asks, "In the +job/summary, what does the ASN and SUM mean in the Stats section?"

Grey says, "ASN = Assigned."

Grey says, "SUM = Summary settings."

Faolin growls, "Oh! I see :)"

Erin has disconnected.

Grey says, "Basically they're counting the actions performed in the job. So Job 8 was asigned to someone else 1 time and had its summary settings changed 6 times."

JOBS: Job 8 set to RED priority by Grey.

JOBS: Status set to 1/2 COMPLETE on Job 8.

JOBS: Status set to 3/4 COMPLETE on Job 8.

JOBS: Status set to 1/2 COMPLETE on Job 8.

JOBS: Comments added to job 8 by Grey.

JOBS: Comments added to job 8 by Grey.

JOBS: Comments added to job 8 by Grey.

JOBS: Comments added to job 8 by Grey.

JOBS: Comments added to job 8 by Grey.

Grey says, "Now if you look you'll see ADD, for command adds, ESC for escalating it and STA for Status."

Grey says, "Those stats are actually part of the tracking and code which is used in +jobs/reports"

Faolin growls, "Oh, I see."

Grey | +jobs/reports actby=add

Molikai says, "WhereIsThis?"

Grey says, "That will show that 14 comments have been added to QU (Query) jobs, 6 to TPS jobs and 2 or so to CO (Code) jobs."

Grey says, "In 'job/summary <job>' or in particular Faolin's. +job/summary 8"

Molikai is looking, and I ain't seeing.

Grey says, "Faolin's staff. Give me one sec for a screen cap Molikai."

Molikai says, "THat would do it. ;)"

Lady Rosalynne has arrived.

Faolin grins.

Faolin waves.

Lady Rosalynne waves and just got out of an RPG. Wanted to see if there was aught left to hear. :)

Grey says, "Here is what a +job/summary would look like to a Wizard: http://anomaly.reavan.net/jobsummary.jpg"

Grey says, "Not too much Ros. The main presentation is done, and we're just in a free form question period. If you have questions about Jobs, feel free to ask."

King has connected.

Grey says, "Any other general questions about Jobs? Anything at all?"

Lady Rosalynne shakes her head.

Faolin is good for now.

Molikai says, "Don' think so. Saving up the heavy questions for next tuesday."

Grey says, "Yeah. Next week (Monday for most of us) covers some of the big changes in Jobs."

King nods.

Faolin asks, "Only queries go to +myjobs? Not created?"

Grey says, "Myjobs status is bucket by bucket, actually."

Grey | +buckets

Faolin growls, "Oh."

Grey says, "All the buckets with a M under flags are +myjobs buckets. So in any of those buckets, the player who submited the job or who is in the 'opened by' list, can see it."

Grey says, "Now, let me show you a little something more, which includes /why/ those are +myjobs buckets."

Faolin growls, "Okay"

Lady Rosalynne waves before you get to that. :)

Lady Rosalynne returns to the Forum.

Lady Rosalynne has left.

Grey | +request A player's question=This is a question by a player to a staffer.

JOBS: New REQ job # 13 submitted by Grey: A player's question

Grey | +pitch A suggested plot=This is a player suggesting a plot.

JOBS: New PITCH job # 14 submitted by Grey: A suggested plot

Grey | +typo Helpfile Type=A player saw an error in a helpfile and reported it.

JOBS: New BUILD job # 15 submitted by Grey: Typo Reported

Grey | +bug +where bug=+where has a bug an a player is reporting it.

JOBS: New CODE job # 16 submitted by Grey: BUG: +where bug

Grey says, "So +request, +pitch, +typo and +bug are commands players can use to submit jobs. Each goes into a different bucket."

Aelionn says, "Why don't I see 14? Because I am not staff?"

Grey says, "I will answer that in a sec Aelionn."

Grey says, "You will note each of those buckets, BUILD, CODE, and REQ are +myjobs. PITCH is not, since the idea is that staff will use the plot idea and the player normally shouldn't know the details."

Grey says, "So this lets player monitor +requests, +typos and +bugs that they submit."

Faolin nods

Grey says, "Now, imagine that I am staff and I want to ask a question about Job 13. I can either +job/mail the question."

Grey | +job/mail 13=Could I get some more details about your plan here, so we can decide how staff want to handle this?

JOBS: Mail sent about job #13 by Grey.

Grey says, "I could also add a command and publish it."

Grey | +job/add 13=Could I get some more details about your plan here, so we can decide how staff want to handle this?

JOBS: Comments added to job 13 by Grey.

Grey says, "Ultimately, either way the player can see those questions and answer them. Thus the player can see what's happening with the job, staff can have private (non-published) comments, and a dialogue is established."

Grey says, "The default Jobs install actually has like 13 buckets or something (I haven't counted them). Most of the buckets are not +myjobs, so players can't see jobs in those buckets even is the job is listed as 'opened by' them."

Grey says, "I think that was a spammy answer that you were expecting, but I think that sheds lots of light on the subject?"

Faolin growls, "Yeah, it does. :)"

Grey says, "No, Aelionn, with PITCH the problem is that you're not monitoring that bucket. If you do '+buckets' you will see there is no 'V' beside the PITCH bucket."

Grey | +bucket/monitor pitch

Grey says, "Type that and now you will be monitoring the PITCH buckets. If you do '+buckets' again then the V will show up beside PITCH."

Grey says, "And now Job 14 is visible to you in the '+jobs' list."

Grey says, "The idea behind monitoring is this: Let's say you're just build staff. You don't care about plots, requests, code jobs, etc. You only care about jobs in the BUILD bucket. You can ignore all the other buckets, and then when you type '+jobs' you only see BUILD jobs."

Faolin asks, "Can we add buckets to our +myjobs the same way? Or is that a job for Super-Coder-Man?"

Grey says, "Its something any Wizard can do."

Faolin nods

King says, "There is a command, actually, that let's you add any bucket to be viewed by a player when they type +myjobs."

King | +bucket/set <bucket>/MYJOBS=YES | NO

Grey | +jhelp bconfig2

Grey | +jhelp bconfig3

Grey says, "Those two files cover all the settings for buckets, including MYJOBS."

Faolin growls, "There will be a log of this, right? :)"

Grey says, "For example, you can also set what BBoard the buckets posts to when its completed, approved and denied."

Grey says, "Yes."

King will have the log files up, tomorrow night. :)

King says, "If not sooner."

Grey will want to review them King, to make sure the output of all the commands is added. Otherwise the log losses much of its worth.

King nodnods, "That is the plan. ;)"

Faolin growls, "This is easier than I thought it would be."

Grey says, "What is? Using the system?"

Faolin nods.

Faolin growls, "I have very little experience with jobs and haven't had a chance to play with it."

Grey says, "Honestly the hardest is something I mentioned at the beginning - making sure that its used for all questions and projects by staff. If you start answering question in page, then there is no record. Anomaly has been using Jobs for a few years. We dump to the Staff Job Tracker board to HTML and have a record of decisions from several years ago on hand. You simply can't get that with @mail or pages."

Faolin growls, "Wow, that's a great idea."

Grey says, "So its about getting the buy in from the person running the game, who gets everyone else to use the system. Then you have a central location for all the work, and records of everything."

Faolin nods.

Faolin growls, "Well, that's all I have to ask for now. Thanks for the lesson in +jobs."

Grey says, "No problemo."

King says, "Any more questions?"

Kris says, "Y'all are serving punch and cookies, right?"

King says, "On the table, on your way out. :)"

Faolin growls, "Oooohhhh, cookies."

King says, "Okay, thank you for everyone that came, I hope this helped people in some small way. I hope to see all of you, next Monday (or Tuesday depending on timezones) for the coding portion of this subject. And I would like all of us to thank Grey for taking time out, to discuss Anomaly Jobs with us. And if you catch him, Anomaly for creating, and improving this system. Thank you, Grey. :)"

Kris nods, Grey-worships, poofs.

Kris has disconnected.

Faolin growls, "Thanks, Grey."

Grey says, "No problem. Thanks for coming out."

Sabine thanks you, grey, and everyone. Good night.

Sabine even adds a capital letter!

Faolin waves and heads out.

Sabine returns to the Forum.

Sabine has left.

Faolin goes home.

Faolin has left.

Aelionn smiles. Thanks.