text:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<title>The Code Project</title>

<link rel="stylesheet" type="text/css" href="http://www.codeproject.com/App_Themes/NetCommunity/CodeProject.css">

Download EntityFrameworkSample - 548.41 KB

Introduction

Wiring up a web page to a backend database can be tedious. You have to use some type of data access layer (DAL) and then map this to fields on a page. This is repetitive and error prone code. There are numerous ORM tools that allow you to interface with a database but this does not help you with loading controls, prompts, and validators on a page. This article will explore using nHydrate as a DAL that provides copious amounts of metadata and thus provides a release from some of the tedium of manually wiring up a web page.

What is nHydrate?

First a short explanation of nHydrate, this is a platform that allows you develop software in a model driven way (or domain driven design, DDD). You design a model that contains entities and relations. There are generators that read the model and create code based on that model. When you need to make changes to your application design, simply change your model and re-generate. A database installer controls database changes and versioning. You never touch the database. The database is not the model. You have a real model. It really does cut down on the errors we all make when performing repetitive tasks.

The Entity Framework generated DAL provides metadata that can be used to automate many of the tasks that we perform on a web page. We will see how to create prompts and validators, as well as bind data to controls in a compile-time checked manner. Using the compiler is a big plus. I always try to put as much functionality in as possible. If you add code in markup via script or other mechanism, there will be issues when you change your data model or perform a host of other activities. Code is king; the compiler checks it!

This sample depends on a little code I have written around a model. A nHydrate model is used to create a DAL that interacts with the database. The generated Entity Framework layer has additional extensions, attributes, and metadata around it to facilitate writing applications quickly. My &quotORMMap&quot class performs all of the generic functionality I need to make a web page work. This class is not part of the generated framework as it is very specific to my implementation. How you choose to bind or map a user interface is specific, based on your technology such as web forms, MVC, WinForms, etc. You will need to write a little connection code like I have done. However the metadata around the DAL makes this easy.

What this sample does

Dynamically inserts validators on page based on model metadata

Required validators

Range validators

Regular expression validators

Verifies data types like integers in textboxes

Sets maxsize for textboxes based on metadata

Loads dropdown lists from database

Loads paginated grids

Handles paging of data

Binds many kinds of UI controls to Entity Framework objects

Validates saves and displays errors

Eliminates viewstate

In this sample, I can bind labels, textboxes, check boxes, radio buttons, lists, and dropdowns. I can populate dropdowns, check lists and radio lists as well. There is very little code on my primary forms and the screens still have load/save functionality with validation.

The connection code I wrote has only a few methods. The first allows you to load a combo box. In the page initialize I have added the list load code. This has the added benefit that I do not need viewstate. In fact all of the pages in the sample have viewstate turned off. The way we are binding here does not require viewstate at all. Let us look at an add/edit page for a "Region" object first. Our model has 3 entities: Customer, Country, and Region. A Customer has [0..1] Countries and [0..1] Regions. This is a very simple model used to demonstrate how to can bind objects with associations.

My project has 2 base pages from which I derive all pages. The first is BasePage which does nothing. It is merely a base. The second is BasePersistablePage which is used for edit pages and has core functionality for loading and saving. It has three main methods: SetupBindings, CreateObject, and SaveData. An edit page overrides these methods to add any custom code needed to the bind. Below is a class diagram of my main site objects. You can see an edit and list page along with their base types. The &quotORMMap&quot object is expanded to show its methods. In this class there is no code that deals with specific objects (list Region or Customer). This class can be used from any page to handle any generated object.

Keep in mind that these pages are not part of the generated framework. There is no reason to use my syntax or code. I have created the &quotORMMap&quot class and the base pages to abstract out the functionality of loading and saving nHydrate objects. I mention this because it might be a strange syntax for you and I have seen enough code generators to know they use weird and cumbersome syntax that confuses me. nHydrate is straight Entity Framework. If you have used EF then there is nothing foreign in the objects I am using in code.

My Pages

Below are two screen shots the first of a list if Region objects. The second is an edit page of a Customer. I have included the customer edit screen because it is the  most complicated and contains dependent objects. The screen is quite simple in that it is just a list of controls that allows for data entry.

Let us start with the Region object because it is very simple. It has an ID and a Name property. This is the classic look-up table. Databases are full of these for states, countries, regions, etc. They have just a primary key and a name. When a user edits one of these objects, he is really only editing the name as the primary is never shown or edited. In the region edit page, I override the &quotSetupBindings&quot method. The database context is passed to me so I use it to look up the actual object I wish to bind. I am pulling the primary key off of the URL string. This sample website uses a URL structure like "/regionedit.aspx?id=2". This makes it easy for users to bookmark a page. In the code, I also change the header to indicate to the user whether this is a create or edit operation.

Please notice the last line of code. This will bind the textbox named "txtName" to the region object. All generated entities have associated enumerations created that map to their fields. This allows you write methods that can work on specific fields via enumeration. These are always in sync because they are generated from your nHydrate model, just like the objects themselves. This line of code is mapping the &quotName&quot field of a Region object to the textbox. This one line of code will two-way bind the EF object to the UI control. There are no magic strings here. I did not put the field designation &quotName&quot in quotes (like a dataset). I used the provided enumeration for the Region object.

There is only one line of code to map the textbox since there is only one textbox. You will need one line of code for each control. There are numerous overloads, one for each control type of course. You could add more complicated overloads for other .NET controls or even third party controls you buy. Simply add an overload for a new control type and add whatever logic is necessary to handle the new control type.

protected override void SetupBindings(EFExampleEntities context)
{
	int id = this.Request.GetURLInteger("id");
	var item = context.Region.Where(x => x.RegionId == id).FirstOrDefault();
	lblHeader.Text = "Edit Region";
	if (item == null)
	{
		lblHeader.Text = "New Region";
		item = CreateObject(context) as Region;
	}

	this.Mapper.Map(txtName, item, Region.FieldNameConstants.Name);
}

There is not much more code on the page than that. There is a &quotCreateObject&quot method on the page that is called when the base page needs an object created, but this just creates a new object and adds it to the context by default. If you have more complex business rules to perform when adding this object type you could add it or call that logic from here.

My entire Region edit page is about 50 lines of code. I would argue that this is really small. Keep in mind that any necessary validation that is defined in the model would automatically be added.

The Customer edit page is a bit more complex of course but has the same structure. We must load additional controls so it makes sense to look at its code too. In this code we see the &quotInitializeList&quot method used. This is called to load a dropdown with the list of values from which the user can choose one. We simply pass in the control, the list to bind and the fields that will be used for text and value. These are all loaded in the OnInit event so there is no need for viewstate in my example. Later in the code we bind each control individually to the appropriate property on a specific object. In this sample all fields bind to the same object; however this is not necessary. We could just as easily bind some of the UI controls to dependent objects off the primary or any other EF object we wish.

protected override void SetupBindings(EFExampleEntities context)
{
	int id = this.Request.GetURLInteger("id");
	var item = context.Customer.Where(x => x.UserId == id).FirstOrDefault();
	lblHeader.Text = "Edit Customer";
	if (item == null)
	{
		lblHeader.Text = "New Customer";
		item = CreateObject(context) as Customer;
	}

	//Load the dropdowns
	this.Mapper.InitializeList(cboCountry, context.Country.OrderBy(x => x.Name).ToList(), Country.FieldNameConstants.Name.ToString(), Country.FieldNameConstants.CountryId.ToString());
	this.Mapper.InitializeList(cboCustomerType, context.CustomerType.OrderBy(x => x.Name).ToList(), CustomerType.FieldNameConstants.Name.ToString(), CustomerType.FieldNameConstants.CustomerTypeId.ToString());
	this.Mapper.InitializeList(cboRegion, context.Region.OrderBy(x => x.Name).ToList(), Region.FieldNameConstants.Name.ToString(), Region.FieldNameConstants.RegionId.ToString());

	//Bind the fields
	this.Mapper.Map(txtFirstName, item, Customer.FieldNameConstants.FirstName, lblFirstName);
	this.Mapper.Map(txtLastName, item, Customer.FieldNameConstants.LastName, lblLastName);
	this.Mapper.Map(txtCity, item, Customer.FieldNameConstants.City, lblCity);
	this.Mapper.Map(txtAddress, item, Customer.FieldNameConstants.Address, lblAddress);
	this.Mapper.Map(txtCode, item, Customer.FieldNameConstants.Code, lblCode);
	this.Mapper.Map(txtCompany, item, Customer.FieldNameConstants.CompanyName, lblCompany);
	this.Mapper.Map(txtEmail, item, Customer.FieldNameConstants.Email, lblEmail);
	this.Mapper.Map(txtFax, item, Customer.FieldNameConstants.Fax, lblFax);
	this.Mapper.Map(txtPhone, item, Customer.FieldNameConstants.Phone, lblPhone);
	this.Mapper.Map(txtPostalCode, item, Customer.FieldNameConstants.PostalCode, lblPostalCode);
	this.Mapper.Map(cboCountry, item, Customer.FieldNameConstants.CountryId, lblCountry);
	this.Mapper.Map(cboCustomerType, item, Customer.FieldNameConstants.CustomerTypeId, lblCustomerType);
	this.Mapper.Map(cboRegion, item, Customer.FieldNameConstants.RegionId, lblRegion);
}

Now let's look at a list page. The region list page shows a paginated list of regions from which you can choose to edit or delete items. One of the big issues with displaying lists to pagination. There is no need to worry about this anymore as nHydrate removes most of the drudgery from you. The following code pulls the page offset and records per page from the URL string and uses it to pull a list of data from the database. I am using a PagingURL class I have written to parse the URL into the segments I care about. The paging object holds the page offset and records per page and passes this information into the data query method. When this call returns there is additional property on the paging object named "TotalRecords" that will contain a count of all records that match the where condition, thus allowing you to build a pager control on screen with current page, total pages, records per page, and total record count.

Once the page of data is returned, I simply bind it directly to a grid. I have built a paging control that I use on list pages and it simply takes the returned paging information and builds a stylized pager. This is all that is really needed to build a list/edit data entry website.

using (var context = new EFExampleEntities())
{
	var url = new PagingURL(this.Request.Url.AbsoluteUri);
	var paging = new Widgetsphere.EFCore.DataAccess.Paging(url.PageOffset, url.RecordsPerPage);
	grdItem.DataSource = context.Region.GetPagedResults(x => x.Name, paging);
	grdItem.DataBind();
	PagingControl1.Populate(paging);
}

