text:
import sys, json, os, string, thread
import LoginManager as Login
import ProbeManager as Probe
from flask import *

reload(sys)
sys.setdefaultencoding('utf-8')

app = Flask(__name__)

################################################################################
################################### LOGGER #####################################
################################################################################

import logging
from logging.handlers import RotatingFileHandler

logger = logging.getLogger()
logger.setLevel(logging.DEBUG)
if not os.path.isdir('log'):
	os.mkdir('log')

# create formatter for the type of log
formatter = logging.Formatter('%(asctime)s :: %(levelname)s :: %(message)s')
# file handler, filename = server.log, 1Mo max, 5 log (4  archived and actual log)
file_handler = RotatingFileHandler('log/server.log', 'a', 1000000, 5)

# level INFO with the previous formatter
file_handler.setLevel(logging.INFO)
file_handler.setFormatter(formatter)
logger.addHandler(file_handler)

# one handler for write DEBUG in the console
steam_handler = logging.StreamHandler()
steam_handler.setLevel(logging.DEBUG)
logger.addHandler(steam_handler)

logger.info('******************** NEW SESSION ********************')
logger.info('Logger is ready')

# *#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*
# *#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#* CORS #*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*
# *#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*
##	Empeche les erreurs de type CORS
#	@param resp
def addCorsHeaders(resp):
	resp.headers['Access-Control-Allow-Origin'] = '*'
	resp.headers['Access-Control-Allow-Methods'] = 'POST, GET, DELETE, PUT'
	resp.headers['Access-Control-Max-Age'] = '21600'
	resp.headers['Access-Control-Allow-Headers'] = 'accept, origin, authorization, content-type'

# *#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*
# *#*#*#*#*#*#*#*#*#*#*#*#*#*# Variable global #*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*
# *#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*

#################################### / #########################################
## root et redirection

@app.route('/')
##	acces a la racine du service web
def root():
	resp = make_response()
	resp.status_code = 200
	resp.data = 'Root, nothing to see here'
	return resp

@app.route('/')
## Redirige sur la page /static/main.html
def redirectToMain():
	return redirect('/static/main.html')

@app.route('/login', methods=['POST'])
##	Permet la connexion du login
## Resp {"nom":"toto","prenom":"toto","description":"toto","login":"login"}
def login_POST():
	logger.info('\n/login		method : POST')
	logger.info(request.data)
	resp = make_response()
	addCorsHeaders(resp)
	tmp={"nom":"toto","prenom":"toto","description":"toto","login":"toto"}
	# si aucune erreur alors le JSON est au bon format
	try:
		resp.headers['Content-Type'] = 'application/json'
		# recuperation de la donnee envoyer au serveur
		req_data = json.loads(request.data)
		# recuperation du login
		login = str(req_data["login"])
		# recuperation du password
		password = str(req_data["password"])
		# Test des informations de connexion de l'utilisateur
		if (Login.isLogin(login) == True):
			# Si login et password valid 200
			if (Login.isPass(login, password) == True):
				resp.status_code = 200
				tmp=Login.userInfo(login)
			# Si password faux 1003
			else:
				resp.status_code = 1003
		# Si login faux 1002
		else:
			resp.status_code = 1002
		# Conversion Reponse to JSON
		resp.data=json.dumps(tmp)
		logger.info(resp.data)
	except Exception as e:
		print (e)
		# si une erreur de format retour erreur 1004
		resp.status_code = 1004
		resp.data = "error 1004 : Bad format json"
		return resp

	return resp

@app.route('/user', methods=['POST'])
##	Permet de creer un nouveau user
## Resp No Resp
def user_POST():
	logger.info('\n/user		method : POST')
	logger.info(request.data)
	resp = make_response()
	addCorsHeaders(resp)
	# si aucune erreur alors le JSON est au bon format
	try:
		resp.headers['Content-Type'] = 'application/json'
		# recuperation de la donnee envoyer au serveur
		req_data = json.loads(request.data)
		# recuperation du login
		login = str(req_data["login"])
		# recuperation du password
		password = str(req_data["password"])
		# recuperation du nom
		nom = str(req_data["nom"])
		# recuperation du prenom
		prenom = str(req_data["prenom"])
		# recuperation du mail
		mail = str(req_data["mail"])
		# recuperation du description
		desc = str(req_data["description"])
		# Test des informations de connexion de l'utilisateur
		if (Login.isLogin(login) == False):
			resp.status_code = Login.insertUser(login, password, nom, prenom, desc,mail)
		# Si login existe deja 1005
		else:
			resp.status_code = 1005

	except Exception as e:
		print (e)
		# si une erreur de format retour erreur 1004
		resp.status_code = 1004
		resp.data = "error 1004 : Bad format json"
		return resp
	return resp

@app.route('/deletedUser', methods=['POST'])
##	Permet de supprimer un nouveau user
## Resp No Resp
def deletedUser_POST():
	logger.info('\n/deletedUser		method : POST')
	logger.info(request.data)
	resp = make_response()
	addCorsHeaders(resp)
	# si aucune erreur alors le JSON est au bon format
	try:
		resp.headers['Content-Type'] = 'application/json'
		# recuperation de la donnee envoyer au serveur
		req_data = json.loads(request.data)
		# recuperation du login
		login = str(req_data["login"])
		# Test des informations de connexion de l'utilisateur
		if (Login.isLogin(login) == True):
			resp.status_code = Login.userSuppr(login)
		# Si login existe deja 1002
		else:
			resp.status_code = 1002
		#logger.info(req_data)
	except Exception as e:
		print (e)
		# si une erreur de format retour erreur 1004
		resp.status_code = 1004
		resp.data = "error 1004 : Bad format json"
		return resp
	return resp

@app.route('/userList', methods=['GET'])
##	Retourne tous les users
## Resp [{"nom":"toto","prenom":"toto","login":"toto"}]
def userlist_GET():
	logger.info('\n/userList		method : GET')
	resp = make_response()
	addCorsHeaders(resp)
	try:
		resp.headers['Content-Type'] = 'application/json'
		resp.status_code = 200
		req_data=Login.userList()
		resp.data = json.dumps(req_data)
	except Exception as e:
		print (e)
		# si une erreur de format retour erreur 1004
		resp.status_code = 1004
		resp.data = "error 1004 : Bad format json"
		return resp
	logger.info(resp.data)
	return resp

@app.route('/ModifyDescription', methods=['POST'])
##	Modifie la description d'un utilisateur
## Resp No Resp
def ModifyDescription_POST():
	logger.info('\n/ModifyDescription		method : POST')
	logger.info(request.data)
	resp = make_response()
	addCorsHeaders(resp)
	try:
		resp.headers['Content-Type'] = 'application/json'
		resp.status_code = 200
		req_data = json.loads(request.data)
		# recuperation du login
		login = str(req_data["login"])
		# recuperation de la description
		desc = str(req_data["description"])
		# recuperation de la description
		mail = str(req_data["mail"])
		req_data=Login.descModif(login,desc)
		if req_data == 200 :
			req_data=Login.mailModif(login,mail)
		resp.status_code=req_data
	except Exception as e:
		print (e)
		# si une erreur de format retour erreur 1004
		resp.status_code = 1004
		resp.data = "error 1004 : Bad format json"
		return resp
	logger.info(resp.data)
	return resp

@app.route('/userRights', methods=['POST'])
##	Changement des droits d'un utilisateur sur les stations
## Resp No Resp
def userRights_POST():
	logger.info('\n/userRights		method : POST')
	logger.info(request.data)
	resp = make_response()
	addCorsHeaders(resp)
	try:
		resp.headers['Content-Type'] = 'application/json'
		resp.status_code = 200
		req_data = json.loads(request.data)
		# recuperation du login
		login = str(req_data["login"])
		# recuperation de la liste des droits
		liste = req_data["liste"]
		resp.status_code=Probe.userRights(login,liste)

	except Exception as e:
		print (e)
		# si une erreur de format retour erreur 1004
		resp.status_code = 1004
		resp.data = "error 1004 : Bad format json"
		return resp
	return resp

