text:
MONTGOMERY — This year's Education Trust Fund budget is not the only one created under a new financial system.
MONTGOMERY — This year's Education Trust Fund budget is not the only one created under a new financial system.
The Sept. 18 Amendment 1 vote that transferred $437 million from the oil and gas royalty Alabama Trust Fund also changed the way distributions from the ATF to the General Fund are figured.
This year's education budget is the first under the new rolling reserve budgeting law that limits growth in the ETF to the rolling percentage average of the previous 15 years of tax income.
The ETF is an annual appropriation to public education. The total state appropriation this fiscal year is $5.42 billion, an amount largely supported by income and sales taxes.
One month into the new fiscal year, ETF collections were behind last year's collections by 6.42 percent, from $349.3 million for October 2011 to $326.8 million last month.
The $1.84 billion General Fund this year received distributions from the Alabama Trust Fund based on a formula approved Sept. 18. The vote also approved the transfer of $437 million over three years to prop up the ailing General Fund.
Interest distributions from the ATF previously were made by committee.
The General Fund last year received a one-time transfer of $273.7 million because of miscalculations in the previous five years of distributions. This year's distribution won't be anywhere near that amount.
State Treasurer Young Boozer said the General Fund, which pays for general government operations will get $159 million, paid quarterly.
Boozer on Tuesday said the distribution formula going forward is 33 percent of the ATF royalties from two years prior to the current budget year. In addition, the distribution includes 5 percent of the three-year average of invested assets ending two years prior to the current fiscal year. "It is an automatic formula," he said.
Based on known calculations, the amount available for next year's General Fund will be $145.7 million. He said the decrease is because of the market's performance and the withdrawal of more than $1 billion in principal from the trust fund over recent years.
In addition to voters approving the withdrawal of $437 million from the ATF, the Legislature withdrew $437 million from the education rainy day account that must be repaid.
Of that amount, $14 million was repaid this year and another $200 million to $250 million can be repaid next year, budget committee chairmen said. The entire amount must be repaid within three years.
Legislators and Gov. Robert Bentley vow to repay the $437 million transfer that voters approved in September.
Boozer said $161 million also is owed the General Fund rainy day account.
"There's a very good chance it will grow," Boozer said. "We're in an adjustment period, we have a poor stock market, and we've had extraordinary withdrawals from the ATF.
"This is a better plan, you're not caught off guard and you won't be surprised," he said. "This is a 21st century way to manage a trust fund."


text: NHS held an event last week where Lee Charron (Creature Overlord) bought a small boat and built it out with interior transitions and made all surfaces skateable. With sea legs and pirate attitudes the poor boat was shredded until it was completely unsailable. The video below was released on Go Skateboarding Day, Dave Chami captured the photos of Omar Salazar, Ben Raemers, Ryan Reyes, Peter Raffin, and more.

subset: commoncrawl


text:
Please enter your account details :
Sign in
Forgotten your details?
The used price we quote for your phone is based on it being in full working order.
Please review this link where we explain this in full. If your
phone is tested and found not to be in full working order, we will offer you a revised
We constantly check other sites to see
that we offer the best prices. If you see a better price on Mazuma Mobile, Envirofone
or Tesco we will match it.
Even if your phone is not working we will
pay up to 80% of the phone's value for a working phone.
You will be paid directly into your bank account . Payments are made within 3 days of receipt and inspection
of the phone.
After you have entered your phone details, we send you a pre-paid envelope for your
phone free of charge.
You have not confirmed that your iCloud account has been removed, or the device
is running iOS6
Please remove the account and continue.
We may pay a reduced amount if the condition of the device is not in full working order. Do you want to proceed ?
Copyright © 2010 Mobile Phone Xchange
Mobile Phone Xchange is a 5-Star Recommended mobile phone recycling company on Compare
and Recycle.


text:
Giving a gift has never been easier. Browse our curated range of kitchen and homeware products, and find something for everyone. Every gift is carefully packed by hand and comes with a handwritten card with a message from you. Paying for your gifts is simple and secure and we deliver by courier throughout South Africa.
We stock over 8,800 products from 700 of the world's leading brands. From knives, cookware and appliances, to soft furnishings, craft beer and the finest ingredients; we've sourced, tried and tested the best quality products we can find. Products they'll love and you'll love to give.
Every gift comes with a handwritten card with your personal gift message on it. Simply mark your order as a gift and include your message at Checkout.
You can create and send someone a Yuppiechef Gift Voucher instantly by email or choose to print it at home as a card. Over 80 designs from which to choose.
We're proud to offer free delivery on all orders over R400, to any destination in South Africa. On small baskets under R400, we offer standard delivery in 3 to 5 working days at a cost of just R60.
When you place an order on this site you will be asked for a physical address that is normally occupied during office hours. For very remote areas not serviced by our normal couriers we will have to deliver via Post Office, or to the nearest town to you that is accessible.
We only deliver gift registry purchases to addresses in South Africa. You can purchase gifts off a registry, but you will not be able to set one up.
Need help? Contact email@example.com
We only deliver gift registry purchases to addresses in South Africa.
Need help? Contact firstname.lastname@example.com


text:
Release Date: 1995
Format: CD
|Track listings not available for this album. If you have track listings for this album, please e-mail them to us at firstname.lastname@example.com (including the lengths of each track, if known) and we will add it to this page.
Enter your e-mail address to receive weekly soundtrack and film score news:
If any information appears to be missing from this page, contact us and let us know!


text:
One flatscreen television was tuned in to ESPN. Another was tuned to CNN. Some detainees were using the phones hanging on a wall in a unit at the Etowah County Detention Center, others were working out in the exercise yard. Cell doors were unlocked and detainees appeared to be moving freely about the unit.
One flatscreen television was tuned in to ESPN. Another was tuned to CNN.
Some detainees were using the phones hanging on a wall in a unit at the Etowah County Detention Center, others were working out in the exercise yard. Cell doors were unlocked and detainees appeared to be moving freely about the unit.
But most eyes were on the members of the media touring the areas where detainees for the U.S. Immigration and Customs Enforcement are housed.
It's not uncommon for advocacy groups to work with detainees to file complaints and grievances about the treatment at the jail. Detainees have learned to reach out to those groups.
A rule of the federal agency requires that interviews with detainees must be set up in advance and conducted separately. Random interviews are not allowed, but that did not seem to deter the detainees who wanted to talk about treatment at the detention center.
In a 13-page letter from a detainee, he explained, "I am prepared," as he handed the letter to a reporter on the tour.
In the letter he said he is being detained in a "modern-day concentration camp."
But with such strict federal guidelines in place, that description is a misrepresentation, said Natalie Barton, public information officer for the Etowah County Detention Center.
The detainee said he is trying to convey "the trauma, devastation, humiliation and overall inhuman treatment" that he and other immigrants "endure" in immigration detention centers.
The detainee said he has been away from his family for four years and has no criminal record. However, all detainees are being held because they are in the United States illegally.
He said the conditions at the Etowah County Detention Center are "harsh and unlivable."
However, during the recent tour, the facility was clean and most detainees appeared healthy, well fed, in good spirits and in good physical condition.
The detainee complained the detention center is not in compliance with federal guidelines because there is no outdoor exercise yard. However, each unit has a small area that is outdoors where the detainees were playing basketball, boxing and exercising.
The Etowah County Detention Center has met the 2000 federal guidelines, but under terms of a proposed agreement with ICE to house detainees, officials are negotiating a new daily rate with ICE. Under the terms of that agreement, an outdoor recreation facility that meets the 2011 federal detention standards will be built, Barton said.
On average there are 325 ICE detainees in the Etowah County Detention Center, which has an overall capacity of 879 that includes state and local inmates.
A few of the detainees recently were caught crossing the border illegally and a few others are being held while officials determine if they are eligible to seek asylum in the United States. However, almost all the ICE detainees held at the Etowah County Detention Center are convicted criminals, with crimes ranging from DUI to homicide.
The detainees are awaiting deportation, a process which by law must occur in less than a year. The detainees held in Etowah County are housed for the New Orleans field office for ICE, after each detainee has gone through the criminal process in the jurisdiction where the crime was committed and through ICE court proceedings.
The average detainee held in Etowah County stays 98 days. Those detainees who are held longer than 270 days have failed to comply and sign the documentation that allows them to travel to their country, Philip Miller, field office director in New Orleans for ICE, said.
Miller said detainees are not automatically removed from the country. "The folks that have been here longer hold the key to their own freedom," he said.
The detainees are from all over the world, Miller said, with a majority from the various Caribbean islands.
To house detainees for ICE, the sheriff's office must meet strict federal guidelines for things such as diets, medical treatment, religious accommodations and exercise.
It's not uncommon for the detainees to complain, Miller said. In each housing unit, there are three separate locked boxes for detainees to be able to fill out complaints about ICE, the detention center or make medical requests.
The biggest complaint is about the quantity and lack of choice of the food, Miller said.
"If you want tacos tonight and you can't have tacos, you're going to complain," he said.
The amount and types of food served are regulated and menus must be approved by a dietician for between 2,200- and 2,800-calorie diets with the exception of diabetic diets, which are 1,800 calories. They also prepare medical special needs diets.
Many of the detainees, for religious beliefs, require kosher and halal diets.
Menus are planned at least five weeks in advance.
A rabbi and imam consult with ICE to make sure religious meals and observances are provided.
Recently the imam from the local Muslim community brought prayer rugs for detainees who chose to use them, Miller said.
"We try to accommodate them," he said. "They face east to face Mecca and have a specified time to pray."
The detention center allows detainees to follow most religious rituals.
The federal government regulates how detainees are held, Miller said, and to maintain a contract with ICE, the center must meet the federal standards.
No deficiencies were found during an annual inspection in July, Barton said.
The agreement between ICE and the Etowah County Sheriff's Office began in January 1997.
Miller said agencies across the country have similar agreements with ICE. In Alabama, they include the Montgomery Police Department and the sheriff's offices in Baldwin and DeKalb counties.