Now let's look at how we can pull the metadata out of the generated objects. The &quotORMMap&quot class is really nothing more than a list of controls that we associate with a field on an Entity Framework object. Each nHydrate Entity Framework object has an associated metadata class that can be pulled of via attributes and used to pull model information at runtime. Common metadata would be Display Name, Regular Expression, and Required.

The display name is a friendly name you define for a field. So for example "FirstName" in the database might be "First Name" or &quotPostalCode&quot might be &quotZip code&quot. This can be used for prompts and validation controls. To pull the display name from a generated object you can use the following code. The entity passed in is the base nHydrate EF object. All generated objects are derived from this type, so this routine will work on any of them.

private string GetDisplayName(Enum field)
{
	var context = new EFExampleEntities();
	var metadata = context.GetMetaData(context.GetEntityFromField(field));
	var a = metadata.GetType().GetField(field.ToString()).GetCustomAttributes(typeof(System.ComponentModel.DataAnnotations.DisplayAttribute), true).FirstOrDefault();
	if (a == null) return field.ToString();
	else return ((System.ComponentModel.DataAnnotations.DisplayAttribute)a).Name;
}

If there was not display name defined in the model, the database name is used. You can do the same thing to pull off the validation, regular expression and the required (non-nullable) attribute.

private bool IsNullable(Enum field)
{
	var context = new EFExampleEntities();
	var metadata = context.GetMetaData(context.GetEntityFromField(field));
	var a = metadata.GetType().GetField(field.ToString()).GetCustomAttributes(typeof(System.ComponentModel.DataAnnotations.RequiredAttribute), true).FirstOrDefault();
	return (a != null);
}

private string GetRegularExpression(Enum field)
{
	var context = new EFExampleEntities();
	var metadata = context.GetMetaData(context.GetEntityFromField(field));
	var a = metadata.GetType().GetField(field.ToString()).GetCustomAttributes(typeof(System.ComponentModel.DataAnnotations.RegularExpressionAttribute), true).FirstOrDefault();
	if (a == null) return string.Empty;
	else return ((System.ComponentModel.DataAnnotations.RegularExpressionAttribute)a).Pattern;
}

Notice the pattern is simply to get the metadata class of an object which can be retrieved via an extension method on all generated objects. The metadata class has all fields for the tracked object on it with attributes defining these data points like required, expression, min-max ranges, etc. You can use the descriptor class to build complex UI structures with non-specific code that works for all of your entities for any model. You could abstract this out to a common assembly that you use for all projects.

Another important and time-saving function point to use is to emit out validators. A common issue with UI development is knows which fields should have validation on them and keeping up with it as the DBA changes the database or project managers change business rules. It is easy to forget to change some arbitrary screen in the midst of all other development especially since these are business rules and not errors. Now a simple and elegant solution is at hand. Simply use the metadata to emit the validations on the page. If someone changes the nHydrate model and re-generates, well the validators are now model-driven so they will reconfigure themselves with no code changes.

Dynamic Validators

The following routine returns a list of validators that you can add to the controls collection of a form. Simply call this method to get a list to dynamically add to your page.

public virtual IEnumerable<system.web.ui.control> GetValidators()
{
	var retval = new List<system.web.ui.control>();
	foreach (var control in _controlList.Keys)
	{
		var e = _controlList[control];

		//Determine if we need a required field validator
		if (NeedsValidatorRequired(e.Entity, e.Field, e.CanHaveRequiredValidation, e.ForceRequiredValidation))
		{
			var r1 = new RequiredFieldValidator
			{
				ControlToValidate = control.UniqueID,
				Display = ValidatorDisplay.None,
				ErrorMessage = "The '" + GetDisplayName(e.Entity, e.Field) + "' is required!"
			};
			retval.Add(r1);
		}

		//Determine if we need a regular expresion validator
		if (NeedsValidatorExpression(e.Entity, e.Field))
		{
			var r1 = new RegularExpressionValidator
			{
				ControlToValidate = control.UniqueID,
				Display = ValidatorDisplay.None,
				ErrorMessage = "The '" + GetDisplayName(e.Entity, e.Field) + "' is not the correct format!",
				ValidationExpression = GetRegularExpression(e.Entity, e.Field)
			};
			retval.Add(r1);
		}

	}
	return retval;
}
</system.web.ui.control></system.web.ui.control>

Notice that it checks to determine if a field is required and if so emits a required validator. It then determines if the Entity.Field has a validation expression and if so emits a regular expression validator. You can make this as specific to your situation as necessary. These were just two very easy ones to add. Also keep in mind that this is all generic code. This does not work on any one specific object like Country or Customer. It works on all objects in any model you can build.

This simple example demonstrates how you can create quite robust data entry screens with very little code. The whole idea is to use metadata to drive your application. This is much easier with model driven development. If your model supports extra metadata properties and is not just an ORM-mapper you can handle quite complex scenarios quite generically.

This will get you started with model driven development of a web UI. This technique allows you to keep your markup small. We did not add validators manually and I did not even mention that the MaxLength property of text boxes are set. This ensures that users cannot enter data that is too big for the field. Information that can be defined in metadata can be emitted out as code and mark-up at runtime, thus reducing the code you write and the associated mistakes.

redpajama_set_name: RedPajamaGithub


Recommend this company very highly. Choose your brands X Select all Brands Our most popular brands.
Find your perfect printer. Warranty 3 year On-Site Warranty when product is registered within 30 days of purchase. Search over 12, Products. Nothing is too much trouble at Printerland.
Mono or Colour Printer Mono.
Images are used for illustration purposes only. In the event of an item not being available via this service, we will endeavour to contact you at the earliest opportunity. In the event of an item not being available via this service, we will endeavour to contact you at the earliest opportunity.
Replaced by OKI Bdn view replacement. Buy Out of Stock.
Buy 1 B800 Stock. The cut-off for next working day delivery is 4: Single Unit Developer Cartridgepages. Back Not yet reviewed. Designed specifically for use with the B range.
The cut-off for next working day delivery is 4: Enter the details of your question here: Back Not yet reviewed. Craig Fast and Professional Service I've bought a number of printers from Printerland and in every case, the delivery has been next day as promised, with follow up to make sure that everything has gone to plan Best place for printers and will beat any price.


text:
A SENTIMENTAL SHORT TRACK JOURNEY
Super Street veteran snaps winless drought with memorable victory – JW Martin
Saturday night, Matt Gusler scored his first victory at Motor Mile Speedway since July 25th, 2014.
It was also his first victory at the Radford, Va., oval since losing close friend Mike Keith.
The outcome of the Super Street race was of special significance to Gusler. The winning no. 05 race car was the same machine Keith had piloted in nearby dirt races in previous seasons. Nearly one year ago Gusler, in tribute, drove it in Keith's funeral.
Gusler paid tribute to Keith again Saturday night. This time, he drove it into Victory Lane.
"It means a lot to me. I wondered all year what I would do. What I would say," said Gusler of the emotional triumph. "It's just a good night."
Gusler started first on the 13-car grid following the post-qualifying re-draw, but was immediately embroiled in an electrifying three-car fray for first that included Kyle Barnes and Dennis Holdren. After staving off his primary challengers through the opening eleven circuits, Gusler surrendered the point to Holdren in turn two on lap 12. The pass marked the first of three lead changes in the riveting 25-lap sprint.
Kirby Gobble became the third different leader of the race following the second caution flag of the feature on lap 15. Gobble powered past Holdren from the top side of the track in turn two, completing the maneuver for first down the backstretch. Gobble led the succeeding seven circuits uncontested. But as the race drew to a close, Barnes began to close in.
The battle for the win began down the back straightaway on lap 22. Having erased Gobble's lead advantage, Barnes leaped to the inside of Gobble's no. 63 entering turn three in a bid to unseat the leader. Close-quarter racing action ensued, with Barnes managing to position the no. 0 alongside Gobble down the front straightaway. The duel for first climaxed with unintentional contact entering turn one, with Barnes' machine leaning into the left-side door of Gobble's entry. The impact sent Gobble skating up the turn one banking, necessitating the third and final yellow flag of the contest. Barnes was relegated to the garage with a flat tire in the aftermath of the collision.
"It was just hard racing," acknowledged Gobble. "I've been doing this for 32 years. I've been wrecked, and I've wrecked my share of people. It's just like playing baseball; you are going to strike out. If you race, there are going to be times when you get hit and turned around. No hard feelings whatsoever."
Barnes shouldered the blame for the late-race incident.
"I have to apologize to Kirby Gobble. When we got into turn one, it wheel-hopped, and we hit wheels. We were gone at that point," explained Barnes.
Holdren inherited the lead on the lap 23 restart, with Gusler completing the front row. It was the opportunity Gusler needed, and the veteran Super Street competitor capitalized on it.
Gusler rocketed ahead of Holdren down the backstretch as the leaders sprinted to the white flag. Holdren launched a comeback in turn one on the last lap, lunging to the inside of Gusler in the apex of the corner. Slight contact was made, but the fleeting attempt to wrestle the lead away from Gusler was to no avail. Gusler was the first to the finish line by a .227-second margin of victory.
"In racing, you don't get many second chances… and I got one. I knew that the competitor Dennis [Holdren] is, that I had to capitalize on it. And I did," said Gusler. "I'm just glad we got to end the race on a good note."
The effort was Gusler's fifth-career division victory. Holdren placed second, with Scooter Hollandsworth rounding out the podium.
Barnes rebounded to lead 11 circuits en route to the victory in the 25-lap nightcap race. Gobble finished second. Gusler tallied third.
IN OTHER DIVISIONS
Mike Looney collected both checkered flags in Saturday night's Pepsi TWIN 50s; it marked the second twinbill sweep of the season for the Billy Martin Racing no. 87 team. As a result, Looney's lead in the Late Model track standings has swelled to a colossal 215 points over Kyle Dudley.
Philip Morris placed second in pursuit of Looney in both features. Kres Vandyke placed third in the 50-lap opener, with newcomer Austin Thaxton completing the podium in the finale.
Karl Budzevski dominated Saturday night's Collision Plus Limited Sportsman division feature, leading 34 of the 40 scheduled circuits en route to his fifth win of the season. Points leader Cory Dunn finished second. Rookie Josh Gobble posted his best result of the season with a third-place showing.
The 25-lap Carpet Factory Outlet MOD-4 division feature produced a first-time winner, with Tanner Young visiting Victory Lane over division track champions Dennis Holdren and Doodle Lang. Holdren and Lang finished second and third, respectively.
PHOTO CREDIT: Chad Fletcher