@app.route('/modifyPassword', methods=['POST'])
##	Changement du mot de passe d'un utilisateur
## Resp No Resp
def modifyPassword_POST():
	logger.info('\n/modifyPassword		method : POST')
	logger.info(request.data)
	resp = make_response()
	addCorsHeaders(resp)
	try:
		resp.headers['Content-Type'] = 'application/json'
		# si tu se passe bien retour d'un code erreur 200
		resp.status_code = 200
		req_data = json.loads(request.data)
		# recuperation du login
		login = str(req_data["login"])
		# recuperation du ancienPassword
		aPassword = str(req_data["ancienPassword"])
		# recuperation du newPassword
		nPassword = str(req_data["newPassword"])
		# Test les informations de connexion de l'utilisateur
		if (Login.isLogin(login) == True):
			# Si login et password valid 200
			if (Login.isPass(login, aPassword) == True):
				resp.status_code=Login.changePass(login,nPassword)
			# Si password faux 1003
			else:
				resp.status_code = 1003
		# Si login faux 1002
		else:
			resp.status_code = 1002
	except Exception as e:
		print (e)
		# si une erreur de format retour erreur 1004
		resp.status_code = 1004
		resp.data = "error 1004 : Bad format json"
		return resp
	return resp

@app.route('/forgotPassword', methods=['POST'])
##	Envoie de mail et creation de mot de passe en cas d'oublis du mot de passe
## Resp No Resp
def forgotPassword_POST():
	logger.info('\n/forgotPassword		method : POST')
	logger.info(request.data)
	resp = make_response()
	addCorsHeaders(resp)
	try:
		resp.headers['Content-Type'] = 'application/json'
		resp.status_code = 200
		req_data = json.loads(request.data)
		# recuperation du login
		login = str(req_data["login"])
		# recuperation du mail
		mail = str(req_data["mail"])
		# Test les informations de connexion de l'utilisateur
		if (Login.isLogin(login) == True):
			# Si login et password valid 200
			resp.status_code=Login.forgetPassword(login,mail)
		# Si login faux 1002
		else:
			resp.status_code = 1002
	except Exception as e:
		print (e)
		# si une erreur de format retour erreur 1004
		resp.status_code = 1004
		resp.data = "error 1004 : Bad format json"
		return resp
	return resp

@app.route('/erasePassword', methods=['POST'])
##	Changement du mot de passe temporaire d'un utilisateur
## Resp No Resp
def erasePassword_POST():
	logger.info('\n/erasePassword		method : POST')
	logger.info(request.data)
	resp = make_response()
	addCorsHeaders(resp)
	try:
		resp.headers['Content-Type'] = 'application/json'
		resp.status_code = 200
		req_data = json.loads(request.data)
		# recuperation du login
		login = str(req_data["login"])
		# recuperation du password
		password = str(req_data["password"])
		# Test les informations de connexion de l'utilisateur
		if (Login.isLogin(login) == True):
			# Si login et password valid 200
			resp.status_code=Login.changePass(login,password)
		# Si login faux 1002
		else:
			resp.status_code = 1002
	except Exception as e:
		print (e)
		# si une erreur de format retour erreur 1004
		resp.status_code = 1004
		resp.data = "error 1004 : Bad format json"
		return resp
	return resp

@app.route('/capteur', methods=['POST'])
##	Permet de creer un nouveau capteur
## Resp [{"mesure":"ozone","dateReleve":"toto"}]
def capteur_POST():
	logger.info('\n/capteur		method : POST')
	logger.info(request.data)
	resp = make_response()
	addCorsHeaders(resp)
	# si aucune erreur alors le JSON est au bon format
	try:
		result={}
		resp.headers['Content-Type'] = 'application/json'
		# recuperation de la donnee envoyer au serveur
		req_data = json.loads(request.data)
		# recuperation du login
		login = str(req_data["login"])
		# recuperation du capteurId
		capteurId = str(req_data["capteurId"])
		# recuperation de la valeur a renvoyer
		mesure = str(req_data["mesure"])
		# recuperation du dateDebut
		dateDebut = req_data["dateDebut"]
		# recuperation du dateFin
		dateFin = req_data["dateFin"]
		myArray=[]
		# Test les informations de connexion de l'utilisateur
		if (Login.isLogin(login) == True):
			if ( Probe.isBalise(capteurId)==True):
				if(Login.userAccess(login,capteurId)==True):
					if(mesure == "temperature"):
						myArray=Probe.temperatureValue(login,capteurId,dateDebut,dateFin)
					elif(mesure == "ozone"):
						myArray=Probe.ozoneValue(login,capteurId,dateDebut,dateFin)
					elif(mesure == "hygrometrie"):
						myArray=Probe.hygrometrieValue(login,capteurId,dateDebut,dateFin)
					elif(mesure == "humidite"):
						myArray=Probe.humiditeValue(login,capteurId,dateDebut,dateFin)
					else:
						myArray=Probe.capteurValue(login,capteurId,dateDebut,dateFin)

					result["releve"]=myArray
					resp.data=json.dumps(result)
					resp.status_code = 200
					logger.info(resp.data)
				else:
					# Le user n'a pas acces au capteur
					resp.status_code=1007
			else:
				# Le capteur n'existe pas
				resp.status_code=1006
		else:
			# Le login n'existe pas
			resp.status_code=1002
	except Exception as e:
		print (e)
		# si une erreur de format retour erreur 1004
		resp.status_code = 1004
		resp.data = "error 1004 : Bad format json"
		return resp
	return resp

@app.route('/stationList', methods=['GET'])
##	Retourne tous les stations
## Resp [{"name":"name","longitude":"longitude","latitude":"latitude"}]
def probeList_GET():
	logger.info('\n/stationList		method : GET')
	resp = make_response()
	addCorsHeaders(resp)
	try:
		resp.headers['Content-Type'] = 'application/json'
		resp.status_code = 200
		req_data=Probe.stationList()
		resp.data = json.dumps(req_data)
	except Exception as e:
		print (e)
		# si une erreur de format retour erreur 1004
		resp.status_code = 1004
		resp.data = "error 1004 : Bad format json"
		return resp
	logger.info(resp.data)
	return resp

@app.route('/sensorList', methods=['GET'])
##	Retourne tous les sondes
## Resp {"capteur":[]}
def sensorList_GET():
	logger.info('\n/sensorList		method : GET')
	resp = make_response()
	addCorsHeaders(resp)
	try:
		resp.headers['Content-Type'] = 'application/json'
		resp.status_code = 200
		req_data=Probe.sensorList()
		resp.data = json.dumps(req_data)
	except Exception as e:
		print (e)
		# si une erreur de format retour erreur 1004
		resp.status_code = 1004
		resp.data = "error 1004 : Bad format json"
		return resp
	logger.info(resp.data)
	return resp

@app.route('/addStation', methods=['POST'])
##	Ajout d'une station
## Resp No Resp
def addStation_POST():
	logger.info('\n/addStation		method : POST')
	logger.info(request.data)
	resp = make_response()
	addCorsHeaders(resp)
	try:
		resp.headers['Content-Type'] = 'application/json'
		resp.status_code = 200
		req_data = json.loads(request.data)
		# recuperation du nom
		nom = str(req_data["nom"])
		# recuperation de la longitude
		longitude = str(req_data["longitude"])
		# recuperation de la latitude
		latitude = str(req_data["latitude"])
		# recuperation de la date
		date =req_data["dateDeploiement"]
		# recuperation des capteurs
		capteur = req_data["capteurs"]
		resp.status_code=Probe.createStation(nom,longitude,latitude,date,capteur)
		#resp.data = json.dumps(req_data)
	except Exception as e:
		print (e)
		# si une erreur de format retour erreur 1004
		resp.status_code = 1004
		resp.data = "error 1004 : Bad format json"
		return resp
	logger.info(resp.data)
	return resp

@app.route('/addSensor', methods=['POST'])
##	Aout d'un type de capteur
## Resp No Resp
def addSensor_POST():
	logger.info('\n/addSensor		method : POST')
	logger.info(request.data)
	resp = make_response()
	addCorsHeaders(resp)
	try:
		resp.headers['Content-Type'] = 'application/json'
		resp.status_code = 200
		req_data = json.loads(request.data)
		# recuperation du nom
		nom = str(req_data["nom"])

		resp.status_code=Probe.createSensor(nom)
		#resp.data = json.dumps(req_data)
	except Exception as e:
		print (e)
		# si une erreur de format retour erreur 1004
		resp.status_code = 1004
		resp.data = "error 1004 : Bad format json"
		return resp
	logger.info(resp.data)
	return resp

