ember-form-validation
This README outlines the details of collaborating on this Ember addon. The Ember Form Validation addon that can be used as a mixin inside of a component or route that allows for an object to be passed in to validate a form
Installation
ember install ember-form-validation
Repository
Usage
Basic Usage
The form validation is a mixin that can be used by importing it from the addon and including in a component:
import Ember from 'ember';
import formValidation from 'ember-form-validation/mixins/form-validation';
export default Ember.Component.extend(formValidation, {
...
})
Within the definition for the component, you should use a property validate
that is
an object containing a property form
that is a nested object. Each property Each
property in form
should correspond to a property you would like to validate on your
actual form. For each of these properties, this is where you can specify the criteria
for validation.
Example:
export default Ember.Component.extend(formValidation, {
validate: {
form: {
// The form property we should be evaluating here is name
name: {
required: true,
format: 'word',
// Your defined basic default error message
message: 'Name error',
// A more specific message tailored to the 'required' test
requiredMessage: 'You must enter a name'
},
age: {
required: true,
format: 'number'
message: 'Age error'
}
...
}
}
})
Validate also allows for custom validations, which will be covered below.
When validating a form, the mixin wants you to either define a form
object that
contains all of the form's values to be tested. By default, the validation will
expect all the form values in a property on the component called form
. However, in
the validate
object, you can specify a different property name called formName
.
Further, if you would like to keep the form properties as separate properties on the component instead, then before calling the validation action you can simply gather all the properties into an object and pass it into the validation action as an argument.
Default Use Case:
export default Ember.Component.extend(formValidation, {
validate: {
...
},
form: {
// This name property corresponds to the same property inside the validate.form
// object
name: 'value goes here',
age: 24,
...
},
...
actions: {
yourAction() {
// This will actually call the validation function
this.send('validate_form_action');
}
}
})
Custom Form Property Case:
export default Ember.Component.extend(formValidation, {
validate: {
formName: 'customName',
...
},
customName: {
name: 'value goes here',
age: 69
},
...
actions: {
yourAction() {
this.send('validate_form_action');
}
}
})
Pass in Form Use Case:
export default Ember.Component.extend(formValidation, {
validate: {
form: {
name: {
...
}
},
actions: {
yourAction() {
const form = {
name: 'name value',
age: '42'
}
this.send('validate_form_action', form);
}
}
})
After running validate_form_action
, the first error that appears for each property
will be written onto a property validationErrors
. Priority for validation errors is
- required error
- custom specified format error
- basic format error
- extra validations error
These can then be accessed by calling the same property name as the one being tested
from the validationErrors
object, or as a list of errors from the
validationErrorsList
property.
A basic way to use this can be to use helpers on the template file to display the messages if they exist:
// template.hbs

<form>

Name: {{input value=form.name}}

{{validationErrors.name}}

Age: {{input value=form.age}}

{{validationErrors.age}}

Birthday: {{input value=form.birthday}}

{{validationErrors.birthday}}

Current Day: {{input value=form.currentDay}}

{{validationErrors.currentDay}}

</form>

Or to display them as a list of errors at the top of the form:

{{#if validationErrorExists}}
{{#each validationErrorsList as |exampleError|}}

{{exampleError.property}}: {{exampleError.message}}

{{/each}}
{{/if}}
<form>

Name: {{input value=form.name}}

Age: {{input value=form.age}}

Birthday: {{input value=form.birthday}}

Current Day: {{input value=form.currentDay}}

</form>

Note that validationErrorExists
is another property that is a boolean to simply
detect whether an error was found in the latest run of the validate_form_action
.


Last modified 28 March 2017
I recently attended the Heidelberg Laureate Forum, in which some older researchers--mainly Fields Medalists and Turing Award winners--talked to and with young researchers. The young researchers ranged from a few students just entering university to young faculty members, most being graduate students. They came from all over the world and were about evenly divided between mathematicians and computer scientists. There was a rigorous selection process, and almost all the young researchers seemed to be very intelligent.
In my talk I presented a formula that I said was the definition of "the set of all permutations from 1 to N" [sic]. I had already explained that [1..N ⟶ 1..N] is the set of functions that map the set 1..N of integers from 1 through N into itself, and that I was writing f[x] instead of f(x) to mean function application. Here's the formula, about how it appeared on my slide:
I then asked the audience to raise their hands if they could look at this formula and understand it. About half the audience raised their hands. I then asked all the mathematicians to lower their hands. Almost no hands remained up. Hardly any of the computer scientists could understand it.
Remember, these were specially selected, bright young researchers from around the world.
This may explain why TLA+ is not more widely used, and why it should be.
Click here to see a video of my talk. The relevant part starts at 15:00 and lasts about 2.5 minutes; you can go directly to that part by clicking here.


Value Members
-
def
!=
(arg0: AnyRef): Boolean
-
def
!=
(arg0: Any): Boolean
-
def
##
(): Int
-
def
==
(arg0: AnyRef): Boolean
-
def
==
(arg0: Any): Boolean
-
def
asInstanceOf
[T0]
: T0
-
def
canEqual
(arg0: Any): Boolean
-
def
clone
(): AnyRef
-
def
collectBodyParameters
(arg0: HttpRequest, arg1: HttpParameters): Unit
-
def
collectHeaderParameters
(arg0: HttpRequest, arg1: HttpParameters): Unit
-
def
collectQueryParameters
(arg0: HttpRequest, arg1: HttpParameters): Unit
-
def
completeOAuthParameters
(arg0: HttpParameters): Unit
-
-
def
eq
(arg0: AnyRef): Boolean
-
def
equals
(arg0: Any): Boolean
-
def
finalize
(): Unit
-
def
generateNonce
(): String
-
def
generateTimestamp
(): String
-
def
getClass
(): java.lang.Class[_]
-
def
getConsumerKey
(): String
-
def
getConsumerSecret
(): String
-
def
getRequestParameters
(): HttpParameters
-
def
getToken
(): String
-
def
getTokenSecret
(): String
-
def
hashCode
(): Int
-
def
isInstanceOf
[T0]
: Boolean
-
def
ne
(arg0: AnyRef): Boolean
-
def
notify
(): Unit
-
def
notifyAll
(): Unit
-
def
productArity
: Int
-
def
productElement
(arg0: Int): Any
-
def
productIterator
: Iterator[Any]
-
def
productPrefix
: String
-
def
setAdditionalParameters
(arg0: HttpParameters): Unit
-
def
setMessageSigner
(arg0: OAuthMessageSigner): Unit
-
def
setSendEmptyTokens
(arg0: Boolean): Unit
-
def
setSigningStrategy
(arg0: SigningStrategy): Unit
-
def
setTokenWithSecret
(arg0: String, arg1: String): Unit
-
def
sign
(request: WSRequest): Unit
-
def
sign
(arg0: String): String
-
def
sign
(arg0: Any): HttpRequest
-
def
sign
(arg0: HttpRequest): HttpRequest
-
def
synchronized
[T0]
(arg0: ⇒ T0): T0
-
def
toString
(): String
-
-
def
wait
(): Unit
-
def
wait
(arg0: Long, arg1: Int): Unit
-
def
wait
(arg0: Long): Unit
-
def
wrap
(request: Any): HttpRequest
Deprecated Value Members
-
def
productElements
: Iterator[Any]
Inherited from Serializable
Inherited from Product
Inherited from Equals
Inherited from AbstractOAuthConsumer
Inherited from OAuthConsumer
Inherited from Serializable
Inherited from AnyRef
Inherited from Any
A signature calculator for the Play WS API.
Example:


-
CoolPenguin123
Share a time you’ve experienced prejudice due to your gender, what is your take on sexism in America?
I do not consider benevolent sexism a good thing, for despite the positive feelings it may indicate for the perceiver, its
underpinnings lie in traditional stereotyping and masculine dominance (e.g., the man as the provider and woman as his dependent),
and its consequences are often damaging. Benevolent sexism is not necessarily experienced as benevolent by the recipient. For example,
a man’s comment to a female coworker on how ‘cute’ she looks, however well-intentioned, may undermine her feelings of being taken seriously as a professional.
-
Trump2k17
What's most memorable experience at a restaurant?
One day I felt bourgeois so I went to a resturant and it was really expensive but I thought it was worth it. When I went there I took a seat and waited for the waiter to come like any other
restaurant but I when a mascot came out in a penguin costume I was suprised because I didn't expect it and it made the whole experience a lot more memorable.
-
SUS_OWL
What is was your worse experience at a restaurant?
One day I felt bourgeois so I went to a resturant and it was really expensive but I thought it was worth it. When I went there I took a seat and waited for the waiter to come like any other restaurant but I when a mascot came out in a penguin
costume I was suprised because I didn't expect it and it made the whole experience a lot more memorable.
-
RedPwanda034
Is sexual orientation determined at birth?
No one knows what causes heterosexuality, homosexuality, or bisexuality. Homosexuality was once thought to be the result of troubled family dynamics or faulty psychological development. Those assumptions
are now understood to have been based on misinformation and prejudice. Currently there is a renewed interest in searching for biological etiologies for homosexuality. However, to date there are no replicated scientific studies supporting any
specific biological etiology for homosexuality. Similarly, no specific psychosocial or family dynamic cause for homosexuality has been identified, including histories of childhood sexual abuse.


Colourful start to school arts fete in Pathanamthitta
MLA opens four-day cultural event at Ranni
by Special CorrespondentThe district schools arts festival got off with a colourful start at the MS Higher Secondary School at Ranni on Monday.
Inaugurating the four-day arts fete, Raju Abraham, MLA, said arts festivals would help the children strengthen their self-confidence by acquiring artistic talents.
Kerala Folklore Academy chairman C.J. Kuttappan, inaugurated the cultural contests. District panchayat president Annapoornadevi presided over the inaugural function.
Kuriakose Ivanios Metropolitan of the Knanaya Church delivered the benedictory speech.
Girija Madhu, block panchayat president; Roshan Roy Mathew, Kerala Public Service Commission member; M.G. Kannan, district panchayat member; Zacharia Stephen, SC HSS manager; Sasikala Rajashekharan, grama panchayat president, also spoke.
As many as 4,000 children representing various schools in the district are taking part in the competitions in different categories of upper primary, high school and higher secondary.
The first prize winners in various cultural contests held on Monday are:
High School
Bharatanatyam (Girls): Nandana Nair.S of NSS HSS, Thadiyur.
Light music (Boys): Sivaram.M of EM HS, Pandalam Kurampala.
Light music (Girls): Devapriya P.S of NSS GHS, Pandalam.
Elocution (English): Vismaya B. Baiju of St John’s HSS, Eraviperoor.
Recitation (English): Nikita Rachel Abraham of Gurukulam HS, Edakkulam.
Kavyakeli: Akshaya Aji of SC HSS , Ranni.
Vrindavadyam: Siyad Sajan of MGM HSS, Thiruvalla.
Band Melam: St Teresa’s Bethany Convent HSS, Chengaroor.
Margamkali (Girls): SVGV HSS, Kidangannur.


Release Notes - 0.8.9
Summary
Binary Object Support
Binary object reads and writes are now supported in both Java and HTTP APIs. The tested column types are BLOB in MySQL and bytea in PostgreSQL.
In the Java API, use the framework-provided, BinaryObject, to wrap a byte array or translate from/to base 64 encoded string. The HTTP API (both XML and JSON forms) use base 64 encoded strings as well. For browser applications, the Javascript functions btoa() and atob() encode and decode base64 respectively.
Security Hardening
SQL generation was converted from standard name-value concatenation to prepared statements. The value portion of an SQL expression is set as a question mark (and with PostgreSQL a type case, e.g. ?::integer
) and a JDBC method setXxx() is called with the value. The database will process column values as values. Harmful execution statements cannot be injected into restSQL parameter values. Addtionally the framework now converts all String input parameter values for numeric and boolean column type to Inter, Long, Float, Double or Boolean. An exception is thrown if the value cannot be converted.
Example 1: the request restsql/res/Actor?id=47%20or%201%3d1
(decoded this is id=47 or 1=1
) previously would return all rows, since the SQL generated would be select * from actor where id = 47; or 1=1
. restSQL will now return HTTP status 400 with the message Could not convert id value 47 or 1=1 to number
.
Example 2: the request restsql/res/film?year=2000%3B%20DELETE%20FROM%20actor_genre
(decoded this is year=2000;DELETE FROM actor_genre
) previously would return all films from 2000 and delete all rows from actor_genre since the SQL generated would be select * from film where year=2000; DELETE FROM actor_genre
. restSQL will now return HTTP status 400 with the message Could not convert id value 1000; DELETE FROM actor_genre to number
.
restsql.properties changes
MySQL-specific implementation of ColumnMetaData was added.
Following are the excerpts with the additional properties
# DB-specific implementation classes - match the implementation to your database # For MySQL: # org.restsql.core.ColumnMetaData=org.restsql.core.impl.mysql.MySqlColumnMetaData # For PostgreSQL: # org.restsql.core.ColumnMetaData=org.restsql.core.impl.ColumnMetaDataImpl org.restsql.core.ColumnMetaData=org.restsql.core.impl.mysql.MySqlColumnMetaData
If you are using MySQL with the built-in implementation classes, none of the preceeding properties are required. Please refer to the following examples:
Migration
Possibly change restsql.properties per above.


|
KratosMultiphysics
KRATOS Multiphysics (Kratos) is a framework for building parallel, multi-disciplinary simulation software, aiming at modularity, extensibility, and high performance. Kratos is written in C++, and counts with an extensive Python interface.
|
Functions | |
| template<> | |
| KRATOS_API (KRATOS_CORE) PointerVectorSet< TEntityType | |
| This method returns the appropriate TEntitytype container (elements, conditions, and nodes) from model part. More... | |
| IndexedObject & | GetEntities< Element > (ModelPart &rModelPart) |
| IndexedObject & | GetEntities< Condition > (ModelPart &rModelPart) |
| IndexedObject & | GetEntities< MasterSlaveConstraint > (ModelPart &rModelPart) |
| void | InitializeAllEntities (ModelPart &rModelPart) |
| void | InitializeSolutionStepAllEntities (ModelPart &rModelPart) |
| void | FinalizeSolutionStepAllEntities (ModelPart &rModelPart) |
| void | InitializeNonLinearIterationAllEntities (ModelPart &rModelPart) |
| void | FinalizeNonLinearIterationAllEntities (ModelPart &rModelPart) |
| void | KRATOS_API (KRATOS_CORE) InitializeAllEntities(ModelPart &rModelPart) |
| This method initializes all the active entities (conditions, elements, constraints) More... | |
| IndexedObject & | GetEntities (ModelPart &rModelPart) |
| template<class TEntityType > | |
| void | InitializeEntities (ModelPart &rModelPart) |
| This method initializes all the active entities. More... | |
| template<class TEntityType > | |
| void | InitializeSolutionStepEntities (ModelPart &rModelPart) |
| This method calls InitializeSolutionStep for all the entities. More... | |
| template<class TEntityType > | |
| void | FinalizeSolutionStepEntities (ModelPart &rModelPart) |
| This method calls FinalizeSolutionStep for all the entities. More... | |
| template<class TEntityType > | |
| void | InitializeNonLinearIterationEntities (ModelPart &rModelPart) |
| This method calls InitializeNonLinearIteration for all the entities. More... | |
| template<class TEntityType > | |
| void | FinalizeNonLinearIterationEntities (ModelPart &rModelPart) |
| This method calls FinalizeNonLinearIteration for all the entities. More... | |
Input and output | |
| template<class TEntity > | |
| std::istream & | operator>> (std::istream &rIStream, EntitityIdentifier< TEntity > &rThis) |
| input stream function More... | |
| template<class TEntity > | |
| std::ostream & | operator<< (std::ostream &rOStream, const EntitityIdentifier< TEntity > &rThis) |
| output stream function More... | |
| void Kratos::EntitiesUtilities::FinalizeNonLinearIterationAllEntities | ( | ModelPart & | rModelPart | ) |
| void Kratos::EntitiesUtilities::FinalizeNonLinearIterationEntities | ( | ModelPart & | rModelPart | ) |
This method calls FinalizeNonLinearIteration for all the entities.
| rModelPart | The model part of the problem to solve |
| void Kratos::EntitiesUtilities::FinalizeSolutionStepAllEntities | ( | ModelPart & | rModelPart | ) |
| void Kratos::EntitiesUtilities::FinalizeSolutionStepEntities | ( | ModelPart & | rModelPart | ) |
This method calls FinalizeSolutionStep for all the entities.
| rModelPart | The model part of the problem to solve |
| IndexedObject& Kratos::EntitiesUtilities::GetEntities | ( | ModelPart & | rModelPart | ) |
| PointerVectorSet< Condition, IndexedObject > & Kratos::EntitiesUtilities::GetEntities< Condition > | ( | ModelPart & | rModelPart | ) |
| PointerVectorSet< Element, IndexedObject > & Kratos::EntitiesUtilities::GetEntities< Element > | ( | ModelPart & | rModelPart | ) |
| PointerVectorSet< MasterSlaveConstraint, IndexedObject > & Kratos::EntitiesUtilities::GetEntities< MasterSlaveConstraint > | ( | ModelPart & | rModelPart | ) |
| void Kratos::EntitiesUtilities::InitializeAllEntities | ( | ModelPart & | rModelPart | ) |
| void Kratos::EntitiesUtilities::InitializeEntities | ( | ModelPart & | rModelPart | ) |
This method initializes all the active entities.
| rModelPart | The model part of the problem to solve |
| void Kratos::EntitiesUtilities::InitializeNonLinearIterationAllEntities | ( | ModelPart & | rModelPart | ) |
| void Kratos::EntitiesUtilities::InitializeNonLinearIterationEntities | ( | ModelPart & | rModelPart | ) |
This method calls InitializeNonLinearIteration for all the entities.
| rModelPart | The model part of the problem to solve |
| void Kratos::EntitiesUtilities::InitializeSolutionStepAllEntities | ( | ModelPart & | rModelPart | ) |
| void Kratos::EntitiesUtilities::InitializeSolutionStepEntities | ( | ModelPart & | rModelPart | ) |
This method calls InitializeSolutionStep for all the entities.
| rModelPart | The model part of the problem to solve |
| void Kratos::EntitiesUtilities::KRATOS_API | ( | KRATOS_CORE | ) | & |
This method initializes all the active entities (conditions, elements, constraints)
This method calls FinalizeNonLinearIteration for all the entities (conditions, elements, constraints)
This method calls InitializeNonLinearIteration for all the entities (conditions, elements, constraints)
This method calls FinalizeSolutionStep for all the entities (conditions, elements, constraints)
This method calls InitializeSolution for all the entities (conditions, elements, constraints)
| rModelPart | The model part of the problem to solve |
| Kratos::EntitiesUtilities::KRATOS_API | ( | KRATOS_CORE | ) |
This method returns the appropriate TEntitytype container (elements, conditions, and nodes) from model part.
| rModelPart | The model part of the problem to solve |
|
inline |
output stream function
|
inline |
input stream function


@* * Copyright 2021 HM Revenue & Customs * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. *@ @import uk.gov.hmrc.eoricommoncomponent.frontend.forms.models.email.EmailForm.YesNo @import uk.gov.hmrc.eoricommoncomponent.frontend.controllers.email.routes._ @import views.html.helper._ @import uk.gov.hmrc.eoricommoncomponent.frontend.views.html._ @import uk.gov.hmrc.eoricommoncomponent.frontend.models.Service @this(layout_di: layout) @(email:Option[String], confirmEmailYesNoAnswerForm: Form[YesNo], isInReviewMode: Boolean, service: Service, journey: Journey.Value)(implicit request: Request[_], messages: Messages) @inputRadioGroup(field: String, options: Seq[(String, String)]) = { @helpers.inputRadioGroup( confirmEmailYesNoAnswerForm(field), options, Map.empty, Some(hintHtml), '_legend -> messages("subscription.check-your-email.confirm.question"), '_isLegendH1 -> true) } @hintHtml = {
@messages("subscription.check-your-email.confirm.label")
} @layout_di(messages("subscription.check-your-email.confirm.question"), form = Some(confirmEmailYesNoAnswerForm)) {


This option will make this Ameol user be the default when opening mail, news or CIX links from outside Ameol (e.g. from a web page). The current default user is shown beneath this button.


This Bible contradiction is from the Skeptic's Annotated Bible.
Verses
Jesus was the first person to rise from the dead.
Acts 26:23 View context
That Christ should suffer, [and] that he should be the first that should rise from the dead, and should shew light unto the people, and to the Gentiles.
1 Corinthians 15:20 View context
But now is Christ risen from the dead, [and] become the firstfruits of them that slept.
Others rose from the dead before him.
1 Samuel 28:11 View context
Then said the woman, Whom shall I bring up unto thee? And he said, Bring me up Samuel.
1 Kings 17:22 View context
And the LORD heard the voice of Elijah; and the soul of the child came into him again, and he revived.
2 Kings 4:32-35 View context
And when Elisha was come into the house, behold, the child was dead, [and] laid upon his bed.
He went in therefore, and shut the door upon them twain, and prayed unto the LORD.

Then he returned, and walked in the house to and fro; and went up, and stretched himself upon him: and the child sneezed seven times, and the child opened his eyes.
2 Kings 13:21 View context
And it came to pass, as they were burying a man, that, behold, they spied a band [of men]; and they cast the man into the sepulchre of Elisha: and when the man was let down, and touched the bones of Elisha, he revived, and stood up on his feet.
Matthew 9:23-25 View context
And when Jesus came into the ruler's house, and saw the minstrels and the people making a noise,
He said unto them, Give place: for the maid is not dead, but sleepeth. And they laughed him to scorn.
But when the people were put forth, he went in, and took her by the hand, and the maid arose.
Matthew 27:52-53 View context
And the graves were opened; and many bodies of the saints which slept arose,
And came out of the graves after his resurrection, and went into the holy city, and appeared unto many.
Luke 7:12-15 View context
Now when he came nigh to the gate of the city, behold, there was a dead man carried out, the only son of his mother, and she was a widow: and much people of the city was with her.
And when the Lord saw her, he had compassion on her, and said unto her, Weep not.
And he came and touched the bier: and they that bare [him] stood still. And he said, Young man, I say unto thee, Arise.
And he that was dead sat up, and began to speak. And he delivered him to his mother.
Luke 9:30 View context
And, behold, there talked with him two men, which were Moses and Elias:
John 11:43 View context
And when he thus had spoken, he cried with a loud voice, Lazarus, come forth.


Upcoming events
Golfing for Good: A GleanSLO Fundraiser!
May 4th, 2020 - Monarch Grove Golf Course, Nipomo, CA
Check out our Harvest Calendar for upcoming gleans.
Golfing for Good: A GleanSLO Fundraiser!
May 4th, 2020 - Monarch Grove Golf Course, Nipomo, CA


Select a language from the upper-right dropdown menu and watch as the content of the page automatically translates.
Fully optimized for the Amazon Web Services (AWS) Cloud, Solodev provides you with unparalleled scalability, security, and accessibility and total design freedom without the need to compromise on design and functionality.
Trusted by nationally recognized brands, Solodev is used to build and host engaging websites that drive meaningful results. Available for instant online purchase, Solodev empowers designers and developers to create dynamic, award-winning websites without compromise.


QTimeLine Class Reference
Inherits QObject.
Constructor
- void QTimeLine(int duration, QObject parent)
Constructor Properties
- prototype: The QTimeLine prototype object
- Forward
- Backward
- Direction( value )
- NotRunning
- Paused
- Running
- State( value )
- EaseInCurve
- EaseOutCurve
- EaseInOutCurve
- LinearCurve
- SineCurve
- CosineCurve
- CurveShape( value )
Prototype Object Properties
The QTimeLine prototype object inherits properties from the QObject prototype object and also has the following properties.
- int currentFrame()
- qreal currentValue()
- int endFrame()
- int frameForTime(int msec)
- void setEndFrame(int frame)
- void setFrameRange(int startFrame, int endFrame)
- void setStartFrame(int frame)
- int startFrame()
- State state()
- qreal valueForTime(int msec)
Instance Properties
QTimeLine objects inherit properties from the QTimeLine prototype object and also have the following properties.
- duration
- updateInterval
- currentTime
- direction
- loopCount
- curveShape
- easingCurve


View the status of all your students with one glance
Audio chat with your students 1:1 to solve problems together
Choose any webpage or web app for your class to work with
In a single browser tab you can work in app, voice chat with your instructor and text chat
Raising your hand and start an audio chat with an instructor in seconds
Share your screen with an instructor to troublshoot together
Simply create a classroom and answer a few questions to get started
Share your virtual classroom with your students and even other instructors
Start teaching from anywhere in the world. Thats right, that beach in Mexico can now be your classroom.
Imagine sitting in a classroom. You are working a math problem and they are starting to get tough. Luckily your teacher is just a short hand raise away. Within a few moments they are at your desk helping you understand where you went wrong and what you need to know to solve the next problem.
Unfortunately this is incredibly hard to do online. Teachers are forced to try and fit tool like Skype and Chat applications to keep that same type of classroom interaction.
Remote Class is a single solution for teachers to have the interactive learning expereince of a classroom, online.
Remote Class is 100% Open Source and would not be possible without the help an assistance from:
If you are interested in helping improve Remote Class, please let us know.


FreeGeoIP v0.0.4 FreeGeoIP.Search
This module includes the basic search function to get geo information about a specified IP.
Summary
Functions
Performs a IP search
Functions
Performs a IP search.
{:ok, result} = FreeGeoIP.search(ip)
Arguments
ip
: can be either a stinrg or a tuple representing an IPv4 ip formatlocale
: (optional) localize the geolocation data. You can use ISO 639-1 code](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) or any string valid for aAccept-language
HTTP header specification
Sample result
%{
"city" => "San Francisco",
"country_code" => "US",
"country_name" => "United States",
"ip" => "<IP_ADDRESS>",
"latitude" => 37.7697,
"longitude" => -122.3933,
"metro_code" => 807,
"region_code" => "CA",
"region_name" => "California",
"time_zone" => "America/Los_Angeles",
"zip_code" => "94107"
}
Errors:
The errors will have the following format:
%{:error, %{reason: reason, error: error_message}}
reason
can be one of the following:
:auth_failed
: the server is protected with basic authentication and you have passed wrong credentials (see below for authentication):process_timeout
: the server responded, but internally caused a timeout:timeout
: server did not respond in a few seconds- Any other reason given by the HTTPoison.Error
:incorrect_ip_range
: incorrect IP provided (like 500.23.1100.32):incorrect_ip_format
: specified IP format not supported. Use only string or tuple.


--- name: Downloads layout: layout-container description: Design templates to help make prototyping more efficient and accurate. ---
A Sketch file of the SkyUX UI components. Updated monthly, so check back from time to time to ensure you have the latest and greatest.


Superfluous Salmondoodles Sales
Add New Store Data
New Store Name
Minimum Customers
Maxmimum Customers
Average Cookies Per Customer
Submit New Store
Update Form


Welcome to the fourth issue of SteemSTEM Distilled, a curation effort by the members of the @steemstem team.
SteemSTEM is a community driven project which seeks to promote well-written and informative Science, Technology, Engineering and Mathematics posts on Steemit. The project involves curating STEM-related posts through upvoting, resteeming, offering constructive feedback, supporting scientific contests, and other related activities.
For more details click here.
Tuesday - Hunting the Elusive Morel Mushroom Using Spatial Data and GIS
Wednesday - A Cure for Alzheimer’s Disease? No, just a long line of late stage treatment failures…
Thursday - Best Chocolate Texture
Friday - Ceramics Water Filter for Safer and Healthier Drinking Water
Saturday - #7 IQ overload: Louis de Broglie
Sunday - I Found and Hatched a Mushroom Egg
For the sake of transparency we feel we need to clarify how our nomination process works; each issue is compiled by certain members of the SteemSTEM community. This week’s editorial team was comprised of @ruth-girl & @trumpman. A special mention goes to @locikll for helping with the markdown coding.
The editorial team chooses their favorite posts for the week and each issue is the result of their joined effort. In order to keep the process fair, posts written by the editorial team are excluded from the nomination process.
Don’t be discouraged if you didn’t make it on this issue. The competition is harsh and there is always a next time :) In the meantime, you may wish to check these guidelines for extra tips on how your writing can be more effective.
In the same spirit of being transparent about our actions that are now supported by @curie, we will release every week a list of authors who have caught the attention of the @steemstem curation team.
If you want to discuss this with us, please do not hesitate to join the steemSTEM channel on the Steemit chat or to follow our curation trail on Streemian. If you are not on Streemian, we have a plan B through a homemade voting bot. You can contact us on the chat in order to be added to its trail.
On week-40,from October 1st to October 8th, we rewarded 58 different authors who have written 115 different articles. The authors who received both a @steemstem and a @curie vote that week are:
@asbonclz, @azirgraff, @cabbagepatch, @carloserp-2000, @corsica, @crazy-daisy, @cristi, @dber, @dean101, @deeallen, @delta1512, @dutch, @ertwro, @freddbrito, @fredrikaa, @galotta, @gra, @grider123, @harlotscurse, @herpetologyguy, @huitemae, @irime, @jamhuery, @jbreugelmans, @jefpatat, @kerriknox, @kharrazi, @kingswisdom, @kuku12170, @laylahsophia, @lordkingpotato, @masterwu, @mcfarhat, @mcw, @mes, @mostly.nature, @mountainwashere, @n3bul4, @nitesh9, @oluwoleolaide, @ovij, @paikan, @piyushkansal, @pratik27, @ragepeanut, @raviyanda, @raycoms, @rt395, @servusminervae, @sustainablyyours, @sward, @thequantumknight, @tking77798, @tradersharpe, @vieira, @vortac, @zest, @zycr22
All curation rewards earned will be used to fund @steemstem project functioning and activities.
See you all next Monday!
This page is synchronized from the post: SteemSTEM Distilled #4


--- layout: archive title: Zulip Chat Archive permalink: /stream/113489-new-members/topic/Meta.20functions.20with.20higher.20order.20variables.html ---
How can I get the following to parse:
meta def test : expr → expr | `(λ s, %%f s) := `(λ s, %%f (s+1)) | x := x.
Currently, I'm getting the error:
function expected at _x_1 term has type ?m_1
on the first %%f.
You should use an explicit type annotation (%%f : ...) s
. Though if you don't statically know the type, you shouldn't use expr quotations.
Last updated: Apr 24 2020 at 19:02 UTC


| A |
-
Abjad
-
Abjad is the technical term for the type of writing system used by Semitic
languages (Hebrew, Arabic, etc.), where there are glyphs for all the consonants
but the reader must be prepared to guess what vowel to add between two
consonants.
Both Hebrew and Arabic have optional vowel marks and are called "impure"
abjads. Ancient Phoenician had nothing but consonants and is a "pure" abjad.
See Also: alphabet, abugida,
syllabary and the relevant
Wikipedia article.
-
Abugida
-
An abugida is somewhere in between an alphabet and
a syllabary. The Indic writing systems are probably
the best known abugidas.
In most abugidas there are independant glyphs for the consonants, and each
consonant is implicitly followed by a default vowel sound. All vowels other
than the default will be marked by either diacritics or some other modification
to the base consonant.
An abugida differs from a syllabary in that there is a common theme to the
the images representing a syllable beginning with a given consonant (that
is, the glyph for the consonant), while in a syllabary each syllable is distinct
even if two start with a common consonant.
An abugida differs from an abjad in that vowels (other than the default)
must be marked in the abugida.
See Also: alphabet, abjad,
syllabary and the relevant
Wikipedia article.
-
Advance
Width
-
The distance between the start of this glyph and the start of the next glyph.
Sometimes called the glyph's width. See also
Vertical Advance Width.
-
Alphabet
-
A writing system where there are glyphs for all phonemes -- consonants and
vowels alike -- and (in theory anyway) all phonemes in a word will be marked
by an appropriate glyph.
See Also: abjad, abugida,
syllabary and the relevant
Wikipedia article.
-
Apple Advanced Typography
-
Apple's extension to basic TrueType fonts. Includes contextual substitutions,
ligatures, kerning, etc. Also includes
distortable fonts.
-
Ascender
-
A stem on a lower case letter which extends above the x-height. "l" has an
ascender.
See also X-height,
Cap-height, Descender,
Overshoot, Baseline
-
Anchor Class
-
Used to specify mark-to-base and cursive GPOS subtables. See
overview.
-
Ascent
-
In traditional typography the ascent of a font was the distance from the
top of a block of type to the baseline.
Its precise meaning in modern typography seems to vary with different definers.
-
ATSUI
-
Apple's advanced typographical system. Also called Apple Advanced Typography.
|
| B |
-
Baseline
-
The baseline is the horizontal line
on which the (latin, greek, cyrillic) letters sit. The baseline will probably
be in a different place for different scripts. In Indic scripts most letters
descend below the baseline. In CJK scripts there is also a vertical baseline
usually in the middle of the glyph. The BASE and
bsln tables allow you to specify how the baselines of different scripts
should be aligned with respect to each other.
See also X-height,
Cap-height, Ascender,
Descender, Overshoot
-
Bézier curve or Bézier splines
-
Bézier curves are described in detail in the
Bézier section of the main manual.
-
Bidi
-
He looked thoughtful and grave- but the orders he gave
Were enough to bewilder the crew.
When he cried `Steer to starboard, but keep her head larboard!'
What on earth was the helmsman to do?
The Hunting of the Snark
Lewis Carroll
|
Bi-Directional text. That is a section of text which contains both left-to-right
and right-to-left scripts. English text quoting Arabic, for example. Things
get even more complex with nested quotations. The
Unicode standard contains an algorithm for laying
out Bidi text. See also:
Boustrophedon.
-
Black letter
-
Any of various type families based on medieval handwriting.
See also gothic.
-
BMP (Basic Multilingual Plane)
-
The first 65536 code points of Unicode. These contain
most of the ordinary characters in the modern world. See Also
-
SMP -- Supplementary Multilingual Plane (0x10000-0x1FFFF)
-
SIP -- Supplementary Ideographic Plane (0x20000-0x2FFFF)
-
SSP -- Supplementary Special-purpose Plane (0xE0000-0xEFFFF)
-
Bold
-
A common font style. The stems of the glyphs are wider
than in the normal font, giving the letters a darker impression. Bold is
one of the few LGC styles that translate readily to other
scripts.
-
Bopomofo
-
A (modern~1911) Chinese (Mandarin)
alphabet used to provide phonetic
transliteration of Han ideographs in dictionaries.
-
Boustrophedon
-
Writing "as the ox plows", that is alternating between left to right and
right to left writing directions. Early alphabets (Old Canaanite, and the
very early greek writings (and, surprisingly,
fuþark)) used this. Often the right to left
glyphs would be mirrors of the left to right ones. As far as I know, no modern
writing system uses this method (nor does OpenType have any support for it).
See Also Bidi.
|
| C |
-
Cap-height
-
The height of a capital letter above the baseline (a letter with a flat top
like "I" as opposed to one with a curved one like "O").
See also X-height, Ascender,
Descender, Overshoot,
Baseline
-
CFF
-
Compact Font Format most commonly used within
OpenType postscript fonts, but is a
valid font format even without a SFNT wrapper. This is
the native font format for fonts with PostScript Type2 charstrings.
-
Character
-
A character is a Platonic ideal reified into at least one
glyph. For example the letter "s" is a character which
is reified into several different glyphs: "S", "s", "s", long-s, etc.
Note that these glyphs can look fairly different from each other, however
although the glyph for an integral sign might be the same as the long-s glyph,
these are in fact different characters.
-
Character set
-
A character set is an unordered set of characters
-
CID
-
Character Identifier, a number. In some CJK
PostScript fonts the glyphs are not named but are
refered to by a CID number.
-
CID-keyed font
-
A PostScript font in which the glyphs are index
by CID and not by name.
-
CJK
-
Chinese, Japanese, Korean. These three languages require fonts with a huge
number of glyphs. All three share a writing system based on Chinese ideographs
(though they have undergone separate evolution in each country, indeed mainland
Chinese fonts are different from those used in Taiwan and Hong Kong).
Japanese and Korean also have phonetic syllabaries. The Japanese have two
syllabaries, Hiragana and katakana which have about 60 syllables. The Koreans
have one syllabary, hangul with tens of thousands of syllables.
-
CJKV
-
Chinese, Japanese, Korean, Vietnamese. These four languages require fonts
with a huge number of glyphs.
-
Condensed
-
A condensed font is one where the space between the stems of the glyphs,
and the distance between glyphs themselves has been reduced.
-
Conflicting hints
-
If a glyph contains two hints where the start or end point of one is within
the range of the other then these hints conflict. They may not be active
simultaneously.
|
| D |
-
Descender
-
A stem on a lower case letter which extends below the baseline. "p" has a
descender.
See also X-height,
Cap-height, Ascender,
Overshoot, Baseline
-
Descent
-
In traditional typography the descent of a font was the distance from the
bottom of a block of type to the baseline.
Its precise meaning in modern typography seems to vary with different definers.
-
Device Table
-
A concept in OpenType which allows you to enter spacing adjustments geared
to rasterization at particular pixel sizes. If a kerning value that works
most of the time leads to an ugly
juxtaposition of glyphs on a 12 pixel high font, then you can add a special
tweak to the spacing that only is applicable at 12 pixels (and another one
at 14 and 18, or whatever is needed). Similar functionality is needed for
anchored marks.
-
Didot point
-
The European point. 62 2/3
points per 23.566mm ( 2.66pt/mm or 67.55pt/inch ). There is also a "metric"
didiot point: .4mm.
-
Distortable font
-
See Multi-Master
|
| E |
-
em
-
A linear unit equal to the point size of the font. In a 10 point font, the
em will be 10 points. An em-space is white-space that is as wide as the point
size. An em-dash is a horizontal bar that is as wide as the point size.
An em-square is a square one em to each side. In traditional typography (when
each letter was cast in metal) the glyph had to be drawn within the em-square.
-
em unit
-
In a scalable font the "em" is subdivided into units. In a postscript font
there are usually 1000 units to the em. In a TrueType font there might be
512, 1024 or 2048 units to the em. In an Ikarus font there are 15,000 units.
FontForge uses these units as the basis of its coordinate system.
-
en
-
One half of an "em"
-
Encoding
-
An encoding is a mapping from a set of bytes onto a
character set. It is what determines
which byte sequence represents which character. The words "encoding" and
"character set" are often used synonymously. The specification for ASCII
specifies both a character set and an encoding. But CJK character sets often
have multiple encodings for the character set (and multiple character sets
for some encodings).
In more complicated cases it is possible to have multiple glyphs associated
with each character (as in arabic where most characters have at least 4 different
glyphs) and the client program must pick the appropriate glyph for the character
in the current context.
-
Eth -- Edh
-
The old germanic letter "ð" for the voiced (English) "th" sound (the
sound in "this" -- most English speakers aren't even aware that "th" in English
has two sounds associated with it, but it does, see also
Thorn)
-
Even-Odd Fill rule
-
To determine if a pixel should be
filled using this rule,
draw a line from the pixel to infinity (in any direction) then count the
number of times contours cross this line. If that number is odd then fill
the point, if it is even then do not fill the point. This method is used
for fonts by postscript rasterizers after level 2.0 of PostScript. See Also
Non-Zero Winding Number Fill.
-
Extended
-
An extended font is one where the space between the stems of the glyphs,
and the distance between glyphs themselves has been increased.
-
Extremum
-
A point on a curve where the curve attains its maximum or minimum value.
On a continuous curve this can happen at the endpoints (which is dull) or
where dx/dt=0 or dy/dt=0.
|
| F |
-
Features (OpenType)
-
When creating fonts for complex scripts (and even for less complex scripts)
various transformations (like ligatures) must be applied to the input glyphs
before they are ready for display. These transformations are identified as
font features and are tagged with (in OpenType) a 4 letter tag or (in Apple)
a 2 number identfier. The meanings of these features are predefined by MicroSoft
and Apple. FontForge allows you to tag each lookup with one or several features
when you create it (or later).
-
Feature File
-
This is a text syntax designed by Adobe to describe OpenType features. It
can be used to move feature and lookup information from one font to another.
-
Feature/Settings (Apple)
-
These are roughly equivalent to OpenType's
Features above, they are
defined
by Apple.
-
Font
-
A collection of glyphs, generally with at least one
glyph associated with each character in the font's
character set, often with an encoding.
A font contains much of the information needed to turn a sequence of bytes
into a set of pictures representing the characters specified by those bytes.
In traditional typesetting a font was a collection of little blocks of metal
each with a graven image of a letter on it. Traditionally there was a different
font for each point-size.
-
Font Family, or just Family
-
A collection of related fonts. Often including plain, italic
and bold styles.
-
FontForge
-
This.
-
FreeType
-
A library for rasterizing fonts. Used extensively in FontForge to understand
the behavior of truetype fonts and to do better rasterization than FontForge
could unaided.
-
Fractur
-
The old black letter writing style used in Germany up until world war II.
See also gothic.
-
Fuþark (Futhark)
-
The old germanic runic script
|
| G |
-
Ghost Hint
-
Sometimes it is important to indicate that a horizontal edge is indeed
horizontal. But the edge has no corresponding edge with which to make a normal
stem. In this case a special hint is used
with a width of -20 (or -21). A ghost hint must lie entirely within a glyph.
If it is at the top of a contour use a width of -20, if at the bottom use
-21. Ghost hints should also lie within BlueZones.
(The spec also mentions vertical ghost hints, but as there are no vertical
bluezones it is not clear how these should be used).
-
Glyph
-
A glyph is an image, often associated with one or several
characters. So the glyph used to draw "f" is associated
with the character f, while the glyph for the "fi" ligature is associated
with both f and i. In simple latin fonts the association is often one to
one (there is exactly one glyph for each character), while in more complex
fonts or scripts there may be several glyphs per character (In renaissance
printing the letter "s" had two glyphs associated with it, one, the long-s,
was used initially and medially, the other, the short-s, was used only at
the end of words). And in the ligatures one glyph is associated with two
or more characters.
Fonts are collections of glyphs with some form of mapping
from character to glyph.
-
Grid Fitting
-
Before TrueType glyphs are rasterized they go through a process called
grid fitting where a tiny program
(associated with each glyph) is run which moves the points on the glyph's
outlines around until they fit the pixel grid better.
-
Gothic
-
The German monks at the time of Gutenberg used a black-letter writing style,
and he copied their handwriting in his typefaces for printing. Italian type
designers (after printing spread south) sneered at the style, preferring
the type designs left by the Romans. As a term of contempt they used the
word gothic, the style of the goths who helped destroy the roman empire.
-
Graphite tables
-
Graphite is an extension
to TrueType which embeds several tables into a font containing rules for
contextual shaping, ligatures, reordering, split glyphs, bidirectionality,
stacking diacritics, complex positioning, etc.
This sounds rather like OpenType -- except that OpenType depends on the text
layout routines knowing a lot about the glyphs involved. This means that
OpenType fonts cannot be designed for a new language or script without shipping
a new version of the operating system. Whereas Graphite tables contain all
that hidden information.
Apple's Advanced Typography provides a better comparison, but Graphite tables
are supposed to be easier to build.
SIL International provides a free
Graphite
compiler .
-
Grotesque
-
See also sans-serif.
|
| H |
-
Han characters
-
The ideographic characters used in China,
Japan and
Korea (and, I believe, in various other
asian countries as well (Vietnam?)), all based on the writing style that
evolved in China.
-
Hangul
-
The Korean syllabary. The only syllabary
(that I'm aware of anway) based on an alphabet -- the letters of the alphabet
never appear alone, but only as groups of two or three making up a syllable.
-
Hanja
-
The Korean name for the Han characters
-
Hints
-
These are described in detail in the main
manual. They help the rasterizer to draw a glyph
well at small pointsizes.
-
Hint Masks
-
At any given point on a contour hints may
not conflict. However different
points in a glyph may need conflicting hints. So every now and then a contour
will change which hints are active. Each list of active hints is called a
hint mask.
-
Hiragana
-
One of the two Japanese syllabaries. Both Hiragana and
Katakana have the same sounds.
|
| I |
-
Ideographic character
-
A single character which represents a concept without spelling it out. Generally
used to mean Han (Chinese) characters.
-
Italic
-
A slanted style of a font, generally used for emphasis.
Italic differs from Oblique in that the transformation
from the plain to the slanted form involves more than just skewing the
letterforms. Generally the lower-case a changes to a, the serifs on
lower-case letters like i (i) change, and the font generally gains
a freer look to it.
|
| J |
-
Jamo
-
The letters of the Korean alphabet. These are almost never seen alone, generally
appearing in groups of three as part of a
Hangul syllable. The Jamo are divided
into three catagories (with considerable overlap between the first and third),
the choseong -- initial consonants, the jungseong -- medial vowels, and the
jongseong -- final consonants. A syllable is composed by placing a choseong
glyph in the upper left of an em-square, a jungseong in the upper right,
and optionally a jongseong in the lower portion of the square.
|
| K |
-
Kanji
-
The Japanese name for the Han characters.
-
Katakana
-
One of the two (modern) Japanese syllabaries. Both
Hiragana and Katakana have the same
sounds.
-
Kerning
-
When the
default spacing between two glyphs is inappropriate the font may include
extra information to indicate that when a given glyph (say "T") is followed
by another glyph (say "o") then the advance width of the "T" should be adjusted
by a certain amount to make for a more pleasing display.
In the days of metal type, metal actually had to be shaved off the slug of
type to provide a snugger fit. In the image on the side, the "F" on the left
has had some metal removed so that a lower case letter could snuggle closer
to it.
-
Kern pair
-
A pair of glyphs for which kerning information has
been specified.
-
Kerning by classes
-
The glyphs of the font are divided into classes of glyphs and there is a
large table which specifies kerning for every possible combination of classes.
Generally this will be smaller than the equivalent set of kerning pairs because
each class will usually contain several glyphs.
-
Knuth, Donald
-
A mathematician who got so fed up with bad typesetting back in the 1970&80s
that he created his own font design system and typographical layout program
called, respectively, MetaFont and TeX.
|
| L |
-
Left
side bearing
-
The horizontal distance from a glyph's origin to its leftmost extent. This
may be negative or positive.
-
Lemur
-
A monotypic genus
of prosimian primates, now found only on Madagascar but formally (about 50
million years ago) members of this family were much more wide spread.
-
Ligature
-
A single glyph which is composed of two adjacent glyphs. A common example
in the latin script is the "fi" ligature
which has a nicer
feel to it than the
sequence.
-
LGC
-
Latin, Greek, Cyrillic. These three alphabets have evolved side by side over
the last few thousand years. The letter forms are very similar (and some
letters are shared). Many concepts such as "lower case", "italic" are applicable
to these three alphabets and not to any others. (OK, Armenian also has lower
case letters).
|
| M |
-
Manyogana
-
An early Japanese script, ancestral to both hiragana
and katakana.
Manyogana used
kanji for their phontic sounds, and over
the years these kanji were simplified into hiragana and katahana.
-
Metal Type
-
Once upon a time, printing presses smashed plates full of slugs of metal
against paper.
-
Monospace
-
A font in which all glyphs have the same advance width. These are sometimes
called typewriter fonts.
-
Multi-layered fonts
-
(FontForge's own term) PostScript type3 fonts and SVG fonts allow for more
drawing possibilities than normal fonts. Normal fonts may only be filled
with a single color inherited from the graphics environment. These two fonts
may be filled with several different colors, stroked, include images, have
gradient fills, etc.. FontForge can be configured to support these fonts
(it does not do so by default because this takes up more memory).
$ configure --with-type3
$ make
$ make install
See Also
-
Multiple Master Font
-
A multiple master font is a PostScript font schema which defines an infinite
number of related fonts. Multiple master fonts can vary along several axes,
for example you might have a multiple master which defined both different
weights and different widths of a font family, it could be used to generate:
Thin, Normal, Semi-Bold, Bold, Condensed, Expanded, Bold-Condensed, etc.
Adobe is no longer developing this format. Apple has a format which acheives
the same effect but has not produced many examples. FontForge
supports both.
|
| N |
-
Namelist
-
A mapping from unicode code point to glyph name.
-
Non-Zero Winding Number Fill rule
-
To determine if a pixel should be filled
using this rule draw a line from here to infinity (in any direction)
and count the number of times contours cross this line. If the contour crosses
the line in a clockwise direction add 1, of the contour crosses in a counter
clockwise direction subtract one. If the result is non-zero then fill the
pixel. If it is zero leave it blank. This method is used for rasterizing
fonts by truetype and older (before version 2) postscript.
See Also Even-Odd Fill Rule
|
| O |
-
Ogham
-
The old Celtic inscription script.
-
OpenType
-
A type of font. It is an attempt to merge postscript and truetype fonts into
one specification.
An opentype font may contain either a truetype or a postscript font inside
it.
It contains many of the same data tables for information like encodings that
were present in truetype fonts.
Confusingly it is also used to mean the advanced typographic tables that
Adobe and MicroSoft (but not Apple) have added to TrueType. These include
things like contextual ligatures, contextual kerning, glyph substitution,
etc.
And MS Windows uses it to mean a font with a 'DSIG' (Digital Signature) table.
-
OpenType Tables
-
Each opentype font contains a collection of tables each of which contains
a certain kind of information. See here for
the tables used by FontForge.
-
Oblique
-
A slanted style of a font, generally used for emphasis.
Oblique differs from Italic in that the transformation
from the plain to the slanted form involves just skewing the letterforms.
-
Overshoot
-
In order for the curved shape of the "O" to appear to be the same height
as the flat top of the "I" it tends to "overshoot" the cap-height (or x-height),
or undershoot the baseline by about 3% of the cap-height (or x-height). For
a triangular shape (such as "A") the overshoot is even greater, perhaps 5%.
These guidelines are based on the way the eye works and the optical illusions
it generates and are taken from Peter Karow's Digital Formats for
Typefaces, p. 26).
The overshoot is also dependant on the point-size of a font, the larger the
point-size the smaller the overshoot should be. Generally modern fonts will
be used at multiple point-sizes, but in some font families there are multiple
faces for the different point-sizes, and in such a case the overshoot will
probably vary from face to face.
See also X-height,
Cap-height, Ascender,
Descender, Baseline
|
| P |
-
Panose
-
A system for describing fonts. See HP's PANOSE
classification metrics guide, AGFA's
PANOSE classification
metrics guide and MicroSoft's
PANOSE
classification in Windows. There is also an extension called
Panose 2.
FontForge only knows about the classification scheme for Latin fonts. Other
schemes exist for other scripts.
-
PfaEdit
-
This was the early name for FontForge. The original conception was that it
would only edit type1 ASCII fonts (hence the name), it quickly metamorphosed
beyond that point, but it took me three years to rename it.
-
Phantom points
-
In a truetype font there are a few points added to each glyph which are not
specified by the contours that make up the glyph. These are called phantom
points. One of these points represents the left side bearing, and the other
the advance width of the glyph. Truetype instructions (hints) are allowed
to move these points around just as any other points may be moved -- thus
changing the left-side-bearing or the advance width. Early versions of TrueType
supplied just these two phantoms, more
recent versions
also supply a phantom for the top sidebearing and a phantom for the vertical
advance width.
-
Pica
-
A unit of length defined (in the US at least) to be 35/83cm (or approximately
1/6th of an inch). This was used for measuring the length of lines of text
(as "30 picas and 4 points long"), but not for measuring font heights.
In Renaissance typography, before there were points, sizes of type had
names, and "pica" was used in this context.
As: "Great Canon", "Double Pica", "Great Primer", "English", "Pica", "Primer",
"Small Pica", "Brevier", "Nonpareil" and "Pearl" (each name representing
a progressively smaller size of type). and
See Caslon's type specimen
sheet on Wikipedia.
-
Pica point
-
The Anglo-American point. With 72.27 points per inch
( 2.85pt /mm ).
-
Point
-
A point is a unit of measurement. There were three (at least) different
definitions for "point" in common usage before the advent of computers. The
one in use in the Anglo-Saxon printing world was the "pica point" with 72.27
points per inch ( 2.85pt /mm ), while the one used in continental Europe
was the didot point with 62 2/3 points per 23.566mm
( 2.66pt/mm or 67.54pt/inch ) and the French sometimes used the Mediaan point
(72.78 points per inch, 2.86pt/mm).
The didiot and pica points were so arranged that text at a given point-size
would have approximately the same cap-height in
both systems, the didot point would have extra white-space above the capitals
to contain the accents present in most non-English Latin based scripts.
This has the interesting side effect that a font designed for European usage
should have a smaller proportion of the vertical em given over to the text
body. I believe that computer fonts tend to ignore this, so presumably european
printers now set with more leading.
As far as I can tell, computers tend to work in approximations to pica points
(but this may be because I am in the US), PostScript uses a unit of 1/72nd
of an inch.
Originally fonts were not described by point size, but by
name. It was not until the 1730s that Pierre
Fournier that created the point system for specifying font heights. This
was later improved upon by François Didiot (whence the name of the
point). In 1878 the Chicago Type Foundry first used a point system in the
US. In 1886 the US point was standardized -- the pica was defined to be 35/83cm,
and the pica point defined to be 1/12th of that.
-
Point Size
-
In traditional typography a 10pt font was one where the block of metal for
each glyph was 10 points high. The point size of a font is the unleaded baseline
to baseline distance.
-
Point of inflection
-
A point on a curve where it changes from being concave downwards to concave
upwards (or vice versa). Or in mathematical terms (for continuous curves)
where d2 y/dx2=0 or infinity.
Cubic splines may contain inflection points, quadratic splines may not.
-
PostScript
-
PostScript is a page-layout language used by many printers. The language
contains the specifications of several different font formats. The main
(FontForge) manual has a section describing how
PostScript differs from TrueType.
-
Type 1 -- This is the old standard for PostScript fonts. Such a font generally
has the extension .pfb (or .pfa). A type 1 font is limited to a one byte
encoding (ie. only 256 glyphs may be encoded).
-
Type 2/CFF -- This is the format used within OpenType
fonts. It is almost the same as Type 1, but has a few extensions and a more
compact format. It is usually inside a CFF wrapper, which is usually inside
an OpenType font. The CFF font format again only allows a 1 byte encoding,
but the OpenType wrapper extends this to provide more complex encoding types.
-
Type 3 -- This format allows full postscript within the font, but it means
that no hints are allowed, so these fonts will not look
as nice at small point-sizes. Also most (screen) rasterizers are incapable
of dealing with them. A type 3 font is limited to a one byte encoding (ie.
only 256 glyphs may be encoded).
-
Type 0 -- This format is used for collecting many sub-fonts (of Type 1, 2
or 3) into one big font with a multi-byte encoding, and was used for CJK
or Unicode fonts.
-
Type 42 -- A TrueType font wrapped up in PostScript.
Sort of the opposite from OpenType.
-
CID -- This format is used for CJK fonts with large numbers of glyphs. The
glyphs themselves are specified either as type1 or type2 glyph format. The
CID font itself has no encoding, just a mapping from CID (a number) to glyph.
An set of external CMAP files are used to provide appropriate encodings as
needed.
|
| Q |
-
-
|
| R |
-
Reference
-
A reference is a way of storing the
outlines of one glyph in another (for example in accented glyphs). Sometimes
called a "componant".
-
Right
side bearing
-
The horizontal distance from a glyph's rightmost extent to the glyph's advance
width. This may be positive or negative.
|
| S |
-
Sans Serif
-
See the section on serifs.
-
Script
-
A script is a character set and associated
rules for putting characters together. Latin, arabic, katakana and hanja
are all scripts.
-
Serif
latin
greek
cyrillic |
|
|
| a serif |
sans serif |
| hebrew |
|
|
| bet serif |
sans serif |
-
Back two thousand years ago when the Romans were carving their letters on
stone monuments, they discovered that they could reduce the chance of the
stone cracking by adding fine lines at the terminations of the main stems
of a glyph.
These fine lines were called serifs, and came to have an esthetic appeal
of their own. Early type designers added them to their fonts for esthetic
rather than functional reasons.
At the end of the nineteenth and beginning of the twentieth centuries,
type-designers started designing fonts without serifs. These were initially
called grotesques because their form appeared so strange, they are now generally
called sans-serif.
Other writing systems (Hebrew for one) have their own serifs. Hebrew serifs
are rather different from latin (cyrillic, greek) serifs and I don't know
their history. Hebrew serifs only occur at the top of a glyph
I would welcome examples from other scripts of serifed and sans-serifed glyphs.
-
SFD
-
SplineFont DataBase. These are FontForge's own personal font representation.
The files are ASCII and vaguely readable, the format is described
here. As of 14 May 2008 the format has been
registered with IANA for a MIME type:
application/vnd.font-fontforge-sfd.
Other people use sfd too. (Unfortunately)
-
Tops-10, on the Digital PDP-10 used sfd to mean "Sub File Directory". Tops-10
made a distinction between top-level (home) directories, called "user file
directories", and sub-directories.
-
TeX uses it to mean "Sub Font Definition" where a TeX sfd file contains
information on how to break a big CJK or Unicode font up into small sub-fonts,
each with a 1 byte encoding which TeX (or older versions of TeX) needed.
-
Others...
-
SFNT
-
The name for the generic font format which contains TrueType, OpenType, Apple's
bitmap only, X11's bitmap only, obsolete 'typ1' fonts and Adobe's SING fonts
(and no doubt others). The SFNT format describes how font tables should be
laid out within a file. Each of the above formats follow this general idea
but include more specific requirements (such as what tables are needed, and
the format of each table).
-
SIP
-
Supplementary Ideographic Plane (0x20000-0x2FFFF) of unicode. Used for rare
Han characters (most are no longer in common use) See Also
-
BMP -- Basic Multilingual Plane (0x00000-0x0FFFF)
-
SMP -- Supplementary Multilingual Plane (0x10000-0x1FFFF)
-
SSP -- Supplementary Special-purpose Plane (0xE0000-0xEFFFF)
-
SMP
-
Supplementary Multilingual Plane (0x10000-0x1FFFF) of unicode. Used for ancient
and artificial alphabets and syllabaries -- like Linear B, Gothic, and Shavian.
See Also
-
BMP -- Basic Multilingual Plane (0x00000-0x0FFFF)
-
SIP -- Supplementary Ideographic Plane (0x20000-0x2FFFF)
-
SSP -- Supplementary Special-purpose Plane (0xE0000-0xEFFFF)
-
Spline
-
A curved line segment. See the section in the
manual on splines. The splines used in FontForge are all second or third
order Bézier splines (quadratic or cubic), and
Raph Levien's clothoid splines.
-
SSP
-
Supplementary Special-purpose Plane (0xE0000-0xEFFFF) of unicode. Not used
for much of anything. See Also
-
BMP -- Basic Multilingual Plane (0x00000-0x0FFFF)
-
SMP -- Supplementary Multilingual Plane (0x10000-0x1FFFF)
-
SIP -- Supplementary Ideographic Plane (0x20000-0x2FFFF)
-
State machine
-
A state machine is like a very simple little program, they are used on the
mac for performing contextual substitutions and kerning. The
state machine dialog is reachable
from Element->Font
Info->Lookups
The "state machine" consists of a table of states, each state in turn consists
of a series of potential transitions (to the same or different states) depending
on the input. In state machines within fonts, the machine starts out in a
special state called the start state, and reads the glyph stream of the text.
Each individual glyph will cause a state transition to occur. As these
transitions occur the machine may also specify changes to the glyph stream
(conditional substitutions or kerning).
Example
-
Strike
-
A particular instance of a font. Most commonly a bitmap strike is a particular
pixelsize of a font.
-
Style
-
There are various conventional variants of a font. In probably any writing
system the thickness of the stems of the glyphs may be varied, this is called
the weight of a font. Common weights are normal and
bold.
In LGC alphabets an italic (or
oblique) style has arisen and is used for emphasis.
Fonts are often compressed into a condensed style,
or expanded out into an extended style.
Various other styles are in occasional use: underline, overstrike, outline,
shadow.
-
SVG
-
Scalable Vector Graphics. An XML format used for drawing vector images. It
includes a font format.
-
Syllabary
-
A syllabary is a phonetic writing system like an alphabet. Unlike an alphabet
the sound-unit which is written is a syllable rather than a phoneme. In Japanese
KataKana the sound "ka" is represented by one glyph. Syllabaries tend to
be bigger than alphabets (Japanese KataKana requires about 60 different
characters, while the Korean Hangul requires tens of thousands).
See Also: abjad, abugida,
alphabet and the relevant
Wikipedia article.
|
| T |
-
TeX
-
A typesetting package.
-
Thorn
-
The germanic letter "þ" used for the unvoiced (English) "th" sound
(as in the word "thorn"), I believe this is approximately the same sound
value as Greek Theta. Currently a corrupt version of this glyph survives
as "ye" for "the". See also Eth.
-
True Type
-
A type of font invented by Apple and shared with MicroSoft. It specifies
outlines with second degree (quadratic) Bézier
curves, contains innovative hinting controls, and an expandable series of
tables for containing whatever additional information is deemed important
to the font.
Apple and Adobe/MicroSoft have expanded these tables in different ways to
include for advanced typographic features needed for non-latin scripts (or
for complex latin scripts). See Apple Advanced
Typography and OpenType.
-
TrueType Tables
-
Each truetype font contains a collection of tables each of which contains
a certain kind of information. See here for
the tables used by FontForge.
-
Type 1
-
A type of PostScript font which see.
-
Type 2
-
A type of PostScript font, used within
OpenType font wrappers.
-
Type 3
-
A very general type of PostScript font, which see.
-
Type 0
-
A type of PostScript font, which see.
-
Type High
-
In the days of metal type this was the height of the piece of metal -- the
distance from the printing surface to the platform on which it rested.
-
Typewriter
-
See Monospace.
|
| U |
-
Unicode
-
A character set/encoding which tries to contain all the characters currently
used in the world, and many historical ones as well. See the
Unicode consortium.
-
BMP -- Basic Multilingual Plane (0x00000-0x0FFFF)
-
SMP -- Supplementary Multilingual Plane (0x10000-0x1FFFF)
-
SIP -- Supplementary Ideographic Plane (0x20000-0x2FFFF)
-
SSP -- Supplementary Special-purpose Plane
(0xE0000-0xEFFFF)
More info.
-
Undershoot
-
See the explanation at Overshoot.
-
UniqueID
-
This is a field in a PostScript font, it was formerly used as a mechanism
for identifying fonts uniquely, then Adobe decided it was not sufficient
and created the XUID (extended Unique ID) field. Adobe has now decided that
both are unneeded.
There is a very similar field in the TrueType 'name' table.
-
UseMyMetrics
-
This is a truetype concept which forces the width of an composite glyph (for
example an accented letter) to be the same as the width of one of its components
(for example the base letter being accented).
|
| V |
-
Vertical Advance Width
-
CJK text is often written vertically (and sometimes horizontally), so each
CJK glyph has a vertical advance as well as a
horizontal advance.
|
| W |
-
Weight
-
The weight of a font is how thick (dark) the stems of the glyphs are.
Traditionally weight is named, but recently numbers have been applied to
weights.
| Thin |
100 |
| Extra-Light |
200 |
| Light |
300 |
| Normal |
400 |
| Medium |
500 |
| Demi-Bold |
600 |
| Bold |
700 |
| Heavy |
800 |
| Black |
900 |
| Nord |
|
| Ultra |
|
-
Width
-
This is a slightly ambiguous term and is sometimes used to mean the
advance width (the distance from the start of
this glyph to the start of the next glyph), and sometimes used to mean the
distance from the left side bearing to the right side bearing.
|
| X |
-
X-height
-
The height of a lower case letter above the base line (with a flat top like
"x" or "z" or "v" as opposed to one with a curved top like "o" or one with
an ascender like "l") .
See also Cap-height,
Ascender, Descender,
Overshoot, Baseline
-
XUID
-
Extended Unique ID in a PostScript font. Now somewhat obsolete. See the
explanation at Unique ID.
|
| Y |
-
-
|
| Z |
-
Zapf, Hermann
-
Outstanding modern font designer.
|


Cluster robust variances
As mentioned, if we ignore the clustering, the so-called fixed effects estimates (i.e. coefficients) are correct, but their variances are not. We can get proper estimates of the standard errors via cluster robust standard errors, which are very popular in econometrics and fields trained in that fashion, but not widely used elsewhere in my experience. Essentially, these allow one to fire-and-forget, and treat the clustering as more of a nuisance.
In programs like Stata, obtaining these are basically an option for most modeling procedures. In R, it’s not quite as straightforward, but not difficult. There are packages such as sandwich that can provide heteroscedastic robust standard errors, but won’t necessarily take into account clustering. I provide a custom function that will work in this example so that the curtain can be pulled back a little, but the plm package would be the way to go for cluster robust standard errors. The plm package can take into account the serial autocorrelation via the ‘arellano’ input to the type
argument.
library(plm)
# create numeric time so plm won't treat as a factor, time is a reserved name in plm
t2 = d$time
clusterrob_mod <- plm(y ~ t2 + treatment, data=d, model='pooling', index='id')
summary(clusterrob_mod)
Oneway (individual) effect Pooling Model
Call:
plm(formula = y ~ t2 + treatment, data = d, model = "pooling",
index = "id")
Balanced Panel: n=2500, T=4, N=10000
Residuals :
Min. 1st Qu. Median 3rd Qu. Max.
-4.7200 -0.8110 0.0302 0.8160 4.2300
Coefficients :
Estimate Std. Error t-value Pr(>|t|)
(Intercept) 0.130929 0.023712 5.5217 3.442e-08 ***
t2 0.508559 0.010880 46.7436 < 2.2e-16 ***
treatmenttreatment -0.421493 0.024328 -17.3255 < 2.2e-16 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Total Sum of Squares: 18469
Residual Sum of Squares: 14792
R-Squared: 0.1991
Adj. R-Squared: 0.19904
F-statistic: 1242.57 on 2 and 9997 DF, p-value: < 2.22e-16
The following compares the different robust SEs we could produce at this point.
resids = resid(lm_mod) # residuals
xvar = solve(crossprod(lm_mod$x)) # (X'X)^-1
gd0 = data.frame(id=d$id, r=resids, lm_mod$x)
# custom function to be applied within cluster
cluscom = function(mat){
X = as.matrix(mat)[, 3:5] # magic numbers represent int, time and treatment columns
crossprod(X, tcrossprod(mat$r)) %*% X
}
# calculate within cluster variance
gd = gd0 %>%
group_by(id) %>%
do(xvar = cluscom(.))
# plm
plm_se = vcovHC(clusterrob_mod, method='arellano', cluster='group') %>% diag %>% sqrt %>% round(3)
# custom output
custom_se = (xvar %*% Reduce(`+`, gd$xvar) %*% xvar) %>% diag %>% sqrt %>% round(3)
# original lm
lm_se = vcov(lm_mod) %>% diag %>% sqrt %>% round(3)
# non-clustered 'robust' se
lm_robse = vcovHC(lm_mod, type='HC0') %>% diag %>% sqrt %>% round(3)
# plm
plm_se
(Intercept) t2 treatmenttreatment
0.030 0.009 0.042
# custom output
custom_se
(Intercept) time treatmenttreatment
0.030 0.009 0.042
# original lm
lm_se
(Intercept) time treatmenttreatment
0.024 0.011 0.024
# non-clustered 'robust' se
lm_robse
(Intercept) time treatmenttreatment
0.023 0.011 0.024
Pros
- Don’t have to think too much about the issues at play
- Fewer assumptions about the model
- A general heteroscedastic ‘robust’ approach
Cons
- Ignores cluster-specific effects
- By default, assumes no intracluster correlation
- Few tools go beyond simple clustering, requiring manual approach
- Not as general as GEE approach
- Suggests that there are problems in model specification that the method itself does not correct
Gist: if your goal is to simply do a standard GLM approach and essentially ignore the clustering, treating it more or less as a nuisance to overcome, and your grouping structure is simple, then this may be for you. However, note that the GEE approach as a possibly more flexible alternative that can still incorporate cluster robust standard errors4. Furthermore, differences between the robust and regular SE may suggest a model misspecification issue. ‘Fixing’ standard errors won’t solve that problem.
The cluster robust standard errors as depicted above assume independent error structure in the GEE model, and thus are a special case of GEE. When you peruse the GEE model, rerun it with the argument
corst='ind'
to duplicate the plm and custom results above.↩


---
title: "NATURE CONNECTS: LEGO Brick Building Contest"
date: "2000-01-01 18:04:01 -06:00"
categories:
- spring
subtitle: ""
layout: "events"
event-image: "nature-connects-lego-build-contest.jpg"
event-dates: "Contest Entry Deadline: May 21, 2018"
event-location: "Red Butte Garden"
button-type: "register"
tickets-link: ""
registration-info: "N/A"
instructor-info: "N/A"
member-cost: "No charge to enter a sculpture into the contest"
public-cost: "No charge to enter a sculpture into the contest"
event-notes: ""
tickets-button: "hide"
published: false
---
CALLING ALL LEGO® BRICK BUILDERS!
Create a nature-themed LEGO brick sculpture in our Nature Connects® LEGO® Brick Building contest and win great prizes!
This is your chance to show off your creativity and building ability to thousands of people who will visit Nature Connects: Art with LEGO Bricks exhibition this summer at Red Butte Garden. This award-winning exhibit features 14 larger-than-life sculptures built from nearly 400,000 LEGO bricks, including a giant praying mantis, humming bird, butterfly and more.
Send a photograph of your completed masterpiece with your CONTEST ENTRY FORM and we'll share it on the Garden's social media channels. Your sculpture could be chosen to compete in the Nature Connects Brick Building Contest Showcase on Saturday, June 2, 2018 at the Garden. One winner in each age division will be chosen by the public and receive awesome prizes, including a chance to have your sculpture featured in the Garden all summer long!
Click on the title bars below for contest information.
CONTEST DETAILS / HOW TO ENTER
HOW TO ENTER
Complete the CONTEST ENTRY FORM and submit a photo of your sculpture by May 21, 2018. Images will be shared throughout the contest on the Garden's Facebook and Instagram.
Remember, the subject of your sculpture must be related to the natural world or Red Butte Garden.
Entries are due by May 21, 2018 at 11:59PM to be eligible for judging. There is no charge to enter your sculpture into the contest.
JUDGING CRITERIA
Contest entries will be judged on: Building Skill, Creativity, Originality, Theme Interpretation, Presentation
A panel of Red Butte Garden staff will judge the first round of photo submissions. The public will vote and select the grand prize winners on June 2, 2018 at the Showcase.
JUNE 2 FINAL ROUND SHOWCASE
The top three entries from each age division must be delivered to the Red Butte Garden Visitor Center on Saturday, June 2 between 8AM and 10AM. Finalists will be notified a week prior to the Showcase if their sculpture has been chosen to compete.
Registration is free and open to builders of all ages.
Images of sculptures must be submitted by May 21, 2018 to be considered for preliminary judging. Only sculptures chosen as finalists from the online portion of the contest will be displayed at the Garden on June 2, 2018. Drop-in sculptures may NOT be submitted to the Garden for the showcase and finals.
Sculptures must be built on a base no larger than 24 by 24 inches. The base can be wood, cardboard, a LEGO brick flat base, etc. and can be decorated as desired. Completed sculptures may be no taller than four feet tall.
Sculptures chosen for the Showcase must be brought ready to be displayed, secured with no loose parts. Construction will not be permitted on site.
Original LEGO® brick designs only. Sculptures made from kits will be disqualified. Only nature-themed sculptures or sculptures related to Red Butte Garden will be considered for competition.
All builders agree to have their sculptures on display from 10AM to 3PM on Saturday, June 2, 2018, should their sculpture be chosen as a finalist. Finalists' sculptures must be picked up by 5PM on Monday, June 4. Sculptures not retrieved by this time will become property of Red Butte Garden.
Red Butte Garden is not responsible for damage to sculptures.
All finalists whose sculptures are chosen for the Showcase will receive TWO complimentary passes to Red Butte Garden to use on the day of the Showcase, June 2, 2018 (one pass for the builder and one pass for a chaperone or guest). All other guests will be required to pay admission.
Red Butte Garden retains the right to refuse entry to any sculpture it deems inappropriate for display.
Red Butte Garden staff members, volunteers, and their families may enter their sculptures for sharing on social media but are not eligible for judging or prizes.
First Place
Family or Circle of Friends Membership to Red Butte Garden
Four tickest to Night at the Garden, Garden After Dark, and Winter Solstice Celebration
Nature Connects merchandise
Option to display your sculpture in the Children's Garden for the duration of the Nature Connects exhibit
Second Place
Four tickest to Night at the Garden, Garden After Dark, and Winter Solstice Celebration
Nature Connects merchandise
Third Place
Nature Connects merchandise
Best In Show*
Family or Circle of Friends Membership to Red Butte Garden
Four tickest to Night at the Garden, Garden After Dark, and Winter Solstice Celebration
Nature Connects merchandise
*This award will be given to an entry selected by the Red Butte Garden staff during the preliminary judging.
Do I need to stay at the Garden for the entire day during the Showcase in June 2?
No, but contestants are welcome to spend the day at the Garden to enjoy the Nature Connects exhibit.
Is there a size limit?
Your creation must be on a base no larger than 24 by 24 inches. The base can be wood, cardboard, a LEGO flat base, etc. and can be decorated to fit with your project. Your completed project may be no taller than four feet tall.
Is there a theme for my creation?
Yes! Sculptures should reflect the natural world or Red Butte Garden to be eligible for competition.
What materials may I use?
Use your own LEGO®, DUPLO®, Mega Bloks® or other LEGO compatible building bricks.
Are group-entries allowed?
No, this competition is designed for individuals.
Can I build my sculpture on-site?
No, you should create your sculpture off-site, and submit a photo with your completed CONTEST ENTRY FORM for first-round judging. Only sculptures that have been chosen from the online portion of the competition will allowed to be displayed at the Garden.
Do I have to display my sculpture at the Garden?
Yes, in order to compete in the final Showcase your sculpture must be displayed at the Garden on June 2, 2018 for judging by the public.
If your sculpture wins First Place in any age division, you have the option to display your sculpture at the Garden throughout the Nature Connects exhibit, June 2 - Sept 16, or to take it home.


{% extends 'base.html' %} {% block body_block %}
Name - {{school_details.name}}
Principal - {{school_details.principal}}
Location - {{school_details.location}}
{% if school_details.students.all%}Students:
{% for student in school_details.students.all %}{{student.name}} who is {{student.age}} yrs old
{% endfor %} {% endif %}


-
Like algorithm, math, coding to defeat every kind technology issue and challenge. I appreciate hacker culture, concise and quick code which is improving the life of people. Excited to work in open source community and interested in distributed application systems. Having passion of continuous improvement through refactoring and introducing new technologies.
-
14-year Java/Java EE experience since 2002. Full stack or server side development.
-
Contributed to open source Google Gerrit Code Review since 2011.
-
Administrator experience (8 years) of web applications running on Linux.
Nottingham PL，San Jose, CA 95117 |
English, Mandarin |<EMAIL_ADDRESS>Github Linkedin Facebook
Apr 2015 - Apr 2016
Relocated to CA and wait EAD till the end of April 2016
meanwhile: Following Gerrit community |
solid Data Structures and Algorithms
EMPLOYMENT
Sony Mobile — Senior Software Engineer, full stack, mainly focus on back end
Nov 2010 - Apr 2015
Sony Mobile Gerrit team is a global team (4 ~ 8 members from Sweden, Tokyo, Brazil and Beijing) supporting 7000+ inner end users.
-
Tackled daily Gerrit/Git/Repo/Jenkins related issues and feature requirements for CM users, Git Admin and developers.
-
Contributed 140+ commits to improve and strengthen Gerrit functions to make users convenient.
-
Received 2 awards for outstanding contributions for software development.
Canon — DBA & Senior Software Engineer, back end
Apr 2007 - Mar 2010
E-Order, E-Bank, E-Parts … web applications
-
Perform query optimization, tuning of complex queries, write efficient SQL and Stored Procedures.
-
Tackled backup & restore issues of DB2 databases, MS SQL server databases.
-
Developed and maintained a real-time application to exchange data between web applications and core application.
CS&S — Software Engineer, full stack, mainly focus on back end
Mar 2003 - Feb 2007
Large scale distributed web applications built for Guangdong Province China using Java EE, Oracle, BEA Weblogic.
-
Designed and developed payment module of Centralized Taxes Payment Application.
-
Designed Social Insurance Payment Application.
-
Received several awards for outstanding performance in team.
Cernet — Intern, full stack, mainly focus on back end
Mar 2002 - Dec 2002
E-payment Application
-
Developed all features of admin module from front-end to back-end using Java EE, Oracle, JBoss.
EDUCATION
Sep 2000 - Mar 2003
University of Science and Technology Beijing - Master
Sep 1994 - Mar 1998
University of Science and Technology Hebei - Bachelor
SKILLS ( years)
Open Source Software Development
Gerrit/Git (5), Jenkins (5), BUCK (3), Maven (2)
Java/Java EE (14), Python (2)
C/C++ (2), Javascript/HTML/CSS (2)
Linux (7), Bash
Google Guice (5), Google Guaua (5), Google GWT (5)
RESTful API, develop client & server side
Tomcat (3), Jetty, Bea Weblogic (3), IBM WebShpere (2)
SQL DB: Oracle (5), Postgres (4), IBM DB2 (3), SQL Server (3)
IBM MQ (2), Apache Lucene
Scrum/Agile/Sprint (3)
Ability
-
An independent quick learner especially on Java technologies.
When I worked in SonyMobile, I was assigned to develop Gerrit and Jenkins plugin which I had never heard of at the very beginning. However, I could shift output quickly without any help since I am good at Java. -
Positive team spirit and interpersonal skills.
-
Excellent attention to detail, troubleshooting and analytical skills.
|
Note
|
If you want more information, please refer the following Deployment Detail information |
Sony Mobile
Nov 2010 - Apr 2015
Senior Software Engineer, full stack, mainly focus on back end.
I was a member of global Gerrit development team, supporting Git Admin team, CM team and developers by delivering new features and bugfixes. Members are from Sweden, Tokyo, Brazil and Beijing. We also keep close relation with other Gerrit community core contributors who works for Google, SAP, Qualcomm and OpenStack.
- Gerrit Code Review
-
Gerrit provides access via browser, RESTful API and SSH Command line. Gerrit select GWT as its web framework, uses CodeMirror to show the
git diff
result on web. A new UI is under building using Polymer. Gerrit replaced nearly all GWT RPC implementation with its own RESTful API. The SSH Command line features are built with Apache MINA's sub project Apache SSHD. Gerrit notification functions including Hook, Stream-event and E-mail. Gerrit stores data in Git repositories and SQL database. Gerrit does not use Hibernate. Instead, it supports 9 kinds of SQL database with its own open source tiny ORM library, which is built by using ObjectWeb ASM 3, H2 and ANTLR 3, e.g. Oracle, MySQL, H2, PostgreSQL, DB2. However, Gerrit is moving the data stored in DB intogit notes
. This is a step towards implementing open-source version of multi-master feature. Gerrit caches search results in memory, disk of server side and client side via browser. Gerrit builds second index using Lucene and Protocol Buffers. Gerrit provides search function, and the grammar is built by using Antlr 3. Gerrit has replication function, which now is a plugin, to enable master-slave mode. Gerrit uses Google Guice, not Spring, as dependency injection framework. Gerrit supports developing Gerrit plugin. Gerrit uses BUCK to build source code, run Junit test, wrap release file (war). BUCK runs faster that Maven. Gerrit provides init command to do every initial works and startup Gerrit automatically. Gerrit has tons framework. - The Sony Mobile Gerrit server
-
Gerrit server runs in Tomcat web container behind an Apache web server. Gerrit server is master-slave mode, one master server and on average 7 slave servers * 3 sites accessed by 7000+ end users in total. Sony Mobile Gerrit server uses PostgreSQL that has replication features. Each Gerrit slave server has a PostgreSQL database. On each site, the Gerrit slave servers are located behind balance servers that balance the requests from local developers and local Jenkins servers.
- Develop
-
Some features, e.g.:
-
✓ Create project (SSH command and RESTful API)
-
✓ Add file comment to a patch
-
✓ Enable branch specified label
-
✓ Add reviewers in batch by LDAP group
-
✓ Add new system configuration options
-
✓ Enable register email registered automatically
-
-
Details: my commits contributed to Gerrit community.
- Daily support
-
-
✓ Tackled issues related to Gerrit, Apache, Tomcat and Jenkins with CM user and Git Admin
-
✓ Tried new Gerrit version and Gerrit plugins in Test Environment
-
Canon China
Apr 2007 - Mar 2010
Senior Software Engineer, back end.
Supervise all local web applications
- Cannon China local applications
-
Web applications, e.g. e-order, e-bank, e-parts … They are built using Java/Java EE, DB2 or MS SQL Server. Their databases need exchange data with core application that is built using AS400 and DB2.
DBA
-
✓ Perform query optimization and tuning of complex queries, write efficient SQL and Stored Procedures. That access several million rows across several database tables. Tuned SQL statement of web applications, e.g. reduced the running time of some SQL statements to be less than 5 seconds from 2+ minutes.
-
✓ Setup MS SQL Server database backup plan and carried it out.
-
✓ Tacked day-to-day issues of DB2 backup to tape and wrote tutorial.
Develop using the API of IBM MQ and Java RMI:
-
✓ Designed, developed, tested, deployed and maintained a real-time application used to sync data between web applications and core applications.
China Software & Service
Mar 2003 - Feb 2007
Software Engineer, full stack, mainly focus on back end
With other members developed 2 web applications for Guangdong Province China .
-
Centralized Taxes Payment Application.
-
Social Insurance Payment Application.
- Centralized Taxes Payment Application
-
The application provides local tax services for the whole province. It is a large-scale distributed Java EE based web application built with Oracle RAC and Weblogic cluster. The number of GDP and people of Guandong Province is greater than that of Taiwan. The number of this application’s online users (2000+) and concurrent users is very tremendous. It is also a big data application. It is multi-tier, browser/server mode and client/server mode architecture. Users can access it via telephone, browser and client side application. It also communicates with other applications of banks and other government departments.
-
✓ Design and coding features like online payment and printing cash receipt, General-purpose Tax Payment Certificate.
- Social Insurance Payment Application
-
This application is used to collect 5 kinds of social insurance fee from employer for their employee. It force the employer to pay these social insurance together with the local taxes
I was in charge of system requirement and system design.
-
Design:
-
✓ Wrote out system requirement with end user. Made clear the boundary of system, wrote out user cases.
-
✓ Combed out the business data flow, draw out business data module.
-
✓ Created physical data module, DB scheme.
-
✓ Divided system into sub modules.
-
ETL:
-
✓ Took part in ETL work between old application DB and new application DB.
Cernet — Intern
Mar 2002 - Dec 2002
Software Engineer, full stack, mainly focus on back end .
Took part in developing E_Payment web application
- E_Payment application
-
It is online payment application like Paypal to provide payment service used by Cernet web site. Its framework mocked the Sun pet store using JavaScript, JSP, Servlet, JDBC, EJB
Developed admin module of E-payment application from the front-end to back-end Features includes
-
✓ Register/update new user information.
-
✓ Manage user authority via user’s group.
Developed common library
-
✓ Defined DTD, a Document Type Definition, and developed a parser to parse a given XML according the DTD.


Where do we go from here?
- Things are working for small systems
- Where do we expect FRI-CC to do well?
- The more sparse \(t_{i j}^{a b}\) becomes, the more we can compress and still retain the
same
accuracy
- If we can compress more, the calculation becomes faster
- When might \(t_{i j}^{a b}\) be sparse?
- If we use localized orbitals for a non-covalently bonded system
\(t_{i j}^{a b}\) Sparsity for Pentane
\(t_{i j}^{a b}\) Sparsity for Methane Dimer


Display Energy Certificate Recommendation Report (DEC-RR)
Report Contents
Report number
0790-9626-8520-5090-7503
Valid until
1 June 2023
66 Primrose Hill
London
NW3 2UU
Recommendations
Make these changes to improve the building's energy efficiency.
Recommended improvements are grouped by the estimated time it would take for the change to pay for itself. The assessor may also make additional recommendations.
Each recommendation is marked as low, medium or high. This shows the potential impact of the change on reducing the building’s carbon emissions.
| Recommendation | Potential impact |
|---|---|
| Review staffing arrangements and set up formal systems for delegating authority for Building Energy Management System alterations and/or temporary overrides. | Low |
| Review the air conditioning energy performance report and seek to implement any outstanding recommendations for action. | Low |
| Consider fitting 24 hour/7 day time controls onto electric HWS cylinders. | Low |
| Consider installing timer controls to energy consuming plant and equipment and adjust to suit current building occupancy. | Low |
| Recommendation | Potential impact |
|---|---|
| Consider engaging experts to review the condition of the building fabric and propose measures to improve energy performance. This might include building pressure tests for air tightness and thermography tests for insulation continuity. | Medium |
| Consider fitting secondary glazing and/or under glaze sky lights where appropriate. | Medium |
| Recommendation | Potential impact |
|---|---|
| Engage experts to review the building lighting strategies and propose alterations and/or upgrades to daylighting provisions, luminaires and their control systems and an implementation plan. | Medium |
| Consider replacing or improving glazing. | Medium |
| Recommendation | Potential impact |
|---|---|
| Install sub meters for Library. | Low |
Building and report details
- Building occupier
- City Council
- Building type
- University campus
- Building environment
- Heating and natural ventilation
- On-site renewable energy sources
- Not applicable
- Separable energy uses discounted
- Not applicable
- Electricity used
- 751445 kWh
- Gas used
- 72956 kWh
- Total useful floor area
- 935 metres squared
- Building reference
-<PHONE_NUMBER>3
- Report issued on
- 22 September 2010
- Calculation tools
- DCLG, ORCalc, v3.6.2
- Type of inspection
- Physical
Assessor’s details
- Assessor's name
- John Howard
- Employer's name
- Viridian Consulting Engineers Ltd
- Employer’s address
- Lloyds House, 18, Lloyd Street, Manchester, M2 5WA
- Assessor number
- ECMK201470
- Accreditation scheme
- ECMK Ltd
- Assessor’s declaration
-
No connection to the property
The assessor declared they have no personal or business connection with the property’s owner or anyone who may have an interest in the property.
Other DEC-RR for this property
If you are aware of other reports for this property that are not listed below, contact the helpdesk on 0207 164 6672 (Monday to Friday, 9 AM - 5 PM).
| Reference number | Report type | Expiry date |
|---|---|---|
| 9876-6789-5432-2345-1351 | DEC-RR | 8 August 2019 (Expired) |
| 1351-2345-5432-2345-9876 | DEC-RR | 12 May 2018 (Expired) |
| 2345-5432-9876-2345-2345 | DEC-RR | 1 June 2016(Expired) |


TWEB
Menu
Character Generator
About
TWEB
Thorough Web Entertainment Board
Character Generator
Email
Username
Confirm user
Repositories
Hero Stats
Name of the User
Level
0
Attack
0
XP
0
Defense
0
Life
0
Speed
0
Intelligence
0
Charisma
0
Achievements
Graph of Stats
About
Nadir Benallal
DDR
Miguel Pombo Dias
Dragons
Mika Pagani
Greetings
Luana Martelli
Cookies
Copyright © TWEB - Thorough Web Entertainment Board 2018


Sometimes it's better to use dynamic size arrays. Java's Arraylist can provide you this feature. Try to solve this problem using Arraylist.
You are given $n$ lines. In each line there are zero or more integers. You need to answer a few queries where you need to tell the number located in $y^{th}$ position of $x^{th}$ line.
Take your input from System.in.
Input Format
The first line has an integer $n$. In each of the next $n$ lines there will be an integer $d$ denoting number of integers on that line and then there will be $d$ space-separated integers. In the next line there will be an integer $q$ denoting number of queries. Each query will consist of two integers $x$ and $y$.
Constraints
$1<=n<=20000$
$0<=d<=50000$
$1<=q<=1000$
$1<=x<=n$
Each number will fit in signed integer.
Total number of integers in $n$ lines will not cross 100000.
Output Format
In each line, output the number located in $y^{th}$ position of $x^{th}$ line. If there is no such position, just print "ERROR!"
Sample Input
5
5 41 77 74 22 44
1 12
4 37 34 36 52
0
3 20 22 33
5
1 3
3 4
3 1
4 3
5 5
Sample Output
74
52
37
ERROR!
ERROR!


Choose your level and start playing the game!
Beginner Normal Expert Mode
Type "space keybord touch" to come back to the current game!
Game Menu
Return to Game Menu


Tushar
Prajapati
Senior Frontend Engineer at
Argonaut
Chess player
Sports person
Artist
Spiritual
Enthusiast
Traveller
Foodie
A nice guy to know :)
Past
MEAN stack developer
Game developer (Unity, LibGDX)
Ethical hacker
Blogger


string
— If use preset format, specific it in this attribute.
Default to Import::SOURCE_FORMAT_EXCEL
$fileConsumerClass
$fileConsumerClass : string
Type
string
— The name of class which transform file into data array.
$modelGeneratorClass
$modelGeneratorClass : string
Type
string
— The name of class which transform the data array into models.
$modelClass
$modelClass : string
Type
string
— The name of model which want to generate by this import process
$columnMappings
$columnMappings : array
Type
array
— Define the rules how the file transform into the wanted model
The rule can be simple as the field name, or a configuration array.
possible configuration option, please @see DataMapping
this configuration array is mapped to data columns one by one.
if the field index is different from the element index in this array, please specific colIndex attribute
One example:
```php
[
'field1',
[
'field' => 'field2'
'required' => true,
'colIndex' => 4,
'translation' => function($orgValue) {
return $newValue;
}
],
...
]
```
$file
$file : string|\yii\web\UploadedFile
Type
string|\yii\web\UploadedFile
— the file to be processed.
$skipRowsCount
$skipRowsCount : integer
Type
integer
— if the file has some header rows, specfic this value to skip these header rows.
$mappingClass
$mappingClass : string
Type
string
— the name of class which deal with $columnMappings elements
default to DataMapping
$validateWhenImport
$validateWhenImport :
Type
$modelScenario
$modelScenario :
Type
$_columns
$_columns : array
Type
array
— the collections of mappingClass
$_importRows
$_importRows : array
Type
array
— the array which contains the row number of success processed row
$_skipRows
$_skipRows : array
Type
array
— the array which contains the row number of not processed row