redpajama_set_name: RedPajamaCommonCrawl


text:
Future Love
by Kristinia DeBarge
Album: Exposed (2009)
This song was released as the follow-up to pop/R&B singer-songwriter Kristinia DeBarge's breakthrough hit single "Goodbye." It was a double a-side along with "Sabotage."
OneRepublic frontman Ryan Tedder and Evan "Kidd" Bogart, the son of Casablanca Records founder Neil Bogart, wrote the song. The duo previously penned together "Halo" for Beyoncé.
This song was previously recorded by American boy band Varsity Fanclub in 2008. It was intended to be their first single from their self-titled debut album until its release plans were shelved.
This track was taken from Kristinia's debut album Exposed. She told MTV News that despite its eye-catching title, the true meaning is a lot less suggestive: "I chose that title because I felt that it's me introducing myself to the world," she said. "So I wanna make sure people get to know Kristinia."
More songs from Kristinia DeBarge
Lyrics to Future Love
SiriusThe Alan Parsons Project
The song used in introductions by the Chicago Bulls and many other sports teams is "Sirius" by The Alan Parsons project, the opening track on the Eye In The Sky album.
Paper PlanesM.I.A.
"Paper Planes" was inspired by M.I.A.'s hassles trying to get a visa to enter America.
She Loves YouThe Beatles
"She Loves You" by The Beatles was the song that convinced Ozzy Osbourne to make music his life. The Beatles were a big influence on him because they were also poor kids from a small town in England.
Rosalita (Come Out Tonight)Bruce Springsteen
Bruce Sprinsteen said "Rosalita (Come Out Tonight)" was "the best love song I ever wrote."
Gimme Three StepsLynyrd Skynyrd
Ronnie Van Zant wrote the Lynyrd Skynyrd classic "Gimme Three Steps" after making the mistake of dancing with a girl whose boyfriend was in the bar and probably had a gun. He asked for a 3-step head start.
Pretty VacantSex Pistols
The riff for The Sex Pistols' "Pretty Vacant" was pinched from a very unpunk song, the ABBA ballad "S.O.S."
Janis Ian: Married in London, but not in New YorkSong Writing
Can you be married in one country but not another? Only if you're part of a gay couple. One of the first famous singers to come out as a lesbian, Janis wrote a song about it.
Glen BurtnikSongwriter Interviews
On Glen's résumé: hit songwriter, Facebook dominator, and member of Styx.
George HarrisonFact or Fiction
Did Eric Clapton really steal George's wife? What's the George Harrison-Monty Python connection? Set the record straight with our Fact or Fiction quiz.
American Hits With Foreign TitlesSong Writing
What are the biggest US hits with French, Spanish (not "Rico Suave"), Italian, Scottish, Greek, and Japanese titles?
David Paich of TotoSongwriter Interviews
Toto's keyboard player explains the true meaning of "Africa" and talks about working on the Thriller album.


1. Rowan Blanchard was serving LEWKS with her new short cut.
2. Shay Mitchell played with some overgrown kitties.
3. Will Smith shared this adorable moment with his daughter Willow.
4. Cardi B shared another relatable meme — this time featuring Mr. Krabs and Terry Crews's character from Everybody Hates Chris.
5. Marsai Martin put our selfies to shame…AGAIN!
6. Jordin Sparks received a kiss from her adorable son DJ.
7. Andy Cohen became a dad!
8. Pink, Carey Hart, and their children turned on the silly after celebrating Pink's star on the Hollywood Walk of Fame.
9. Maluma cut his hair off and donated it to childhood cancer patients.
10. Beyoncé supplied us with enough moods for a month with this photo gallery.
12. …while Barbara Palvin and Dylan Sprouse partied it up at 5ELEVEN.
13. Miley Cyrus and Shawn Mendes linked for a new song.
14. Kylie Jenner and Travis Scott had everyone talking with this caption.
15. And Camila Cabello was doing her thing in rehearsal.
Due to a bad shoulder injury I can't paint anymore: despite being half finished I still like this painting of my former coworkers.


text:
ST. MARK'S EPISCOPAL PRO-CATHEDRAL
422 N. Burlington Ave
In Person and Livestreamed Worship Services:
Sundays 10 a.m.
Episcopal Diocese of Nebraska
Streamed Services
Laundry Love
Ways to Give at St. Mark's
At St. Mark's we have a stewardship theology of three parts. You can give to the church with time, talent, and treasure. There are numerous ways to volunteer at St. Mark's that utilize your time and talent. We also appreciate pledges, other financial gifts, and planned gifts to help support the mission and ministries of St. Mark's.
By clicking the Donate button below you will be able to make a one-time or recurring donation to St. Mark's via Paypal.
Interested in becoming a volunteer? Please contact our office by email or phone and we will be happy to find out the ways you are interested in volunteering and helping out at St. Mark's.
Planned Giving is the process of making a charitable gift during a donor's life or at death that is part of his or her financial or estate plan. Most often, planned gifts are earmarked for the general legacy fund or a specific endowed church program -- using a portion of the earnings each year to support the ministries of St. Mark's. It is your legacy to the church. Please contact the office if you are interested in learning more about Planned Giving at St. Mark's.
St. Mark's is a welcoming, open, and inclusive community that comes together for love, support, strength, and renewal. We celebrate the Gospel of Jesus and reach out to all of God's children.
422 N Burlington Ave
Hastings, NE 68901
stmarkshastings@gmail.com
Click here to see the St. Mark's calendar of events!
© 2022 St. Mark's Episcopal Pro-Cathedral


WSSI has an opening for an entry-level Regulatory Technician. This position serves as a liaison between regulatory agencies and clients for permit procurement. Ideal candidate will have minimum qualifications of a B.A./B.S. in environmental planning, science or policy and a basic knowledge of environmental regulations pertaining to 401/404 Clean Water Act and Chesapeake Bay Preservation Act; knowledge of AutoCAD®, local land development practices, NEPA, FEMA or FERC regulations is a plus. Superior oral and written communications skills and the ability to handle multiple projects and deadlines under limited supervision are a must.
Please send cover letter, resume, transcripts (with degree conferred), a writing sample, and references to Amanda Arms.
WSSI is a seeking an experienced (5+ years of related professional experience), highly motivated Senior Environmental Scientist to join our team in Millersville, Maryland.
Willingness to regularly travel regionally.
Please send cover letter, resume, transcripts (with degree conferred), and references to Michelle West.
Wetland Studies and Solutions, Inc.'s Environmental Science Energy Services Travel Team is seeking a mid-level environmental scientist with at least 4 years of experience performing integrated vegetation management along utility rights-of-way; wetland delineations; preparing technical studies related to aquatic resources; conducting endangered and threatened species (ETS) surveys; assessing potential impacts to ETS; and coordinating with federal and state resource agencies with regard to wetlands and ETS issues. Experience with federal and state Clean Water Act permit applications is a plus. Strong knowledge of/experience in one or more of the following fields: integrated vegetation management, vegetation management along utility rights-of way, vegetation identification, soil profiling; practical knowledge of natural history required. Experience working with a diverse client base in both the public and private sectors highly desirable, extensive travel is required. BA/BS required, MS favorable with PWS (or WPIT) and PWD certification preferred.
Please send cover letter, resume, transcripts (with degree conferred), and references to Stefanie Dryden.
WSSI is looking for an experienced Senior Project Surveyor for our Gainesville, VA office. The ideal candidate will have 8+ years' experience of field and office surveying practices and techniques with progressively increasing responsibilities.
Primary responsibilities of the position include computations, staff and job coordination, Civil 3D drafting associated with survey data including boundary, record plats, legal descriptions, topographic, construction, bathymetric, wetland and stream surveys, and developing and maintaining client relationships.
Candidate must be able to perform in a fast-paced environment with quick turnaround times, the ability to problem solve and communicate effectively, and the willingness to learn and take on new tasks.
Wetland Studies and Solutions, Inc. is seeking a mid-level surveyor (5+ years of experience) to join our Millersville, Maryland team. Primary responsibilities of the position will include daily field work associated with land surveying practices to include boundary, topographic, construction, bathymetric, tree location, wetland and stream surveys, etc. The preferred candidate should be a college graduate with a degree or course work in surveying, environmental sciences, forestry, wildlife management, or arboriculture. Experience with GPS, Data Collection, and Robotic total stations required. This position requires daily field work in all weather conditions - we're looking for a person who loves working outdoors! Some travel will be required for this position.
WSSI is seeking a Professional Land Surveyor to join our Millersville, Maryland team. The ideal candidate will be licensed with 10+ years' experience of field and office surveying practices and techniques.
Primary responsibilities of the position will include management of all survey projects, staff and job coordination, marketing, developing and maintaining client relationships, proposal preparation, project scoping and budgeting. A successful candidate will manage/perform all tasks related to surveying projects including Civil 3D drafting, boundary, record plats, legal descriptions, topographic, construction, bathymetric, computations, wetland and stream surveys, etc. This position will require field work.
WSSI is seeking a Civil CAD Technician to provide drafting support to the Survey Department on environmental and water resources projects using AutoCAD 2018 and Civil3D 2018. Minimum one year of experience with a modern release of Civil3D required. Survey experience preferred but not required. Candidate must be able to perform in a fast-paced environment with quick turnaround times, be able to problem solve and communicate effectively, and have willingness to learn and take on new tasks. Associate's degree or Technical School Certificate required, experience may be considered in lieu thereof. Please send cover letter, resume, transcripts, and references to Amanda Arms.
WSSI is seeking an entry level environmental compliance technician to join our team. Ideal candidates will have a B.S. in Environmental Studies or related field. CPESC, CESSWI, CISEC and/or Maryland MDE Green Card and SHA Yellow Card certifications are preferred, but not required. Job responsibilities will include Maryland/National Pollution Discharge Elimination System (NPDES) inspections and reporting, and Storm Water Pollution Prevention Plan (SWPPP) development.
Candidates should possess outstanding communication skills. Daily tasks include coordinating with clients, contractors, and regulatory agencies regarding environmental concerns associated with development. Working environment will include both office and fieldwork, concentrating on environmental permit compliance and reporting for active construction sites. Weekend and holiday work may be required and are considered within the realm of job responsibility. Applicants are expected to be proficient in Microsoft Office. Interested applicants should submit a cover letter, resume, references, and transcripts to Michelle West.
WSSI is seeking a mid-level environmental compliance technician to join our team. Ideal candidates will have a B.S. in Environmental Studies or related field and at least 1 year of experience performing environmental compliance in relation to Virginia Pollution Discharge Elimination System (VPDES) inspections and reporting. Job responsibilities will include inspections and reporting, Stormwater Pollution Prevention Plan (SWPPP) development, and coordinating with federal and state resource agencies with regard to wetlands, erosion and sediment control and stormwater compliance.
Erosion and sediment control certifications are a plus, but not required (CPESC, CESSWI, CISEC, or Virginia DEQ Stormwater, Erosion, and Sedimentation Control Inspector Training & Certifications).
Candidates should be organized individuals and possess outstanding communication skills. Daily tasks include coordinating with clients, contractors, and regulatory agencies regarding environmental concerns associated with development. Work will concentrate on environmental permit compliance and reporting for active construction sites. Weekend, holiday work, and out-of-town travel may be required at times and are considered within the realm of job responsibility.
Thunderbird Archeology, a division of WSSI, is seeking Archeological Field Technicians for immediate temporary, project-based, full-time employment.
Interpretation of soil strata, preparation of field maps depicting the locations of excavations, site/feature boundaries, historic standing structures, and other notable features within the project area.
Thunderbird Archeology, a division of WSSI, is seeking an Associate Archeologist/Archeology Field Supervisor for immediate full-time employment.
Assisting with proposals and interacting with clients, officials and contractors.
Experience in managing archeological projects in urban environments.
Wetland Studies and Solutions, Inc. (WSSI) offers exciting projects in a dynamic work environment, and we strive to provide all of our employees with room for skill improvement and knowledge development in a caring and casual atmosphere (our LEED Gold-certified building includes an employee gym and dog kennel). We also offer a 401(k) program as well as Medical, Dental, Vision, Life Insurance and Short Term Disability. Pre-employment drug screen and E-Verify social security number verification required.


