text:
Helios::Tutorial - a tutorial for getting started with Helios
This is a short tutorial to introduce the Helios system's basic concepts and to show some quick examples of how to get started working with Helios.
There are a few basic concepts you need to learn in order to understand the way Helios works. Once you understand these concepts, it will be simple for you to create Helios applications and manage a Helios collective.
Jobs are simply a set of parameters for services (see below) that represent a discrete unit of work. Jobs are represented by XML-style markup and can be submitted either programatically via the Helios API, via the command line helios_job_submit.pl program, or via HTTP request to the submitJob.pl CGI program.
Services are Perl classes that define how jobs of a certain type should be processed. Service classes are subclasses of Helios::Service, and implement a run() method to perform a job's operations. The run() method marks the job as successful or failed just before it ends. Services can be configured across the collective (see below) using Helios's built-in configuration subsystem, which can be accessed via the Helios::Panoptes web interface or by using the helios_config_* shell commands.
Services are loaded into memory by the helios.pl service daemon program. When jobs are submitted to Helios for a particular service, worker processes (see below) are launched to actually perform the work.
Workers are processes launched by helios.pl service daemons to actually perform jobs. A worker will instantiate its associated service class, do some preparation, and call the service object's run() method. In normal operation, a worker process performs one job and then exits, but in "OVERDRIVE" mode a worker process will stay in memory and perform as many jobs as possible, until 1) there are no more jobs in the queue, 2) it is told to HOLD or HALT job processing, or 3) it encounters an error processing a job that causes it to exit.
A collective is a group of servers running helios.pl daemons connected to the same Helios database. Services in a collective can be centrally administered using the Helios::Panoptes web interface.
In addition to these basics, there are a couple of other Helios concepts that will not be dealt with in this tutorial but is worth knowing:
# End of section covered by CEB Toolbox, Inc. copyright.
Every job in the Helios system has a jobtype, which is sort of an abstraction of a queue. For now, all you need to know is every Helios service has a corresponding jobtype with the same name. When you submit a job to Helios, you will set the jobtype to the name of the service you want to run the job.
# the following section is Copyright (C) 2008-9 by CEB Toolbox, Inc.
Metajobs are large batches of jobs submitted together to Helios. Bound together by XML, a metajob will be burst apart into its constituent jobs when first serviced by Helios. Metajobs can greatly decrease the time it takes to submit large batches of jobs into the Helios job queue. Also, in conjunction with worker OVERDRIVE mode, metajobs allow workers to achieve maximum system throughput.
Writing a Helios service involves writing a service class, a Perl class that subclasses Helios::Service. Your service class will need to implement the service's run() method. The run() method will be passed a Helios::Job object representing the job to be performed.
Here's a very simple sample class as an example:
package TestService;
use strict;
use warnings;
use base qw(Helios::Service);
sub run
my $self = shift;
my $job = shift;
my $config = $self->getConfig();
my $args = $self->getJobArgs($job);
foreach my $arg (keys %$args)
$self->logMsg($job, "param:".$arg." value:".$args->{$arg});
print '*** JOBID: '.$job->getJobid().' param: '.$arg.' value: '.$args->{$arg}." ***\n";
This service is extremely simple; all it does is pick up the service's configuration and the given job's arguments, and logs the job's arguments in the Helios log. It will also print the arguments to the terminal. Then it calls the completedJob() method to mark the job as finished successfully. Despite its simplicity, all Helios services ultimately follow this same basic pattern.
Let's take a closer look at this simple example. First, let's look at the package declaration and modules:
package TestService;
use strict;
use warnings;
use base qw(Helios::Service);
In addition to declaring the service's name with the package declaration, we've also enabled the strict and warnings pragmas. We declare our service to be a subclass Helios::Service by using the use base pragma.
Next, we have the run() method. This is the only required method in your service class. It starts by pulling in config parameters and job arguments from the Helios system:
sub run {
my $self = shift;
my $job = shift;
my $config = $self->getConfig();
my $args = $self->getJobArgs($job);
The only parameter directly passed to run() is a Helios::Job object that represents the job the service needs to run. After stashing the service in the $self variable and the Helios::Job object in the $job variable, the run() method does two more things before the actual job processing starts. First, it grabs the service's configuration using the getConfig() method, and then gets the job's arguments using the getJobArgs() method. Both the service configuration and job arguments are returned as hashrefs, so it will be easy to work with them later in the run() method.
Next we have the rest of the run() method:
foreach my $arg (keys %$args)
$self->logMsg($job, "param:".$arg." value:".$args->{$arg});
print '*** JOBID: '.$job->getJobid().' param: '.$arg.' value: '.$args->{$arg}." ***\n";
The foreach block is just looping through all the arguments in the job argument hashref and using the logMsg() method to log them in the Helios system log. It then also prints them to the terminal. In reality, this part of the run() method could be anything: a mathematical computation, the processing of a file, a call to another function or method in another Perl module. What work you actually do in your run() method is entirely up to you!
Note: one thing you don't normally do in Helios services is print to the terminal, since usually there is no terminal to print to. But we'll be running this service later in debug mode, and it will be helpful for you to see the job do something on the screen.
What is important, however, is what happens when your work is done. The last thing in this run() method (and indeed, all run() methods) is the call to mark the job as completed successfully or failed. This run() method is very, very simple, so in this case we are going to assume the job is successful and mark it as such by calling the completedJob() method. The only parameter for completedJob() is the Helios::Job object that run() was passed. If we had decided instead that the $job had failed, we would have used the failedJob() method:
$self->failedJob($job,"It failed!");
The failedJob() method works like completedJob() except it marks the job as failed rather than succeeded in the system. In addition, you may also specify an error message that will be recorded with the job so you can see why the job failed.
Once we've marked the job as completed or failed, the run() method is over.
So that, in a nutshell, is the basics of creating a Helios service class. All Helios service classes ultimately use this design pattern. This makes creating new Helios services easy, either by writing new code or adapting existing code.
Having read through the last section, you may ask, "But how do I actually get this TestService thing to run a job?" If you've got your helios.ini configured and ready, you're almost ready to go.
Make sure the path to your helios.ini is set in the HELIOS_INI environment variable, and that the variable is exported. At the command line:
export HELIOS_INI=/path/to/helios.ini
Also make sure it is an absolute path; relative paths will confuse the Helios service loader/daemon. Also, for this tutorial, go ahead and enable debug mode by setting the HELIOS_DEBUG environment variable:
export HELIOS_DEBUG=1
This will allow you to see some extra Helios debugging messages and prevent the service daemon from daemonizing, allowing you to stop it from the command line.
First, we'll go ahead and submit the job we want to run by using the helios_job_submit.pl program at the command line:
helios_job_submit.pl -v TestService "<job><params><myarg1>This is a test</myarg1></params></job>"
This will submit a job with a jobtype of TestService, meaning it is meant to be run by the service named "TestService". In the XML arguments for the job, there is actually only one argument, named 'myarg1', that has the value "This is a test". Of course, you can have a large number of arguments; the limit in the default Helios MySQL database schema is about 16MB, though you really should not be submitting that much data as job arguments, at least while you are learning the system.
The -v option tells helios_job_submit.pl to return the jobid of the new job. If you use the -v option or you enabled HELIOS_DEBUG, you should receive a message if your Helios setup is functioning properly:
Job submit successful. JOBID: 9
(The jobid will vary depending on how many jobs you have submitted to the system previously.) If you received an error, there is most likely a problem with your Helios configuration; go back to the install instructions, fix the problem, and try again.
So now that you have submitted a job to Helios, how do you make it run? If you saved the service we discussed above in a file called TestService.pm in the current directory, you can start the service using the helios.pl service loader/daemon:
helios.pl TestService
If you enabled HELIOS_DEBUG, you'll see a lot of messages scroll on the screen as helios.pl does some setup, attempts to load your service class, and parses the configuration for the service in helios.ini and in the Helios database. If that all goes well, the service daemon will look for jobs, see the job you submitted earlier, and launch a worker process to run the job. The worker process will call the run() method you defined, logging the job arguments to the Helios log and marking the job as completed. You'll see the job arguments printed on the screen:
*** JOBID: 9 param: myarg1 value: This is a test! ***
Once all that is done, you'll see a "0 waiting TestService jobs." message. At that point you can press Ctrl-C to exit the service daemon. You can also open another terminal session and submit another job and watch it being processed if you like.
(If you didn't enable HELIOS_DEBUG, the service daemon will still do all the things described, but you'll only see a message that your TestService class was loaded, and then helios.pl will daemonize, disconnecting from your terminal in the process.)
If you want to check the log messages your service wrote to the log while processing the job, you can use the helios_job_info command to find out a job's start and complete times, whether it ran successfully, and any log messages it recorded. If you have the jobid from the job submitted earlier, issue a command like this:
helios_job_info --jobid=9 --args --logs
to see a full report on the job like the one below:
Jobid: 9
Jobtype: Helios::TestService
Submit Time: Fri Mar 7 17:12:08 2014
Complete Time: Fri Mar 7 17:13:00 2014
Exitstatus: 0
<job><params><myarg1>This is a test</myarg1></params></job>
Fri Mar 7 17:13:00 2014 [localhost:13432] INFO Helios::TestService says, "Hello World!"
Fri Mar 7 17:13:00 2014 [localhost:13432] INFO JOBARG=myarg1 VALUE=This is a test
You can also use the Helios::Panoptes web application to view and search the Helios system log. In addition to messages related to specific jobs, Helios::Panoptes will also show log messages that the helios.pl service daemon logged about starting up, seeing jobs, and launching processes to handle those jobs. It is worth becoming familiar with these messages so will be able to understand what is happening to your jobs and services as you develop, deploy, and manage services in your Helios collective.
In the previous section, you saw that you can submit jobs to Helios using the helios_job_submit.pl command line program. There are actually 3 ways to submit jobs to Helios:
helios_job_submit.pl, a shell program
over HTTP with the included submitJob.pl CGI script
in your own Perl programs, using the Helios::Job class
If you want to submit jobs via the shell or over HTTP, check the perldoc for helios_job_submit.pl and submitJob.pl for more information.
Sometimes you need more integration than a shell or CGI script can provide, especially if you're running in a persistent environment like FastCGI or mod_perl. In those cases, you should use the Helios job submission API directly.
To use the Helios job submission API, you initialize Helios using the Helios::Service class, create a Helios::Job object, and submit it to the system.
For example:
use strict;
use warnings;
use Helios::Service;
use Helios::Job;
# create a Helios::Service object, initialize it with prep()
# then get the $config hash with getConfig()
my $service = Helios::Service->new();
$service->prep() or die($service->errstr);
my $config = $service->getConfig();
# create your job arguments in XML
# then instantiate a Helios::Job object
# give it the Helios $config with setConfig()
# tell it the service class that should process the job with setJobType()
# set your job arguments with setArgString()
my $jobxml = '<job><params><filename>Rise.mp3</filename></params></job>';
my $job = Helios::Job->new();
# finally, submit the job to the system
my $jobid = $job->submit();
The first thing to do is to instantiate a Helios::Service object, call the prep() method to parse the configuration and initialize a connection to the Helios collective database, and get the basic Helios configuration by calling the getConfig() method.
Once you have the Helios configuration, you're ready to create your job. Create an XML string specifying the job arguments in XML. Then instantiate the Helios::Job object with the new() method. Give your job object the Helios configuration you retrieved earlier (with setConfig()) and the name of the service class you want to service the job (with setJobType()). Finally, set the job's arguments by using the setArgString() method.
Then submit the job to Helios using the submit() method. If the job submission was successful, submit() will return the jobid of the newly submitted job. If something goes wrong, submit() will throw an exception.
Once the job is submitted, it goes into the Helios collective's job queue marked for the service you specified. When a service with that name starts, the helios.pl daemon will see jobs for that service are available, and will launch worker processes to process them. The worker processes will pull the jobs from the queue and call your service's run() method, passing it the Helios::Job object. Once your run() method has marked the job as a success or failure and returned, the worker process will end or, if the OVERDRIVE configuration parameter has been set, the worker process will pull another job from the queue and call your service's run() method again.
Helios job arguments are normally specified in XML-like markup that follow a relatively simple format:
While the markup language is definitely XML-like and must be well-formed like XML, in reality there is no DTD to validate against, and the tags in the <params> section are left entirely up to the user to define. This gives you maximal flexibility in determining the names and values of your job arguments, and also makes it simple to parse the arguments into the job argument hash for Helios services to use. Take the following job arguments, for example:
In the run() method of a service, calling the getJobArgs() method with a job with the above arguments will yield a reference to a hash like this:
'id' => '456',
'type' => 'blog',
'email' => 'email@example.com'
So the tag names become the keys of the hash, and the enclosed strings become the hash values.
Keep in mind that although job argument XML can be flexible, the XML parser is set up to do things relatively simply, so complex XML structures should be avoided. In Helios, "jobs" are really only parameters to "services," so job arguments are best kept simple. The logic of your application should go in your Helios service class.
In the previous simple TestService example, you saw that the service's configuration is available via the getConfig() method. But how is that configuration set up? The Helios configuration system provides the ability to centrally configure services across an entire collective and, if necessary, tailor a service's configuration on a per host basis.
The first piece of the Helios configuration system is the helios.ini file. All of the configuration parameters set in the [global] section of helios.ini are available not just to the helios.pl service daemon, but to all Helios services running in a particular collective. You may also put configuration parameters specific to your service in helios.ini by creating a section named the same as the service:
The [TestService] section here would set up the logging configuration specifically for the TestService service (see below for more about the Helios logging system). While all Helios services will see the configuration options set in the [global] section, only the TestService service will see the configuration options set in the TestService section.
While you can set the configuration options for your service in helios.ini and distribute the helios.ini between all of your hosts, that is very tedious and unwieldly way to manage a service's configuration. In addition to the helios.ini file, configuration parameters for a service can also be set using the helios_config_set command. The helios_config_set command takes 4 arguments:
- --service
The service you are setting the config parameter for.
- --hostname
The host you are setting the config parameter for. A parameter can be set to affect a service on a single host or every host in the collective. If you do not specify a --hostname, helios_config_set will assume the parameter should only affect the specified service on the current host. If you want the parameter to affect the service running on any host, set the hostname an asterisk ("*").
- --param
The name of the config parameter to set.
- --value
The actual value of the parameter to set.
For example, if you want to Helios to run up to 5 TestService workers at a time on the current host, you can issue the following command to set the MAX_WORKERS config parameter:
helios_config_set --service=TestService --param=MAX_WORKERS --value=5
To enable OVERDRIVE mode on TestService workers on every host in your Helios collective, use the --hostname parameter and set it to '*':
helios_config_set --service=TestService --hostname=* --param=OVERDRIVE --value=1
If you want to check your work, you can use the helios_config_get command, with the same options:
helios_config_get --service=TestService --param=MAX_WORKERS
You can also use the helios_config_unset command to delete a parameter from the collective database entirely.
You can also use the Helios::Panoptes web application to set config parameters for your services. Also, remember that though Helios defines a lot of special configuration parameters itself, you can use the Helios configuration subsystem to specify other parameters your service might need. For example, if you have a Helios service called Indexer, which has a landing directory where it stores incoming files, you can specify a "landing_zone" parameter available to all of Indexer instances running on every host of your collective:
helios_config_set --service=Indexer --hostname=* --param=landing_zone --value=/mnt/SAN1/incoming"
Regardless of how you set configuration parameters, when your service class calls the getConfig() method, a hashref will be returned that will contain the configuration options specific to the service running on that particular host. The hash keys will be the parameter name, while the hash values will be the values specified for that particular parameter. The hash will contain:
any parameters set in the helios.ini [global] section,
any parameters set in helios.ini with section name matching the service's name,
any parameters in Helios collective database matching the service's name and a hostname set to '*'
any parameters in collective database with the service's name and a hostname set to the current host.
Each of the above items will override the config options set by the previous ones. For example, if you set a 'log_priority_threshold' option for a service for the current host, it will override any 'log_priority_threshold' options set for the service globally (hostname = '*') or in helios.ini. In this way you can set configuration options for services running across the collective but isolate specific instances of a service on particular hosts if necessary.
You will note in the TestService example the use of the logMsg() method to send messages to the Helios logging system. The Helios logging system is an extensible system to keep track of what goes on in the Helios system and during job processing.
Inside of your service, the logMsg() method is what you need to log messages to the Helios logging system. The logMsg() method takes 3 parameters:
the Helios::Job object of representing the current job (optional)
the priority level of the message (optional)
a string with the message you want to add to the log
If you pass a Helios::Job object in your call to logMsg(), the jobid will be recorded along with the message.
The message priority levels of messages are defined in Helios::LogEntry::Levels. If you import these levels with the ':all' tag at the beginning of your service:
use Helios::LogEntry::Levels ':all';
you can use symbols rather than integers to specify the severity of your log entry. If you don't specify a priority level, the message will default to LOG_INFO priority.
The default, internal Helios logging system records messages in a table in the Helios collective database. You can access log messages for a specific job using the helios_job_info command. You can also use the Helios::Panoptes application to view log messages for particular jobs and more system-level messages recorded by the helios.pl daemon. Helios::Panoptes will also allow you to filter and search for messages matching certain criteria.
You can check the Helios::Service man page entry for the logMsg() method for information on logging, and the Helios::Configuration page for more information about logging configuration. If you want to configure your Helios collective to use some other logging system, check the Helios::Logger man page for information about creating your own Helios interfaces to other logging systems.
Included in the eg/ directory of your Helios distribution is a simple sample Helios application called MP3IndexerService. Unlike the TestService service class discussed in this tutorial, MP3IndexerService actually does something useful: given a list of filenames of MP3s, MP3IndexerService will parse the ID3 and other useful information and store it in a database table. It can be useful for finding duplicate copies of tracks or just reviewing the different artists, albums, etc. that you have on your hard drive. A look at its code will reveal it uses all the major Helios subsystems (job queuing, configuration, logging) in some way or another. Though it remains a very simple application, it demonstrates how easily a useful Helios application can be written.
helios.pl, Helios::Service, Helios::Job, Helios::Panoptes
Andrew Johnson, <lajandy at cpan dotorg>
Copyright (C) 2012-4 by Andrew Johnson.
Portions of this document, where noted, are Copyright (C) 2008-9 by CEB Toolbox, Inc.
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.0 or, at your option, any later version of Perl 5 you may have available.
This software comes with no warranty of any kind.


text:
Here you may find all Transparent 7 little words bonus answers and solutions for the 7 Little Words Bonus Daily Puzzle. The reason why you are here is because you are looking for Rigidity answers. In our website you will be able to find every day the answers for 7 Little Bonus Challenge. We have in our database all the solutions for all the daily 7 little words Bonus and the answer for Rigidity is as following:
Already found the solution for Transparent? Click here to go back to the main post and find other answers 7 Little Words Daily Bonus May 26 2019 Answers.

subset: commoncrawl


text:
There was a time that on each and every Friday, I would have lunch with my good friends Sandy and Vanessa. I can't tell you how many times we ordered this chicken salad at a place on Main Street in Pleasanton California called Tongs. I don't even know if the restaurant is still there, but the memory of that salad and our fun Friday lunches stays with me even today, many years later and many miles away from my girlfriends.
I love this salad so much recreated my own version of the salad we used to order at Tongs and included it in my first cookbook Signature Salads (2005). I cook the bone-in chicken breasts the same way Tongs did, leaving the skin on, and pan searing before finishing in the oven. The cooked chicken is sliced thinly and tossed with a Chinese mustard vinaigrette in a confetti mixture of romaine, Napa cabbage, cilantro, and radicchio. Chopped peanuts add the finishing touch.
While this was once my go-to Friday girlfriend lunch, it is now my go-to busy weeknight family meal. My daughter is in the middle of lacrosse season right now, which means lots of games (which I love to watch!) and not a lot of time for dinner preparation. When you get home from the game everyone is starving and then there is still homework they have to do. If you have kids, you definitely know what I mean.
There is never enough time,that's why I love things like this. I can get the ingredients prepped early in the day and just toss together when we get home. —-And in 80+ degree temperatures, a really nice salad makes everyone happy and does the trick! Hope you like it too.
Chicken Salad with Chinese Mustard Vinaigrette
- Dressing: 1 egg yolk 3 teaspoons Chinese dry mustard powder
- ¼ cup rice vinegar
- 1 teaspoon soy sauce
- 3 tablespoons sesame oil
- 1½ teaspoons honey
- Salt and Freshly ground pepper
- Salad:
- 3 bone in, skin on chicken breasts
- 2 tablespoons peanut oil
- Salt & freshly ground pepper
- 1 bunch cilantro, chopped
- 1 head Napa cabbage, thinly sliced
- 1 head romaine lettuce, thinly sliced 1 head radicchio, cored and thinly sliced
- 1 cup chopped peanuts
- Preheat oven to 450 degrees. Season the chicken with salt and pepper. Heat a large saute pan over high heat. When the pan is hot, add the peanut oil and heat until almost smoking. Add the chicken, skin side down, and cook 4 minutes. This skin should be golden brown. Turn the chicken over and place in the oven. Roast until the chicken is just cooked through and the juices run clear, about 15-20 minutes. Remove the chicken from the bones and slice into thin strips.
- Add the chicken and salad greens to a large bowl. Add dressing and toss well to combine. Divide among plates and garnish with chopped peanuts.


text:
How to Use
Map 1: California, 1851.
Walnut Grove and Locke are located near the junction of the Sacramento and San Joaquin Rivers, an area know as the Delta region. The two towns lie east of San Francisco and about midway between Sacramento and Stockton, in the northern third of the great central valley that is made up of the Sacramento and San Joaquin valleys.
Questions for Map 1
1. Using a world map, locate Japan, China, and California. Approximate the distance between these countries and the United States. Considering the modes of transportation available in the late 19th century and early 20th century, do you think this was an easy trip for the Japanese and Chinese laborers?
2. Locate San Francisco, Sacramento, and the confluence of the Sacramento and San Joaquin Rivers. Notice the topography of the map. Why would this area be a good location for agricultural industries?
* The map on the screen has a resolution of 72 dots per inch (dpi), and therefore will print poorly. You can obtain a high quality version of Map 1, but be aware that the file will take as much as 62 seconds to load with a 28.8K modem.


text:
Ope and Tomiwa Wedding Reception (PRIVATE EVENT)
- Sykesvilles, MD United States (map)
Great presence, and a great speaker! I enjoyed Mike immensely.
Nick L.
Mr. Mike Obodozie is an outstanding man with a great work ethic. I highly recommend him to manage your event. Cheers!
The Risi Foundation
Michael did an excellent job as our Wedding MC! He wonderfully executed our vision based on our pre-wedding discussion. He was professional, eloquent, and entertaining. He understood the audience and was well liked by our guests. We are sure you will not be disappointed by hiring him as he is a pleasure to work with!
Abi S.
Michael was a superb MC @ my husband's 50th birthday party. He was a natural and brought humor and fun to the occasion. my guests were totally engaged and thrilled....I recommend Michael 100%!!
Funmi F.
Difficult venue, but Mike did a superb job in adapting and making it work!
Deborah L.
Words are not enough to describe how much Mike went above and beyond our expectations. He certainly knows how to hold a gathering/crowd and yet, create for a fun and lively atmosphere. Mike made our wedding day a truly memorable one because time management was something we always worried about leading up to the wedding, but with Mike Obodozie, this was a breeze - we accomplished everything on the program at their specified allotted time. Mike you rock and you truly made our day the best day of our lives. God bless you and thank you once again.
Zee A.
Mike is very professional and pays attention to details. Mike met with my husband and I before our wedding in order to get to know us better. At our meeting we told him what we expected. Mike was respectful and made sure that our vision came to life. I would highly recommend Mike.
Yuwa A.
Articulate, witty, entertaining and engaging. Michael stands out above the rest. His humor and carriage compliment his poise.
Tsegho M.


text:
Nothing like a sleepover with Cooperstown legends
The 306 baseball legends who have been enshrined in the National Baseball Hall of Fame are the lucky few who can call Cooperstown home. But on Saturday night, 30 children and parents also got that chance.
The Hall of Fame typically hosts its "Extra Innings Overnights" program four times per year, two for the children of members and two for youth groups, with anywhere from 30 to 80 people sleeping overnight in the Museum's Plaque Gallery. The program was inspired by the "Night at the Museum" movies, but instead of dinosaurs, Indians and Teddy Roosevelt, participants get bats, balls and Teddy Ballgame.
The 306 baseball legends who have been enshrined in the National Baseball Hall of Fame are the lucky few who can call Cooperstown home. But on Saturday night, 30 children and parents also got that chance.
The Hall of Fame typically hosts its "Extra Innings Overnights" program four times per year, two for the children of members and two for youth groups, with anywhere from 30 to 80 people sleeping overnight in the Museum's Plaque Gallery. The program was inspired by the "Night at the Museum" movies, but instead of dinosaurs, Indians and Teddy Roosevelt, participants get bats, balls and Teddy Ballgame.
When I first saw the Hall's press release, I thought, "How cool for the kids!" And then I thought, "Wait, that would be cool for me, too." And not only because I'm a baseball fan. My grandfather is 1972 Hall of Fame inductee Yogi Berra, and I was thrilled by the idea of getting to sleep under his plaque.
I have vivid memories of attending Hall of Fame induction weekends with my family, and getting to spend the Friday night before the ceremony roaming around the museum with my Gramp and all of his baseball buddies and their kids and grandkids, listening to all the "remember-when" stories brought on by the photos and memorabilia. That was after-hours access with the best of tour guides, but even then, the Museum staff eventually made us leave. But not this time.
Elliot Stein of New York brought his 9-year-old son, Will, clad in a Babe Ruth T-shirt, to spend the night.
"My son is excited, for sure," Stein said. "But I've been a Yankee fan my whole life and I love this place, so I'm probably more excited than he is."
Stein caravanned up from Manhattan with fellow dads Larry Roberts and Scott Antin, their sons Caden and Drew, both 11, and pals Finn Kaplan-Morse, 10, and Eli Forant, 9. The five boys, Yankees fans all, are friends from Midtown West Elementary School in Hell's Kitchen.
Upon arrival at the Museum, kids and parents alike set out their sleeping bags -- many even brought full-sized AeroBeds -- to stake claim to a plot of real estate under their favorite Hall of Famer's plaque. I arrived plenty early to secure my spot in the annex Grampa shares with, among others, Roberto Clemente, who was another of my childhood heroes.
Cory Robeson's stepdaughter Brooke Tenbrink had different priorities. Robeson, from Syracuse, N.Y., had his eye on the alcove that includes Ted Williams' plaque, but Brooke, 10, chose a bay with a power outlet for her iPad instead.
The night began with a scavenger hunt to complete in the Plaque Gallery, with clues like, "No, I am not Superman, but my plaque does say that I was 'faster than a speeding bullet.' Who am I?"
Answer: Rickey Henderson.
The kids and their parents were then invited to explore the museum on their own, and to visit special exhibits set up for their enjoyment. In the museum's Learning Center, they were able to try on replica baseball uniforms and catchers equipment from different eras, swing a reproduction of Babe Ruth's bat and play catch with old-time gloves and brown leather lemon peel baseballs.
On the third floor, set amid the Hall of Fame's new Photo Gallery, kids were able to visit a hands-on history cart called "Tools of the Trade." They touched baseballs from different eras and saw what was inside them. There were also several bats being shown; a Don Mattingly bat had a thin handle with one side shaved flat, to better fit in the fingers, while Willie McCovey's bat was much heftier.
Hall of Fame manager of distance learning Bruce Markusen entertained the families with a presentation about American presidents and their involvement with baseball. They saw photographs of Woodrow Wilson at Griffith Stadium in Washington; Wilson, who played baseball as a freshman at Davidson College in North Carolina, attended 16 baseball games while in office, more than any other president. They also viewed a copy of the famous "Green Light" letter sent by President Franklin D. Roosevelt to baseball Commissioner Kenesaw Mountain Landis in January 1942, encouraging him to keep baseball going during World War II, and a 1948 photo of President George H.W. Bush, then captain of the Yale Bulldogs baseball team, accepting an original manuscript of Babe Ruth's autobiography for the Yale University library from The Bambino himself.
Markusen also pulled items from the Hall of Fame's archives to show the kids, including a glove used by President Dwight D. Eisenhower, a bat belonging to Lou Gehrig and the Yankees jacket worn by my grandfather during the 1981 World Series.
The night culminated with popcorn and a screening of "The Sandlot" in the Hall's Bullpen Theater.
At around 11:30, the lights went out in the Plaque Gallery, leaving the bunch of us in our sleeping bags alone with the members of the Hall of Fame. I could see the outline of Grampa's head on the plaque that talks about his 14 pennants and 358 home runs. The coin fixed to the wall beneath it commemorates his military service in WWII, as a gunner's mate on a U.S. Navy landing craft during the Allied Invasion of Normandy.
He's a baseball hero and a war hero, and by that hour, he was long asleep; he doesn't start staying up late until the Yankees start having road swings on the West Coast. He would have scoffed at my nostalgia, told me to hit the sack. But I stayed awake for a while, just taking it all in.
In Grampa's induction speech 42 years ago, he said, "I hope my being here will be an inspiration for every boy in America."
But if the crew from Midtown West Elementary is any indication, the Extra Innings Overnights program is helping Gramp and his fellow Hall of Famers inspire a whole new generation of kids.
Lindsay Berra is a reporter for MLB.com. Follow her on Twitter @lindsayberra.


text:
Browser does not support script.
Cookies help us to provide and improve our services. By continuing to use our site, you agree to our cookie policy.
Warsash Maritime Academy
Search the site
Quick links
Explore Solent University
Courses Home
Find courses
Key information
Deck (Navigation)
Engineering and marine electro-technical
Hotel operations
STCW, safety and security
Ship handling centre
Ship simulation (Bridge, engine room and LICOS)
Offshore oil and gas
Leadership, management and professional development
Online and blended learning
Undergraduate and postgraduate
About us Home
Welcome to Warsash
Our expertise
Our staff
Student life and student support
Our partners
Contact/Find us
Brochures and gallery
Facilities Home
Bridge simulators and ECDIS suites
Engine room simulator
Liquid cargo operations simulator
Engineering workshops
Maritime and offshore safety facilities
Fire school
Radio communications centre
Seamanship centre
Campus facilities
Sport and leisure
Solent University
Careers Home
The maritime industry
Officer cadet training
International students
Engineering and electro-technical
Shore based
Personal development
Recruitment Home
The recruitment process
Recruitment partners
Officer cadets
Merchant Navy
Cruise industry
Superyacht industry
Offshore oil and gas industry
Renewables industry
Vessel services Home
Onboard training
Consultancy services
Vessel surveys and audits
Vessel registration
Specialist services
Travel services
Vessel management services
Vessel crewing services
News and events Home
Journals and articles
Our career progression charts are designed to give you a clear guide to the best route and courses required to further your career.
Please click on the appropriate links below for more information:
Deck Officer (Unlimited) - Degree Route for Officer Cadets
Deck Officer (Unlimited) - HND Route for Officer Cadets
Deck Officer (Unlimited) - Experienced Seafarer
Deck Officer - Commercial Yachts
Careers home
Text Only
Accessibility on this website
Main switchboard: 023 8201 3000
Email: email@example.com


text:
Professor, Department of Emergency Medicine
Professor, Department of Medicine
Professor, Department of Epidemiology & Population Health
Chair, Department of Emergency Medicine
Dr. Gallagher is the founding chair of the department of emergency medicine at Einstein. He is one of the pioneers of the relatively new and multi-disciplinary field of emergency medicine. He has operational and academic responsibility for 300,000 visits annually at the Montefiore Medical Center's three emergency rooms, He also has academic oversight over three residency programs consisting of approximately 180 emergency medicine residents and fellows, and about 190 full-time faculty at Montefiore, Jacobi Medical Center, North Central Bronx Hospital, Long Island Jewish Medical Center, and Beth Israel Medical Center in Manhattan. In total, he has at least academic oversight over seven emergency departments, with a total of more than one-half million visits annually.
Dr. Gallagher's current research interests center on the metrics and management of pain. He also remains clinically active several days a week. He is a member of the Institute of Medicine (IOM) of the National Academies, where he chairs one of the 12 sections of the IOM.
Selected Randomized Clinical Trials since 2001:
Corbo J, Esses D, Bijur PE, Iannaccone R, Gallagher EJ: Randomized clinical trial of intravenous magnesium sulfate as an adjunctive medication for emergency department treatment of migraine headache. Ann Emerg Med 2001;38:621-627.
Callaham ML, Knopp RK, Gallagher EJ: Effect of written feedback by editors on quality of reviews. Two randomized trials. JAMA 2002;287:2781-2783.
Lahn M, Bijur P, Gallagher EJ. Randomized clinical trial of intramuscular vs oral methylprednisolone in the treatment of asthma exacerbations following discharge from an emergency department. Chest 2004;126:362-368.
Friedman BW, Corbo J, Lipton RB, Bijur PE, Esses D, Solorzano C, Gallagher EJ: A trial of metoclopramide vs sumatriptan for the emergency department treatment of migraines. Neurology 2005;64:463-468.
Chang AK, Bijur PE, Meyer RH, Kenny MK, Solorzano C, Gallagher EJ. Safety and efficacy of hydromorphone as an analgesic alternative to morphine in acute pain: a randomized clinical trial. Ann Emerg Med. 2006;48:164-172.
Gallagher EJ, Esses D, Lee C, Lahn M, Bijur PE. Randomized clinical trial of morphine in acute abdominal pain. Ann Emerg Med. 2006;48:150-160,
Friedman BW, Hochberg M, Esses D, Bijur PE, Corbo J, Paternoster J, Solorzano C, Toosi B, Lipton RB, Gallagher EJ: A clinical trial of trimethobenzamide/diphenhydramine versus sumatriptan for acute migraines. Headache 2006;46:934-41.
Friedman BW, Greenwald P, Bania TC, Esses D, Hochberg M, Solorzano C, Corbo J, Chu J, Chew E, Cheung P, Fearon S, Paternoster J, Baccellieri A, Clark S, Bijur PE, Lipton RB, Gallagher EJ. Randomized trial of IV dexamethasone for acute migraine in the emergency department. Neurology. 2007;69:2038-2044.
Birnbaum A, Esses D, Bijur PE, Holden L, Gallagher EJ. Randomized double-blind placebo-controlled trial of two intravenous morphine dosages (0.10mg/kg and 0.15 mg/kg) in emergency department patients with moderate to severe acute pain. Ann Emerg Med. 2007;49:445- 453.
Friedman BW, Esses D, Solorzano C, Dua N, Greenwald P, Radulescu R, Chang E, Hochberg M, Campbell C, Aghera A, Valentin T, Paternoster J, Bijur P, Lipton RB, Gallagher EJ. A randomized controlled trial of prochlorperazine versus metoclopramide for treatment of acute migraine. Ann Emerg Med 2008;52:399-406.
Friedman BW, Esses D, Solorzano C, Choi HK, Cole M, Davitt M, Bijur PE, Gallagher EJ. A randomized placebo-controlled trial of single-dose IM corticosteroid for radicular low back pain. Spine 2008 15;33:24-29.
Chang AK, Bijur PE, Baccelieri A, Gallagher EJ: Efficacy and safety profile of a single dose of hydromorphone compared with morphine in older adults with acute, severe pain: A prospective, randomized, double-blind trial. American Journal of Geriatric Pharmacotherapy 2009;7:1-10.
Friedman BW, Bender B, Davitt M, Solorzano C, Paternoster J, Esses D, Bijur P, Gallagher EJ: A randomized trial of diphenhydramine as prophylaxis against metoclopramide-induced akathisia in nauseated emergency department patients. Ann Emerg Med 2009;53:379-385.
Chang AK, Bijur PE, Davitt M, Gallagher EJ. Randomized Clinical Trial Comparing a Patient-Driven Titration Protocol of Intravenous Hydromorphone With Traditional Physician-Driven Management of Emergency Department Patients With Acute Severe Pain. Ann Emerg Med. 2009;54:561-567.
Material in this section is provided by individual faculty members who are solely responsible for its accuracy and content.
Montefiore Medical Center
111 East 210th Street
Rosenthal Pavilion, Room 2 SE
Bronx, NY 10467


text:
We've detected a problem with your browser settings.
in your browser settings to successfully view our site.
Service Area : Oklahoma Change
Sign In | Register
To serve you better please select from the list of service areas below to see relevant CenterPoint Energy information.
Use the calculator below to calculate the annual cost difference between natural gas versus electricity and propane at varying prices and efficiency factors.


text:
On our European routes, SAS offers you the choice between two service classes: SAS Go and SAS Plus. Enjoy flexible tickets, double EuroBonus points, Fast Track, Lounge, food & drink onboard & much more in SAS Plus. Read more about SAS Plus on intercontinental flights
Flying in SAS Plus makes your travel easier - book now!
Scandinavian Airlines © 2016


text:
The New Albany Community Foundation's 10th annual A Remarkable Evening, which will feature former President Bill Clinton as the speaker, has been sold out for weeks.
The New Albany Community Foundation's 10th annual A Remarkable Evening, which will feature former President Bill Clinton as the speaker, has been sold out for weeks.
"We announced at the end of May and we've been sold out since Aug. 1," said Lisa Hinson, spokeswoman for the Thursday, Nov. 29, fundraising event.
Hinson said previous foundation supporters and community members turned in their requests for tickets in record time, which meant that the fundraiser wasn't marketed to anyone outside the community. Last year's event sold out in two-and-a-half months to set the previous record.
About 500 people are expected to attend.
All of the proceeds benefit the New Albany Community Foundation because much of the event is underwritten by the New Albany Co. Leslie and Abigail Wexner underwrite the cost of the speaker and host the event at their home in New Albany.
Last year's event, which featured former Secretary of State Condoleezza Rice as the speaker, raised a record $1 million for the community foundation.
The proceeds from this year's A Remarkable Evening will be announced the night of the event, which is the community foundation's standard procedure.
Craig Mohre, executive director of the New Albany Community Foundation, previously said the sponsorship levels and seat prices were higher than previous years.
Three levels of sponsorship were available: $5,000, which included two tickets; $25,000, which included a table for 10; and $75,000, which included a table for 10 and title sponsorship.
Mohre said each year the foundation hopes to increase the donations, which help support the foundation's four main focuses: the arts, education, the environment and health. All of its grants are devoted to one or more of those areas.
This year, the foundation has provided nearly $500,000 in grants for educational programs through the New Albany-Plain Local School District and New Albany branch of the Columbus Metropolitan Library; for benchmarking studies by the New Albany-Plain Local School District; for author visits to each New Albany school building; for a New Albany student-produced video about the community; and for the establishment of an environmental education center on the New Albany district campus.
Funding also went to the Jeanne B. McCoy Community Center for the Arts endowment and such local arts organizations as the New Albany Ballet Company, New Albany Arts Council and New Albany Symphony Orchestra.
Typically, the foundation asks its A Remarkable Evening guest speaker to give a lecture to local students during the school day.
Hinson said this year, the student lecture was not possible with Clinton's schedule, so the foundation arranged for Dr. Paul Farmer speak to students Nov. 29.
"Given the nature of (Clinton's) life, the timing is difficult," Hinson said. "Dr. Farmer is an exceptional surrogate."
Farmer is connected to Clinton through Partners in Health, a nonprofit organization he founded that provides health-care options for the poor. The Clinton Global Initiative supports Partners in Health, which worked in Haiti, at first treating HIV and AIDS patients and in more recent years tackling "disease and poverty, providing food, water, education and housing to sick patients," according to the organization's website.
New Albany students are learning about all aspects of Farmer's work in Haiti, from the challenges of obtaining clean drinking water to establishing sustainable businesses that can help feed people in the poverty-stricken nation. A group of parent volunteers also worked with the schools to design educational programs that teach students the importance of helping others who are less fortunate.
Farmer will speak to New Albany High School students and students from five other districts at the McCoy center. A live webcast will be shown in the high school gymnasium for other students.
Hinson said the two facilities can seat 1,750 students. Community members will be invited to view the live webcast from the high school mini theater, which seats 150. Others can watch it online at www.newalbanyfoundation.org/farmer.