text:
Why Cowboy and Batman.js
There are a lot of Erlang web frameworks out there today. Not all are modeled after the MVC model (see Nitrogen), but I think all of them are addressing the problem the wrong way. I recently gave a presentation, slides here and the code for this example here, describing my perferred method for using Erlang for web development and why I think it is the best way to go. In this post, I'll go into more details on how to build the Erlang backend for the TodoMVC clone I did with Batman.js. I will not spend time on Batman.js but instead only give a quick list of reasons I prefer it to other Javascript frameworks.
Batman.js advantages:
- Automatic URL generation based on model
- HTML data-bind templates
- Coffeescript
Cowboy is a newer Erlang web server that provides a REST handler based on Webmachine. Both of these are perfect for developing a RESTful API, because they follow the HTTP standard exactly and when you are building an API based on HTTP, being able to properly reason about how the logic of the application maps to the protocol eases development and eases getting REST "right".
Any non-dynamic content should be served by Nginx since there is no logic needed and it is something Nginx is great at, so why have Erlang do it? The snippet below configures Nginx to listen on port 80 and serve files from bcmvc's priv directory. Each request is checked to see if it is a POST or any other method with a JSON request type. If either of those are true, the request is proxied on to a server listening on port 8080, in our case the Cowboy server.
server { listen 80; server_name localhost; location / { root <PATH TO CLONE>/bcmvc/lib/bcmvc_web/priv/; if ($request_method ~* POST) { proxy_pass http://localhost:8080; } if ($http_accept ~* application/json) { proxy_pass http://localhost:8080; } } }
The API
Batman.js knows what endpoints to use and what data to send based on the name of the model we created and the encoded variables, code here. This results in the following API:
|{todo : {body:"bane wants to meet, not worried",isDone:false}}
|{todo : {body:"bane wants to meet, not worried",isDone:false}}
|[{todo : {id:"33e93b30-2371-4071-afc5-2d48226d5dba", body:"bane wants to meet, not worried", isDone:false}}]
Cowboy Dispatch and Supervisor
Dispatch rules are matched by Cowboy to know what handler to send the request to. Here we have two rules. One that matches just the URL /todos and one that matches the URL with an additional element which will be associated with the atom todo. Both requests will be sent to the module bcmvc_todo_handler.
Dispatch = [{'_', [{[<<"todos">>], bcmvc_todo_handler, []}, {[<<"todos">>, todo], bcmvc_todo_handler, []}]}],
Cowboy provides a useful function child_spec for creating a child specfication to use in our supervisor. The child spec here tells Cowboy we want a TCP listener on port 8080 that handles the HTTP protocol. We additionally provide our dispatch list for it to match against and pass on requests.
ChildSpec = cowboy:child_spec(bcmvc_cowboy, 100, cowboy_tcp_transport, [{port, 8080}], cowboy_http_protocol, [{dispatch, Dispatch}]),
Cowboy Handler
Now that we have a server on port 8080 that knows to send certain requests to our todo handler, we can build the module. The first required function to export is init/3. This function let's Cowboy know we have a REST protocol, this is how it knows what functions to call (some have defaults and some existing in our module) to handle the request.
init(_Transport, _Req, _Opts) -> {upgrade, protocol, cowboy_http_rest}.
Knowing that this is a REST handler Cowboy will pass the request on to allowed_methods/2 to find out if our handler is able to handle this method. Next, the content types accepted and provided by the handler are checked against the incoming request. The expected HTTP response status codes are returned if any of these fail. 405 for allowed_methods, XXX for content_types_accepted and XXX for content_types_provided.
allowed_methods(Req, State) -> {['HEAD', 'GET', 'PUT', 'POST', 'DELETE'], Req, State}. content_types_accepted(Req, State) -> {[{{<<"application">>, <<"json">>, []}, put_json}], Req, State}. content_types_provided(Req, State) -> {[{{<<"application">>, <<"json">>, []}, get_json}], Req, State}.
Now the request is sent to the function that handles the HTTP method type of the request.
For a POST, a request to create a new todo item, the function process_post/2 is sent the request. Here we retrieve the body, a JSON object, from the request, convert it to a record and save the model. We'll see how this record conversion is done when we look at the model module. To inform the frontend of the id of our new resource we set the location header to be the path with the id.
process_post(Req, State) -> {ok, Body, Req1} = cowboy_http_req:body(Req), Todo = bcmvc_model_todo:to_record(Body), bcmvc_model_todo:save(Todo), NewId = bcmvc_model_todo:get(id, Todo), {ok, Req2} = cowboy_http_req:set_resp_header( <<"Location">>, <<"/todos/", NewId/binary>>, Req1), {true, Req2, State}.
For this handler we expect PUT for an update to an object, that is what Batman.js does, but a PATCH would make more sense. For a PUT the URL contains the id for the todo item to be updated. That is retrieved with the binding/2 function. The todo record is created the same as in process_post/2 but then the this id is set for the model and the update/1 function is used to save it to the database.
put_json(Req, State) -> {ok, Body, Req1} = cowboy_http_req:body(Req), {TodoId, Req2} = cowboy_http_req:binding(todo, Req1), Todo = bcmvc_model_todo:to_record(Body), Todo2 = bcmvc_model_todo:set([{id, TodoId}], Todo), bcmvc_model_todo:update(Todo2), {true, Req2, State}.
For a GET request, which for this application we do not deal with a request for a single todo item, all todo items are retrieved from the model module. Each of these is passed to the model's to_json/1 function and the result of converting each to JSON is combined into a binary string and placed between brackets so the Batman.js frontend receives a proper JSON list of JSON objects.
get_json(Req, State) -> JsonModels = lists:foldr(fun(X, <<"">>) -> X; (X, Acc) -> <<Acc/binary, ",", X/binary>> end, <<"">>, [bcmvc_model_todo:to_json(Model) || Model <- bcmvc_model_todo:all()]), {<<"[", JsonModels/binary, "]">>, Req, State}.
And lastly, DELETE. Like in PUT the todo item's id is retrieved from the bindings created based on the dispatch rules and this is passed to the model's delete function.
delete_resource(Req, State) -> {TodoId, Req1} = cowboy_http_req:binding(todo, Req), bcmvc_model_todo:delete(TodoId), {true, Req1, State}.
Model's are repsented as records and must provide serialization functions to go between JSON and a record. Each model uses a parse transform that creates functions for creating and updating the record. The transform is a modified version of exprecs from Ulf Wiger that also uses the type definitions in the record to ensure when setting a field that it is the correct type. For example in the todo model isDone is a boolean, so when the model is created the boolean convert function will be matched to convert the string representation to an atom:
convert(boolean, <<"false">>) -> false; convert(boolean, <<"true">>) -> true;
So the key pieces of the bcmvc_model_todo are:
-compile({parse_transform, bcmvc_model_transform}). -record(bcmvc_model_todo, {id = ossp_uuid:make(v1, text) :: string(), body :: binary(), isDone :: boolean()}). to_json(Record) -> ?record_to_json(?MODULE, Record). to_record(JSON) -> ?json_to_record(?MODULE, JSON).
The ?record_to_json and ?json_to_record macros are defined in jsonerl.hrl. These marcos are generic and work for any record that is typed and uses the model transform.
Clearly, much of what the resource handler and model do is generic and can be abstracted out so that implementing new models and resources can be even simpler. This is the goal of my project Maru. Currently it is based on Webmachine but is now being convered to Cowboy.
In the end, using Cowboy for building a RESTful interface for your application allows you to build interfaces for the frontend entirely separted from backend development, and if you want multiple interfaces (like native mobile and web), they both talk directly to the same backend. Also, from the beginning you have the option to open up your application with an API for other developers to take your application new places, and, shameless plug here, add your API to Mashape to spread your new app!


text:
Grand Teton National Park Panoramic Picture Framed
$ 99.00
$ 119.00
This panoramic photograph of Grand Teton National Park was taken by James Blakeway. It features the Teton Range as seen looking across Jackson Lake. The jagged peaks of the Teton Range can be easily seen as they rise from the valley floor. The tallest peak on the left is Grand Teton, a 13,770-foot mountain. Centered in the panorama is Mount Moran at 12,605 feet. Meadows abloom in early July are prevalent in the park. The dark green forests of lodgepole pines occur in the lower elevations throughout the Teton Range. Elk, moose, pronghorn, mule deer, bison, black bear, and occasionally grizzlies can be observed in the park.

subset: commoncrawl


text:
China's economy grew at its slowest rate in 25 years last year, according to official statistics released today. The Communist-led country saw its economy expand 6.9% overall in 2015 and 6.8% the last quarter, the National Bureau of Statistics said. The annual figure was largely in line with analysts' expectations, but the fourth quarter figure was one percentage point lower that analysts had predicted. Chinese markets, which have been volatile of late, reacted calmly to the news, trading mostly flat in the morning and closing 3.2% up in the afternoon.
Economists warned that the figure — though probably inflated — hinted at a difficult road ahead. "2016 will be a tough year. The economy faces a lot of structural problems and no changes to policy or regulations can produce a sharp 'V' rebound," former head of the National Bureau of Statistics Yao Jinyuan told state broadcaster CCTV. China's economic woes first began to attract attention three years ago when GDP dropped from 9.5% to 7.7% in 2012 . Since then it has trended downwards, causing the Communist-led government to draw up plans to shift from an investment and manufacturing-led economic model, to one driven by services and consumption.
The question now is whether the Party can effect that transition — which has been likened from jumping from one high speed train to another — without a crash in between. Today's figures suggest there is still hope, even if some of the data is overstated, say economists. "The upshot is that while the official GDP figures shouldn't be taken at face value, growth does appear to have been broadly stable last quarter," Juilan Evans-Pritchard of Capital Economic said in a research note. Of particular interest to many observers were retail sales, which were up 11.1% in December compared to the same period a year earlier. Optimists pointed out that this was higher than the average for the year, suggesting a pick up toward the year's close. Pessimists pointed it was lower than the expected 11.3% rise and was down from November, which recorded a rise of 11.2%.
"Consumer spending likely remained the only bright spot in today's data release, despite also coming in slightly below market expectations," Julia Wang greater China economist at HSBC, said in research note. Other indicators were also the subject of debate. Industrial output grew 5.9% in December, compared to the same period the year before, but it missed a prediction of 6%, and was lower than November's year-on-year figure of 6.2%. Analysts said the low growth figure could be explained by higher-than-normal factory activity last December, because a lot of industries in northern china were closed during November 2014 to make sure the air was clean for the APEC summit.


text:
Onam Wallpaper – 04 – Celebrate this Onam with our wallpapers designed around this wonderful festival. You can download our wallpapers for free for your desktop, PC or printing.
To download this high quality and high resolution desktop wallpaper to your computer click on the red download button at the top. You may also use the image to set wallpaper in your mobile or iPad.
Note: Don't forget to check out the onam Story video other Onam Wallpapers.


text:
New America Foundation and Creative Commons Hold Copyright Talk
WASHINGTON, June 30, 2011 – The New America Foundation's Open Technology Initiative along with Creative Commons co-sponsored an event Wednesday evening to discuss the challenges of copyright laws in a digital age. Catherine Casserly, CEO of Creative Commons, delivered the keynote speech in which she presented the mission of Creative Commons, its growth beyond early adopters into the mainstream and the organization's new book, The Power of Open. Creative Commons is a non-profit company that provides authors, creators and innovators with a set of tools within the boundaries of copyright law to allow for their work to be easily distributed, edited, remixed and built upon. Keep Reading


text:
Frequently Asked Questions
Police Department
Can you tell me the conditions of the roads in Central Iowa?
The Iowa State Patrol offers a road report hotline at 1-800-288-1047, or dial 511 on your cell phone, or www.iowaroadconditions.com. This is updated as often as possible during periods of bad weather.
Does my bicycle need to be licensed with the City? If so, where do I go to get a license?
The City of Jefferson does license bicycles; it is not mandatory, but highly suggested. In the event your bicycle is found, the registration number can be entered into the computer to ascertain the name of the owner. The Law Enforcement Center will, then, contact you. The fee for the license is $3. The licenses may be purchased at the LEC at 204 S. Chestnut, Jefferson. REMINDER: All bicycles need to observe the ?Rules of the Roads? such as stopping at all stop signs and yielding to vehicles on the right.
Does the City of Jefferson have a severe weather warning system?
Yes. The emergency outdoor warning system is activated whenever the National Weather Service issues a tornado warning for Jefferson and when there are actual sightings by law enforcement personnel or other reliable sources. Four automated sirens are tested at 11 a.m. on the 1st and 3rd Saturday of each month.
How can I obtain a copy of an accident or offense report?
The Jefferson Police Dept. will provide copies of those reports for a nominal fee. The office is open 24 hours-a-day, seven days a week.
I need to be fingerprinted for a job application, professional needs, or other personal reason. Will the Jefferson Police Department do this?
Yes, please come to the Greene County Law Enforcement Center public entrance and tell the attendant what you need. Hours for general public fingerprinting are Monday - Friday, 8 a.m. ? 5 p.m. There is a small charge for this service and you will need to bring all of the fingerprint cards with you.
What is the City Snow Ordinance and when does it go into effect?
A "Snow Emergency" means any accumulation of snow in the amount of one-half inch, or any amount in excess thereof. City ordinance prohibits any person from parking, abandoning, or leaving unattended any vehicle on any public street, alley, or city-owned off-street parking area during a snow emergency unless the snow has been removed or plowed from such street, alley, or parking area, and the snow has ceased to fall. A snow emergency parking ban shall continue from its inception through the duration of the snowstorm and the forty-eight hour time period after cessation of the storm (except when the streets have been fully opened.) The City ordinance will be strictly enforced. Please help us by removing vehicles from the City parking areas whenever the ordinance applies.
What is the location of the Jefferson Police Department?
The Jefferson Police Dept. is located at the Greene County Law Enforcement Center (LEC), 204 S. Chestnut St., Jefferson, IA 50129. Our non-emergency phone number is (515) 386-2136. We are open 24 hours-a-day, seven days a week
What is the phone number for the Greene County Sheriff's office?
You can contact the Greene County Sheriff?s Office at 515/386-2136. They are open 24 hours-a-day, seven days a week.
Where are the Magistrate and District Courtrooms?
The Magistrate?s courtroom is located on the first floor of the Greene County Courthouse. The Iowa Fifth Judicial District courtroom is located on the third floor of the Greene County Courthouse. Check with the Clerk of Court for dates and times of specific courts in session. The Clerk of Court is located on the second floor of the Greene County Courthouse. The phone number is 515-386-2516.
Where can I obtain an Iowa Driver's License?
The Iowa Department of Transportation offers applications and testing for new and renewing driver?s licenses at the Greene County Treasurer?s Office located on the second floor of the Greene County Court House at 114 N. Chestnut Street, Jefferson. The phone number is 515/386-5675.
Where can I pay a traffic ticket?
Traffic tickets are handled through the Clerk of Court Office. If you want to pay the ticket, and an appearance is not required, you can either mail or bring the appropriate copy of the ticket, plus the fine, to the Clerk of Court Office, Greene County Courthouse, 114 N. Chestnut St., Jefferson, IA.


text:
"The survey of innovations in teacher preparation aims to create a resource database that will highlight the innovative practices AACTE members are using to give their teacher candidates a competitive edge in the marketplace," said Alicia Ardila-Rey, Ph.D., director of Research and Dissemination at AACTE.
"This recognition highlights what we have known for a long time: Our teacher preparation programs give students a distinctive advantage when it comes to employability right out of college, in particular," said Joseph E. Zimmer, Ph.D., dean of the School of Education. "Our students know how to manage a classroom and achieve learning outcomes because they've had the classroom experience and several cycles of feedback and evaluation before they graduate."
AACTE will also use the survey to identify current trends and issues in educator preparation as well as examples of practice that can be shared with members and other constituents to inform their work.
St. Bonaventure embraces a clinically rich apprenticeship model for teacher preparation, where the programs exceed the minimums for field experiences, students finish programs classroom ready, and links with local public schools provide a wonderful incubator for collaboration and cooperation in the training of teachers.
For example:
The School of Education also utilizes cross-campus and community partnerships, digital video projects, and a Technology Enhanced Collaborative Classroom (TEEC). The school strives to match and lead the public schools in current and new technologies for teaching and learning, and partners with other schools and organizations to provide technology and other professional development opportunities to their faculty and staff.
Its TECC — or "classroom of the future" — allows faculty to creatively break the boundaries of traditional instruction and flip their classrooms. In addition, through internal and external granting opportunities, SBU faculty purchase and use new technologies such as tablet computers, video recording equipment, student responders and device applications that prepare students to teach in the 21st century classroom.
The campus has state-of-the-art lecture capture equipment and software, and students have access to recording hardware and software to complete digital video projects in their classrooms.
The "Innovations Inventory," along with a few other new projects, are part of a new microsite that was unveiled at the AACTE Annual Meeting Saturday, March 1, in Indianapolis. The site includes a short summary of each innovation, with links to the institution's website and related resources, and can be viewed online here.
AACTE has a membership of 800 public and private colleges and universities and a history of advocacy, leadership and service on behalf of the professional development of educators.
About the University: The nation's first Franciscan university, St. Bonaventure University cultivates graduates who are confident and creative communicators, collaborative leaders and team members, and innovative problem solvers who are respectful of themselves, others, and the diverse world around them. We are establishing pathways to internships, graduate schools and careers in the context of our renowned liberal arts tradition. Our students are becoming extraordinary.
Application forms, procedures and additional information
There are many ways to experience
St. Bonaventure for yourself
Learn more about the programs that interest you


text:
In just a day you will get a notice about the Healthy Money Summit, a FREE telesummit running from January 24-27, with recordings available to all who can't attend live. How fitting to tell you on Martin Luther King day whose speaking out about economic injustice eventually cost him his life.
The Healthy Money Summit will feature 25 leading voices from the US, UK and beyond who speak powerfully, clearly and passionately about the possibility of a healthy money society – and how we will get there – and how you can make a difference in your own life.
I'll announce the names tomorrow. Many you will recognize, some you won't, but trust me, these are my top picks to bring you the inspiration and information I've dreamed of assembling under one tent. This is a teach-in without leaving your home (or mobile).
These tele-classes and summits are the wave of the future. They allow all of us out here in busy lives to access the best and wisest among us so we can all participate in an evolutionary shift.
Get ready to be inspired. I will post often to keep you informed.


text:
Welcome to
Digital Collections
The Library is fortuitously enriched by an assortment of valuable resources which in many instances, are visually noteworthy. when highlighted by thematic organization, these materials become accessible to the university community an the world by presentation in the following digital collection.
TEXTILE TRADE CARDS: A dynamic collection of Victorian trade cards which specifically focus on services and/or products related to the textile industry in the United States.


text:
|Jamison, Pa.
|High School:
|Central Bucks South
2011 (Freshman): NFHCA National Academic Squad ... Two goals, one assist for five points in 17 games ... First career points came on goal at Princeton Sept. 24 ... First career assist came in 3-2 win at Northwestern Oct. 9 ... Earned Major Y.
USA Field Hockey: Futures participant … Played at U19 regional tournament 2009 and 2010.
High School: PIAA Class AAA All-State Honorable Mention 2010 … National Field Hockey Coaches Association All- Academic Team … Courier-Kiwanis Scholar- Athlete Award and Scholarship recipient … Coaches Award for Best Work Ethic … Team was Suburban One League Champions in 2009 and 2010, District One Champions in 2009, PIAA Class AAA State Semifinalists in 2009, State playoff participant in 2010 … Captain of Indoor and Spring track teams 2010-2011 ... Track team MVP … 4x100 Meter Relay District One AAA Qualifier 2010 and 2011 and 2011 Suburban One Continental Conference Second Team All-League … Set school records in 55, 100 and 200 meter dashes in 2010 and 2011 … Member of school record-setting 4x100 and 4x200 meter relay teams.
Club team: Played for FSC … Went to National Hockey Festival 2008, 2009 and 2010 … National indoor tournament participant 2011.
Notes: Completed "Tough Mudder" obstacle course in Spring 2012 with teammates Ona McConnell and Maddy Sharp as fundraiser for Myotonic Dystrophy Foundation ... Member National Honor Society, National Spanish Honor Society … Pennsylvania Representative at Lead America Congressional Student Leadership Conference … District representative at Keystone Girls State, elected mayor … Junior American Legion Auxiliary Member … Hobbies include surfing, snowboarding and biking.
Why Yale? "Yale's combination of competitive athletics and extraordinary academics coupled with its friendly and welcoming student body and campus community is everything I've always wanted in a college."


text:
3 User Reviews of Fantasia Cruise Ship
Well, where do I begin? Having previously sailed on the Windsurf in the caribbean we were a bit apprehensive about sailing on such a large ship. Having read the reviews of the Fantasia we started to worry - but hey don't believe the rubbish reviews it's had! We booked 3 weeks before the cruise and only paid £431 each (cruise only) to sail the Western Med. my only prerequisite was that we didn't have an inside cabin. We were sailing from Barcelona then onwards to Marseille, Genoa, Naples, Palermo, Tunis then back to Barcelona.
Check in/cabins/public areas/food/atmosphere etc:
We did the web check-in prior to arriving (recommended - you get to check in first!). it took us less than 20 mins to check in and were straight on board by 12.00 noon. Our cabin ended up on deck 12 with an unrestricted balcony view - Fab!! Deck 13 being the only accom deck above us. We couldn't believe it for the price! the cabin was really nice, plenty of room for all our stuff. Lots of wardrobes, drawers, safe, dressing table, sofa etc and chairs and table on the balcony. The bathroomhad lots of towels (changed twice daily), dispensers containing shampoo and body wash. There was a good hairdryer in the drawer also so no need to take one. Bed was very comfy and all the linen lovely crisp and clean. the cabin was spotless and kept that way by our steward. So, no need to bring towels (including pool towels - you check these out each day) shampoo, bodywash or hairdryer (unless you are very particular). There was also complementary toothpaste tubes. We had purchased the Allegrissimo drinks package 166 euros each (both of us had to purchase it) but it ended up well worth it. we kept all our chits for the drinks we bought (cocktails, beers, spirits, soft drinks, water, coffee etc) and we 'spent' 533 euros, so well over what we had paid. You also didn't have to pay the 15% gratuity if you purchased this package. It could end up quite costly if you have to purchase water, cokes etc (all branded) during the day and then a bottle of wine etc and drinks in the evening. the minibar or water in your room is not included in this package, but to be honest we didn't need it and it wasn't worth it. you could get water/drinks with your card and take it wherever you want. so we got bottles for when we went ashore. Prices (if you pay as you go are in the region of (all in euros) : glass of wine 4.50, cappuccino 2.00, large beer 4.90, cocktails 6.25, small bottle water 1.45, bottle wine 20, coke 2.70, fresh juices 3.50 then 15% on top for gratuity). so, it could all add up quickly.
The public areas of the ship are beautiful and this ship is SO clean. there is not a speck of dust or dirt anywhere. they are always cleaning. The clientele was predominantly Italian, French, Russian, Spanish, South American, English and American. It was all very noisy but great with lots of atmosphere. Don't choose this ship if you want a quiet time. There was always things going on, plenty of activities all day and night. there was a show nearly every night in the huge theatre which included a Michael Jackson tribute night which was great. There was bingo before the show if you wanted your chance to win 25,000 euros. the casino was quite big with a nice bar. Now, for all you smokers out there there are plenty of places to smoke. You can smoke anywhere in the casino, parts of the coffee lounge and various other music lounges together with all along the port side of the ship. You are not allowed to smoke on balconies though which was fine. there was always somewhere to go for a smoke! There were 2 gala evenings whilst we were there so if you wanted to dress up you wanted to though it wasn't compulsory. You just couldn't wear shorts in the evenings in the 2 main dining rooms. (it was ok in the buffet). So, basically you could dress up or down and didn't feel out of place either way. There was no need to take a dinner jacket or tie (which some people did) but it wasn't THAT formal if you get my meaning. There were plenty of places to sunbathe (best part was up on deck 15 at the rear (Zen space). This had lots of sunbathing area with plenty of loungers, near the bar, swimming pool, jacuzzis etc. No real need to move - the waiters come to you! and it was only 1 deck down for lunch/afternoon tea etc. I must say that we had one day at sea therefore the whole ship was sunbathing and there were plenty of loungers for everyone.
now the food - you could eat pretty much 24 hours a day. YOu were allocated a restaurant to eat at for breakfast lunch and dinner but it wasn't compulsory to go there all the time. You could go to the buffet instead. Most people ate breakfast and lunch in the buffet then went to their designated restaurant in the evening. There was plenty of choice of food and anyone who says they couldn't find anything to eat or it was bland must be mad. There was always lots of salads, pasta, pizzas, grill meat, ethnic counter (curries etc), chefs specials, bakery everything you could possibly think of. the evening meals in the restaurants were 6 courses long with plenty of choice in each section. If youwere on the drinks package you could also get your drinks in there with no problem. They gave us bottles of wine rather than by the glass when we asked for it. they were also very flexible if we wanted to swap a starter and have it as a main course etc. Also, I asked for cheese and biscuits instead of a dessert and it was no problem. a couple of nights they had displays in there and had us all singing 'Volare' and waving our napkins around - it was really funny. so, not stuffy at all. With the drinks package you could also get ice creams (loads to choose from). the coffee (cappuccinos) were great. Best of all they make fab cocktails (everything you can imagine) even if its not on the list they will make it for you.
I forgot to mention the speciality restaurant - a tex mex. If you wait they put a sign up saying 50% discount if you book for the next evening, as it is a pay as you go restaurant. It isn't expensive anyway, and the drinks are included half price. so starters end up at about 2 euros and a big rib eye steak for 7 euros.
There are lots of pools (indoor and out), jacuzzis etc, water slide etc for the kids so plenty going on, particularly around the main pool area. It's a bit like being at a water park.
there are also a few shops onboard, clothes, duty free (cigarettes are really cheap 59.95 euros for 4 cartons L&M's). perfume (they also sell a small selection of emergency toiletries, sanitary products etc).
Nearly all the staff who served us anywhere on the ship spoke some English (enough to be understood to ask for things or where things were). They all have name badges which also says where they are from which was useful. There was a mixture from Idonesia, Brazil, eastern europe, Italian and most anywhere else you could think of. They were all very polite and efficient -so the standard of service was great. we didn't have to wait long for anything.
There is a daily service charge of 7 euros per person per night which goes towards the tips for staff and appears on your bill at the end. I believe that you can have this taken off if you really thought it was rubbish but I can't see how anyone would do so as the service is excellent and remember there are hundreds 'down below' who you never get to see but make sure everything runs smoothly.
Our ports of call:
Here I am not going to give you our impressions as I think you can make your own mind up about that, but more about where the ship docks, how you get to the places etc. This is what I was trying to find out before I went with difficulty. Because the ship is so big it docks in commercial ports which means you can, in some places, be quite a way from the town/sights and it's too far to walk, so here you go...
We embarked in Barcelona and got straight on the ship so more about there later....
We set sail and woke up in Marseille. At the port we were off quickly and there was tour buses (City sightseeing tours - hop on/off type). Though where the ship docks it was close enough to walk into the main part (marina and streets surrounding the harbour).
Next stop was Genoa. There were City sightseeing tour buses right outside where you walked out of the terminal building so you don't really need to get a taxi to get into the town. It is within walking distance.
Naples - it is quite a bit away from the town, but like us, most people wanted to go to Pompeii. We booked the tour on the ship which was 51 euros each. this included the bus to pompeii (about 25 mins away), our entrance fee in and a tour guide. We didn't bother going into Naples or to Sorrento as to us many of these towns are very similar. Indeed some people we met did the Pompeii and Sorrento trip and wished they had just done Pompeii because they could have had longer there. When you get to the Pompeii site there are a few stalls, a museum and some cafes etc - though they are expensive (they have a captive audience!). Though there is a shop at the museum and that was quite reasonable for gifts. I think it was worth the ships excursion in this case.
Palermo - we got a sightseeing bus right outside the terminal. YOu got 10% off the price of your ticket if you had already done a trip with them in another place - you just show them your ticket. Palermo has some nice buildings and architecture, but it is dirty, noisy and to be honest I wouldn't go there again.
La Goulette (Tunis):
Now believe it or not this was probably the most structured in terms of transport away from the port. The ship moors right up to the purpose built small terminal building. Awaiting you are some camels that you can pay to have your photo on walking beside the ship. There are 3 main areas to visit - Carthage, Medina (shopping - souks) and Sidi Al Bouid. There is a taxi rank where the prices are shown and are set. So for two trips (we went to Carthage and Sidi village) it was 40 euros for the taxi not per person and you could have the driver up to 5 hours (he waits for you wherever you go). It can be economical to share if you can with other people). Our driver took us to Carthage and paid for us to go in the museum (we gave him the money 10 euros as he paid in Tunisian money. It was probably a lot more than what he paid but it saved us the hassle of changing our money then changing it back again as you can't take their currency out of the country. In any case you can use euros in most places. Our driver took us all over the place where there were other ruins so we could get out have a look and take photos etc. He brought us back to ship with plenty of time to spare.
Finally... Barcelona. We were off the ship by 0930. You have to be out of your cabin by 8.00am. Our flight wasn't until 9.00pm so we had all day to kill with our luggage. As you come through the terminal building there is a kiosk next to the baggage carousel called DW. you can leave your luggage with them (9euros per bag) and they will deliver it wherever you want (airport etc). they tag up your bag, give you a receipt and instructions where to collect and a phone number. they arrange a time with you, then you can go off. we opted to have our bags delivered to the airport. YOu have to meet them outside arrivals at terminal 1 at the specified time in the parking across the road. they have a distinctive van (though they turned up in a UPS van for us). all our luggage was there on a trolley with the chap from the kiosk ready for us to go. it was WELL worth it.
anyhow.. Barcelona. The terminal is quite a way from the centre itself but as you come out there is a shuttle bus (on the left hand side when you come out the door where the coaches are). It is the port bus. It was 3.50 euros one way and it drops you off by the big statue at the bottom of La Rambla (by the marina). it is easy then to walk up into where everything is going on. Be prepared to have your walking shoes on! or you can take the easy option and get the tour bus (hop on/off) though there is still lots where you will want to get off and walk. We went all around the Plaza Catalunya, gothic quarter, Port Vell etc.
well, I think that is about all I can tell you about our trip on the MSC Fantasia. Would I travel with MSC again - definitely. and, for those of you who have kids they go free (think it's under 14). For the price we paid even with our flights and drinks package I though it was a bargain particularly with the upgrade of cabin for free.
We are off on a Carnival cruise over Christmas and New Year in the Caribbean - so fingers crossed!
OVERALL Terrrible. Will never, ever cruise with MSC again. I'm from Canada and have not been on a cruise that is primarily European in customers (booked it via Travelocity, later found out that this particular cruise actually wasn't available from MSC's N. American website. So, I'm assuming that thet cruise targets the European market only). So, I don't know if it's a cultural thing. But even so, I'd caution any N. American to NOT go on any MSC cruise that does not target N. American customers. Here are some of the problems:
1. You have to pay for water - even in the dining room. I've been on a number of cruises. Never did I have to pay for water. It feels like they're nickel-and-diming you to death. Makes for a very unpleasant start. Then, on the last night, they actually REMOVE all the water bottles from your room - for fear that you'd open up one and drink it and then leave the crusie ship without paying for it. So from 7:00 p.m. onwards, you don't have ANY water in your room. You have to call the reception desk andask someone to deliver water to your room and sign for them. That was just ridiculus.
2. NO coffee in any of the restaurants for lunch or dinner - not even if you are willing to pay for them. You can purchase coffee at the coffee bars only. Again, I have never been on a cruise where coffee is not available during lunch or supper.
3. Staff are exceeding rude and unhelpful. They don't treat you like customers at all. Rather, it's like you're a bother to them. Not once did I hear the word 'please', 'excuse me,' or 'thank you' coming out of their mouths, and they are prepared to argue every little point, or just outright ignore you.
4. Out of a 7-night cruise, ALL the bathroom malfunctioned on 3 separate days - ranging from a couple of hours to almost 6 hours. It was hell. Worst yet, the manager were completely unapologitic. I (together with a bunch of other cruisers) were extremely unhappy and complained to the manager at customer service. Instead of apologizing, the guy actually started to argument with us, saying things like: "What, the plumbing in your house never has any problem? These things happen, so stop complaining about it." In the end, we tore a few strips off his sholders.
5. You can have in-room meal service unless you're sick - and you have to prove that you're sick by providing a doctor's note from the ship's doctor (which you have to pay, of course). Then , you can only order from the "sick people's menu" which has about 3 items on it. My daughter simply wanted to eat in the room one night and we were shocked. We could not even order a class of 7-up because it's not on the "sick people's menu" I felt like I was in the twilight zone!
6. All the staff are unprincipled and spinless. As rude and unhelpful as they are, once you started screaming and yelling at them, they relent and you get your way. By the third day, I was screaming at everyone (4 to 6 times a day). Then, you pretty much get your way. For example, myself and 2 other cruisers (don't know them) wanted our passport back (all non-EU cruisers must leave their passports with the cruise ship). We just don't trust the cruiseline to keep our passport. We spoke to the manager to have our passports back because we really weren't satisfied with the reasons they gave us for keeping our passports. At first, he refused. Then, I started to tear into him and he relented - and returned the passports to me. But he wouldn't gve the passports back to the other 2 cruisers. So, one of them pointed to me and said, 'well, you gave the passport back to him!' At which point, the manager replied, 'Yes, but that is because he was angry at me!' That was just so shocking to hear, the other cruiser didn't even know how to respond to that!
FOOD: I would feed them to my dog. Both my father, myself, and my daughter lose weight simply because we could take the food onboard. No, it's not because we're to 'North American' in our tastes. All three of use has travelled extensively and on past travels (including cruises) had enjoyed local foods tremendously (including insects in fried eggs in Macau and fried scorpions in N. E. China, and conk 'penis' in the Carribeans [it's a glass-like tube you eat raw right after the conk is removed from its shell]). But the food served on this crusie is just terrible. They could not even cook a plate of spagetti well). I order cabbage roll one evening as the main course - the rice inside it was uncooked, the cream they used was thick and sour. I took one bite and almost threw up. It was worse then trash.
ONBOARD ACTIVITIES: Poorly organized and too crowded. The ship was at full capacity (almost 4,000 cruisers) but many of the venues and held in areas that just simply could not accommodate that many people. Everywhere to go, it's crowded. Again, it would be a cultural thing, but I found people generally to not care about personal space. They tend to push their way through you without something as simple as 'excuse me' (or something equivalent in their own language). Parents tend not to discipline (or even take care of) their kids so they're going wild all over the ship, and what I considered as common decency was missing among many of the cruisers (e.g.: pressing the 'door close' button while people are still stepping into or out of the elevator, spitting into the swimming pools, letter toddlers go into the swimming pool with diapers on even though there are signs that clearly prohibit that, cuting into lines, etc.). So, we ended up avoiding many of the onboard activities.
EXCURSIONS: We joined 5 English speaking excursivers. TTwo of them, the guide dose NOT speak English (and of course, no refunded). One excursion was cancelled by the ship, but I had to fight to get the refund (basically, if you don' t ask, they won't refund you).
MSC Fantasia Western Med. week cruise review.
Relax and enjoy this wonderful cruise . After reading so many negatives we were a bit nervous about our choice of MSC since we are first time , American English speaking only, cruisers in our mid sixties. The ship is lovely, the rooms are large, immaculate, as is the entire ship. The food was abundant and varied. The entire crew were all very polite, well groomed, and eager to help. When language was a barrier , ( very seldom) they were most patient muddling through until we all were clear on the question and the answer. The nightly entertainment in the theater varied each evening and lasted about 45 minutes . Go, do not expect Broadway Stars, but very talented , multi cultural , enthusiastic performers. Each presentation was a delight to the eye, extravagant costumes, brilliant lighting, and great musical numbers. All can be enjoyed by any language or age.
We changed our dinner seating , we were assigned a table with French speaking only couples. They were very nice, but we felt sort of awkward doing charades etc. People change every evening asthey meet people they want to eat with . The procedure is easy, just go to the dining room you are assigned between four and six. Speak to the maitre d and they will switch you . We found, that a smile or a laugh , and common courtesy is the best way to get anything , just as anywhere else in the world. We did not encounter any rude Italians, French, stodgy, whiny British, that have been alluded to in other reviews . Everyone was friendly, and in a vacation mood. I wonder, after reading so many negatives reviews , if these people are unpleasant when seeking help etc. , then are met with the same attitude . Just a thought. Coming on board was easy in Marseille, a que of about twenty minutes . Our luggage was at our door by the time we had walked around the public spaces . ( There is an orientation meeting held in your native language , but we were not aware of that . It is listed in the daily paper that in your room when you arrive. We just didn't read . So check that as soon as you get to your room .) Disembarkation was easy, there is a meeting the night beforeand you also get papers on what to do with passports etc. It was fairly simple, you do not need to be in the lounge at 8 am, but you do need to pick up you passport at reception AFTER 8 am. We didn't leave until around 9:45.
A hint : The ship sells goodmaps of each town at Reception for .50. Well worth it so you can plan ahead. We basically did our own thing in each port except Naples and Barcelona. Naples we did the Pompeii tour, but would suggest you do the Museum in town since most of the artifacts from Pompeii are housed there. Barcelona: we caught a Blue bus to town, meets at the terminal, 3 Euros round trip compared to the MSC shuttle at 6 eurs. Then caught the Hop on and Off bus right at the drop off spot. There are people at the terminal with information and pamphlets, just ask. This was a more reasonably priced way to go than a tour.
Marseille: The Old Port. You need to take a taxi or walk out of the terminal ( about a mile and a half ) to the bus stop at the entrance the terminal or take a Hop on and Off bus which was there at the dock, too far from town to walk . Genoa: the port and the back streets. We just walked to town, you can walk to the Aquarium too. There are inexpensive harbor tours , like 10 euros. Palermo: we walked to town , head for the old town and the main shopping streets. We found an old market street that was absolutely glorious in colors along with some old, incredibly beautiful 1600s churches tucked in among the food vendors. Tunis , get a cab right at the dock for about 40 euros for three hours , the driver will wait for you when you want to get out and walk, shop or eat etc. and tell you about the area . Palma, again we walked to town. The harbor is vibrant, some fun seafood spots, the Cathedral is at the far end of the harbor, a couple of miles. Worth the leisurely walk .The grounds are interesting as are the back streets . Wonderful little shops tucked in the side streets with pastries, and other goodies. Barcelona: ( Hop on and Off ) the huge food market was immaculate in the old town area, a good place to have paella for lunch. The Olympic Games grounds offers a good view of the city. We were impressed at how clean the city is. The tram to the fort was a hit with others in our dinner group. The itinerary of cities was excellent.
A couple of suggestions. Take some wire hangars and a few clothes pins fo the clothes line in the shower, ask for a room on the left side of the boat since that is the side that faces the coastline. We took two insulated/covered coffee mugs and instant ice tea and lemonade . Used the ship water and had ice delivered every day ( no charge). The ship's water is fine to drink. We chose the soft drink package for 29 euros.If you want to go on an excursion you need to book them within the first day or so to save 5%. They do their darndest to book you on a tour in your language, but sometimes it may be two languages.
Meals: The waiters bend over backwards to make you happy. Get to know them. We had breakfast and lunch ( when on board) in the dining rooms. The Zanzabar Cafeteria on deck 14 is a bit of a mad house. But, the view is wonderful. There are hundreds of choices and a super place for kids with huge appetites. All you can eat.) The dining rooms have a more limited menu , but much quieter . Breakfast and lunch are casual attire, but no short shorts , swim wear etc. Some reviews complain about not having twenty four hour food etc. Well breakfast starts in the cafeteria at 6:30 am and is open until 10. The lunch opens at 12 and closes at 4. Tea is at 4 to 5 at the Zanzabar , first dinner starts at 6:45 , there is a midnight buffet . So there is ample time to eat. PLUS you can buy gelato, pastries, etc. through the day. No one starves. Actually some passengers seemed downright gluttonous.( A reason we chose to skip the cafeteria.)
Dress: Again posted in the daily news letter . Sadly, there were some who chose to ignore the dress code and came across as crass . Tuxedos are too formal , but a dark jacket, slacks, shirt and tie for the men works for Formal and Informal evenings. The Causal night is shirt with no tie and jacket. Ladies usually wore cocktail dresses, but basically a snazzy black, wrinkle free dress with a couple of dressy jackets or wraps and you are set. I did see a few people turned away from dinner because of their extremely casual attire. ( flip flops and bermuda shorts ). I felt people were allowed to flaunt the dress code because the crew were too polite to embarrass them.
On Deck: Upper deck in the BACK is the ZEN area , no children allowed. There are deck chairs all over the ship, no need to worry about getting one. The pools were a bit chilly , they are emptied each night and didn't seem to warm up much. The main pool areas were busy with families , games, dance classes, and a giant screen showing a variety of things going on . The exercise area is in the front of the ship , you have to go through the spa. A wonderful panoramic view, lots of equipment .
The Room:Shampoo and soap are included, some reviews have said they aren't. Plug ins are various types . Blow dryer is in the drawer. Towels are changed almost every time you step out of the room by the wonderful room elves. Pool towels are provided by the pools and hot tubs. Beds are turned down each night , and the steward ( Patricia) made us feel spoiled.
We would recommend this line , the price was about $3500 less than friends who are going on a similar cruise on another line with a balcony room. That's another two trips! There were few children , but this time of year that was to be expected. We were in minority as Americans, but we weren't going on the trip to be with Americans. The service was excellent, the ship is amazing,we didn't feel like we were being hustled at all. We spent a total of 129 Euros on board for a tour and pop. Plus our tipping fee at the end. So we felt we certainly got our money's worth and had no surprise charges. Bon Voyage. Arivederrci .. Ciao...


text:
On his TransylvanianDutch blog, John Newmark defines an amanuensis as "a person employed to write out what another dictates or to copy what has been written by another." For more information about this daily blogging prompt, see John's post Amanuensis – Why?.
I have amassed quite a collection of scans of handwritten documents related to my ancestors—primarily marriage records, deeds, and wills. As I have been transcribing these documents, it occurred to me that most of these documents were not actually written by my ancestors, but rather dictated to someone else, and then transcribed by a clerk into official records.
Times must have been hard for my 2nd great-grandfather, H. T. Owens, in 1888 and 1889. The following deed represents the sale of property for delinquent taxes for 1888 and costs associated with the sale by the parish sheriff and tax collector.
"State of Louisiana )
Parish of Bienville )
Be it known that this day before me J W Tooke Clerk & Ex officio Recorder & Notary Public in and for said Parish duly qualified came and appeared J A Mays Sheriff and Ex officio Tax collector of State and Parish taxes in & for said Parish, acting herein by virtue of the authority visited him by the constitution and laws of the State of Louisiana in such case made and provided and in the name of the State of Louisiana who declared that he does by these presents sell convey and deliver unto Southern land and improvement company the following described property assessed to H. T. Owens upon the tablet of taxes in & for said Parish for the year 1888 to wit. North West qua[r]ter of section Eight (8) south West qua[r]ter of south East qua[r]ter and North East qua[r]ter of South West qua[r]ter of Section Five (5) Township Eight (18) Range Five (5) The said property was advertised in the Louisiana Advance, a news paper published in said Parish from the 17th day of May 1889 to the 22nd day of June 1889 making full thirty [?] days from the date of first mention to the day of sale, announcing said sale to take place at the front door of the civil District court house of said Parish within the legal hours of sale on the 22nd day of June 1889.
When on said sale day between the said legal hours of sale and at said courthouse
front door after first having read the
advertisement announcing the amount of Taxes interest and cost due on said
property for the year 1888 he proceeded to offer said described property for
sale for cash without appraisment[?] in legal tender money of the United States
to pay and satisfy said taxes interest and cost.
When at said offering the said Southern Land and improvement company having big the sum of sixteen & 30/100 Dollars for said property they became the purchasers thereof for that price subject to redemption as provided by law.
This sale is therefore made for the consideration of sixteen & 30/100 Dollars cash in hand paid the receipt of which is hereby acknowledged, the said sale being for
taxes 8.14
Interest .97
Advertising 3.50
Cost 3.74
Making said sum of 16.35
Done and passed in said Parish of Bienville in the presence of the attesting competent witnesses, on this the 31st day of July AD 1889.
Attest. J. A. Mays
F. L. Mayfield Shff & Tax Coll
J. C. Thens
J. W. Tooke
CDC & Ex Of NP
Attest: a true record this August 2nd 1889.
J. C. Thens Dy CDC
& Ex Of Recorder"
© 2012 Denise Spurlock


text:
Dear Reseller,
Welcome to AvatiaTelecom,
Are you looking stable & best quality Reseller for endless talking with your beloved family?
We provide Best quality Reseller Level 1< Level2< Level3. So you can use our dialer to
take care of your family.
For your satisfaction we provide facilities such as:
• FREE Trial before you buy
• Bank accounts in UAE, Bangladesh & Singapore
• Continue 24/7 Technical Support over Phone, Email and MSN/Skype
Our payment type is Prepay
All Asia, Middle-East, Africa
& many more
For more information, feel free to contact at:
Mail: email@example.com
Phone: +8801766678137
Skype:- eyacin.avatia
Website: www.avatia.net
- Administrator
Dear Visitors and Registered Members.We are update our site for Providing batter service or Feature . If you are facing any Issue Then don not hesitate.
please contact us .
Our Email Address is : firstname.lastname@example.com
Thank You
High Quality Dialer!!! Reseller!!! AvatiaTele
This forum is for General Technical Discussion. Give or receive general advice/suggestions/technical help on VoIP or Telephony or Telecom hardware (gateway, routers, switches etc), software (billing, call accounting, callshop etc), vendors or any other suggestions related to VoIP or Telephony products or services.
Post Reply
1 post • Page 1 of 1
- Posts: 627
- Joined: Tue Jun 03, 2014 3:22 pm
- Contact:
Post Reply
1 post • Page 1 of 1


text:
Project Spark has been discontinued, and the game will no longer be available for purchase or download from Microsoft Store after May 13, 2016. On August 12, 2016, services will go offline for existing users.
Project Spark was made available for free on October 5, 2015. If you purchased and played the Project Spark Starter Kit between June 28, 2015, and October 5, 2015, you should have already received a credit to your Microsoft account.
If you purchased and redeemed the code inside a retail copy of Project Spark on or after October 5, 2015, you will receive a credit to your Microsoft account. This can be used to purchase content in Microsoft Store.
For more information, visit the Project Spark website.
You will receive a Microsoft account credit if the following are true:
Your credit will appear in your account within 30 to 60 days of the game closing on May 13, 2016. The credit you receive will be in the currency matching your Microsoft account.
You can use the credit that you receive to make purchases in Microsoft Store. For more information on managing your Microsoft account credit, see Check your Microsoft account balance.
If you own Project Spark, you'll be able to continue playing offline, but you'll no longer be able to download user-generated content or upload your own creations after August 12, 2016.
If you have any problems with your Microsoft account credit, sign in to manage your Microsoft account. If you're still unable to resolve your problem, contact Xbox Support.
For more information about Project Spark and to access the community, visit the Project Spark website.
Thanks for your feedback!
Provide feedback for this topic
Would you like to contact Support regarding the "Project Spark retirement" issue you were reading about or a different issue?


text:
Having trouble getting the gist of how these two elements work in Poco. Not Poco's fault; I'm no techie but I shouldn't have to be.
I've read some of the help/script files but would it appreciate it if someone would show me a simple thing. From that I might be able to grasp an overview.
I would like to sign my poco mail list (not on this forum) with a signature tempate that includes Poco information, i.e. version, etc.
When I tried it, I got the maros, not the output.
Would very much appreciate this small sample just to get me started. TIA
Edit: Moved to Pocoscript by Eric


text:
|Black Hawk Down: An American War Story
The Original Newspaper Series Online
Experience the dramatic raid of Mogadishu with philly.com's Black Hawk Down site, featuring full text of the Philadelphia Inquirer series plus exclusive photos, video, audio, and more. Produced by the Philadelphia Inquirer and philly.com. Begin with the first chapter.
|Somalia: Good Intentions, Deadly Results
This gripping, Emmy-award winning companion documentary to Black Hawk Down vividly tells the story of one of America's biggest modern military blunders and the events that led up to it. Produced by KR Video.
The video is available for $19.95 plus shipping and tax (where applicable). To order by phone, call 215 854-4444.
The video Somalia: Good Intentions, Deadly Results is available on Amazon.com. Order online.
|Black Hawk Down: A Story of Modern War
by Mark Bowden
Now available in paperback from Penguin Books, this gripping true story by Philadelphia Inquirer reporter Mark Bowden is based on the acclaimed newspaper series that first ran in 1997.
© 2001 Philadelphia Newspapers, Inc. and KR Video


text:
2005 Football Banquet Draws Crowdby Tom Runge • December 12, 2005 Share:
Well over 300 Wabash alumni, parents, friends, and football family members packed into the Ballroom of the Crawfordsville Holiday Inn last night to celebrate another great season of Wabash football.
Head coach Chris Creighton and Sports Information Director Brent Harris took turns guiding the evening's celebration. Coach Creighton thanked everyone for helping make the program such a success. In addition to the highlight film and awards, the coach took time to thank President and Mrs. Andy Ford for their guidance and support, Dean Tom Bambrey for his superb leadership of all the athletics programs, and departing trainer Jack Mansfield for all he has meant to a couple of decades of Wabash athletes. He also praised Wabash alumnus Tim Morrison '88 for his steadfast support of the program.
Coach Creighton also thanked three sets of senior parents who organized support for the program throughout the season: Karen and Steve Selby (parents of Aaron #38), Laura and Rick Roop (Brandon #10), and Heather and Doug Fields (Hunter #51).
The Top Awards for the evening went to:
- "Torch Bearer" Award – Chris Ogden '06
- "Team" Award – Brandon Roop '06
- "Unfinished Business" Award – Russ Harbaugh '06
- Most Valuable Player Award – Russ Harbaugh '06
For photographs, click here.