text:
Underage driver charged in Hernandez death
A West Bladen High School student died from injuries he sustained in a wreck on Butler Mill Road occurring on Sunday, March 10 at 1:50 p.m., according to the North Carolina Highway Patrol (NCHP). Charges have been filed against the underage driver according to the NCHP report.
Media reports on Monday, March 11 stated Aldo Hernandez, who was a junior at the school, passed away due to his injuries sustained in the crash. The school's counselors have been working with students since the wreck according to the school's reports.
Hernandez, 18, was a passenger in the vehicle driven by a 17-year old female, Bladenboro resident. Also in the vehicle was another teenaged female passenger.
The car had exited a curve on Butler Mill Road and ran off the road to the right, according to Sgt. B. Ezzell with the NCHP. The driver over corrected and the vehicle crossed the centerline and ran off the road to the right, struck a ditch and overturned.
Sgt. Ezzell said that Hernandez, who was a passenger in the front seat, was ejected from the vehicle.
A 17-year old passenger from Whiteville who was riding in the backseat was reported to have minor injuries, according to the Highway Patrol. The 17 year old driver has been charged with misdemeanor death by motor vehicle/reckless driving according to the NCHP report by NCHP Tropper G M White.
The first court hearing for the charges will be May 9, 2019 in Bladen County District Court.
More from CrimeMore posts in Crime »
Probation Search Made In Bladenboro Area
Robeson County Pharmacy Operator Pleads Guilty To Healthcare Fraud
Suspect, Curtis Sanders Cromartie, Arrested in Shooting of Local Man
William James Purdie Turns Himself In Following New Year's Eve Shooting
Clarkton Man Sought In New Year's Eve Shooting That Killed One, Injured One


The information in this topic applies only to System Center 2012 SP1.
Console add-ins in Virtual Machine Manager (VMM) enables customers and partners to create extensions for the VMM console. These extensions are presented as ribbon buttons entries that do specific actions when they are clicked, or display or custom views in the console. Add-ins let you supplement the VMM console with functionality specific to your needs.
An example Visual Studio 2010 project is available for download at http://vmmuix.codeplex.com/. For more information about using the example, see Virtual Machine Manager UI Add-in Example Project.


text:
Brittany Murphy Autopsy Results
12:00 AM PST, February 4, 2010 - Inside Edition
There are shocking results from actress Brittany Murphy's autopsy report. It turns out prescription drugs were partly to blame for the 32-year-old actress's sudden death.
The Los Angeles County Coroner lists the causes of death as:
- Pneumonia
- Iron deficiency anemia
- Multiple drug intoxication
"Was this death preventable?" INSIDE EDITION's Paul Boyd asks pathologist Cyril Wecht.
"I do believe the death of Brittany Murphy was preventable, if she had not been talking multiple drugs then she would not have died, because she would not have then been susceptible to the development of pneumonia," Wecht tells INSIDE EDITION.
All the drugs found in Murphy's system were prescription medications according to the Los Angeles County Coroner; they declined to say exactly which drugs were involved until the complete report in ready in about two weeks. But one published reports says the drugs included prescription medicine for cramps and an over-the-counter cough syrup.
The report raises questions about the persistent claims made by Murphy's mother and her husband Simon Monjack that Brittany was not abusing prescription drugs at the time of her death.
"Brittany was not taking any medication for her mood, for anorexia, for any kind of mental illness," Monjack told the Today show.
"Brittany Murphy's family has maintained in recent weeks that drugs were not to blame, does this autopsy result dispute that?" asks Paul Boyd.
"Yes, there can be no question that drugs played a major role in leading to this young woman's death," Wecht says.


text:
import os

import appleseed

import IECore
import IECoreAppleseed

import AppleseedTest

class PrimitiveConverterTest( AppleseedTest.TestCase ):

	def testSingleMaterial( self ) :

		r = IECoreAppleseed.Renderer()
		r.worldBegin()

		self._createDefaultShader( r )

		m1 = IECore.MeshPrimitive.createPlane( IECore.Box2f( IECore.V2f( -1 ), IECore.V2f( 1 ) ) )
		m2 = m1.copy()
		m3 = IECore.MeshPrimitive.createPlane( IECore.Box2f( IECore.V2f( -2 ), IECore.V2f( 2 ) ) )

		m1.render( r )
		m2.render( r )
		m3.render( r )

        # we should have 2 unique primitives, instanced 3 times.
		self.failUnless( self._countAssemblies( r ) == 2 )
		self.failUnless( self._countAssemblyInstances( r ) == 3 )

	def testMultipleMaterialsNoInstancing( self ) :

		r = IECoreAppleseed.Renderer()
		r.worldBegin()

		m = IECore.MeshPrimitive.createPlane( IECore.Box2f( IECore.V2f( -1 ), IECore.V2f( 1 ) ) )

		self._createDefaultShader( r )
		m.render( r )

		self._createGlossyShader( r )
		m.render( r )

        # we should have 2 unique primitives, instanced 1 time each.
		self.failUnless( self._countAssemblies( r ) == 2 )
		self.failUnless( self._countAssemblyInstances( r ) == 2 )

	def testAttributesNoInstancing( self ) :

		r = IECoreAppleseed.Renderer()
		r.worldBegin()

		self._createDefaultShader( r )

		m = IECore.MeshPrimitive.createPlane( IECore.Box2f( IECore.V2f( -1 ), IECore.V2f( 1 ) ) )
		m.render( r )

		r.attributeBegin()
		r.setAttribute( "as:shading_samples", IECore.IntData( 4 ) )
		m.render( r )
		r.attributeEnd()

		r.attributeBegin()
		r.setAttribute( "as:alpha_map", IECore.StringData( "no_such_file.exr" ) )
		m.render( r )
		r.attributeEnd()

		r.attributeBegin()
		r.setAttribute( "as:photon_target", IECore.BoolData( True ) )
		m.render( r )
		r.attributeEnd()

		self.failUnless( self._countAssemblies( r ) == 4 )
		self.failUnless( self._countAssemblyInstances( r ) == 4 )

	def testNoAutoInstancing( self ) :

		r = IECoreAppleseed.Renderer()
		r.setOption( "as:automatic_instancing", False )
		r.worldBegin()

		self._createDefaultShader( r )

		m1 = IECore.MeshPrimitive.createPlane( IECore.Box2f( IECore.V2f( -1 ), IECore.V2f( 1 ) ) )
		m2 = m1.copy()
		m3 = IECore.MeshPrimitive.createPlane( IECore.Box2f( IECore.V2f( -2 ), IECore.V2f( 2 ) ) )

		m1.render( r )
		m2.render( r )
		m3.render( r )
		m2.render( r )

		self.failUnless( self._countAssemblies( r ) == 4 )
		self.failUnless( self._countAssemblyInstances( r ) == 4 )

if __name__ == "__main__":
	unittest.main()


text:
Colonel Liar Heeza (Colonel Heeza Liar, Heeza Liar)

Colonel Heeza Liar è una serie di cortometraggi d'animazione cinematografici muti. Fu la prima serie prodotta dalla Bray Productions tra il 1913-1917 e il periodo tra il 1922-1924, ideata dallo stesso John Randolph Bray.

Trama e personaggi
La serie ha come protagonista il colonnello Heeza che si vanta delle sue avventure esagerando un po', da qui il nome "Liar", che in inglese significa "bugiardo".

Innovazioni
La serie del Colonel Heeza Liar può essere considerata una delle prime (alcuni la indicano come prima) serie d'animazione con un personaggio fisso e una storia "base" che si ripete ad ogni episodio, praticamente era il prototipo delle moderne serie a cartoni animati, e cioè del cartone non più inteso come arte per stupire il pubblico (come lo erano i cartoni di Winsor McCay), ma un vero e proprio prodotto da produrre in sequenza in periodi stabiliti che aprì la strada ad altre serie d'animazione negli anni successivi che goderono di maggior successo come Krazy Kat, Mutt and Jeff, Out of the Inkwell e Felix the Cat.

Filmografia

Altri progetti

Collegamenti esterni

 Colonel Heeza Liar nel sito Don Markstein's Toonopedia.
 Colonel Heeza Liar nel Big Cartoon DataBase

Storia del cinema
Cinema muto statunitense

redpajama_set_name: RedPajamaWikipedia