@app.route('/accessList', methods=['POST'])
##	Renvoie la liste des accees d'un utilisateur
## Resp {"liste":[{"nom":"nom","access":True}]}
def accessList_POST():
	logger.info('\n/accessList		method : POST')
	logger.info(request.data)
	resp = make_response()
	addCorsHeaders(resp)
	try:
		resp.headers['Content-Type'] = 'application/json'
		resp.status_code = 200
		req_data = json.loads(request.data)
		# recuperation du login
		login = str(req_data["login"])
		access=Probe.accessList(login)
		list=Probe.stationList()
		myArray=[]

		# Croise les informations des listes pour crees un JSON des accees
		for tmpList in list:
			tmpJSON={"nom":"name","access":False}
			valid=False
			for tmpAccess in access:
				if tmpList["name"]==tmpAccess["name"]:
					valid=True
					break
			tmpJSON["access"]=valid
			tmpJSON["nom"]=tmpList["name"]
			myArray.append(tmpJSON)
		req_data={"liste":[]}
		req_data["liste"]=myArray
		resp.data = json.dumps(req_data)
	except Exception as e:
		print (e)
		# si une erreur de format retour erreur 1004
		resp.status_code = 1004
		resp.data = "error 1004 : Bad format json"
		return resp
	logger.info("Response")
	logger.info(resp.data)
	return resp

@app.route('/addSensorToStation', methods=['POST'])
##	Ajout d'un capteur a une station
## Resp No Resp
def addSensorToStation_POST():
	logger.info('\n/addSensorToStation		method : POST')
	logger.info(request.data)
	resp = make_response()
	addCorsHeaders(resp)
	try:
		resp.headers['Content-Type'] = 'application/json'
		resp.status_code = 200
		req_data = json.loads(request.data)
		# recuperation du nom de la station
		station = str(req_data["station"])
		# recuperation du type de capteur a ajouter a la station
		sensorType = req_data["capteurType"]
		resp.status_code=Probe.modifSensorToStation(station,sensorType,"add")
	except Exception as e:
		print (e)
		# si une erreur de format retour erreur 1004
		resp.status_code = 1004
		resp.data = "error 1004 : Bad format json"
		return resp
	return resp

@app.route('/deletedSensorToStation', methods=['POST'])
##	Ajout d'un capteur a une station
## Resp No Resp
def deletedSensorToStation_POST():
	logger.info('\n/deletedSensorToStation		method : POST')
	logger.info(request.data)
	resp = make_response()
	addCorsHeaders(resp)
	try:
		resp.headers['Content-Type'] = 'application/json'
		resp.status_code = 200
		req_data = json.loads(request.data)
		# recuperation du nom de la station
		station = str(req_data["station"])
		# recuperation du type de capteur a ajouter a la station
		sensorType = req_data["capteurType"]
		resp.status_code=Probe.modifSensorToStation(station,sensorType,"delete")
	except Exception as e:
		print (e)
		# si une erreur de format retour erreur 1004
		resp.status_code = 1004
		resp.data = "error 1004 : Bad format json"
		return resp
	return resp

@app.route('/sensorOfStation', methods=['POST'])
##	Recuperation des capteurs d'une station
## Resp {"capteur":[]}
def sensorOfStation_POST():
	logger.info('\n/sensorOfStation		method : POST')
	logger.info(request.data)
	resp = make_response()
	addCorsHeaders(resp)
	try:
		resp.headers['Content-Type'] = 'application/json'
		resp.status_code = 200
		req_data = json.loads(request.data)
		# recuperation du nom de la station
		station = str(req_data["nom"])
		tmp=Probe.sensorOfStation(station)
		resp.data=json.dumps(tmp)
		logger.info(resp.data)
	except Exception as e:
		print (e)
		# si une erreur de format retour erreur 1004
		resp.status_code = 1004
		resp.data = "error 1004 : Bad format json"
		return resp
	return resp

# *#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*
# *#*#*#*#*#*#*#*#*#*#*#*#*#* Launch the server #*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#
# *#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*

app.run(host='0.0.0.0', port=8080, debug=False)

redpajama_set_name: RedPajamaGithub