text:
|Version 115 (modified by 8 years ago) (diff),
- Related research
- Requirements and Definitions
- Related Work
- Roadmap
- Design
- Disclaimer
- Reader Feedback
- Old design notes
Trac is strong in basic, individual and small-team task management but lacks features for heavy-duty project management a la Microsoft Project, Project Manager Workbench, etc. This page discusses those missing features and how they can best be realized.
In Trac, "project" is sometimes used synonymously with "installation." As used on this page, it is a set of related tasks and deadlines. Perhaps a software project has a Design Phase, an Alpha Release, a Beta Release, and a General Release. Each phase would have a milestone with a target date and tickets to complete the work for that phase.
Related research
Scheduling activities in a project is an area of active research in operational research (or operations research, OR) (cf. Project Scheduling) and has been established to be NP hard.
There are several variations on the problem.
- Resource-Constrained Project Scheduling Problem
- Resource-Constrained Multi-Project Scheduling Problem
- m_PRCPSP
- Preemptable RCPSP. A RCPSP where each task may be broken (preempted) m times during scheduling. (Generally, m is limited to 1 both for simplicity of the algorithm and because there is real cost in practical task switching.)
A range of techniques have been brought to bear on RCPSP. They can be broadly categorized as:
- Exact solutions. Attempts to find an optimal schedule. Due to the polynomial nature of the problem these are only possible or practical for a small number of activities (e.g., a few dozen).
- Heuristic approximations. Attempts to find a good solution in reasonable time for a realistic number of tasks (e.g., hundreds).
- Metaheuristics. More abstract approaches such as genetic algorithms, tabu search, simulated annealing, ant colony optimization, and particle swarm optimization.
All of these algorithmic approaches also have other dimensions such as the number of threads that are used, the method they use to prioritize activities, etc. To be practical for implementation as a Trac plugin, it seems likely our implementation should not require heavy-weight, opaque abstractions or multiple threads. Furthermore, we desire an algorithm which can update a schedule as part of a ticket change listener rather than having to completely recompute a schedule for each, individual change.
PSPLIB provides a standard set of program scheduling problems to test the various algorithms performance against one another and the optimal solution.
Kolisch and Hartmann1 tested dozens of algorithms and variations using the PSPLIB data.
Other papers of note include:
- Resource allocation and planning for program management, Kabeh Vaziri, Linda K. Nozick, Mark A. Turnquist, December 2005
Much of the project scheduling literature treats task durations as deterministic. In reality, however, task durations are subject to considerable uncertainty and that uncertainty can be influenced by the resources assigned. The purpose of this paper ...
- Stochastic rollout and justification to solve the resource-constrained project scheduling problem, Ningxiong Xu, Linda Nozick, Orr Bernstein, Dean Jones, December 2007
The key question addressed by the resource-constrained project scheduling problem (RCPSP) is to determine the start times for each activity such that precedence and resource constraints are satisfied while achieving some objective. Priority rule-based ...
- Activity scheduling in the dynamic multi-project setting: choosing heuristics through deterministic simulation, Robert C. Ash, December 1999
And others at ACM.org.
Requirements and Definitions
Project management support software should help us answer a few basic questions:
- When will my project be done? (That is, what is the forecasted completion date.)
- How much Earned Value has the project achieved?
- How do incurred costs compare to Earned value (Cost Performance Factor).
- Am I on schedule? (That is, is the percent complete for the overall project where it should be at this time.)
- What tasks are on the critical path? (That is, what tasks have a positive or negative effect on the overall schedule if they are early or late.)
- How are my resources being utilized?
To answer these questions, the system must know about:
- Tasks to be done
- Dependencies between tasks
- Resources available to do tasks
- Assignment of resources to tasks
- Deadlines for task or project completion
Some of this information is part of the Trac core, some is provided by existing plugins, and some must be added to support project management. None of this information is antithetical to Trac's design and implementation.
A project management system must track properties of (information about) tasks, resources, and milestones.
Task Properties
Answering the questions listed above requires recording certain properties of a task.
- Original Work Estimate
- The amount of work believed to be needed to complete the task as of before the task was started. This is not, necessarily, the time it will take to complete the task (duration). The task may be unassigned (and will take forever to complete), may have a resource assigned only part-time (so it will take longer to complete than the amount of work indicates), or have multiple resources assigned (so it may take less time to complete than the amount of work indicates). Typically work will be expressed in hours of effort of a resource.
- Current Work Estimate
- The total time the task is expected to take, as of now. Like Original Work Estimate, but may be modified.
- Expended effort
- The amount of work expended against this task so far.
- Assigned resources
- The individuals who will work on this task.
- % Effort
- Per resource, the amount of the resource's time that will be spent on this task. If the resource is working on a 2-day task 50% of the time, we expect it to take 4 days.
- % Complete
- The amount of the task that has been done already. If there are 10 subtasks with 10 hours original work estimate and 6 are done, the task is 60% complete.
- Dependencies
- Other tasks that affect when this task can be started or finished.
- Task Hierarchy
- A "Work Breakdown Structure" is often used to give a hierarchical organization of all tasks on a project. For example, interior painting of a new house might be broken down into paint the living room, paint the dining room, etc. In a WBS, task 1.1.2 would have subtask 18.104.22.168 and 126.96.36.199. We propose to express the hierarchy but not force explicit numbering. We propose that each task have a single parent, which is the next level up in a WBS.
Task dependencies can be quite complex. Project management generally involves four types of dependencies between tasks or activities:
- Finish-to-Start (FS)
- Task B cannot start until task A finishes. This is the most common. Sometimes A is referred to as B's Predecessor. When building a house, the walls cannot be put up until the foundation is complete.
- Start-to-Start (SS)
- Task B cannot start until after task A starts (though they may finish independently). When building a house, interior painting cannot begin until the dry wall is started. (Each room can be painted as soon as its dry wall is up.)
- Finish-to-Finish (FF)
- Task B cannot finish until task A finishes (though they may begin independently). When building a house, inspections cannot be completed until construction has completed (though parts may be inspected before the whole job is done).
- Start-to-Finish (SF)
- Task B cannot finish until Task A starts. When building a house, the builder may begin getting interim payments during construction but payment will not be completed until the owner can start moving in.
While useful, the FF and SF dependencies are somewhat more esoteric than the others and implementation may be deferred.
NOTE: The relationships are directional and inverting them is not straightforward. If A has a FS dependency on B, it is not true that B has an SF dependency on A.
Resource Properties
In general a project resource may be many things such as a person working on a task (a carpenter or a software developer) or a source of supplies needed for a task (cement or paint or computer systems).
A resource may have a name and typically has some availability. An employee may have responsibilities in two departments and only be available for certain work 50% of the time or a vendor may only be able to supply a certain amount of cement or paint or CPU cycles.
We don't seek to make Trac a completely general project management solution and will -- at least for now -- limit resources to people and assume they are available full time.
Milestone Properties
The essential property of a milestone is its date. Trac tickets which are part of a milestone are implicitly due by the milestone date. In general project management, milestones have FS dependency with some tasks. Together with dependencies between tasks, this dictates when tasks must be done to keep a project on schedule.
Trac milestones are not first-class objects (they lack history and comments that tickets have). An alternative to Trac milestones is to create a custom ticket type that can be used to set deadlines and have tickets which are required for that ticket scheduled as if they had a milestone with a due date set. To avoid conceptual conflicts with Trac milestones, I've called that ticket type an inchpebble. Trac milestones may still be used to group tickets but a milestone may have many inchpebbles which set intermediate dates.
Task Scheduling
There are two fundamental ways to approach scheduling. One is to assume that all tasks are small and to divide total estimates by resource rate. Then, one compares earned value to cost, computes CPF (Cost Performance Factor), and computes an estimated end time. This is the far simpler approach, but fails to capture tasks that only some people can work on and other complexities. The other approach is to create an actual plan that shows when each resource will work on tasks.
The basic answer to "When will my project be done?" is generally displayed in a Gantt chart which shows tasks, their dependencies, their duration (scaled by resource availability), and milestones. Two threads on the Trac Users mailing list, suggest that a Gantt chart is a fundamental requirement for project management but scheduling tasks is even more fundamental and a necessary precondition for producing a Gantt chart.
Consider a grossly-simplified project to design a new electronic device. This project might have the following tickets:
|Design the Schematic
|New device
|Design the Motherboard
|New device
|Design the Daughter board
|New device
|Design the packaging
|New device
|Write firmware
|New device
|Assemble units
|New device
With this simple task list -- supported by core Trac tickets and milestones -- we'll know when we are done because all the tickets are closed but we have no way to project when that will be. If all the tasks could be done concurrently, the project length is the length of the longest task. And since Trac assigns a date to the milestone, we can sort of work backwards from that to determine when work needs to start for the milestone to be met. However, core Trac has no way to record the time that a task should take. We need a field to hold Work.
|Design the Schematic
|Design the Motherboard
|Design the Daughter board
|Design the packaging
|Write firmware
|Assemble units
From here we can guess that the shortest the project could be is one week. However, we know we cannot begin circuit board layout without a schematic. We need a field to hold Predecessors.
|Design the Schematic
|Design the Motherboard
|Design the Daughter board
|Design the packaging
|Write firmware
|Assemble units
For such a short task list we can manually inspect and see that assembly (8h) follows firmware (40h) follows schematic (24h) and the shortest project time is 72 hours (9 man-days) and we can take nine days from the milestone date to know when we have to start work to finish on time. However, a project of any complexity may have many, many more tasks and manual inspection is impractical.
We can begin to do more effective project management if we have a task scheduler than can work backwards from the milestone, consider work and dependencies, and calculate task start and end dates and project start date.
If the milestone for this work is May 11, the schedule might look like the following.
|Design the Schematic
|May 5, 2009
|May 3, 2009
|Design the Motherboard
|May 10, 2009
|May 10, 2009
|Design the Daughter board
|May 10, 2009
|May 10, 2009
|Design the packaging
|May 10, 2009
|May 9, 2009
|Write firmware
|May 10, 2009
|May 6, 2009
|Assemble units
|May 11, 2009
|May 11, 2009
This is computed as follows:
- Assemble units is the last step and is due when the milestone is scheduled
- Firmware, packaging design, and the circuit board all must be done before assembly or 1 day (the length of the assembly task) before the milestone
- Schematic is due the length of the circuit board task before the circuit board's end
To finish on time, the project must start on May 3, the earliest start time for any task.
However, the preceding schedule assumes that the motherboard and daughter board are independent tasks. If there is only one board designer, only one board at a time can be worked on. If we assign the same resource to the board designs, either one must be done before the other can begin (even in the absence of an FS dependency) or the time for both must be extended and the resource spread between them concurrently.
With 100% applied to each task, the motherboard and daughter board are worked on serially.
|Design the Schematic
|May 5, 2009
|May 3, 2009
|Design the Motherboard
|May 9, 2009
|May 9, 2009
|Design the Daughter board
|May 10, 2009
|May 10, 2009
|Design the packaging
|May 10, 2009
|May 9, 2009
|Write firmware
|May 10, 2009
|May 6, 2009
|Assemble units
|May 11, 2009
|May 11, 2009
With 50% applied to each task, the board designs are worked on in parallel but take twice as long.
|Design the Schematic
|May 5, 2009
|May 3, 2009
|Design the Motherboard
|Monty (50%)
|May 9, 2009
|May 10, 2009
|Design the Daughter board
|Monty (50%)
|May 9, 2009
|May 10, 2009
|Design the packaging
|May 10, 2009
|May 9, 2009
|Write firmware
|May 10, 2009
|May 6, 2009
|Assemble units
|May 11, 2009
|May 11, 2009
The schedule above isn't accurate unless we have a 7-day work week. If we assume that the work week is Monday to Friday with Saturday and Sunday off, firmware has to finish Friday, May 8 and schematic has to finish Friday, May 1 so the project must begin April 29. Applying calendar information, our task list looks like the following.
|Design the Schematic
|May 1, 2009
|April 29, 2009
|Design the Motherboard
|May 7, 2009
|May 7, 2009
|Design the Daughter board
|May 8, 2009
|May 8, 2009
|Design the packaging
|May 8, 2009
|May 7, 2009
|Write firmware
|May 8, 2009
|May 4, 2009
|Assemble units
|May 11, 2009
|May 11, 2009
Microsoft Project supports many calendars in a project. Roughly speaking, the project calendar has working hours per day and working days per week (e.g., 9-5, Monday-Friday) and resource calendars can override that (e.g., Ethan is on vacation the August 15-19).
Gantt Charts
Dependency and Duration
Once we have a task scheduler, we can simplify presentation of task scheduling with a very basic Gantt that showed just tasks and their dependencies and the resultant schedule.
Disregarding any resource constraints, this chart shows
- circuit board design and firmware development follow schematic design
- package design can proceed independently
- assembly can't be done until the circuit boards and packaging are ready
- the product can't ship until it's assembled and has firmware.
- the overall project will take 9 calendar days
This requires only that the ticket have some information about estimated effort or duration of the task and simple FS task dependency.
If we also track work on tasks, we can monitor project progress at a glance.
Resource Allocation
When a resource is not available 100% of the time, tasks take longer than the work suggests. By assigning effort to resources, we can chart this time dialation.
When the hardware and software engineers are only available half time, the project gets delayed.
Critical Path
Some tasks affect project schedule and some do not. The tasks which affect the schedule are on the critical path.
Packaging design and circuit board layout are so short -- relative to other activities -- that speeding them up doesn't really help the project. But if we could shorten schematic design or firmware, every day we take out of one of those activities we also take out of the project schedule.
To manage the complexity of the chart, we can break tasks down into sub-tasks and show various levels of detail.
Progress Line
A Gantt chart often includes a "today" line to show where a project stands.
Bumps to the left indicate tasks that are behind schedule.
Slack Time
A Gantt chart may also show slack time for tasks, how much they can slip before affecting the overall schedule.
The black bars extending from the bottom of circuit board and packaging design indicate how much those tasks can slip without affecting deliverable.
Should talk about lag here
Resource Utilization
There are several views of resource utilization which may be helpful:
- utilization over time (80% loaded this week, 110% next week, 70% the week after, etc.)
- allocation at a time (10% on task 1, 20% on task 2, 50% on task 3, etc.)
Both views may be combined in a sequence of stacked bar graphs. At T1, a resource is 80% utilized with 20% each on four tasks, at T2, one task is complete and the resource is 60% utilized with 20% on each of the remaining three tasks, etc.
Earned Value
To compute earned value, we need unchanged original estimates, and probably also some way to estimate remaining time.
Resource Description and Allocation
We need a proposal for how to describe available resources within Trac. If tasks are tickets and tickets have owners who work on them, it seems reasonable that a resource is a Trac user. There may be information we need to track for a resource that it not part of the user configuration. It might also be necessary or desirable to allow tickets to have multiple owners. Or, we might want to have a way to have a list of (resource,hours) pairs independent of the owner.
Related Work
Trac Core
There are a couple of tickets (31, 886) and some discussion about ticket linking and relationships in the Trac core. We may be able to get a lot done while we wait for that work to come to fruition.
Trac Plugins
Gantt Charts
Trac has several Gantt chart plugins:
- TracJsGantt
- A data-driven plugin which presents ticket status in a display much like Microsoft Project's WBS format.
- FlashGantt
- seems complex and stale.
- GanttChart
- is a very simple Gantt chart implemented in a formatted text region. It is manually edited, not data-driven.
- TracGantt
- has potential but has some funky fields (e.g., Due to Assign) that don't seem to be appropriate to what we want to do with a Gantt chart.
- GanttCalendarPlugin
- provides nice views of tickets. It is noted as "not stable". It uses "Completed [%]" (quantized to 5% increments), "Start" (YYYY/MM/DD), and "End" (YYYY/MM/DD) custom fields. It seems to include an administrative calendar, perhaps where holidays and such can be recorded.
Pale Purple's Virtual Planner is an alternative visualization tool.
MasterTicketsPlugin supports FS dependency (but calls it blocks and blocked by).
The SubTickets page talks about adding composition type dependency (parent/child relationships).
SubticketsPlugin and ChildTicketsPlugin provide composition type dependency that can be used for WBS.
The Trac Dependency plugin was created in August 2009 and shows promise as a more complete and flexible solution than upgrading MasterTickets.
Time and Scheduling
TimingAndEstimationPlugin and TracHoursPlugin add estimated and actual hours fields to tickets. There is some disagreement about whether the estimate is the remaining time (so total estimated time is actual + estimate) or total time (so remaining time is estimate - actual). A Gantt chart typically wants estimate and percent complete. It is possible to extract this from either recording convention and we should likely allow either convention via a configurable interface.
DateFieldPlugin has some helpful wrappers around custom fields to validate them as dates.
May I draw your attention to SchedulingToolsPlugin? I was not aware of this page, but implemented some of its ideas in some kind of prototype. It currently has a scheduler, resource availability and Gantt chart in a simple fashion. I would like to enhance it, maybe we can join efforts? -- viola
TeamCalendarPlugin keeps track of user availability.
Data Exchange
The TicketImportPlugin can import tasks exported from Microsoft Project as a CSV file. There is a patch to import dependencies so Microsoft Project can feed MasterTickets.
A fact of life is that Microsoft products like Exchange and Outlook are present in many environments. It would be nice if we could get availability information from Exchange to feed a project calendar. Just reading from the group calendar would probably be enough. That way users would only have to put in their vacations, etc. in one place.
Other work
There is a Google Gadget Gantt chart which might be leveraged for the visualizations once the data is made available (e.g., using TracGViz plugin). That widget is developed and maintained by a company (i.e., ViewPath). Besides users need access to the internet and their projects environments have to be available too so that the iGoogle container be able to retrieve the data to display in the chart. All this means that local deployments (intranets, ...) are not possible.
Planner is an open source project management program.
GNOME Office once included MrProject (which may be another version of Planner). The news of MrProject's death may be exaggerated; GNOME Live! lists a 0.14.4 release in April 2009.
dotProject is an open-source, web-based project management system. A quick review suggests its task management isn't as good as Trac. It has a Gantt chart but wikipedia notes "as of version 2.0 the task dependencies feature is not complete". It has a troubled history but was forked last year as Web2Project.
I reviewed 15 Useful Project Management Tools. It mentions Trac. None of the tools obviously have scheduling in them. Jira sounded promising but doesn't seem to have scheduling. Their chart examples don't include a Gantt. Basecamp is popular and promising:
Basecamp works
For years project management software was about charts, graphs, and stats. And you know what? It didn't work. Pictures and numbers don't get projects done. Basecamp tackles project management from an entirely different angle: A focus on communication and collaboration. Basecamp brings people together.
But it is also commercial (which doesn't really help the Trac community). The description above makes it sound like we shouldn't expect a Gantt chart in Basecamp. ;-) I don't see automatic scheduling. They have a nice feature where you can subscribe to milestone updates via iCalendar.
- Open Workbench is a Microsoft Windows-based application not suitable for integration with a web-based tool like Trac.
- OpenProj also appears to be a desktop application. However, their views page may guide development of PM output for Trac.
- GanttProject's website isn't very informative but it appears to be a desktop application.
Microsoft Project Task Properties
Microsoft Project goes far beyond what is likely to be put into a Trac-based project management solution but it may be helfpul to consider what task properties MSProject records and what their analogs may be in Trac tickets.
The Microsoft Project Task Information property sheet includes:
- General
- Name
- Duration
- Estimated (Boolean)
- Percent complete
- Priority
- Start date
- Finish date
- Predecessors - A list of related tasks and their relationships
- Task Name
- Type (FS, SS, etc.)
- Lag (delay between tasks, overlap between tasks or lead if negative)
- Resources - A list of resources
- Resource Name
- Units (% Effort for workers)
- Advanced
- Constraint
- Deadline (a date or N/A)
- Constraint (ASAP, ALAP, Start no earlier than, etc.)
- Constraint date
- Task Type (Fixed Units, Fixed Work, Fixed Duration)
- Calendar (Standard, 24hr, Night Shift)
- WBS code (outline number from Work Breakdown Structure such as 1.3 for the third subtask of task 1)
- Earned value method (% Complete or Physical % Complete)
- Constraint
- Notes (Like ticket comments, only worse)
- Custom Fields
However, this doesn't seem to be all the data Project records for a task. If you add a column to the WBS in the Gantt chart, there are many more options. The most interesting is Work which is the amount of work required to complete a task. Only when a resource is assigned 100% are Work and Duration the same. We'd like to be specify the work required for a task and let the system calculate its duration based on available resources.
There seems to be a consensus that grandiose project management features for Trac should be implemented with a combination of plugins which provide useful functionality on their own. The following plan assumes that approach.
- Tasks will be represented as tickets. Additional, non-core, data will be needed. (In object-oriented terms, you might say that Task is a subclass of Ticket.)
- We need a way to express WBS relationships, assuming MasterTickets will be used to express dependencies.
- If we need more than FS dependencies, we will need to extend MasterTickets to express dependency type.
- Note that there is a patch to TicketImportPlugin that imports WBS relationships. It is known to work with MasterTickets and Subtickets plugins and may work with others.
- TimingAndEstimation can be the basis of recording estimates.
- The plugin should be extended to support original and revised estimates, and to store default estimates in the database or configuration or derive them from history for experience-based scheduling (rather than have rules to use default values for tickets with tiny estimates).
- A simple Gantt chart can be implemented to show dependencies and schedule based on manually-entered due dates.
- TracJsGanttPlugin provides such a display.
- Basic scheduling (ignoring resource conflicts and availability) can be provided based on
- core Trac tickets,
- MasterTickets,
- TimingAndEstimation, and
- custom fields to hold assigned and calculated dates
A new Scheduling plugin can build on these plugins (or an interface that hides them), and create an as-late-as-possible schedule working back from a milestone.
- We need a resource calendar plugin to allow describing resources and their availability. This should support notions of normal work hours, holidays, etc.
- Additional dependency types can be added, perhaps by enhancing or forking MasterTickets.
- Additional Gantt display options (e.g., critical path) can be added independent of additional dependency types.
- The scheduler can be enhanced to take into account resource conflicts.
To maximize the flexibility in mixing and matching plugins to provide features for project management, I propose to leverage Trac's Component Architecture to specify a number of interfaces in a
tracpm namespace. In this way a Gantt chart, a workload chart, a task scheduler, etc. can all use the
tracpm interfaces regardless of whether, for example, Subtickets or Childtickets (or even ticket decomposition in a future Trac core) are used to represent parent/child relationships.
Tasks for project management will be based on tickets but an abstract interface allows us to decouple a scheduler or other PM tool from the implementation of non-core ticket features like recording estimates and progress. One user may choose to implement IProjectTask on top of TimingAndEstimation and another on top of TracHours.
An IProjectTask has the following properties:
- id
- Numeric ID (Inherent in Trac)
- work
- Man-hours of work to complete task
- risk
- Relative risk. An integer from 0 to 100. How likely it is that work is accurate. Zero means no risk; work is certain to be accurate.
- priority
- Relative priority. An integer.
- percentComplete
- How much of work is done? (This can be computed from time remaining vs. total estimate or time worked vs. total estimate. We will not, necessarily, store percent complete. It is intuitive for display and analysis but difficult for data entry.)
- resource
- Name of resource assigned to this task
- percentEffort
- How much of resource's time is spent on the task.
- duration
- How long will resource take to complete work with percentEffort. For example, a 16-hour task with 50% effort will take 4 days.
- assignedStart
- An explicit, user-specified constraint on when the task must start (a date)
- assignedFinish
- An explicit, user-specified constraint on when the task must finish (a date)
- computedStart
- The result of scheduling this task based on constraints. Equals assignedStart if that field is set.
- computedFinish
- The result of scheduling this task based on constraints. Equals assignedFinish if that field is set.
- dependencies
- A list of other tasks (by id) and the dependencies of this task on them.
assignedStart and assignedFinish are likely mutually exclusive (that is, only one can be set; though both could be set if percentEffort was allowed to be computed).
Each dependency specifies:
- task
- The ID of the task this task depends on (I'd really like a better name here. parent is wrong. origin? other?)
- type
- Dependency type (FS, SS, SF, or FF)
- lag
- Offset of this task's anchor relative to the anchor of task. (Lag may be negative.) Whether the anchor for the dependency is the start or end of the task depends on the dependency type. For example, if Task B has a FS dependency on Task A with a lag of 1 day, then Task B starts 1 day after Task A finishes. Or, if Task B has an SS dependency in Task A with a lag of 1 day, then Task B starts 1 day after Task A starts. (lag is not scaled by percentEffort.)
An interface that abstracts the implementation details of dependencies and allows other parts of the PM system (e.g., a Gantt chart or scheduler) to retrieve and update dependencies including:
- Finding related tasks
- Finding predecessors (immediate and indirect)
- Finding successors (immediate and indirect)
- Finding descendants (children and further generations)
- Finding ancestors (immediate and further generations)
- Finding all related tickets (predecessors, successors, descendants, ancestors, and possibly those that share a resource)
- Finding all the tickets due in a time range, begin..end.
- If begin is not specified, all due by a end.
- If end is not specified, all that start on or after begin
- Manipulating task relationships
- Reparent B as a child of A (removing any existing parent). If A is
None, remove B's current parent, if any.
- Link B as a successor of A (same as making A a predecessor of B). Other dependencies are unchanged.
- Unlink B as a successor or predecessor of A (order doesn't matter).
- Reparent B as a child of A (removing any existing parent). If A is
The essential feature of a project calendar is that it knows when work is not done (weekends and holidays) so that task duration can account for that down time.
A slightly more sophisticated implementation would track individual resource availability so that the schedule can account for vacations and such.
An IProjectCalendar should provide the following methods:
Used to have
startFromFinish() and
finishFromState() here but those are likely scheduler functions. I think what we need here is
hoursAvailable(resource, date) which a scheduler can call on each date and subtract the result from the work it is trying to schedule.
Describes resource availability. May need calendar options for individuals. Some may want progress rates and costs, and some may not - this is surely controversial.
Computing a schedule involves determining the computedStart and computedFinish for a set of tasks taking into account the dependencies between tasks, the resources assigned to those tasks, and the resource availability. Where the tasks do not have assignedStart or assignedFinish, the computed schedule prioritizes tasks to keep resources at or below availability. However, assigned dates may force overloaded resources. These overloads can then be reported and either manually resolved or resolved with a resource leveling module apart from the scheduler.
The following rules control the scheduling:
- Choosing a method
- If using As Soon As Possible, tasks without predecessors should be done done today (or the start of the project, if that's later), and their successors when they are done, etc.
- If using As Late As Possible, tasks without successors should be done at the end of the project and their predecessors done right before they must start, etc.
- It may be desirable to override the method for individual tasks so exploratory work is done ASAP and clean up work is done ALAP, regardless of the overall method being used.
- Handle assigned dates
- It is an error for a task to have an assignedStart and an assignedFinish.
- If a task has an assignedStart, the computedStart is the assignedStart and the computedFinish is the computedStart plus the duration.
- If a task has an assignedFinish, the computedFinish is the assignedFinish and the computedStared is the computedFinish minus the duration.
NOTE: Once a task is begun, its assignedStart is set from the computedStart so recomputing a schedule doesn't change its start. We may have to deal with split tasks, however, if a task is begun then put down and resumed later.
- Handle dependencies (This must be done iteratively for all of a task's dependencies. Several FS dependencies may produce different computedStart dates with the latest one being use. Interaction between other types of dependencies is complex.)
- If a task has an FS dependency on another task, its computedStart is the other task's computedFinish plus lag. The task's computedFinish is computedStart plus duration.
- If a task has an SS dependency on another task, its computedStart is the other task's computedStart plus lag. The task's computedFinish is computedStart plus duration.
- If a task has an FF dependency on another task, its computedFinish is the other task's computedFinish plus lag. The task's computedStart is the computedFinish minus duration.
- If a task has an SF dependency on another task, its computedFinish is the other task's computedStart plus lag. The task's computedStart is the computedFinish minus duration.
NOTE: A scheduling algorithm which handled only FS dependencies would be a very useful first step.
- Handle resource limitations
Tasks assigned to the same resource but with no other dependency between them and no assigned dates must be sequenced to keep from overloading the resource. A comparison function can be used to determine which task should go first (as in many sorting algorithms).
sequenceTasks(taskA,taskB)would return -1 if taskA should go first, 1 if taskB should go first or 0 if it doesn't matter. The scheduler should not be aware of the policy implemented in the comparison function. Possible criteria for sequencing the tasks include:
- priority - More important/urgent work goes first
- risk - Riskier work goes first
- work - A function may favor short tasks ("low hanging fruit") or long ones (which inherently have more risk).
- task type - fix bugs before doing new features
- percentComplete - Finishing something that's partially done is better than starting something new
- "fit" - It's better to start a 2-day task on Wednesday and hold a 4 day task for the next week than to break up the longer task across a weekend.
Schedule Scenarios
It might be helpful or interesting to consider saving schedules or scenarios. If we stored resource assignment, start and finish data in a table keyed by schedule and ticket, we could store multiple possible schedules and choose to display different ones. An initial release could have only a single schedule and no facility for creating alternatives. A later refinement could add scenario support. If a start or finish date was configured for a task, the schedule would copy that data and not allow editing or recomputation of those dates; other tasks would flow around that fixed time. If a task lacked a start or finish date, the scheduling of that task would be fluid and computed by the scheduler.
The bulk of this page was prepared by Chris Nelson who makes no claim to be certified project planner or anything of the sort. It is based on his understanding of project management after 25 years of software development. Other developers have also offered some hints and useful comments (according to their experience) in order to enhance this page, and get a better understanding of the features and requirements needed.
- Olemis Lang
- Greg Troxel
Reader Feedback
Use this section to provide additional comments and or suggestions
Suggestion(s) by Jay Walsh
While I like the idea of where you are going with this. The concepts and "design" section have taken a turn towards specific implementations. I would suggest a combination of making these ideas configurable, as well as extending various classes and providers to be extensible/replaceable.
- For example, one may not want a "work" field, since man hours effort, in their project may have little value. Instead, they may wish to use "days" for calendar time, or "dollars" for contractor costs.
- instead of "risk", one might want business value.
- for any of this meta data, it would seem logical to support "Calculated fields" for the children, such as in the ValuePropagationPlugin
- Another area is the "providers" The ability to assign a provider to return the value in a custom or default field.
- for example: % Complete, a straight calculation of hours done/hours total may work in most casts, for a specific case....one might need to provide it manually on some wiki page, which a provider looks up....., or something)
- or a more pointed example, "calculated completion date", lets assume the company wants to use an Evidence Based Scheduling approach. in which case, they may also want to replace the Gantt views with the Probable Ship Dates graph? or maybe not.... The ability to do so would be key however.
It almost seems like any custom or default field added to this concept should be able to specify it's very own provider, optionally.
More Feed Back Here
- 1. Kolisch, R. & Hartmann S. "Experimental investigation of heuristics for resource-constrained project scheduling: An update" European Journal of Operational Research 174 (2006): 23-27.
Old design notes
(I'm reworking these into a better flow for the whole document.)
Component Data
Each Gantt chart component or feature requires data to support it. For Trac-based project management, this data is often in addition to the core ticket data.
In general, we might expect to have multiple resources assigned to a task but if we use a Trac ticket as the basis for a task, we have only a single resource, the ticket owner.
Core Fields
Core ticket fields include relevant to project management include:
- owner (who is working on it)
- milestone (what milestone this ticket is part of)
- status (new, assigned, ..., closed)
- summary (short description)
Core milestone fields relevant to project management include:
- name
- due (date and time)
- completed (treated as a Boolean: open or closed)
Additional Data
For project management, we must have the following additional information about a task/ticket:
- estimate (expected work required to complete task)
- percent complete
- dependencies
- percent effort
What do we need in the user interface ?
A "chart these" button on a report page would be very nice.
It would be nice to be able to create task dependencies graphically using the Gantt chart as a GUI or to change a milestone date by dragging it along the chart.
Attachments (10)
simple-gantt.PNG (7.0 KB) - added by 10 years ago.
A simple Gantt chart
gantt-progress.PNG (7.9 KB) - added by 10 years ago.
Gantt chart with progress bars
gantt-resource.PNG (11.0 KB) - added by 10 years ago.
Duration longer than work due to resources
critical-path.PNG (9.9 KB) - added by 10 years ago.
Critical path
roll-up-1.PNG (12.7 KB) - added by 10 years ago.
Rolling up subtasks - 1
roll-up-2.PNG (9.6 KB) - added by 10 years ago.
Rolling up subtasks - 2
resource-utilization.PNG (5.9 KB) - added by 10 years ago.
Resource utilization chart
today.PNG (15.9 KB) - added by 10 years ago.
Gantt w/ "today" (progress) line
slack.PNG (15.4 KB) - added by 10 years ago.
Slack time illustration
progress-line.PNG (15.9 KB) - added by 10 years ago.
Progress line
Download all attachments as: .zip


text:
Pedro Borbon: In Memoriam
Pedro Borbon, the pitcher who appeared in more games than any hurler in Reds history passed away in Pharr, TX of complications from cancer at age 65.
He was a licensed barber who once claimed that his grandfather was still alive at age 136. He was well-schooled in the sport of cock fighting, illegal in the United States but a thriving industry in his native Dominican Republic. He once bit an opposing player in the heat of an on-field fight. He was Pedro Borbon, one of the most durable and effective relief pitchers of the 1970s and the pitcher who holds the Reds career record for most games pitched.
Pedro Borbon, the pitcher who appeared in more games than any hurler in Reds history passed away in Pharr, TX of complications from cancer at age 65.
He was a licensed barber who once claimed that his grandfather was still alive at age 136. He was well-schooled in the sport of cock fighting, illegal in the United States but a thriving industry in his native Dominican Republic. He once bit an opposing player in the heat of an on-field fight. He was Pedro Borbon, one of the most durable and effective relief pitchers of the 1970s and the pitcher who holds the Reds career record for most games pitched.
The stories and myths that surround Borbon are almost enough to cause one to look past an amazing pitching career, one in which he anchored the best bullpen on baseball's best team for almost a decade. Born in Mao, Valverde in the Dominican on December 2, 1946, Borbon insisted that he knew nothing about baseball until he was coerced into a pick-up game at age 16. Initially positioned at catcher, Borbon was promptly struck on the side of the head when he leaned too far forward to catch a pitch the hitter was swinging at. This incident was enough to convince Pedro that it was much better to be the one throwing the ball than to be the one catching it and so he began to pitch and pitch very well. He was signed by the Cardinals two years later and in 1968 was drafted out of the St. Louis system by the Angels with whom he made his Major League debut the following year.
Legendary Reds scout Ray Shore took a long look at Pedro and strongly recommended him to Reds General Manager Bob Howsam. Considered by most to be something of an afterthought in the five player deal that found the Reds trading outfielder Alex Johnson and infielder Chico Ruiz to the Angels for pitchers Jim McGlothlin, Vern Geishert and Borbon, Pedro turned out to be the most important player in the deal. After brief an ineffective appearances with the Reds in 1970 and 1971, Borbon blossomed into a dependable reliever during the Reds' pennant winning season in 1972 and became one of the game's top relievers in 1973 when he appeared in 80 games (2nd most in the league) and posted an 11-4 record with a 2.16 ERA.
As would become a regrettable theme throughout much of Borbon's career, an incident unrelated to pitching overshadowed his fine work on the mound. In 1973, Borbon's role in a brawl in Game 3 of the National League Championship Series between the Reds and Mets became the signature moment of the season for Borbon. In the fifth inning of the game, Pete Rose slid hard into Mets shortstop Bud Harrelson at second base to try and break up a double play. Rose and Harrelson first exchanged words and then began exchanging punches. As they fell to the ground, benches cleared and an all-out donnybrook ensued. In the visitors' bullpen, Borbon feverishly worked to open the bullpen door which had become stuck. When it finally gave way, he raced to the infield and began tussling with Mets pitcher Buzz Capra. When order was restored, an enraged Borbon reached down to grab a cap on the field. When he realized that he had mistakenly grabbed Capra's cap, he yanked it from his head and proceeded to take a bite out of it. The underdog Mets beat the defending champion Reds in the fifth and final game and many quickly forgot Borbon's fine pitching performance during the season and in the series (one earned run allowed in four appearances), remembering only his unusual method of damaging Mets headgear.
Unfortunately, Borbon would cement his reputation for using his teeth in times of on-field conflict less than a year later during a nasty brawl with the Pirates in Pittsburgh. During the melee, Borbon pinned Pirate hurler Daryl Patterson to the turf, began pulling out clumps of his hair and bit him in the side. Patterson lost a piece of flesh in the incident and received a precautionary tetanus shot.
Borbon's lamentable acts in the heat of on-field brawls could not detract from his value to the Reds. On a team noted for its strong bullpen, led by manager Sparky Anderson who was coined "Captain Hook" for the frequency with which he cycled pitchers off and on the mound, Borbon was arguably the most reliable arm called into service. His was certainly the most oft-used arm and the most resilient. From 1970-1978, no pitcher in the National League appeared in more games, finishing in the top five in the league in games pitched each season from 1972 - 1977. His durability became the stuff of legend. Borbon insisted that he could pitch every day if needed and Reds trainer Larry Starr often joked that the only reason he even knew Borbon was on the team was due to Pedro borrowing a pair of scissors from him to trim teammates' hair. Once Pedro acquired a pair of scissors of his own, the visits to Starr stopped altogether.
Borbon boasted that he had "never had a sore arm in my life" and was found of showing off his arm's prodigious strength. While not known for possessing a blazing fastball, Borbon clearly had one of the strongest arms in the game. He once hit the centerfield fence at Fenway Park on the fly with a throw from behind home plate. Reds pitching coach Larry Shepard once caught Borbon taking aim at the speakers on the roof of the Houston Astrodome, some 18 stories above the field. But it was Borbon's durability, more than his sheer arm strength that was most impressive and most valuable to the Reds. Shepard said that Borbon had a "freak" arm. Borbon attributed his seemingly injury-proof arm to a diligent avoidance of trainers and doctors and to a three pound ball he worked out with everyday.
Of course, Borbon was not only durable but extremely effective. The pressure of post-season competition seemed to bring out the best in him. From 1972 - 1976, Borbon appeared in 20 post-season games for the Reds and posted a combined ERA of 2.42 with a sterling 1.26 mark in League Championship Series play. Although known more for its "Great Eight" starting lineup of All-Stars and Hall of Famers, the Big Red Machine would not have rolled its way to four pennants and back-to-back World Championships without the quality pitching and Borbon ranks among the very best of this of-overlooked group.
Traded to the Giants in the middle of the 1979 season, Borbon pitched with San Franscisco again in 1980 before retiring from the Major Leagues. He continued to pitch consistently and well in his native Dominican Republic and in semi-pro leagues in his adopted hometown of San Juan, Texas which led to an interesting postscript to his Major League career. In 1995, Major League players and owners were embroiled in a labor dispute which resulted in a lockout of players in spring training. Owners resorted to using replacement players that spring and the Reds invited the 48-year old Borbon to be among them. While most were understandably skeptical, the ever-optimistic Borbon proudly exclaimed, "I'm 48 but I feel like 25. No sore leg, sore arm, nothing. "The experiment didn't last long. Borbon was let go and the labor dispute was resolved but in looking back at Borbon's incredible career, a career fueled by a seemingly indestructible arm, it's more than a little intriguing to contemplate how good a 48-year old Borbon may have been.
In 2010, the often thankless work performed by the Reds' most durable reliever was honored when he was inducted into the Reds Hall of Fame. A selection of the Hall of Fame's Veterans Committee, Borbon joined Clay Carroll (Class of 1980) and Wayne Granger (Class of 1982) in the select group of relief pitchers in the Reds Hall of Fame.


text:
The Aeclectic Tarot Forum community has been permanently shut down, and is closed to new posts and account logins. The public Tarot threads remain online as a read-only archive and resource, and can be browsed here.
Thank you for being part of this forum as a member, moderator, subscriber, or visitor - your contribution helped to make it the amazing community it was.
All the best to you on your Tarot journey, both online and offline.
The Aeclectic Tarot Forum closed permanently on July 14th, 2017. The public threads remain online as a read-only archive and resource. More information on our decision can be found here. Thank you for being a part of our active community over the past seventeen years.
Copyright © 1996 - 2017 Aeclectic Tarot. All rights reserved. Privacy Policy. Contact us.


text:
Fiber optic gastroscope with accessories, Machida, Japan, 1979
Fibre optic gastroscopes consisted of a tube composed of thousands of small fibres which allow light to be reflected around corners. This meant the tube could bend as it was inserted into the body. Fibre optic gastroscopes were developed in the 1960s and the technology let doctors view the lining of the stomach and intestines. The procedure is called a gastroscopy and it had been attempted since the 1800s. However, it remained uncommon until the technical advances of the twentieth century. The operation can be done on a conscious patient. The physician looks down the tube, takes photographs, and uses long, thin forceps to take a small biopsy. This is tested in the laboratory. The PFS-F III fibre optic gastroscope was made in Japan by British company Specfield Limited.
Object number:
Related Themes and Topics
Related Objects
There are 455 related objects. View all related objects
Glossary: gastro-intestinal surgery
Any type of surgery that addresses problems with the stomach or small intestine.
Glossary: gastroscope
No description.


text:
web hosting
MicroHost Offer affiliates commission on every web hosting sale, You can get upto 40% commission on every hosting you sale.
$50 per sale payouts! We are a managed vps provider located in New Jersey, USA. Our plans our competitively prices and we offer a variety of banners. We offer very competitive prices which makes our VPS's easy to sell and for you to easily make commission.
Host Media is one of the fastest growing UK cloud hosting companies offering affiliate commission of 20% on every sale through your ad/link. We do not limit the amount you can earn from a single sale.
- Free to Join
- Earn per sale
- Secure PayPal payouts
- No limits on your earnings
- Guaranteed commission for all plans
- Commission paid on request after 60 days
- Real-time tracking
- Pre-made web banners
- Account team to help you with any questions
- Link to a full range of services (Cloud Hosting, Reseller Hosting, VPS Hosting and much more)
For more information visit our affiliate page:
Webhost.UK.net is one of the best UK web hosting company offering affiliate commission as high as to £400 on every sale through your ad.
No matter if you are our existing client or do not have any services with us. WEBHOSTUK LTD affiliate program provides an opportunity to the affiliates to earn the highest commission in market and the clients can enjoy the great deals on wide range of products from U.K.'s top web hosting provider, which we are well known for! You get a chance to earn up to £400 for every sale through your ad, banner or text link which refers clients to our company.
We offer a 30% recurring commission on any sale made with the affiliate link you are provided. Additionally, you'll receive $5 per signup for the first 10 signups. This amount will increase for every 10 signups up to a maximum of $40 per signup.
1-10 Signups – $5 per
11-20 Signups – $15 per
21-30 Signups – $20 per
31-40 Signups $30 per
41+ $40 per signup
WebHostFace is an ambitious web hosting company that wants to emphasize on the importance of personal touch, while providing a high quality service to small and medium businesses worldwide. For the new Fall season WebHostFace wants to engage all potential prospects and happy customers to take part of the new Affiliate Program. The program is very easy to participate and looks to achieve one simple goal – popularizing a client-oriented service while earning its evangelists a guaranteed commission.
To take advantage in the Affiliate Program you do not have to necessarily be a WebHostFace client – participation is free to sign up and earns the Affiliate a $10 signup bonus. From there on each sale can gain the Affiliate up to 50% commissions, which are uncapped and paid on a monthly basis. A deeper look on the program's feature list unravels:
- Free to Join
- Earn up to $180 per sale
- Start with $10 gratis
- Secure PayPal Payouts
- Unlimited Earnings
- Guaranteed commission for all plans
- Commission paid each month
- Real-Time Tracking
- Personal Affiliate Assistance
Full information can be found on the official page: https://www.webhostface.com/affiliate
For any affiliate questions or assistance WebHostFace can be contacted 24/7 via Live Chat, mail, phone.
In Hosting Raja affiliate program we give customer 100% commission on the sale*. Our Commission type is Pay-Per-Sale 35% for each sale you deliver.
Cartika offers a recurring affiliate program for sale of any hosting services we offer.
Earn a recurring 1%-10% commission on sales for the lifetime of the referral.
This guide shows customers how to setup a proxy server to use with most link building, keyword research, competitor analysis or other SEO software. This gives them access to dirt cheap IPs and the ability to setup proxy servers in almost any country.
Affiliates earn 50% commission on sales.
Hozta.com was started because of the lack of hosting companies that offered webspace that was truly unlimited hosting at a low monthly price. Sure, most advertise $2 or $3 a month, but when you get to their website, you have to pay for 2 or 3 years in advance. If you are just starting out, you may just want to test the waters with your new website, so why have to pay for 3 years of hosting that you may never use. With Hozta.com you can truly get cheap unlimited hosting at just $3.99/mo and really only pay by the month. No gimmicks, no contracts, no worries. Unlimited webspace is not all that makes us better, we offer better service, better servers, and better customer support than most other hosting companies.
Affiliates earn a recurring 35% commission for the life of the referral. Our affiliate program is free to join. Our minimum pay out is only $20.
Sharpwebhosting.com provides affordable web hosting solutions powered by cpanel.
With 54 1 click installed scripts, setting up a blog, content managment system or activating a website template is simple and fast.
The two-tier affiliate program pays 30%-42% on the first tier plus 7% on second tier sales.
Brontobytes is a European web hosting leader in providing fast, reliable, secure and affordable web hosting in Europe. Brontobytes web hosting plans has everything your personal website, small business or growing trade could want.
Affiliats earn $40 for each new web hosting or cloud server account referred.
DoneRite Free Hosting has a variety of services including but not limited to: Shared Web Hosting, Virtual Private Servers Hosting, Domain Name Registrations, Domain Name Transfers and SSL Certificates (in association with world's most trusted SSL providers). DoneRite Free Hosting is one of the pioneers in the Free Web Hosting industry. We offer a feature-limited free web hosting service as a part of our courtesy policy and believe this makes our client base bigger.
Monetize your traffic and earn 50% commission for every paid shared hosting, semi-dedicated hosting or VPS plan you refer to us.This can be very easy because not only are you advertising very affordable premium hosting services you are also recommending our popular free web hosting services. Our partners get paid 50% of paid hosting upgrades from our free hosting plans.
Excellent customer service and amazing hardware just adds to the experience you will receive here at Future Hosting. We take pride in everything we do, simply because we love web hosting and everything about it. We want to make sure our service is not only reliable but satisfying. Future Hosting goes above and beyond to make sure you are completely satisfied with your web hosting solution. That means doubling up on our competition to ensure we provide the best over any other provider in the industry.
Affiliates receive 100% of first invoice.
Nexcess offers a variety of hosting services ranging from entry-level packages to custom clustered/complex hosting configurations, with an emphasis on mission-critical hosting for high-profile eCommerce web sites.
Affiliates earn 75% on first time sales.
HostGarou's main concern is customer value. We offer all our customers affordable services which best suit their real needs at any time. We believe that serving people is a must to establish good relationships and leading to a better life as well as a deep care for employee value, customer value, supplier value, channel partner value, alliance partner value, managerial value, and societal value.
Affiliates earn 51% commission on sales.
Sharpwebhosting is Fantastico De Luxe enabled hosting 54 scripts that can be installed in 1 click, from Blog scripts like b2evolution & WordPress to content managment systems like Joomla and Drupal. We also have free website builders like template express and pro edition to help get your site up and running in no time. Cheap cpanel hosting packages starting at 3.75/month.
The two-tier affiliate program pays 30%-42% on the first tier plus 7% on second tier sales.
LocoBull offers website hosting and web services, web design and SEO programs.
Affiliates earn 25% commission on sales.
All WPOven hosting plans come with the same features and differ only on resources allocated for the plan. All plans include Free Migration Service.
Affiliates earn 100% of first month's payment or a minimum of $50 per sale (whichever is more).
ProDemon provides great value hosted e-commerce solutions.
Affiliates earn £5 per sale plus monthly bonuses of up to £100. This is a two-tier program paying 10% on the second tier. We provide a good range of creatives, free promotion tips to help you make the most of your campaign, and we give you a £5 bonus just for signing up.
Wired Tree offers fully managed dedicated servers and VPS hosting designed to meet your business needs, with 24 hour phone and help desk support.
Affiliates earn 75% commission on sales.
Since 2003 Vendhost has been providing affordable domain name registration and web hosting services, backed by great customer support. Our high customer retention rates mean you earn more for longer.
Earn residual commission of 10%-20% on sales for the lifetime of the referral. From your affiliate dashboard you can access click counts, commission history and balances and choose from a wide range of marketing creatives including banner ads and text links.
RoseHosting.is a leading provider of business and personal web hosting solutions. By focusing on quality equipment, stability and customer support, we set ourselves apart from our competitors. We offer unique, user friendly solutions for personal or business use.
Join our VPS hosting affiliate program and earn 50% on the first month's subscription and a recurring 20% on subsequent payments.
UKHost4u is the single source for innovation, great value, hosted services. Our easy to use web solutions have made us the leading provider in the UK for internet based services from 1999 till today.
Affiliates earn 40% commission on sales.
Hosting Raja is one of the top domain name registration and web hosting companies in India and is the only hosting company in India to provide support in regional languages. We provide high-speed, responsive, fully-featured domains and hosting at an affordable price.
Affiliates earn 35% commission on sales.
ARMINDS provides world class hosting and online presence solutions utilizing the latest technology in the industry. You can enjoy the unlimited concept of our shared hosting, get affordable dedicated functionality on our Linux and Windows VPS, or touch the luxury of a managed dedicated server.
Affiliates earn $50 on every qualifying sale referred.
Hosting Connecticut offers high performance hosting services at affordable prices. Shared and dedicated servers, windows and linux. Lucrative reseller and affiliate programs available. Excellent personal customer service.
Affiliates earn 25% commissions on:
- Web hosting package
- Domain registration
- Domain transfer
LI> Merchant account
WhopHost is a favourite home for more than 500,000 web sites. We are dedicated to providing everything for your online presence starting from domain name registration(s) and shared web hosting to e-commerce solutions, VPS hosting and SSL certificates.
WhopHost has a variety of services including but not limited to: Shared Web Hosting, Virtual Private Servers Hosting, Domain Name Registrations, Domain Name Transfers and SSL Certificates (in association with world's most trusted SSL providers). Not in the last place, WhopHost is one of the pioneers in Free Web Hosting industry. We offer a feature-limited free web hosting service as a part of our courtesy policy and believe this makes our client's base bigger.
We offer affiliates 50% commission for every paid shared hosting, semi-dedicated hosting or VPS plan you refer to us.
That could be very easy because you are recommending our wonderful FREE hosting services and with this you will be getting a substantial amount of money when the referred FREE customers later on upgrade to a paid service.
Gossimer's web hosting services have particular appeal for small- to medium-size businesses. But individuals also use his web hosting and domain registration offerings to create personal websites.
Affiliates earn 305 commission on valid sales of hosting plans.
Big Hook Hosting offers website hosting, domain names and Internet marketing services, such as SEO, social media, logo design, search engine submission and video production.
The two-tier affiliate program pays 35%-40% on the first tier and 5%-10% on the second tier. We even provide the tools you need to make it easy. After sign up, you'll get a start-up kit and a control panel where you will find instructions, hints and tips, text and banner ads and proven headlines


text:
Glioblastoma multiforme (GBM) is the most common glioma (a type of brain cancer). It represents nearly one-fourth of all primary brain tumors. This cancer starts in the glial cells, which are cells that help nerve cells work.
This condition can develop suddenly. It can also develop from a lower grade, less cancerous brain tumor. Most cases are located in the cerebral hemisphere of the brain. The cancer can also begin in the spinal cord or brain stem.
Factors that increase your chances of developing GBM include:
- Age: over 50 years old
- Ethnicity: Caucasians, Hispanics, Asians
- Having a low-grade brain tumor, which occasionally develops into a higher-grade tumor
- Having one of the following genetic disorders:
- Neurofibromatosis
- Tuberous sclerosis
- Von Hippel-Lindau disease
- Li-Fraumeni syndrome
- Turcot's syndrome
- Having had radiotherapy
- Working in the synthetic rubber or petroleum refining industries
- Exposure to vinyl chloride or pesticides
- Having had computed tomography (CT) scans during childhood
GBM Symptoms
Symptoms include:
- New onset headaches — more than 30% of patients
- New onset seizures — 20% to 30% of patients
- Progressive cognitive dysfunction — depends on the location of the tumor; problems with vision, language, motor function or sensation may occur
- Progressive neurological deficits, including weakness
- Personality changes
- Behavioral changes, development of inappropriate behaviors
- Memory loss
Images and scans may be taken of your brain with:
- CT scan
- MRI scan
- Functional MRI (fMRI)
- Positron emission tomography (PET) scan
Your brain activity may be measured with:
- MRS scan
- Electroencephalogram (EEG)
Your bodily fluids and tissues may be tested with:
- Tumor biopsy
- Spinal tap
Treating Your Brain Tumor
Tested at UVA and other sites in clinical trials, Optune, treats this most deadly form of brain cancer with electrodes that produce "tumor-treatment fields." Learn about the effectiveness of this new device.
Surgery is often done to confirm a diagnosis and relieve headache, but doctors cannot completely remove the cancer. Other types of treatment may include:
- Radiation treatment is used to further decrease the size of the tumor.
- Chemotherapy is used to increase survival time and quality of life.
- Steroids to suppress swelling, antiseizure medication to suppress seizures, and pain medications are also used.
Even with aggressive treatment, few patients survive more than five years after diagnosis. However, there is evidence that medical and surgical intervention can increase life expectancy and improve quality of life.
A multi-disciplinary approach is important for you and your family. This approach may involve:
- Support group
- Psychotherapy and psychiatry
- Pain management
- Hospice care
Content was created using EBSCO's Health Library. Edits to original content made by Rector and Visitors of the University of Virginia. This information is not a substitute for professional medical advice.