text:
Austrian authorities admit more than 40% of 'child' asylum seekers that underwent an age test turned out to be ADULTS
In Austria, 2,252 asylum seekers had to undergo an 'age diagnosis test'
From those age assessment tests, it was found 919 turned out to be older than 18
Tests involve X-rays of the subjects' teeth and fingers and cost around 900 Euros
By Thomas Burrows for MailOnline
Published: 07:22 EDT, 13 April 2017 | Updated: 07:29 EDT, 13 April 2017
Almost half the refugees in Austria that underwent an age test turned out to be adults, it has been claimed.
According to the Austrian Interior Ministry 2,252 asylum seekers had to undergo an 'age diagnosis test' as they were thought to have been lying about their age.
From that, it was found 919 turned out to be older than 18 - a rate of 41 per cent.
Speaking to the Austrian press, a police officer said: 'It is absurd for us to see grown men with beards and graying hair that claim to be 17 years of age.'
Another policeman said: 'Men are trying to get into the system as minors.'
Almost half the refugees in Austria that underwent an age test turned out to be adults
Many migrants in Austria and other countries in Europe have said they are underage because they are likely provided with better accommodation and almost impossible to deport.
If there are reasonable doubts about the age of a refugee then an 'age assessment' is arranged.
The tests involve X-rays of the subjects' teeth and fingers and cost around 900 Euros.
'I am a Muslim and I support ISIS': Stockholm terrorist... One in seven EU nationals of working age in the UK is...
MP Walter Rosenkranz, of the far-right Austrian Freedom Party, said any migrant who had lied should automatically lose 'any right to protection'
MP Walter Rosenkranz, of the far-right Austrian Freedom Party, said any migrant who had lied should automatically lose 'any right to protection.'
He also said they should be made to pay for the medical test.
Interior Minister Wolfgang Sobotka has promised to tighten the laws and said asylum seekers would face punishment if they lied about their age.
More than 130,000 people have applied for asylum in Austria since the start of the refugee crisis, with the country sitting on the route from the Greek islands into western Europe.
Austria had hardened its stance towards refugees in recent months but this week it was revealed it had decided to join the EU relocation programme.
Mr Sobotka said he would make preparations for the country to receive refugees, with the first group expected to be around 50 unaccompanied children from Italy.
The decision to take in more refugees comes as it was revealed attacks on refugee accommodation had doubled in Austria, with homes firebombed, vandals spraying Nazi graffiti on walls and a man threatening to 'get a gun and shoot the dogs'.
Albert Steinhauser, an opposition Green party politician, said he was dismayed to find out that more than three quarters of the 49 recorded cases remain unsolved.
Austrian authorities reveal migrants lying about age


text:
Q: SQL advanced compare of strings I am working on getting some very specific information out of a MSSQL database. All the information I need is available via this SQL command:
SELECT
receivedate,
swp.firmwarelevel AS 'Firmwarelevel',
pa.description AS 'Description'
FROM tbl_swapgroup_parts swp, tbl_parts pa, tbl_part_type pt, tbl_swapgroups sw, tbl_workorders wo
WHERE custom7 = 'somemodel'
AND swp.swapgroup_id IN (18,25)
AND sw.id = swp.swapgroup_id
AND pa.id = swp.part_id
AND pt.id = pa.parttype_id
AND wo.part_id = pa.id'

Now this returns a list which looks something like this, trimmed to just 4 entries for sanity...
+---------------------+---------------+--------------------------------------------------+
|     receivedate     | Firmwarelevel |                   Description                    |
+---------------------+---------------+--------------------------------------------------+
| 2013-08-29 12:10:28 |      YN07     |         Description 1...                         |
| 2013-08-29 12:10:28 |      YN07     |         Description 2...                         |
| 2014-01-13 13:12:55 |      YN07     |         Description 1...                         |
| 2014-01-13 13:12:55 |      YN07     |         Description 2...                         |
+---------------------+---------------+--------------------------------------------------+