text:
Q: Linux error - physical memory corrupted? Good Morning,
I have a problem on opensuse 11.3.
I developed a program that runs 24 hour /24 hour 360 day /360 day. I have installed this program in about 60 / 70 computers. In four of this computer I have a problem.
After a random time (10 minutes / 1 hour / 1 day) my program crashs and I aren't able to start it again. The error is always about one or more files corruption. The files corrupted are random, sometimes my libs, sometimes my executable file, sometimes kernel lib, sometimes system files, apache server, ssh server etc...
I thought that it was an hard-disk problem, i tried to replace it but the problem occurs again.
Now I think that it can be a memory problem, in fact, if I reboot the computer or I clean the cached memory ( http://www.hosting.com/support/linux/clear-memory-cache-on-linux-server ) my program restarts successfully (but, after a random time the problem occur again).
What do you think?
What can I do to be more sure that is a memory problem?
I haven't a direct access to this computers, I can connect to this pc through ssh client (putty).
I tryed to use memtester program ( http://www.linuxarticles.org/2010/12/test-memory-using-memtester-in-linux/ ) but the memory seems to be ok.
Thanks

redpajama_set_name: RedPajamaStackExchange


Posted by Angela on October 4, 2010 at 8:45 am.
Vancouver, BC (October 4, 2010): For 12 hours on a cold and rainy September Sunday, 60 resilient photographers braved the elements to capture their interpretations of 12 randomly drawn themes with only 12 exposures of 35mm film. Now it's time to reveal the results of the 2nd annual 12×12 Vancouver Photo Marathon with a peek at Marathoner #2's take on "My Entry Number*." To see the rest of Robert Fougere's photo set and that of our other marathoners, check out the exhibit where we will relive the excitement of that day's events as we celebrate the art of film photography.
Over 700 untouched photos will be on display and prizes awarded to the best prints as adjudicated by an esteemed panel of judges that include ET Canada's Erin Cebula, Vancouver Photo Workshops director Marc Koegel, the dynamic duo of Adam & Kev from Adam & Kev Photography, and 12×12 committee member John Biehler. Come join us on Saturday October 16th, 2010 as 60 marathoners regroup with nervous anticipation to find out how their images developed.


Fall is the time when you should get prepared your house for the upcoming season by doing winterization of your house.
The last thing you want is to be calking your windows from outside when it's just above 20F and snowing. Even worse is having your pipes or sprinkler system burst because you never managed to insulate and blow through the system before freezing weather come in.
By following our ultimate guide now before the cold arrives, you can save money and remain warm and safe throughout winter.
We put a lot of hard work in collecting as much information about how to winterize a house as possible in this guide. This is why it is called the Ultimate Guide. We understand that having access to so much information may be intimidating at first.
After preparing the plan, you can now check what financial help is available in your area and how it can save you money. It can be a weatherization or insulation program that is run by your local government or a federal tax credit.
In order to find out what you are eligible for, read the information below and check the links.
Under the Bipartisan Budget Act of 2018 which was signed in February 2018, a number of tax credits for residential energy efficiency that had expired at the end of 2016 were renewed.
Households (both low-income and regular income) can qualify for an average of $6,500 worth of weatherization improvements to their homes through government programs administered by each state.
Weatherization programs can offer free weatherization services to residents who meet income qualifications.
Insulation programs may reimburse you for 100% of the cost, up to $1000 for highly efficient and/or updated insulation.
Additionally, low-income households can qualify for an average of $6,500 worth of weatherization improvements.
The time to turn heating on depends on the seasonal temperatures in your area and usually, it happens in the middle or the end of fall. Thus, the time to check it usually arrives in the beginning of fall.
Let's see what needs to be done to make sure you stay warm during the cold season.
Do you have a boiler? if so, you need to inspect and test it before turning it on to avoid unpleasant surprises.
What Should a Boiler Inspection Include?
PDF – What Should a Boiler Inspection Include?
Do you have a water heater? If so, it should be also prepared for winter. It may save you money on that winter elecricity bill and prevent from potential troubles.
Many conventional water heaters are set to 140 degrees Fahrenheit by manufacturers and installers. However, most households don't need that high temperature. Consider lowering it to 120F (or lower) to reduce your water heating bill. Lowering it by 20F will save you about 6-10% according to Energy Savers.
Particles and sediment can collect over time in the bottom of your water heater. While sounding pretty innocent, it can hinder its efficiency. To make sure your heater keeps functioning at its best during the cold months, flush the water through the drain valve to clear out the material.
According to the Department of Energy (DOE), insulating your hot water heater reduces your water heating bill by 4% to 9%.
If you have a fireplace, you need to inspect it before the cold weather strikes. Whether you plan to use it or not, you need to make sure it is prepared for the season.
If you plan to use the fireplace, inspect mortar between bricks, tuckpoints, and firebricks.
If you see any open mortar joints or cracked bricks, you need to have them repaired immediately! A fire can easily spread into the stud wall behind the masonry firebrick through such holes and cracks.
How about switching to wood stove?
Is your fireplace a wood burning one? Did you know it is considered to be an inefficient source of heat that can also affect your health? Given all this, you may want to consider switching to an energy efficient wood stove.
United States Environmental Protection Agency (EPA) suggests to buy an EPA certified one for increased efficiency.
…Or considering a fireplace insert?
Instead of a wood stove, you may consider getting a fireplace insert.
Fireplace insert gets installed (or inserted) into an existing fireplace just like a wood stove above can be. The inserts can funtion on various fuel including electricity, alcohol gel and gas, which is the most popular option.
The advantage of a gas insert is that the inserts are a low cost option compared to installing a gas fireplace from scratch while having the same advantage of saving you energy on heating.
If you do not plan to use your fireplace during the cold season, you should make sure it won't become a source of heat leak. To prevent that, you can add glass doors and maybe a piece of fiberglass insulation that can be stuffed behind the glass doors for extra insulation.
…Or seal it off altogether!
Instead of adding glass doors to your unused fireplace, you can choose to seal it off. This is a more permanent fix than just adding glass doors but energy saving benefits will also be higher.
Chimney is a pipe through which smoke and hot air from into the air and is located on the top of your roof. It is an essential part of your heating system and requires regular maintenance and check-ups.
Before you use it on the first cold night, you need to have your chimney cleaned.
It can be done by a professional and it can also be a DYI project if you are comfortable with going up on the roof and performing it yourself. if you decide to hire a professional, keep in mind that chimney cleaners are usually busy during the fall and winter months, so it's better to call early before the cold season comes.
Cleaning chimney does not only increase efficiency of your stove or fireplace, it also adds safety: Dirty chimney with a build-up of deposits and animals nesting is fire hazardous and it makes it unsafe to use.
In this test, you will make sure the chimney will draw up the fire and smoke properly.
You should see the smoke rising up the chimney. If it doesn't, you have an obstruction and need to call a professional in to clean the chimney.
Not actively using it? Plug it up!
If you plan to not use your fireplace and chimney often, plug it up with a chimney balloon. It will help to keep drafts out and heat in! it won't take much time but it is very efficient. Just don't forget to remove it before actually using your fireplace!
If your primary heat source is a furnace, you definitely do not want to put it at risk by not preforming winter-is-coming checks and tests.
If you consider buying a new furnace, be sure to take advantage of federal tax credits, which can cover 10% of cost up to $500 or a specific amount from $50 to $300.
A common recommendation on changing your furnace filters is doing it once per month. However, that depends on may depend on your furnace and the type of filter you are using.
You can consider switching to a permanent filter, which will reduce waste and hassle. You just need to clean it once in a while and it will definitely save your money since you won't need to buy new filters anymore.
Also, a good permanent filter may make the air in your house cleaner.
Did you know that disposable fiberglass filters catch only 10 to 40% of debris? On the other hand, permanent washable electrostatic filters can trap more than twice as much debris, up to 94%. They are much better at suppressing the bacteria, mold spores, viruses, and pollen that can cause illness and allergy.
Another good alternative to regular disposable filters is a HEPA filter. Such filters can remove more than 99% of airborne particles.
However, be aware that you cannot use such filter with a furnace directly. The furnace does not produce an air flow that is strong enough to go through the density if a HEPA filter. You will need to install a separate air filter in your home that utilizes HEPA filtration.
Is your furnace heated by a hot-water radiator system? Bleed the valves by opening them slightly and when water appears, close them. Once in a while, consider flushing your system to clean the pipes up and to improve the flow of water.
Clean the furnace inside by opening it and vacuum-cleaning its guts. Remove all flammable materials away from the furnace before lighting it up for the season.
All the preps you did with the system producing heat in your house won't be enough if you neglect taking care of the radiators, the system that distributes the heat inside your house.
To not hinder the efficiency of the radiators, you should avoid placing large pieces of furniture in front of them. Do it at least in the short-term for the cold season. Otherwise, it will be your sofa and not you getting all warm and cozy in winter.
Don't forget to clean the radiators. Keeping it clean is a simple way to improve their efficiency.
If your radiators are water-based, bleed them to remove air from the system. This will increase the overall efficiency of the heating system and will distribute the heat more evenly in the house.
One way to prevent unnecessary heat loss from radiators, particularly on those attached to external walls, is to use heat reflective aluminium foil behind the radiator. This prevents heat disappearing through the wall by reflecting it back into the room. You can even find foil that is specially designed for the purpose.
Can I Save Money On My Energy Bills And Keep My Home Warm By Putting Tin Foil Behind The Radiators?
Another important part of the process of how to winterize a house is taking care of pipes. Nobody wants to get their pipes frozen in winter. Follow our check-list to avoid that!
If you have any pipes in un-insulated spaces, such as in a basement, crawlspace, attic, outside walls, etc., make sure they are insulated well to prevent freezing. Use at least foam insulation at a minimum and ideally, you should wrap the pipes with electrical heating tape first, then insulate them.
Touch your pipes to check if they are warm or hot. If so, they are good candidates for insulation. You can use pipe wrap for shorter tubes and tubular sleeve for longer ones.
Insulating your hot water pipes reduces heat loss and can raise water temperature 2°F–4°F hotter than uninsulated pipes can deliver, allowing you to lower your water temperature setting.
This helps you save money on heating and also preserve water since you won't need to wait for long to get hot water.
You can use caulk, insulating foam and weather stripping to seal cracks around door frames and windows. According to Energystar.gov, homeowners typically save up to 20% a year on energy costs by sealing air leaks.
Before doing anything, you need to find out where exactly your windows and doors have air leaks.
On a day when it's windy outside, close your windows and doors and move your hand along the windows and doors to check for air leaks.
You can also use an incense stick. Watch the smoke trail going up, and if it shifts to any other direction, you have an air leak. Typically, you can air leaks at the edges where the window or door is hinged but it can also appear in other places if your window or door has cracks.
If your doors are drafty, remove the leaks by weatherstripping on the side and bottom of the doors. Install weatherstripping on any leaking doors. According to the U.S. Department of Energy, drafts can waste 10% to 20% of your energy use.
To fix a door draft under your door, you can simple with adopting an old Great Depression fixture, the draft snake. It's easy to make it yourself: Just place a rolled bath towel under a drafty door!
According to the U.S. Department of Energy, sealing drafts can save you 10%-20% annually on your energy bills. For windows insulation, you can use inexpensive rope caulk.
Check the glass in your windows and replace it if it is cracked or broken. If you end up replacing the entire window, prime and paint any exposed wood.
If you have wooden window frames, it is important to regularly check them for signs of rot or decay. If you see any, repair or replace framing to maintain structural integrity. it is better to do it before winter since the water that spring will bring may worsen the condition.
For just a few dollars, you can get a window insulation kit at your local hardware or dollar store. it's cheap and properly installed window plastic is pretty much invisible.
The bubble-wrap is another way to insulate your window. It will still allow light to come through and you'll be saving some good chuck of warmth. Taping up bubble-wrap can avoid drafts which waste 5 to 30% of energy usage per year, according to the U.S. Department of Energy.
Storm windows can make a big difference when cold winds start blowing. Installation process may be a bit difficult but it is well worth it to install them for the season.
According to Building America Solution Center, installing storm windows results in energy saving from 5% – 20% for a clear storm window to 12% – 33% for a low-e storm window. The average payback of the installation costs is usually 2-4 years.
Several regional utilities offer programs with rebates and incentives for purchasing and installing storm windows. While some utilities may not specifically include storm windows as part of their incentive programs, they may include it under insulation or window categories. Ask your local utility about programs for low-e storm windows and also check energy.gov/savings.
Similarly, you can install a storm door in addition to your regular door. However, it seems that storm doors is not a very energy efficient improvement since the regular doors are already pretty efficient and do not lose too much energy.
Does your basement have windows? Consider protecting the window wells by covering them with plastic shields.
To add an extra insulation layer to your windows, use thick window treatments.
According to energy.gov, some treatments like insulated cellular shades can save about 20% of heating energy. Meanwhile, most conventional draperies can reduce heat loss from a warm room up to 10% . With extra adjustments , it is possible to increase their insulation efficiency up to 25%.
If you feel cold air leaking in, this means that your warm air is leaking outside.
energystar.gov estimates that sealing the leaks around your home can help you reduce from 7% to as much as 20% off your heating and cooling costs depending on where your house is located. It means sealing and insulating makes your home more energy efficient.
Here is an image presenting air flow in a typical 2 store house with a basement. The arrows represent leaking air and show how much you can lose without proper insulation.
check vents and other openings; make sure vents and other openings are closed and sealed tight for cold air infiltration.
check central heating and air-conditioning ducts for air leaks; seal and insulate the ducts that are accessible to you, such as crawlspace, attic, basement, garage, etc.
Insulate around basement doors, windows in unused rooms, window AC units; pack fiberglass foam around them – just remember to wear gloves when working with fiberglass, wear gloves to protect your skin!
Since an insulated house may lose 25% of its heat trough the roof, says Energy Savers, you may want to consider investing into the attic insulation.
To find out how much insulation you need (the R-value) based on your home state, use energystar.gov table. Most homes require R30 to R60 insulation in their attic.
Also, check to be certain that any water pipes or fire sprinkler piping installed in the attic are properly insulated above the piping with a continuous R30 rating.
The R-value is a measure of how well an object, per unit of its exposed area, resists conductive flow of heat: the greater the R-value, the greater the resistance, and so the better the thermal insulating properties of the object.
Install foam-insulating sheets behind outlets and switch plates on exterior walls to reduce heat leaking outside.
Reverse your ceiling fan in winter to make it run at low speed in the clockwise direction.
This makes the warm air near the ceiling go down thus making the occupied space warmer. You will also need to adjust your thermostat when using the fan — this step will result in additional energy and dollar savings!
The gases we are talking about are radon and carbon monoxide.
Radon is a radioactive gas that found naturally in the environment and has no taste nor odor. Humans cannot detect it using only their senses but it is dangerous for us.
Carbon monoxide is produced when fuel is burnt and also has no taste nor odor. It is dangerous for us as well. The level of the gases can increase during the winter months.
In order to stay safe, buy a radon test kit at a local hardware store and a carbon monoxide detector. Already have the detector? Change the batteries!
Make sure to clean your humidifiers including the whole house ones before the season starts. Dont' forget to replace the evaporator pad!
During the cold season, don't forget to let some fresh air in. You can do it by simply opening the windows a bit or just not sealing your house too tight!
Either hire someone to inspect the roof if you are not comfortable safely doing this yourself. If you are, you should wear well-fastened shoes with non-skid soles while inspecting it yourself.
Check the roof for missing or damaged shingles and have them replaced.
Check flashing around chimneys and other roof objects since these are often the source of leaks. Have repairs made, if necessary.
Clean out rain gutters and downspouts to avoid getting ice damps that prevent proper drainage.
Make sure gutters and downspouts are clean. If there are wet leaves remaining in the gutters over winter, it may add significant weight and volume to the gutter when frozen. it increases the risk of damage of your gutters.
Ensure all vents and openings are covered to prevent insects, birds, and rodents from getting inside during the cold weather.
The backyard and garden areas is where you need to concentrate the most of your winterization efforts. After all, everything there is exposed to harsh weather!
You obviously do not want your pool to be damaged during the winter so you should spend some time on winterizing it.
Hot tub: Do you need to winterize it?
If you do not plan to use your hot tub in winter, you need to winterize it to avoid damage to your plumbing.
If you do plan to use it, most likely your hot tub is designed for all-year use and the weatherization improvements are already included in its design. You do need to do winterization only if you plan to leave home for an extended period of time.
Before a snowstorm strikes, you need to make sure you are all ready to fight it properly.
In the garden area, you need to take care of water parts, plants, and outdoor accessories. Let's look at each of these topics.
Have your sprinkler system winterized no later than the end of October. Turn off the water supply and blow compressed air through sprinkler lines to remove water.
Drain your rain barrels if you have any to avoid getting it damaged in freezing temperatures. Also, use this chance to clean it up before the next season.
Before winter comes, prepare your garden for harsh season to avoid damages to plants and even house.
While it is not recommended to prune trees before winter, you still may want to do that. Large branches can potentially fall and knock out power to your home when the weather gets bad. To prevent iced-over or wind-swept branches from causing house damage or a power problem, trim overgrown branches back from the house and electrical wires.
Let's take a look at what can be done for the outdoor amenities and accessories as well as the deck, driveways, and more around the home.
Cold temperatures, snow and ice can damage outdoor furniture and grills. If possible, store them inside, for example, in the garage or basement.
Your gas grill has a propane tank, close the tank valve and disconnect the tank first; it must be stored outside. If you don't have storage room for your items, purchase covers to protect them from the elements. The covers you use in winter will be useful during the other seasons, too.
Clean and cover patio furniture or hide it in a shed or in the garage. Instead of regular covers, you can use shrink wrap to get a better protection. Just keep in mind that you should do it while it's still warm outside – the adhesive tape used in the wrapping does not work well in cold temperatures.
Prepare your gazebo for winter. If you have a soft top gazebo, it is recommended to remove the canopy before harsh weather strikes. If your gazebo is a hard top one, you can convert it into a shed by using a gazebo winter cover.
If you have a wooden deck, clean leaves, dirt, and pine needles between the boards to suppress mold and mildew growth. If your deck needs it, consider giving it a fresh coat of sealer before winter. It will to prevent its deterioration over the winter.
Your driveway and pavers should be winterized, too. Proper sealing before winter will help it to last longer since the sealing will prevent water freezing in cracks and thus destroying your driveway. Also, It is important to take care of safety in winter and reduce the amount of slippery areas around your house.
Make sure that you inspected walk off mats in walking areas and placed the ones that are missing. Also, check handrails on exterior stairs to make sure they're well secured.
Inspect outdoor lighting around the property.
Good illumination will help minimize the chance of accidents on slippery walkways at night. Be sure time clocks and other equipment is functioning properly for lighting and security systems. Don't forget that the end of daylight savings will affect it as well.
To automate your outdoor lighting, you can also opt for motion sensor lights or light activated sensor lights.
Do winterization yourself or hire a professional?
Many utilities offer free annual checkups by qualified technicians. This is great but you should call early to schedule the check in advance of the high season. For example, HVAC crews tend to get a packed schedule when heating season starts.
Some furnace manufacturers and dealers also offer free or discounted inspections. You should also call them in advance!
The contractor must be properly registered with the proper body or registry in your state. To find out what body is responsible for it, type "how to check if a contractor is registered <your state>" in Google search where <your state> should be replaced by the name of the state you live in.
Ask the contractor for at least three references and check to see if there are any complaints against the contractor. Again, you will need to find the body that is responsible in your state for monitoring the contractor complains. You may also want to check the complaint history with the Office of the Attorney General of your state and the Better Business Bureau.
Consider making a contract with your contractor no matter what is the price of your project.
[…] homeowners and contractors should consider having a contract for every job, regardless of the price.
In order to understand what to include into the contract, see this example list from the Office of Consumer Affairs and Business Regulation.
It is recommended to pay no more than one-third of the cost of the contract up front. You can make an exception and pay more in the case when special-order materials are needed to be ordered.
If you plan to apply for one of the incentive programs offered either by the federal government or local one, make sure you hire a suitable contractor. Many state and federal incentives require that the work be done by a certified contractor—so check the rules before hiring anyone. If you need to find an ENERGY START credentialed contractors, check the list on their page.
And the last but not the least tip is to prepare for emergency. Did you know that FEMA recommends everyone to be prepared for emergencies?
The guide has been designed to help the citizens of this nation learn how to protect themselves and their families against all types of hazards. It can be used as a reference source or as a step-by-step manual.
In winter, anything can happen and bad events will be only magnified by bad weather. To be fully prepared, consider assembling an emergency kit and preparing an emergency plan that will allow you to act calmly and safely in the case of unfortunate events.
An emergency kit is also called a 72 hour kit since it is usually allows to survive for 3 days. Once prepared, you should store it in a dry and easy-to-access location.
Check the links below for more ideas what your emergency kit should have.
Often overlooked, it's smart to prepare a plan in the case of an emergency. One of the things I did at home when I was preparing such plan for my family was writing down our emergency plan and letting everybody know where it was stored. Another thing I did was finding the phone numbers for our utility companies and put them in the Contacts section of my cell phone.
After reading our ultimate guide, you now know what it takes to prepare your home for the season inside and outside! We tried to collect as much information as possible to make this article useful.
The subjects we covered included heating, pipes, roof, garden, backyard, and more! I hope you liked our ultimate guide about how to winterize a house. Let us know in the comments what you think! Also, share the guide on your social media!


Good Soup for a Bad Day with roasted chicken, ancient grains & winter vegetables.
This was one of those dishes that you have to be brave about, because visually it's a little off-putting, but flavour-wise it was surprisingly better than expected... but only just. There's a lot going on in this soup and unless you are prepared for it, it may be a little confusing and overwhelming.
Personally, I think it could have done without the mushrooms, but that's just me - I'm not a fungi-guy really. Never acquired the taste for them and while I can tolerate them as an ingredient, if they become too prominent the whole dish suffers in my view. Still, for some, this may be a highlight so I leave it to you to decide for yourself if the flavour is too much or not.
Texture-wise this was bordering on a broth - thicker and chunkier than a soup by my reckoning, but not chunky enough to be a stew. Personally, I hate to admit but I was not a fan.
Overall, this is one I probably will not be buying again. It had too much going on, and by the time I got to the end of the pot I was quite happy to be finished it.
This was the second Tasty Pot I received for review and when I saw that I had been chosen for this, I was really excited. I really LOVED the name - it is very relate-able and something I would take a second look at in the supermarket. I like the colour and It initiates the thoughts of warmth and sitting next to the fire with granny's home made soup.
Thankfully it tasted better that it looked. It was subtle, but on a snowday (which it was today) it was much welcomed by my belly. The texture was a little odd and the veges a little mushy, however keeping in mind its healthiness, it is a winner in my opinion.
It is a little more on the expensive side, however the serving size is awesome and you would get two lunches with this. It was awesome with cheese rolls added on the side and dipped in! A southern speciality! I'm not sure I would buy this again because of the price and others on the market being a little cheaper, but it is a great competitor and I hope it comes on special at our local New World so I can try the Kumera and Coconut soup.
I was very lucky to be given the chance to review three of the different tasty pot meals. This would have to be my least favourite out of the three of them unfortunately. I was intrigued when reading the name "good soup for a bad day" and it immediately had my mind boggling about what flavour it could be.
I was interested to read on the back of the packet that it was 100% natural ingredients and gluten free. Most soups on the shelf have gluten in them so its nice to see an allergy friendly soup.
I poured my soup into a bowl before heating as I don't like having plastic in my microwave. I was astounded by how thick and lumpy the soup was and how many vegetables and chunks of chicken were actually in it. The colours of the grains weirded me out a wee bit and made me feel a bit iffy about wanting to try it. I like chunky soups but was unsure as to how the texture of the grains would go.
After heating I was impressed with the smell, it was a nice strong smell of chicken but it was enough to make my mouth semi water. My first spoonful was great but the grains/lentils just didn't do it for me. I managed to eat the entire soup but I wouldn't rave about it like the other two flavours. Flavour was amazing, smell amazing but the grain texture is just not for me. Maybe if the grains were blended or a bit softer it might have changed my mind and just blended in with the vegetables instead of sticking out.
All in all a good soup but not as amazing as the other two flavours I got to try.
When I grabbed this off the shelf I really wasn't too inspired by it and given a choice, based upon looks, I wouldn't have bothered trying this but given that I needed to review it I bit the bullet and finally sat down to eat it. I followed the instructions on the back of the pot on how to heat this on the stove top and soon enough it was bubbling away, my husband and I both agreed that there was a strong smell of the cream but not much else. One thing that we did notice was that there were a couple of big chunks of mushroom and leek, which didn't really fit in with the rest of the dish.
My husband decided that this looked very unappealing, I won't give details, but none the less I had to tell him to shut up before me off even giving it a try. I split it with my husband and we both dug in, despite the concerns about how it looked. The grains add a bit of an odd texture to it but we adapted to that soon enough and I could tell that there was kumera in it by the slight texture, I usually cannot stand kumera (because of the texture) but it was tolerable in this soup and it didn't take long for either of us to finish our share.
A nice soup once we got over the appearance and the grains but I'm not sure we'd buy it again.
The name is a bit of an odd choice. If asked to guess the flavour of soup from "Good Soup for a Bad Day", one would generally pick the classic chicken soup, and yet it still seems a very subtle title. Of course closer inspection mentions "roasted chicken, ancient grains, & winter vegetables", but it still didn't catch my eye, when I was scanning the shelves in the supermarket.
I quite like the labelling on the product with its humourous additions to the heating instructions, and use of asterisks ("*"). I was a bit unsure of the clear packaging. Despite knowing it is a soup, it looked less than appetizing when viewed from the outside and looked half empty; but that was just a trick of the packaging.
Today I ended up doing heavy manual labour in freezing rain. So when lunchtime came around, I was looking forward to something hot and filling. The heating instructions were very straight forward, and mention caution as the packaging is hot after heating. It is important to also mention that due to the shape of the lid, it may also drip onto you if you have to carry it a distance after opening and heating.
I still didn't think that it looked the most appetizing once heated (infact it looked more like a passionfruit sauce), but this is due to the consistency of the product. I generally prefer a thicker chunkier soup. This product is more watery; it still has chunks of meat and vege, but because of the consistency, they sink to the bottom of the packaging. There are a large number of ingredients, but they are all present in small volumes. I am not a fan of pumpkin, but it is present in small amounts to not ruin the flavour for me.
The flavour was not strong, but rather subtle. There was no ingredient that really took the main stage with taste. But it was still nice, and surprisingly filling. I'd have no problem with having this product again, but probably wouldn't be looking for it specifically, unless I was feeling sick and needed a easy to prepare chicken soup.
Good soup for a bad day, I was sold on it as soon as I saw the name this was one I just had to try. What a better day to try it then one where it's freezing cold and pouring rain!
On reading the ingredients list I was pleased to see once again as promised the list was made up of 100% natural ingredients. Reading the ingredients it had everything included to make for one very tasty soup. it was so easy to throw in the microwave and heat, by the time my toast was ready so was the soup.
Opening it up the smell was wonderful stirring it up I could see the big chucks of chicken and veges, there was also lots of grains in it. On the first bite I was a bit unsure the flavour was great and what you would expect from a full bodied chicken soup but the grains were an odd texture. However after the first few spoonfuls I got used to the texture of the grains in the soup and I was sold. It reminded me more of a decent home made soup then a mass produced soup. The chucks of roasted chicken was my favourite part of the soup and they was plenty of in mixed through.
I will be buying A good soup for a bad day again for sure, perfect winter pick me up!
Bioglan Kids Smart Trio contains 3 different, deliciously wild fruit flavours, all in one pack. Great for kids who love exploring new flavours, or families with kids who have different taste favourites - Bioglan Kids Smart Trio keeps everyone happy!
Experiment and explore which flavours you like best.


text:
Connecting with Teens at John Bartram High School
Shortly after Principal Brian R. Johnson arrived at John Bartram High School in fall 2019, he had an aha! moment. After looking into the school's data provided by the district, Johnson saw that no one in this southwest Philadelphia school – located in a high poverty community and with sky-high absenteeism – was paying attention to attendance.
Over the next two years, Johnson developed a school attendance team, identified and trained an attendance designee, hired key support staff, and used data to educate, motivate and lead a school-wide effort that improved the attendance rate by 8 percentage points, from 72% to 80%. The first step was improving the school climate and addressing the high number of suspensions. "Our attendance is better this year than last year, and I think that is because of the work that we are doing and how focused we are," Johnson said.
Begin with a team
Johnson already knew the importance of attendance to student academic achievement. In 2016, he was part of the Philadelphia team of educators who participated in the National Success Mentors initiative, an effort to connect over one million students who are, or at-risk of becoming chronically absent with trained, caring adults and near-peers at school.
Once he ran Bartram's attendance data, he realized that any effort in this school of 400 students to increase academic achievement would be unsuccessful if students were not attending. The school's student population is predominantly African/African American – with a large number of African immigrant families – and a small group of Central American immigrant families.
Johnson reviewed the data every day for his first two weeks, then quickly called in the school staff to review the numbers twice weekly for about one month.
The staff didn't initially understand why they had to look at the data, Principal Johnson said. "It took some time to galvanize momentum, because this was a foreign concept in this space," he said. "No one had ever talked about it before." The only attendance issue that was dealt with then was students who weren't in a class. This was handled not from an attendance perspective, but rather as a discipline issue, because the kids were in the hallways.
In late October, the principal saw that school Climate Liaison Simone Knight was interested and was beginning to understand the issue, and asked her to be the school's attendance designee who could help co-lead the work with him. Knight now plays a huge coordinating role implementing systems for monitoring group and individual student data and a multi-tiered support system.
Improve the school climate
Simone began working closely with Shirley Carroll*, the District of Philadelphia attendance coach, who had been examining the data looking for trends, such as whether specific groups of students had similar attendance patterns, and bringing her observations to the principal's attendance team. The team realized that the school's climate wasn't welcoming, and didn't focus on relationship building or connection. They launched incentives and positive acknowledgement, including using social media, to help create a positive school climate and support students with satisfactory attendance (missing less than 5% of school).
Students with at-risk attendance (missing 5-10% of school) received a more personalized approach with staff check-ins. For kids who were chronically absent (missing 10% or more of school), Knight organized traditional student attendance improvement conferences. She invites families and guardians to the conferences, as well as school counselors and school climate coaches, and she keeps teachers informed about what gets decided and put in place.
Johnson and the school team trained the school climate support staff who work on an hourly basis, and they reviewed the attendance numbers every day. The climate managers were trained to provide outreach to students and families and to connect them back to school. School staff also participated in professional development to encourage relationship building and greetings at the door.
Address suspensions
In the meantime, school Climate Manager Julian Graham, started in on improving the school climate and reducing suspensions. "The first thing I did was assess the environment and understand the element that I was in," Graham said. He began building relationships with students and looked at the offenses for which they were being suspended. In some cases, he visited student homes.
The school eliminated suspending students for minor offenses and took a restorative approach that allowed the students to own their behavior and, in many cases, the consequence for this behavior. Graham also saw that he was able to gain parent involvement with the restorative approach.
The school designated one room as the Student Success Center for students with minor suspension offenses, creating a space for learning during an in-school suspension. Graham says Bartram now focuses on major offenses that carry a suspension, and the school team is working diligently to curb these types of actions through community partner engagement.
Another special focus is on each year's incoming ninth grade students, who often struggle with a new environment and academic load, leading to low attendance, research shows. At Bartram, ninth graders had the second lowest attendance in the school. The new Ninth Grade Academy helped to set the school's expectation for strong attendance, and Johnson has designated a climate manager to focus on this grade. This past school year the freshman class had the best attendance in the building, with a greater than 95% attendance rate, an increase of 6.8% from the pre-covid 2019-20 school year and by 19.2% from the 2018-19 school year. Additionally, last year freshmen had 87.2% average daily attendance (which is 2% above the district average), Johnson said. These improvements increase the number of students on track to be college and career ready, he added.
A successful tier 2 strategy at Bartram is known as the Front Door, where a teacher who has a relationship with a student schedules time to have a conversation. Assuming the student is open to talking, the teacher slowly brings in other people to support the student and help overcome barriers to attendance and achievement. Originally, the Front Door was created for incoming ninth graders, but the school expanded this to other grades. The Front Door is now part of the ongoing advisory infrastructure already in place for every Bartram student.
Lessons from Covid-19
When Covid-19 arrived last spring, staff focused on maintaining engagement and attendance while classes were fully remote. They called families, again and again, until they connected. "We continually reached out to students and families in many different ways, and we met them wherever they were, so that families felt comfortable with our support," Johnson said.
The school made sure that each enrolled student had a working computer, which was provided by the district. Still, the school is located in an underserved community, so internet access wasn't always available. Bartram staff created a "tech team" and got to work. They developed a partnership with Comcast, then helped families to settle outstanding internet bills, overcome language barriers and whatever else it required to establish connectivity for school families. The school arranged a personal hotspot for one student who was experiencing homelessness during the pandemic. She was able to keep up with her school assignments and was named valedictorian at the end of the year, Johnson said.
A new strategy implemented during the pandemic significantly improved the climate. Known as Critical Conversations, the approach helped to build relationships, especially with kids who are having attendance challenges. Facilitated by Brian L. Johnson, Climate Manager, (who has the same name as the school principal), Graham and other climate team members, the discussions began with a written format, and students were encouraged to speak openly and to ask questions. The talks eventually moved into hard conversations for the students, including about gang issues happening at school and in the community and the deaths of George Floyd and Briana Taylor. "We are unusual in that we have many Black men working at the school as staff," he said. "Both boys and girls said they were asking questions they felt they couldn't ask other people, because they don't see people who looked like them, or like us."
Principal Johnson continued to make use of student level data during the pandemic to motivate teachers and help engage students in learning. Staff began identifying students who were at risk of being chronically absent, and developed an attendance plan for them. One goal of these plans is to build students' understanding and accountability around their own attendance and connect that with short-term and long-term success in school, said Jennifer Reed, Assistant Principal. This approach was especially helpful for the students who transferred into Bartram. "We had really frank and honest discussions with them about what we can do to support them to make sure that regular attendance is part of what happens," Principal Johnson said. Of the approximately 32 students who transferred this past school year, only one was referred for truancy services, he said.
Back to school this fall
This fall, whether students are virtual or in person, the school will continue to build an attendance culture that connects students and families with the school, and shares the message that regular attendance keeps students on track academically. The upcoming school year will kick off with an orientation for every student, and plans are underway to build capacity with student leaders, so those who have been at the school help with new students. Bartram will use a new Positive Behavioral Interventions and Supports (PBIS) framework in the fall, with an eye towards keeping students at the center.
The Front Door will continue for all students, and staff will keep up Critical Conversations. These Critical Conversations opened the school door to students in a way that encouraged trust and bridged the gap between the kids and the school staff, Climate Manager Johnson said. "I think this also helped attendance, because the kids began to understand that we really do care about them," he added.
* Shortly after this blog post was published, we learned that Shirley Carroll had passed away. We dedicate this post to Shirley in honor of her compassion, caring and commitment to all of the students that she had the opportunity to serve.
Attendance Awareness Campaign
Blog Articles From 2017
Attendance Works in the News
News Articles from 2021
Attendance Awareness Campaign Newsletters
Join our newsletter for tips, resources and news.
State * AlabamaAlaskaArizonaArkansasCaliforniaColoradoConnecticutDelawareDistrict of ColumbiaFloridaGeorgiaHawaiiIdahoIllinoisIndianaIowaKansasKentuckyLouisianaMaineMarylandMassachusettsMichiganMinnesotaMississippiMissouriMontanaNebraskaNevadaNew HampshireNew JerseyNew MexicoNew YorkNorth CarolinaNorth DakotaOhioOklahomaOregonPennsylvaniaRhode IslandSouth CarolinaSouth DakotaTennesseeTexasUtahVermontVirginiaWashingtonWest VirginiaWisconsinWyomingOutside of U.S.
Role * AdministratorAdvocateGovernmentHealthParentPhilanthropistPractitionerResearcherTeacher
Grade Level * Pre-kK-23-5Middle schoolHigh schoolAll grades
Place of Work * LocalStateNationalAll levels

redpajama_set_name: RedPajamaCommonCrawl


text:
Mr. Meeson"s Will
by H. Rider Haggard
Published: June 30, 2004 Pages: 172 Downloads: 308
General & Literary Fiction,
Fiction - General,
Sir Henry Rider Haggard () was an English author of adventure novels set in exotic locales, predominantly Africa. King Solomon's Mines, one of his best-known books, details the life of the explorer Allan : A History of Adventure followed, introducing the character Ayesha. While much of Haggard's reputation stems from those two books and their subsequent series, he Pages: The article reviews the audio book "She: A History of Adventure," by H. Rider Haggard. Adventures in the Marketplace with H. Rider Haggard: Author-Publisher Relations in Mr. Meeson's Will. ALLEN-EMERSON, MICHELLE // English Literature in Transition, ;, Vol. 57 Issue 4, p Mr. A is a fictional comic book hero created by Steve most of Ditko's work, the character of Mr. A remained the property of Ditko, who wrote and illustrated the stories in which the character appeared entirely character first appeared in Wallace Wood's witzend #3 ().. Ditko has been quoted as saying that his creation, The Question, is a comics-code acceptable Created by: Steve Ditko. All the books provided by Mr. Book's Club are selected among nationwide recommended lists such as states' reading lists, award winning books, America librarian's picks, and so on. Mr. Book's Club provides members with packets consist of a variety of books based on proper levels, various genres, and enough quantities so that all members of our club can read lots of essential books for.
Great deals on Antiquarian & Collectible Books in Danish. Get cozy and expand your home library with a large online selection of books at Fast & Free shipping on many items! Mr. Was was not conceived and written as a "kids book." I originally wrote the book for an adult audience, and as such it is quite complex both in terms of its narrative structure and . Published on Ahead of her memoir, "Becoming," the former first lady takes ABC News' Robin Roberts back to the Chicago neighborhood where she learned the . Download Free Pdf Books on 8freebooks or also known as One of the best ebooks site to download. Fiction, Non Fiction, Biographies, Autobiography, Novels, Adult ebooks, Young Adult Pdf Collection.
Mr & Mrs Smith Booking Terms & Conditions. These Booking Conditions, together with our privacy policy and any other written information we brought to your attention before we confirmed your booking, apply to your booking with Smith Global Ltd, a company registered in England and Wales under company number , whose registered office address is at The Shepherd's Building, Rockley Road.
Cook-chill catering
The Query
Verse Choir Technique
The Swedenborg concordance.
Final report to the Legislature
The pursuit of harmony
The Servant Of God, Mary Theresa Countess Ledochowska
present state of England in regard to agriculture, trade, and finance
effect of low birthweight on the health, behavior, and school performance of school-aged children
English romantic poetry
9/11 Revealed
A manual for biomaterials
Tables for regional and local isostatic reduction (Airy system)
Cautious, Belfast
Dot on men
Indian Economic Development and Indian Financing Act
Max Miller: the cheeky chappie
A descriptive catalog of selected aerial photographs of geologic features in areas outside the United States
Mr. Meeson"s Will by H. Rider Haggard Download PDF EPUB FB2
"Mr. Meesan's Will" was published in "The Illustrated London News" in June and as a stand-alone novel the following year. The book is relatively short for a Rider Haggard work. It may have been well known in its time, Mr.
Meesons Will book an early silent movie was based on the story; but it is little known or read by: 5. Mr Meesons Will book. Read 15 reviews from the world's largest community for readers. S'o (Alone), published in Paris inis a collection of poems /5(15).
This book contains H. Rider Haggard's novel, "Mr Meeson's Will". It Mr. Meesons Will book based on a famous anecdote of the time and tells the story of Mr. Meeson, the wealthy proprietor of a publishing house, and a young writer named Augusta Smithers. Smithers boards a steamer bound for New Zealand in an attempt to make a new start - only to find that /5(17).
Inside Mr Meesons Will by Henry Ryder Haggard PDF Guide. Inside this Guide – I first discovered this title whereas doing analysis for my year-long challenge of studying within the space of the historical past of thriller/crime/detective fiction, however it didn't take too lengthy to appreciate that this e book actually didn't match into that class.
MEESON'S WILL, A NOVEL, DOCTOR THERNE Author H. RIDER HAGGARD Illustrator ILLUSTRATED FRONTISPIECE Format/binding Hardcover Book condition Used - Very Good Quantity available 1 Binding Hardcover Publisher P.
COLLIER & SON Place of Publication NEW YORK Date published Keywords SCIENCE FICTION, H. RIDER HAGGARD Bookseller catalogs. "Now mark you, my masters: this is comedy."-OLD PLAY. Everybody who has any connection with Birmingham will be acquainted with the vast publishing establishment still known by the short title of "Meeson's," which is perhaps the most remarkable institution of the sort in Europe.
There are-or rather there were, at the date of the beginning of this Price Range: $ - $ Mr. Meeson's Will is the story of mean Mr. Meeson, the greedy and wealthy owner of a publishing house.
Augusta Smithers is a young writer who enters into an unfair contract with Meeson. In order to make a fresh start she boards a steamer bound for New Zealand only to Brand: CreateSpace Publishing. Meesons Will By H. Rider Haggard. 2 MR. MEESON'S WILL BY H. RIDER HAGGARD. 3 CONTENTS.
CHAPTER I. AUGUSTA AND HER PUBLISHER CHAPTER II. HOW EUSTACE WAS DISINHERITED published price of the book, was submitted to you, and, had you accepted it, you would, doubtless, have realized a larger sum," and Mr.
Meeson. "Mr. Meesan's Will" was published in "The Illustrated London News" in June and as a stand-alone novel the following year.
The book is relatively short for a Rider Haggard work. It may have been well known in its time, and an early silent movie was based on the story; but it is little known or read today/5(11).
translation of my book, which you persuaded me to leave in your hands, for £14; out of which I am to receive £3 1s.?" "Yes, Miss Smithers. Will you be so kind as to sign the receipt; the fact is that I have a good deal of business to attend to." "No, Mr.
Meeson," suddenly said. Meeson's Will is the story of mean Mr. Meeson, the greedy and wealthy owner of a publishing house. Augusta Smithers is a young writer who enters into an unfair contract with Meeson. In order to make a fresh start she boards a steamer bound for New Zealand only to find her enemy is on the same ship.
Free kindle book and epub digitized and proofread by Project by: 5. Meeson's Will by Henry Rider Haggard.
Free audio book that you can download in mp3, iPod and iTunes format for your portable audio player. Audio previews, convenient categories and excellent search functionality make your best source for free audio books.
Download a free audio book for yourself today. All the download links have expired. Please fix it asap Ap - pm by sr Find Mr Meeson's Will by Haggard, H Rider at Biblio.
Uncommonly good collectible and rare books from uncommonly good booksellers. Book digitized by Google from the library of the University of Michigan and uploaded to the Internet Archive by user tpb. Book ExcerptNew Zealand, whither circumstances prevented him from following her, without leaving a word or a line, or even an address behind her.
It was too bad. Well, there was no remedy in the matter; so he walked to the railway station, and groaned and swore all the way back to London. MEESON'S WILL totally changed my mind. Boock"s Business Education and Somputer Science Page.
I can be reached during any school day from Am to AM by calling () Extension and from AM - PM at (). "Yes," said Mr. Tombey, "I fancy you will find it take a lot of choking; and now, Mr. Meeson, with your permission I will say a word, and try and throw a new light upon a very perplexing matter.
It never seems to have occurred to you what an out-and-out blackguard you are, so I may as well put it to you plainly. If you are not a thief, you are, at. Meeson, Lady Holmhurst." Eustace bowed, and put his hat down on the butter-dish, for he was very much overcome.
"I hope that I have not come too early," he said in great confusion, as he perceived his mistake. "I thought that you would have done breakfast." "Oh, not at. Grant as Prayed Rider Haggard. ACCORDINGLY, Augusta was sworn, and Eustace observed that when she removed her veil to kiss the Book the sight of her sweet face produced no small effect upon the crowded court.
Then James began his examination in chief, and, following the lines which he had laid down in his opening speech, led her slowly, whilst. Meeson's will by Haggard, H. Rider (Henry Rider), Publication date Publisher Borrow this book to access EPUB and PDF files.
Books to Borrow. Books for People with Print Disabilities. Internet Archive Books. Scanned in China. Uploaded by Tracey Gutierres on J SIMILAR ITEMS (based on metadata) Terms of Pages: The Odyssey PDF by Homer [Free Download]--Download The Odyssey PDF by Homer.
The Odyssey is a sonnet of brutality and the repercussions of war; about riches, destitution, and influence, marriage and family, explorers, friendliness, and the. London: Spencer Blackett, Classic Literature FIRST EDITION, Later issue without publisher's advertisements at rear. Octavo 23 x 16cm, pp With 16 engraved plates, including a frontispiece.
Publisher's red cloth stamped in black and gilt to spine and upper board. All edges untrimmed, black coated endpapers. Textblock shaken, light, very occasional spotting.
Buy Mr. Meeson's Will (Dodo Press) by Haggard, H. Rider from Amazon's Fiction Books Store. Everyday low prices on a huge range of new releases and classic fiction/5(13). meeson's will by h. rider haggard contents. chapter i. augusta and her publisher chapter ii. how eustace was disinherited chapter iii.
augusta's little sister chapter iv. augusta's decision chapter v. the r.m.s. kangaroo chapter vi. tombey goes forward chapter vii. the catastrophe chapter viii.
kerguelen land chapter ix. augusta to the. I have a book Mr. Meesons Will by, HAGGARD not in ment condintion but still readable. also I have A and Dime detective also not in ment condintion, but readable.
also A THANKSGIVING NAPKIN WITH MENU ON IT FROM TROUP H 8th U. S CALVERY FORT BLISS TEXAS. NOT MENT HAS ALL THE NAME'SXXXXX AND THE MENU.
THANK U, JAY. The book is about Mr McGee, who lives in the outdoors, with his sleeping and dining places in the shade a big apple tree. He rises, eats an apple, inflates, and floats above the town until a bird pecks him, he deflates and lands back where he started/5. Ele Bele PDF book by Suchitra Bhattacharya.
Golposangraha By Sharadindu Bandyopadhyay. Khata By Rabindranath Tagore. After Dinner Story By William Irish. Selam Professor Shonku By Satyajit Ray.
Ekadoshi Boiragi By Sarat Chandra Chattopadhyay. Prio Golpo By Buddhadeb Guha. Ea Porobase PDF book by Suchitra Bhattacharya. Mr. Meeson's Will | H Rider Haggard | ISBN: | Kostenloser Versand für alle Bücher mit Versand und Verkauf duch Amazon/5(12).A literary criticism of the book "Mr.
Meeson's Will" by H. Rider Haggard is presented. It claims that the novel represents a dramatization of author-publisher relations in the early part of Haggard's career as a struggling author victimized by a greedy publisher.
It talks about issues including the objectification and punishment of the female.Spine and cover stamped in black and gold. Black coated endpapers. First British edition in book form. With inserted page publisher's catalogue dated October Book Condition: Very Good: A firm copy.
Darkened spine cloth, slight fade to spine gilt. Rubbed edges. Bright cover gilt and Rating: % positive.