So what I want is really only 1 entry for each Unique description string, and the unique entry has to be the one with the newest recievedate.
Is such an 'advanced' thing possible only in SQL or do I have to post-process with some other language like python?
If at all possible I`d like to do it in pure SQL...

A: Yes, you can do this in SQL. For example, with row_number():
SELECT * FROM (
  SELECT
     receivedate,
     swp.firmwarelevel AS 'Firmwarelevel',
     pa.description AS 'Description',
     row_number() over (partition by Description order by receivedate desc) rn
 FROM tbl_swapgroup_parts swp,
      tbl_parts pa,
      tbl_part_type pt,
      tbl_swapgroups sw,
      tbl_workorders wo
 WHERE custom7 = 'somemodel'
     AND swp.swapgroup_id IN (18,25)
     AND sw.id = swp.swapgroup_id
     AND pa.id = swp.part_id
     AND pt.id = pa.parttype_id
     AND wo.part_id = pa.id
) x
where x.rn=1

Also, ANSI JOIN syntax came out in 1992 - please use it :)

redpajama_set_name: RedPajamaStackExchange


Paul Lepore is a currently a shift Division Chief for a Southern California Fire Department where he is assigned to manage the Special Services Division. In addition to managing the emergency responses for the City, his responsibilities include managing the EMS Division, the Emergency Operations Center (EOC), and the CERT program.
Prior to his currnet position, Chief Lepore spent 23 years on the Long Beach Fire Department having promoted to the rank of Battalion Chief. He spent 5 years as a Battalion Chief working predominantly in the northern part of the city. He was also was assigned as the Battalion Chief in charge of the EMS Division for two years. He feels very fortunate to run some major incidents consistent with a big city fire department. He has also managed some pretty challenging personnel issues during his tenure as a Chief Officer. Chief Lepore will share both his operational and administrative experiences with you to better prepare you for your promotional goals.
Chief Lepore entered the fire service as a civilian Paramedic for the Los Angeles City Fire Department in 1985. After completing his education at the Los Angeles County Paramedic Training Institute, Lepore worked in the high impact area of South Central, Los Angeles. Lepore was hired by the Long Beach Fire Department in 1986 and completed their 12-week academy. He spent the next two years working as a firefighter until he was promoted to firefighter/ paramedic. Lepore was promoted to Fire Captain in 1998, to Battalion Chief in 2005 and is currently a Division Chief.
Lepore has a Bachelor's Degree in Vocational Education from California State University, Long Beach and an AA degree in General Studies, and has a Master's degree in Public Administration. He has presented to local, and national audiences on current fire service topics including: Tactics and Strategy, Promoting in the Fire Service, How to Formulate a Plan to Promote, at Firehouse World in San Diego and Las Vegas as well as the CSFA Conference in Long Beach and at the Northern California Training Officer's conference.
He has conducted hundreds of entry-level interviews as well as served as a rater for dozens of Battalion Chief and Captain's promotional exams. He holds instructor credentials for EMT, Hazardous Materials and Weapons of Mass Destruction.
He has conducted numerous seminars at national conventions to teach and mentor both promotional and entry-level candidates alike.
He founded EMS Safety Services, Inc., a first aid and CPR training corporation that certifies over 100,000 students each year.
Lepore has two daughters with his lovely wife Marian, Ashley and Samantha. He is an avid saltwater fisherman and has written a fishing book titled, "Sportfishing in Baja".
as a group would like to pass along to aspiring firefighters.
I recently met with an aspiring firefighter who had taken the step to become a paramedic. He was an academy graduate and still could not get hired. He became a paramedic with the thought that it would help him get hired. Good plan, right?
Where his plan failed is that after completing paramedic school, he returned to his EMT job at the local ambulance company. Huge mistake! Here's why…….
As I scanned the parking lot, I was disturbed to see a private ambulance parked perpendicular in THREE spots.
Everyone has an opinion of age when it comes to hiring new firefighters. Some people feel that a younger candidate has a better chance of getting hired because; after all, the fire departments are looking to hire a candidate for the next 30 years.
As we come into the new year, I would encourage you to sit down and write out your goals. Researchers have found that those who take the time to put their goals down on paper have a much higher chance of reaching them.
I was recently involved in screening fire department applications and I was amazed to see that 40% of the candidates did not follow the simple directions to include copies of their certifications. Subsequently all of these applications were disqualified from the process.
Also, keep in mind that the people behind the counter at HR are very influential in the hiring process. Be sure to be nice to them!
Posted in Secrets to Success | Comments Off on Follow directions!
Getting hired in today's economy is extremely difficult. Many departments are still trying to figure out what their budgets are going to be. The federal and state governments are still a moving target, which means that the cities and counties are still uncertain as to their financial status.


text:
Professor of Developmental Neurobiology, Group Leader
Engineering neurogenesis
Benedikt Berninger was born in Munich in 1968. He graduated in Biology from the Ludwig Maximilians University (Munich, Germany) in 1992. He obtained his Doctoral Degree from the same university for work he had conducted at the Max-Planck Institute of Psychiatry (now Neurobiology) in the laboratory of Hans Thoenen. He subsequently joined the University of California in San Diego as a postdoctoral fellow in the laboratory of Mu-ming Poo during which time he was supported by a Human Frontier Science Program (HFSP) Long-term Fellowship. After a brief stay at the Karolinska Institute in the laboratory of Jonas Frisén funded by HFSP, he took a group leader position at the Max Planck Institute of Neurobiology in Munich in 2001. Subsequently he became staff scientist at the Helmholtz Center Munich (2003) in the laboratory of Magdalena Götz. In 2005 he became lecturer at the Institute of Physiology where he habilitated in Physiology in 2011. In 2012 he joined the University Medical Center of the Johannes Gutenberg University as Full Professor. From March 2018 he is Professor of Developmental Neurobiology at the Centre for Developmental Neurobiology at King's College London and member of the MRC Centre for Neurodevelopmental Disorders.Benedikt is a Wellcome Trust Investigator.
The sweet smell of adult neurogenesis
Adult olfactory bulb neurogenesis improves odour distinction
Welcome to two new labs!
Welcome to Adil Khan and Benedikt Berninger labs
Publications:68height:768 width:320 offset:0 max_pages:1 page:1 limit:9 type:4 key_only:1 num_rows:Array ( [0] => 0 )
Zimmermann T, Maroso M, Beer A, Baddenhausen S, Ludewig S, Fan W, Vennin C, Loch S, Berninger B, Hofmann C, Korte M, Soltesz I, Lutz B, Leschik J	(2018) Neural stem cell lineage-specific cannabinoid type-1 receptor regulates neurogenesis and plasticity in the adult mouse hippocampus. Cereb Cortex 28: 4454-4471
Bergami M, Masserdotti G, Temprana SG, Motori E, Eriksson TM, Göbel J, Yang SM, Conzelmann KK, Schinder AF, Götz M, Berninger B	(2015) A critical period for experience-dependent remodeling of adult-born neuron connectivity. Neuron 85: 710-7


text:
Zur Navigation springen.Zum Content springen.Contact | Imprint | Legal Disclaimer
Climate Change, Cultural Heritage & Energy Efficient Monuments
12.04.2012 | Gdansk | Poland
Workshop of Educational Group for Youths from Hamburg, Kaliningrad and Gdansk
During the days from 12.04.2012 till 16.04.2012 students from three schools of Hamburg, Kaliningrad and Gdansk were invited to participate in a Workshop of Educational Group for Youths under the coordination of European Foundation for Monuments Protection.
Polish School of Engineering and Environment was the host of the Workshop. The other two participating schools were Emil Krause Gymnasium from Hamburg-Barmbek and Kaliningrad State College of Urban Development.
The aim of this cooperation is to provide students with necessary knowledge to raise their awareness of the need to reduce climate change and increase energy efficiency of buildings, brick historical buildings in particular. Such approach, in order to be successful, should be promoted already on the stage of school education.
Participants of the Workshop had a full five day program of activities concerning three main aspects: common history, importance of protecting built heritage and energy efficiency in monuments.
Students-guests were acquainted with the host school teaching program, especially regarding such topics as environment observation and protection. They were introduced to the school laboratory and weather measuring instruments.
They had also a chance to participate in a discussion with several experts on history, architecture and energy efficiency in buildings. The aim of these discussions was to help them understand the problem of heritage protection and energy efficiency in historical buildings.
Apart from that participants were divided into three international groups, each of them had a separate task to accomplish during the Workshop. One of the groups focused on historical aspects. Already in Hamburg they prepared a questionnaire related to awareness of heritage value of brick buildings. It was then spread among Hamburg citizens, the results were presented in Gdansk and compared with the results of parallel questionnaire from Gdansk. Thanks to them students could find out what is the opinion of city residents about their brick built heritage. The second group was working on social and cultural importance and the aspect of comfort of living in brick buildings. Their aim was to answer one question: Do we want/need to live in brick historical buildings? The third group made a comparison between energy efficiency of old "untouched" and restored buildings. They used thermo imagining method to illustrate the contrast in heat transfer through brick building and its elements.
To show the difference between old non-restored buildings, old restored buildings and modern eco buildings students were taken for two trips. The first one to Letnica – restored old district of Gdansk Grzegorz Lechman explained its cultural value of the area, built for factory workers in the beginning of 20th century. He discussed technologies, new materials and conservatory methods used to revitalise buildings.
During the second trip students visited modern ecological district in Osowa Most of the buildings there are still under development. After the completion the area is supposed to become the biggest eco-residency in Europe. The two buildings that are ready, are available for visiting. On their example Arkadiusz Zaklewski explained new technologies implemented. The buildings are furnished with such innovations like solar panels, heat collectors and heat storage systems installed underground.
The Workshop was concluded with a tour around main restored monuments in Gdansk. Students had also a chance to see the revitalised old city fortifications Hewelianum – interactive educational centre when they made final summary.
Results of the Workshop participants presented during the International Conference "Monuments Protection and Energy Efficiency" on 16th of April 2012. In front of their older colleagues – experts from the Baltic Sea Region - they proved their knowledge and awareness of the importance to protect built heritage and expressed enthusiasm to be involved and continue to work collectively to reach common goals in this subject.
This workshop shows that protection of historical heritage that belongs to countries connected historically and which share similar architecture should be undertaken in a mutual agreements and cooperation. It is a beginning of future cooperation between schools in and institutions from Baltic Sea Region.
We would like to thank Aleksander Nagucki the Director of School of Engineering and Environment in Orunia, Gdansk , Berndt Tissler Vice Director of Emil Krause Gymnasium in Hamburg -Barmbek , Elena Podnebesnykh Vice Director of Kaliningrad State College of Urban Development and Bartosz Niezbrzycki from European Foundation for Monuments Protection for commitment and essentially support with organization of successful workshop.
Aleksandra Kocialkowska (source: European Foundation for Monuments Protection)
(source: EFOZ)
Tutorial at School of Engineering and Environment in Gdansk
Weather measuring booth at School of Engineering and Environment in Gdansk (both source: Emil Krause Gymnasium Barmbek)
Dr. hab. Jakub Szczepanski
Arkadiusz Zaklewski (source: Kaliningrad State College of Urban Development)
Grzegorz Lechman (source: Emil Krause Gymnasium Barmbek)
Buildings in Letnica Grzegorz Lechman (source: EFOZ)
Eco house in Osowa (source: Kaliningrad State College of Urban Development)
Handing over Certificates
Presentation of Hamburg School
Presentation of Polish School
Presentation of Kaliningrad School (all source: EFOZ)


text:
Our board of directors leads with wisdom, casting vision for a future of caring effectively for the poor.
Rev. Rex Rigby
Dr. Michael Woodrow
Rev. Dallas Thomas
Public Officer
Joan Carroll
Tim Weatherall
AN ORGANISATION YOU CAN TRUST.
Please note that in the unlikely event a specific appeal becomes overfunded, surplus funds will be redirected towards a similar relief or community development project.
Director /Chairman
Rev Rex Rigby has served as National Superintendent of the Wesleyan Methodist Church of Australia since January 2012, becoming the first Indigenous Australian to lead a denomination. He has served 20 years overall, as District Superintendent for the North Queensland and South Queensland Districts. At the 2015 South Pacific Regional Conference of the Wesleyan Methodist Church, Rex took on the position of President SPRC.
Rex grew up on the Southside of Brisbane QLD and met and married his wife Lien while attending Joyful News Mission in Fortitude Valley. They have two adult children.
Studying at Kingsley College in Melbourne he gained his Bachelor of Ministry and is currently undertaking doctoral studies through Tabour Sth Australia.
Rex's family come from out west and are part of the Bigambul People.
Rex has a passion for social justice and to see vulnerable people empowered with opportunity, dignity, and hope.
Director/Secretary
Dr. Mike started his professional life as a Veterinary Surgeon working in Australia, UK, and America. As he moved through research, technical and teaching roles he found that his greatest satisfaction actually came from working with people… helping leaders and teams bring their best and make a difference.
He currently serves as CEO of a digital marketing agency, finding himself as a digital dinosaur leading a team of digital natives.
He and his wife live in Brisbane Australia and have an interesting family of five children, three dogs, two cats, and three hens.
Director/Public Officer
As General Manager for ASX listed Vonex Telecom, Dallas Thomas has worked in the telephone industry for over 24 years. He has also served as the National Director of Wesleyan World Missions since January 1997. With his experience in business as well as overseas mission, Dallas has a heart for vulnerable people in need and a passion for building sustainable systems to meet those needs.
Married to Ruth with three grown sons and four grandchildren, Dallas loves to spend time with grandkids, watch and review the latest movies, travel and drink skinny dirty decaf chai latte's!
Mrs Annette Dobson
Annette Dobson is currently the National Director of Women's Ministries in the Wesleyan Methodist Church of Australia. She has a passion for social justice and introducing people to Jesus and this reflects in her role as her focus is on encouraging, training and resourcing women in these areas. Annette desires to see women reach their full potential and full maturity in Christ. Annette views all of life as ministry but more specifically she participates in leadership in her local church family.
Annette is a pharmacist, mum to three teenagers and married to Peter. As a family, they strive towards incorporating sustainability and spirituality into all aspects of life.


text:
Beaufort ~ Juneteenth & Harriet Tubman Screenings
Venue: USCB Center for the Arts
Categories: Community Event, History Themed, Lectures, Talks, Classes, Movie Nights, The Arts
Experience two historic documentaries!
A fascinating look back at the origins and history behind the newest American holiday – Juneteenth | The Birth of Freedom, is the oldest and longest celebrated holiday in the US.
The holiday Juneteenth, commemorates the end of slavery and is the oldest and longest nationally celebrated holiday in the US. June 19th, otherwise known as Juneteenth or Black independence day marks the birth of freedom. The date is significant because June 19, 1865 is when Texas, which was the last Confederate state to return to the Union's control, which in turn, set the slaves free. Slaves in other states had already received word that they had been freed, however, recognition and organized celebrations didn't really begin until slaves everywhere were free.
Sadly, the majority of Americans don't know or even recognize the importance of this date to our history. Not in just Black History, but an important milestone in American history and the birth of freedom.
2022 marks the 200th anniversary of Harriet Tubman's birth, as well as the memory of one of America's most profound figures. Tubman was one of the nation's leading human rights activists who assumed many roles, including that of an Underground Railroad conductor, army scout, nurse, and women's rights champion.
Harriett Tubman also came to Hilton Head and Beaufort and was the first black woman to be a part of US military operations, including the Combahee River Raid, which rescued close to 750 enslaved people. Journey through her incredible life story in the epic documentary, Harriett Tubman | From the Railroad to a Spy that tells her complete story. Journey through the events and details of her incredible life story that are seldom told; from the underground railroad, to her work as a Union Army scout and spy in military campaigns from South Carolina to Florida.
Showtimes: 2pm & 4pm
This event was posted in Community Event, History Themed, Lectures, Talks, Classes, Movie Nights, The Arts by Carmen Pinckney.


The chronograph counter at 9 o'clock measures hours.
The chronograph minute counter at 6 o'clock measures 30 minutes increments.
Crown is in position 1.
The three chronograph hands are precisely at zero (12:00) position after pressing B. Should this not be the case, the positions of the hands must be adjusted. Please refer to the section titled "adjusting the Chronograph hands to zero position" below.
Press A to start/stop chronograph.
Press B to reset to zero.
Press A to start chronograph.
Press B while the chronograph is running to measure intervals (timing continues in the background).
Press B again to display ongoing measured time.
Repeat steps 1 and 2 to measure additional intervals.
Press A to finalize timing.
Pull the crown out to position 3.
Press A and B simultaneously for 2 seconds until center stop-second hand rotates by 360*. the corrective mode will then be activated.
To adjust the center stop-second hand, press A to move hand one increment; press and hold A for fast advance.
Press B to advance to hours counter hand. Press A to move hand one increment; press and hold A for fast advance.
Press B to advance minute counter hand. Press A to move hand one increment; press and hold A for fast advance.
Return crown to position 1 and you're set.


wow... we use to have neighbors (on both sides actually) who's children would be on their trampoline constantly,screaming,singing,just being loud..
Maybe I am to nice.... or a wimp..
There is no reason for little girls to be screamers. They learn what it means to be a girl from peers and parents. Teach the girls not to scream.
You reminded me of a situation when I was still in high school. My parents had bought 2 lots which were side by side from two different people. They removed the fence and built their house in the middle. There was creek which ran through the property and separated the front third from the back where the house was. The neighborhood kids used to harass my younger brother by telling him that the front third belonged to the neighborhood and they could play in the creek any time they wanted. My dad, an avid bird watcher, discovered a little bird that migrated up and down the creek and one of the three things it ate was poison ivy berries. At this point he quit killing the vines that grew in the trees in the front. He also transplanted all the thorny wild rose bushes that grew along the back fence along the far edges of the creek. After enough kids got poison ivy and got scratched up, they quit trespassing and my parents never had to deal have any confrontations with the neighbors.
Am I the only one confused by this thread. Wouldn't all parents have kids?
I like the sound of the rap suggestion too, but I bet any money the father would be the first one on the phone to the cops complaining about the noise and the crude lyrics. Funny how people are.
Kids need to play outside and I am sure most will agree that children need to play outside more than they do. However, I don't think that it is acceptable for children to scream at the top of their lungs the entire time they are outside. When kids play, they will yell...that is a given. However, they also need to learn that actions have reactions and that their world expands beyond their home and yard. It is good for kids to learn sympathy, empathy, respect and kindness. I don't think teaching good manners will stifle a child or not allow them to burn off excess energy. Simple manners will help them develop a good character that will help them grow into nice, respectful and polite adults. It is unfortunate however that it sounds like these "little apples" will not fall far from the tree....mostly because they are not being taught otherwise.
Last edited by Maybe So; 05-09-2009 at 06:25 PM..
The parents were never around. The kids would claim mom, dad, unlce, older sister, grandma...whoever was home. But knocking on the door, nobody ever answered. I addressed kid who were in our backyard.
I was also wrong when I said my daughter was 18 months. I was thinking about that today but that was the summer before, remembering which room in the house where she was still sleeping in the crib at the time, between 7-9 months old.
In some parts of the country, though, I think the attitude toward ANY kind of confrontation is "You gotta problem wit' dat? Well BRING IT ON!" Dare I ask where your new neighbors moved from?
Funny you should mention this. They are from New York - surprise, surprise.
I agree with the posters who said talk to the mom next. I am going to do that next time I see her outside but that may be a while. The parents aren't home much when I'm home and they just leave their kids home alone for the most part.
Why DO little girls do the prolonged girlscream? I used to be a little girl but don't remember any extended screaming-for-no-reason episodes. Sure, my friends and i would let out yelps and short, piercing screams of laughter and whatnot, but prolonged screaming was reserved for when I was in mortal danger... like if I saw a mouse in the garage... .
My friends and I just didn't do it. I first remember being aware of girlscreaming (as opposed to real screaming) when I saw The Beatles on TV (you've seen that footage, from 1964...). The girls were screaming and screaming and screaming so loud, I couldn't hear the music. I remember thinking "What is their PROBLEM???"
So, for those of you who have screamers, do you know why they do it? Aside from "because they can".
I can only speak for myself and my answer is; " I really have no idea!" except that it seems like all the little girls are little screechers... I don't think that they are being annoying though,I mean sometimes it makes me a little nuts but I don't see it as a big deal.
I know that my children don't scream because we do as their parents,that would not be true,especially with my husband. He rarely raises his voice.
So I have no real reason as to why it happens and certainly if we felt it was out of control,we would be saying more... we don't have neighbors complaining about it either.


text:
Q: VBA code to invoke "Clean Up Folder" in Outlook 2010? Does anyone know the VBA code to invoke the "Clean Up Folder" Outlook 2010 command on the right-click menu when right-clicking on a folder?
I have gotten this far in VBA code to get to the folders I want to clean up:
Private Sub CleanUpAllFolders()
Dim Folders As Outlook.Folders
Dim Folder As Outlook.Folder
Set Folders = Session.GetDefaultFolder(olFolderInbox).Parent.Folders
For Each Folder In Folders
    If Left(Folder.Name, 1) = "_" Then
        ' Clean up folder... how do I invoke that command from VBA on this folder?
    End If
Next
End Sub

However, I can't see any method on the Folder object itself that lets me invoke "Clean Up Folder".
How do I invoke one of those right-click menu commands on the current selected folder in VBA?

A: I am unable to test this, but from what I read this might work.
First find the idMso value for the command. Use this to find the value:
http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=3582
Then use Application.CommandBars.ExecuteMso(idMso) to execute the command. Good luck.


MY PHOTOS of Saint Alphonsus Liguori Church will be shown on the public television station, KETC, Channel 9 in Saint Louis, on the locally-produced show Living St. Louis.
The show, which airs on Monday, May 5th at 7 p.m., and repeats on Sunday May 11th at 5 p.m., is about the rebuilding of the church after a major fire last year.
The videos will be available on the KETC website and on YouTube.
These were taken about two months before the fire.
I will wait for to see your photos of Saint Alphonsus Liguori Church which will be shown on the public television station.
Great work, Mark! You deserve this recognition.
Wasn't that the crazy liturgical goofball church?
"Wasn't that the crazy liturgical goofball church?"
I believe that the correct term is "enculturated", which in this case, the music of the Mass is adapted to African-American culture. But in many respects, the Mass here (the time I visited) is no different than how the Missal of Pope Paul VI is celebrated most everywhere else in the U.S., except that instead of the music of the Saint Louis Jesuits, they have Jazz and Gospel. The worship was Catholic. Either the Sanctus or the Agnus Dei, or both (I can't recall), were chanted in Latin.
The Rosary and the Our Mother of Perpetual Help devotions were prayed precisely as you would expect anywhere else, and I recall hearing quite a bit of Latin.
Enculturation is a good and valid concept. However, it seems to have been used in recent decades as a kind of 'divide and conquer' strategy to eliminate any sense of Catholicity, as well as an excuse to jettison Greek philosophy and the Latin language.
However, we must realize that the mission of the Church is to enculturate society, and not the other way around.


I have longed for an olive bucket for a while now. They are really popular in home decor these days especially in country living homes or homes with traditional design incorporating industrial touches like mine.
Once used to carry olives straight from the picking, this bucket is made from true vintage metal. Rusted metal handles and slat openings to allow the olives to breath. This is one cool bucket.
I found several the other day during my trip to Dop Antiques.
I could not leave without one. I've seen these on ebay, etsy, and other sites in excess of $75.00. When I inquired about the price (since none of them were marked) at Dop, one gentleman stated $45.00. I just could not decide which one to choose as all were different with their own imperfections from years and years of use. While looking around, a female worker noticed I was looking at more olive buckets in another location. I again asked the price, and she stated $60.00. Perplexed. I continued to peruse the aisles. When I was ready to leave, I noticed the gentleman at the "check out" area. Remember? He was the same one who told me earlier that the bucket was $45.00. I quickly grabbed an olive bucket of my liking, placed it on the counter, and checked out. Whew! There was no sighting of the female worker, and I bought my newest find for only $45.00 plus tax.
When I got home, I simply laid it in the front parlor near an end table, so that is where it is presently. I like it there. Who knows if it will remain in this location, but it is a great addition to the numerous industrial finds mixed with my traditional Southern coastal decor.
I found this photo online of one used as a lighting fixture. Wow! I love it.
Extend an Olive Bucket, y'all!
Did you know that your emmail addy doesnn't show up when you leave a comment? It will help you grow your blog to have that available. If you want to know how to "fix" it let me know and I will email you the instructions-it's easy.
One is enough. Don't get carried away.
I have seen the prices of these buckets all over the place. At first I saw them for $79 then $89 then I got mine at Scott's for $40. I went to a new antique place last week and there is one in there for $95. Don't think so. You got a good deal.
Awesome find, Ron! You're right. These usually sell for a whole lot more! You got a great deal!
These caught my eye in yesterday's post--glad you got one!!
Thank you so very much for the information here. I was searching for these and could not believe the prices at some places and shipping from Turkey was too much. When I did another search via google your blog came up at the top and wowser...I was to the web site after finishing your post. I spoke with Michiel and am waiting for my shipment in a few days. Michiel is awesome and very helpful. Thanks to you I shall turn three into lights over a breakfast bar and the 4th, well maybe it will sit in the living room.
I am really very grateful for your sharing of this hear on your blog. Fantastic info convoyed to the seekers out here.
Do you have to have a tax id to shop at Dops? Thanks!
Do you have to have a tax id to shop at Dops?


Two large basins of unequal size define the MR Direct 3120L-18 ensemble. This functional and attractive, stainless steel sink is one of the three-quarter inch corner radius designs, which provide the maximum amount of interior sink space. With the bowls aligned upfront, the faucet can be tucked behind the smaller bowl on the right. The luster of brushed 304-grade stainless steel offers beauty, and the 18-gauge thickness provides durability. Sound-dampening pads reduce noise, insulation prevents condensation, and offset drains create extra upfront room under the countertop. This ensemble includes a custom-fitted grid for each bowl -- tailored to keep items off of the basin bottom, and both a standard and basket strainer to catch scrap materials.


text:
New Mexico State vs. UTEP (10/05/16)
New Mexico State vs. UTEP
October 5, 2016; New Mexico State outside hitter Jordan Abalos (3) passes a ball in a match between the New Mexico State Aggies and UTEP Miners at the Pan American Center in Las Cruces, N.M. The Aggies defeated the Miners 3-0.
October 5, 2016; New Mexico State outside hitter Jordan Abalos (3) tips a ball over the block of UTEP setter Lindsey Larson (16) in a match between the New Mexico State Aggies and UTEP Miners at the Pan American Center in Las Cruces, N.M. The Aggies defeated the Miners 3-0.
October 5, 2016; New Mexico State middle hitter Sasha-Lee Thomas (20) fires a ball past the block of UTEP outside hitter Ashley Grzebeniak (17) and UTEP middle blocker Kylie Baumgartner (18) in a match between the New Mexico State Aggies and UTEP Miners at the Pan American Center in Las Cruces, N.M. The Aggies defeated the Miners 3-0.


text:
using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;

namespace ConstraintThingy
{
    /// <summary>
    /// Represents a choice we want to make in our problem, presumably subject to some restrictions (constraints)
    /// </summary>
    public sealed class Variable
    {
        /// <summary>
        /// Reverts the state of a variable. Note that this bypasses all the propagation logic
        /// that we run whenever we normally change the value of a variable, so this
        /// should only be used by the solver when rolling back to a previous state.
        /// </summary>
        /// <param name="values">The value to revert to</param>
        /// <param name="previousVersion">The last change before the one we are reverting to</param>
        public void RevertTo(FiniteDomain values)
        {
            _values = values;
        }

        /// <summary>
        /// The list of constraints that this variable is connected to.
        /// </summary>
        public readonly List<Constraint> Constraints = new List<Constraint>();

        /// <summary>
        /// Notifies every constraint this variable is connected to that this variable has changed its value
        /// </summary>
        private bool NarrowConstraints()
        {
            foreach (var constraint in Constraints)
            {
                if (!constraint.OnVariableNarrowed(this))
                {
                    return false;
                }
            }

            return true;
        }

        /// <summary>
        /// A string used for debugging.
        /// </summary>
        public readonly string DebugName;

        private FiniteDomain _values;

        public Variable(FiniteDomain values, string debugName = null)
        {
            _values = values;
            DebugName = debugName;
        }

        /// <summary>
        /// Gets the current set of possible values of this variable. To change the value
        /// of this variable, use SetValue().
        /// </summary>
        public FiniteDomain Values
        {
            get
            {
                return _values;
            }
        }

        /// <summary>
        /// Changes the value of this variable. If the value is different than its current value
        /// it will propagate the change to all of the constraints it is involved in, which may
        /// in turn change the values of other variables (resulting in even more propagation)
        /// </summary>
        public bool SetValue(FiniteDomain values)
        {
            if (_values != values)
            {
                // Store the current state.
                Solver.SaveValues(this, _values);

                // Modify the current set of values
                _values = values;

                // Attempt to narrow constraints
                if (!NarrowConstraints())
                {
                    return false;
                }
            }

            // If narrowing constraints resulting in an empty set, then we should fail
            if (IsEmpty)
            {
                return false;
            }

            // Everything good so far!
            return true;
        }

        /// <summary>
        /// Returns whether all possible values of a variable have been ruled out.
        /// This is bad and probably means we should roll back to a previous choice point
        /// and make a different choice.
        /// </summary>
        public bool IsEmpty { get { return _values.IsEmpty; } }

        /// <summary>
        /// Returns whether this variable has been narrowed to a unique value.
        /// If all variables have been narrowed to a unique value, then we
        /// have found a solution.
        /// </summary>
        public bool IsUnique { get { return _values.Count == 1; } }

        /*
         * This is an equivalent implementation of SolutionIterator and GetEnumerator blow.
         * This is more readable, but involves allocating memory for the iterator.
         *
        public IEnumerator<Color> GetEnumerator
        {
            get
            {
                int mark = Solver.Version;

                // Iterate over each possible value this variable can take.
                // Note that while we are iterating over values of type 'FiniteDomain'
                // each finite domain only has a single element in it. This is done so
                // that the solver only needs to manipulate finite domains instead of
                // converting to and from Colors and their corresponding 1-element
                // finite domain.
                foreach (FiniteDomain value in Values)
                {
                    // Calling SetValue will enqueue related constraints
                    // and calling ResolveConstraints will propagate them.
                    if (SetValue(value) && Solver.ResolveConstraints())
                    {
                        // If both of these operations succeed, then we can tentatively
                        // return the current value.
                        yield return value.Colors.First();
                    }

                    // Roll back the solver to what it looked like before
                    // we made any changes in this loop.
                    Solver.Rollback(mark);
                }
            }
        }
        */

        public struct VariableEnumerator : IEnumerator
        {
            private readonly Variable _variable;
            private readonly int _version;
            private FiniteDomain.FiniteDomainEnumerator _values;

            public VariableEnumerator(Variable variable)
            {
                _variable = variable;
                _version = Solver.Version;
                _values = _variable.Values.GetEnumerator();
            }

            public bool MoveNext()
            {
                Solver.Rollback(_version);

                while (_values.MoveNext())
                {
                    var value = _values.Current;

                    if (_variable.SetValue(value) && Solver.ResolveConstraints())
                    {
                        return true;
                    }
                    else
                    {
                        Solver.Rollback(_version);
                    }
                }

                return false;
            }

            void IEnumerator.Reset()
            {
                throw new NotImplementedException();
            }

            object IEnumerator.Current
            {
                get { return Current; }
            }

            public Color Current
            {
                get
                {
                    return _values.Current.FirstColor;
                }
            }
        }

        /// <summary>
        /// Enumerates over the possible colors this variable can take. This is one
        /// of the core inner loops of the solver.
        /// </summary>
        public VariableEnumerator GetEnumerator()
        {
            return new VariableEnumerator(this);
        }

        /// <summary>
        /// Mostly for debugging and extracting values from variables after the solver has finished.
        /// </summary>
        public Color UniqueValue
        {
            get
            {
                if (IsUnique)
                {
                    return Values.FirstColor;
                }
                else
                {
                    throw new InvalidOperationException(DebugName + " was not narrowed to a unique value!");
                }
            }
        }

        public override string ToString()
        {
            return DebugName + " " + Values;
        }
    }
}


text:
Renata Scotto: Born February 24, 1934
[Renata Scotto] began vocal studies when she was 14, and moved to Milan when she was 16. In 1952, when she was just 19, she made her debut as Violetta (La traviata) at the Teatro Nuovo, followed by her La Scala debut as Walter in La Wally. However, only a few years later she had a vocal crisis, losing most of her upper range; she now credits her recovery to Alfredo Kraus (himself renowned for a solid technique and vocal longevity), who introducing her to his teacher, Mercedes Llopart. After completely restudying her technique, she re-began her career as a coloratura, making her London debut at the Stoll Theater as Adina in L'elisir d'amore. She returned to La Scala, and in 1957, replaced Maria Callas (whom she had greatly admired) as Amina in La Sonnambula.
– See more at:
http://www.allmusic.com/artist/renata-scotto-mn0000681028/biography
http://musicalworld.com/artists/renata-scotto/biography.html
Classical Music, Musicians' Birthdays, Opera, Opera Singer 1 Comment
Steve Jobs: Born February 24, 1955 »
One thought on "Renata Scotto: Born February 24, 1934"
Pingback: February 24, 1582~ Pope Gregory XIII announces Gregorian calendar | The Misty Miss Christy


text:
Wet kennings
The teacher said, "We're going on a school trip."
So I said, "D'you want a hand?"
And they said, "Yes, please."
No sweat — so, this morning I bowled up with my baby, suncream and floppy hat, and said, "Where we goin'?"
And they said, "We're walking to the beach to write poems, and learn about kennings."
HOW COOL IS MY LIFE?
How magical, to walk to a gorgeous pebble beach with twenty or thirty youngsters and sit and talk about poetry (OK, I know — poetry's not my forte — but they're small so I still know more than them, right?) Plus, I love kennings.
Kennings — lots of posh definitions on Google but in short, a kenning is a couple of words stuck together to depict something. So if you're a small boy on a beach then a bird = a cloud-chaser.
We had a lovely time — my crazy baby crawled through saltwater puddles and licked stones, while the kids and I sat and chatted about the sea and sky mirroring one another, the granite around the bay, the spongy salt stink of beached kelp, the plunging gannets and the shipwrecks full of cannons and musket balls that lie off our shores. We talked about fossilised forests under the sea, the shape of stones that had been rounded and painted by the waves, the caverns of the tompot blenny, and who had the biggest choc ice.
I spoke to one boy — a loud and cheerful lad — who said he couldn't write poetry. I said, OK, let's get past that mythical girly image and the rhyming — let's just look at describing things in a new way. We watched a bumble bee fly out to sea and I asked him to explain how the bumble bee flies and he cracked a joke. I said, no, seriously — we don't know how the bumble bee flies — it's the wrong shape, its body is a pom-pom and its wings are ridiculous. So how come, if you sail five miles offshore, they sometimes land on deck? How does the bumble bee feel as it flies out to sea? What makes it go? Of all the great adventurers that ever lived, is the bumble bee who flies out to sea not the bravest, and craziest, of all? We stared at the bumble bee until it became a dot, the south-westerly airs stiff on its beam, and we figured it would probably land in the sea and drown, but we also knew it might not.
So we figured the bumble bee was an air sailor and a wind warrior, and the boy nodded and started to write.
All About Flash — NZ
FIRST PERSON and WRAPPED in JAWBREAKERS — NFFD anthology
Peter Domican says:
Lovely. No better way to spend a day.
Although, I did mention to the teacher that flash fiction is a great medium for kids… It was nice to find out about kennings though — I've used them before, but didn't know their name or background. (No Creative Writing MA here… my training being more IUPAC than fiction…)
Clair Humphries (@clairhumphries) says:
Wow, what a cool day! And how lovely, to make a difference and teach that little boy to see something in a new way. Magical.
We're so lucky, living out here — beaches everywhere. They make great classrooms!
roughwighting1 says:
Hi Pam, thanks for dropping by — I've just been enjoying your blog (the post about the hair — very funny!)
Josephine Corcoran says:
Agree with what everyone's said. Fantastic idea to take writing outside the classroom, too. Children come out with startlingly vivid imagery when you give their imaginations some space.


If we know our readers – and we hope we do! – we suspect that, like us, many of you will be in need of some light relief following recent events at Blossom Hill Cottage. (The Archers was of course top of the agenda at this week's staff meeting.) In the wake of such high drama, the rather unlikely combined forces of ITV and Slightly Foxed can provide just the sort of escapist entertainment required, in the form of the new Sunday night television programme, The Durrells, a six part series based on My Family and Other Animals (our 28th SF Edition).
Following last Sunday's first episode our handsome limited edition, with its Aegean blue cloth and sunny endpapers, is flying off the shelves so if you haven't yet claimed your copy please do so now before it sells out. Usually at this point in our introduction we'd witter on a little about this month's chosen book to encourage you further but Gerry Durrell can do this infinitely better himself. So, without further ado, off we go to the island paradise of Corfu, to the Strawberry-Pink Villa. Until next time!
As the build-up to Christmas in all of its fun and exhausting glory fast approaches, the office foxes have been wondering if they could abandon the scaffold-clad confines of Hoxton Square for a spell in the forest. But then who would greet Paul from Smith Settle with the winter haul in a few weeks' time, hand-write gift messages, swaddle parcels in tape and wrestle postbags downstairs for our cheery postman to collect each day? No! It simply won't do. We are far too fond of our readers and conscious of their literary present requirements for that so, for this month's mailing, we're making do with a spot of armchair escapism with Brendon Chase instead . . .