Landing Page
Special Projects
This story is part of a series of specially designed stories that represents some of the best journalism The Post has to offer. Check out the rest of the special projects here.
11.06.17
Pat McGee knows Ohio University students.
He knows the things they want from their school and how they like to relax. He lives near students, he’s taught legal rights classes to students and he was once a Bobcat himself.
Now running for his second term as an independent on Athens City Council, McGee’s hoping for the chance to continue to advocate for students and bring their voices to the city administration.
“I'm running for the at-large seat because I want to represent all of the citizens of Athens."– Pat McGee
McGee is a strong proponent of students. He has worked for the Center for Student Legal Services since 2000. The managing attorney there, he represents students in everything from landlord disputes to cases involving underage drinking or illegal marijuana use.
He also served as legal counsel for some of those involved in the February protest in Baker Center that led to the arrest of 70 students, according to a previous Post report.
“I must say that I have even been used as a mediator by the university police on issues concerning student demonstrations and free speech issues,” McGee said in an email interview with The Post. “Since our office is not permitted to sue state officials or to ‘meddle’ in internal affairs of the University, I have been able to earn the respect of the administration through my actions without being threatening or subservient.”
McGee says he wants to strive “for increasing mutual respect between students and ‘townies,’” meaning he wants to improve student opportunity in the city and lessen penalties for what he called “indiscretions.” He wants to help make students proud of Athens, because as he says, “It really is an amazing place.”
“One of my goals in running as an Independent again rather than as a democrat is to demonstrate how the current primaries which occur while the students are away, results in a less-representative selection of officials,” McGee said. “I'm running for the at-large seat because I want to represent all of the citizens of Athens."
He isn’t a candidate only for students, though. McGee sees some of the biggest problems in Athens as ones that affect both full-time residents and students alike.
If re-elected, McGee has several main points on which he wants to focus. The first of those points is requiring body cameras for police officers. Calling it a “win/win” for police and citizens alike, he argues it results in “police realizing they have to act as professionals, and citizens realizing that there may be legitimate reasons for the filing of charges.”
He wants to rid the city of “garbage utility charges” that stem from charges on trash can billing in the city. Furthermore, he wants to promote free public transportation and preserve lower-income housing.
“Last of all,” McGee wrote, “I want to challenge what I consider reckless spending on items that have limited benefit.”
Regardless of the results of the election, McGee wants to push to make Athens better for all residents. He says all the candidates for at-large seats on council are “good persons who love Athens, and are worthy of ‘your vote.’”
McGee, who made $7,919.55 as a councilman in calendar year 2017, is one of five candidates running for the at-large position. Other candidates include Sarah Grace, incumbent Peter Kotses, incumbent Arian Smedley and Noah Trembly.
“We have significant differences of opinion though on how best to serve the public,” McGee said. “I believe one should always ask who benefits by this action or expenditure, and who loses? The result might really surprise you.”
Landing Page
This story is part of a series of specially designed stories that represents some of the best journalism The Post has to offer. Check out the rest of the special projects here.


The Stars of Draco the Dragon curl around Ursa Minor and the North Star. It looks like the dragon is guarding the North Star.
In a story from long ago, Draco guarded a very special apple tree. The tree was a gift to the greatest of the Greek gods, Hera and Zeus. It was a very special gift because the apples that hung from it’s branches were made of gold. The gods did not want anyone steeling their precious apples, so they had the dragon guard the tree. It worked. Draco kept everyone away, except the great hero, Hercules. With his strength and courage, Hercules fought the beast and picked the golden fruit.


Personalized training programs that actually work.
Ever wondered why your current fitness routines aren’t as effective? Well, that’s because they haven’t been designed for you.
All your health trackers, diet plans, weight loss programs, nutraceuticals etc. are either expensive, inaccessible or give way too much data than you need.
Their effects might be visible in the short run, but their methods aren’t neither sustainable nor do they focus on the most critical aspect of health care. Heart Rate. That’s what we’re out to solve.
“We help you achieve your fitness goal by partnering with you every step towards a healthy lifestyle and sustainable well-being.”
The journey to a truly healthy lifestyle can be repetitive, restrictive and monotonous, and without the right coach, getting through it is impossible. Even the fittest of your icons, need experts to challenge them when they hit a plateau. 5D Life promises world class care, convenience and control you want to see for yourself back in your hands. Our experts from all over the world, craft your health regimes and work with you every day to make sure achieve your goal.
An MA and MBA by training, Sally is one of America’s leading experts in fitness, exercise and lifestyle living.
A leading cardiologist focused on offering patients the very best that there is to offer in health care and heart care.
Madhuri embodies the perfect blend of a passionate gym instructor, posture expert and top notch dietician, absolutely dedicated to fitness.
We’ve designed this app keeping you in mind . All our features have been uniquely adapted and developed addressing hurdles you face in today’s world and giving you a solution at the tip of your fingers... literally.
An in-app chat feature that gives you instant access to your dedicated coach to stay course with your health goals and address your queries.
Save your data free on the APP for a lifetime. Change trackers or apps anytime without loosing your vital health records, ever!
Once you're account is created, all your data is stored via cloud for life. No need to take backups or worry about keeping records.
The app functions as a health aggregator by helping you keep track of your daily routine, movements, even diet.
 Our in-app monitor helps you capture the most critical data point that’s needed. Your heart rate.
All your collected data, once analysed by coaches, helps them to create highly customised workout programs and diet plans.
We want to revolutionise preventive health care globally. Make sustainable fitness accessible through the various products that we build by bridging gaps between experts and users using technology. Every person is different, so are their lifestyles, nutritional intake, body limitations and subsequently their workout routines. Personalised fitness solutions through science, technology and expert advice is our primary aim.
Rashmi Chaudhary is passionate about lifestyle products that integrate technology to make healthy behavior change mostly for inspiring people to live better, longer. Her knowledge of behavioral tools and deep understanding of human emotions and their impact on lifestyle changes, coupled with years of research on lifestyle changes starting with many experiments on her own self and friends that have helped to coach people through the process of making transformational change in daily lives and fitness levels.
After having spent over 11 years as a corporate professional specializing in business human resource and strategy, working with large conglomerates in varied industries ranging from manufacturing, petrochemicals and service, her entrepreneurial venture Five Dots is her vision to get the world’s best solutions for preventive healthcare on a single platform.
Besides challenging her self, Rashmi is a fitness freak who loves spinning and running. Travel for her is therapeutic – whether its for work or leisure.


PrimeIcons is available at npm, run the following command to download it to your project.
npm install primeicons --save
PrimeIcons use the pi pi-{icon} syntax such as pi pi-check. A standalone icon can be displayed using an element such as i or span

Size of the icons can easily be changed using font-size property.

Special pi-spin class applies infinite rotate to an icon.

Here is the current list of PrimeIcons, more icons will be added periodically. You may also request new icons at the issue tracker.


Las Hojitas
Home
Plants
Contact
Blog
Seeds
Live Plants
Accessories
Supplies
Fiddle Leaf
$12
add to cart
ZZ Plant
$25
Add to cart
Money Tree
$46
add to cart
White Orchid
$12
add to cart
Succulent Trio
$25
Add to cart
Coffee Plant
$46
add to cart
Money Tree
$12
add to cart
ZZ Plant
$25
Add to cart
Hoya Heart
$46
add to cart


SEvent
Home
(current)
About us
Contact
Contact Us
Email
We'll never share your email with anyone else.
Message
Submit
×
Modal title
×
Modal body text goes here.
Home
About Us
Contact Us


Before being able to use place, you will need to configure it. This can be done by either placing a configuration file or by using this website to generate it interactively.
place
GitURL
GitBranch
ssh
https
GitSSHKeyPath
GitUsername
GitPassword
SSH Key
HTTPS
BindAddress
ProxyURL
WebhookPath
StaticPath
Timeout
BuildScript
GitHubSecret
GitLabSecret
Debug
Web Hook


We are glad that you have reached here and hope that you are exited to work with us!
We know that most of the visitors may find our work a bit ambiguous.So let's clear out all the doubts by answering the following three questions:
We are a Group of highly enthusiastic Entrepreneurs from SRM University. We are an elegant event management company. We try to give exceptional experience every time at our best.Be a guest at your own event,because in your dreams, every detail matters. We make Creative and elegant event design and planning.
We deliver Extraordinary Fabulously planned events remembered always. Fresh ideas for events. From set up to clean up. Innovative concepts, creative design, flawless execution. It’s what we want to do. We strive to create Memorable experiences through creative events, we want Nobody to do better planning and Total event production like us . We believe Precise coordination = extraordinary results. So we need excellent team which can turning ideas into action.
Judging is not our forte , putting you in pressure or having a strict eye is out of our style , so the only thing we want you to have is dedication towards your work ! We need you to take this project as importantly as our CEO does. So with all green lights we welcome you ! Don't worry, if you want to change your domain of work , you can do it once you are a part of our team!


{% extends "horizon/common/_modal_form.html" %} {% load i18n %} {% load url from future %} {% block form_id %}{% endblock %} {% block form_action %}{% url 'horizon:admin:volumes:volume_types:create_type' %}{% endblock %} {% block modal_id %}create_volume_type_modal{% endblock %} {% block modal-header %}{% trans "Create Volume Type" %}{% endblock %} {% block modal-body %}
{% blocktrans %} Volume type is a type or label that can be selected at volume creation time in OpenStack. It usually maps to a set of capabilities of the storage back-end driver to be used for this volume. Examples: "Performance", "SSD", "Backup", etc. This is equivalent to the cinder type-create command. Once the volume type gets created, click the "View Extra Specs" button to set up extra specs key-value pair(s) for that volume type. {% endblocktrans %}


Let us dance: Understanding Classes through Musical Metaphor
Posted on September 25, 2015
Posted on September 25, 2015
This week, the Chicago Symphony Orchestra – at the beginning of its 2015-2016 season – performs Bolero (1928) by Maurice Ravel. Bolero is pure excitement. The piece consists of a single melody – a breathless, sensual, dance tune, performed by soloists, who showcase the coloristic effects of their instruments (e.g., flute, Bb and Eb clarinet, bassoon, oboe, trumpet – indeed, even the saxophone). With each instance of the melody, the piece grows in intensity, until its explosive, somewhat disorderly finale.
...show more...
Ravel's dance tune provides a meaningful analog to Ruby classes. A class is a "blueprint" or model for an idea. The Bolero melody can be understood as such a blueprint; each solo performance of it occurs as an "instance" of this blueprint. The solos vary, in terms of instrument (flute? oboe? saxophone?) and volume (let's say, on a scale of 1 to 10, with ten being the loudest). The Ruby class holds these attributes in instance variables – distinctly preceded with an<EMAIL_ADDRESS>However, instance variables cannot appear outside of the class itself without a method that uses the variable. In other words, a separate, stand alone method gives power to an instance variable, as in this example:
class Bolero def initialize(instrument, volume) @instrument = instrument if volume <= 10 && volume >= 0 @volume = volume else raise ArgumentError end end def instrument p @instrument end def volume p @volume end end
solo_1 = Bolero.new("flute", 2) solo_1.instrument => "flute" solo_1.volume => 2
Making such methods can be tiresome, however. Ruby fortunately has "reader" and "writer" methods, which allow instance variables to live outside the class, but without the hassle of generating a unique method for each variable. The attr_reader method returns the variable without changing it; the attr_writer method deems the variable mutable, allowing it to be changed, though not read. Further, the attr_accessor method makes variables both "readable" and "writable."
class Bolero attr_accessor(:instrument, :volume) def initialize(instrument, volume) @instrument = instrument if volume <= 10 && volume >= 0 @volume = volume else raise ArgumentError end end end
Classes can encapsulate many more instance variables, sometimes very sophisticated ones that behave in weird and complex ways. With greater complexity comes greater frustration, thrills, and possibilities, offering us a reason to dance.
...show less...
Nutritious Innumerable Universe
Posted on September 19, 2015
Posted on September 19, 2015
My last post explored the differences and similarities between two types of containers: arrays (lists of objects ordered numerically) and hashes (lists of objects organized into key-value pairs). Hashes and arrays bring order to our disorganized, complex, troubling, exhilarating, confusing, beautiful universe. Nonetheless, the full organizational potential of hashes and arrays exists not in the containers themselves, but in the myriad ways we can access and manipulate them.
...show more...
Behold. The innumerable. The innumerable, or innumerable module, bestows objects with great power. It allows objects to access bundles of capable methods. These methods depend upon the notion of .each, which iterates over collections by pushing each element into a code block, as in this example that helps to describe the items in my fridge after shopping at the Division Street Farmers' Market:
array = ["green beans", "apple", "pepper", "watermelon"]
array.each {|x| p "yummy " + x } => yummy green beans yummy apple yummy pepper yummy watermelon
Innumerable methods offer more subtle, often more powerful variants of the .each method, for instance: .each_with_index. The .each_with_index method considers each element of an array as well as its index number, as in this example:
array = ["green beans", "apple", "pepper", "watermelon"]
array.index_with_each {|x, index| p "yummy #{x} @ #{index}" } => "yummy green beans @ 0" "yummy apple @ 1" "yummy pepper @ 2" "yummy watermelon @ 4"
The .each_with_index method, perhaps most compellingly, can help transform an array into a hash, in which the elements of the array appear as the hash keys and the index numbers appear as the hash values:
hash = {}
array = ["green beans", "apple", "pepper", "watermelon"]
array.each_with_index {|x, index| hash[x] = index } => { "green beans" => 0, "apple" => 1, "pepper" => 2, "watermelon" => 3}
The .each_with_index method and its cousin innumerables can help create sophisticated programs – programs that can sort vegetables or organize the universe.
...show less...
Containers, Collections, Chicago
Posted on September 13, 2015
Posted on September 13, 2015
I recently moved into a studio apartment in the heart of Chicago (Near North Side). I can walk to Oak Street Beach, Navy Pier, and on particularly nice days, Millennium Park. Though a portal into the beauty of Chicagoland, my apartment – due to it spacial limitations – demands an exhaustive system of organization. I thus use various containers (boxes, Tupperware, shelving units, etc.) to establish order. Some of these storage containers place my belongings into a precise, linear order: the top drawer of my (modest) dresser holds underwear, the second drawer – bras, the third – socks and running shorts, and the bottom – leggings. I also have a refrigerator, which contains structure, but not precise, numerical order: when I buy a new food item, I put it in the fridge, where it resides until I eat it or replace it with something else.
...show more...
Arrays and hashes work similarly. They are containers (or lists) for objects. The objects in an array appear between brackets, like so:
dresser_drawers = ["underwear", "bras", "socks and shorts", "leggings"]
An array organizes its contents in numerical order, starting at zero. In the "dresser_drawers" array, "underwear" sits in the zeroth position, "bras" sit in the first position, and so on. Hashes are also containers that organize lists of objects. Hashes, however, present a slightly more sophisticated if less linear system of order. The objects in a hash appear between two curly brackets, and each object contains two parts – a key and its value, like so:
refrigerator = { "cheese_drawer" => "Parmesan", "vegetable_crisper" => "corn", "bottom_shelf" => "milk", "door" => "butter" }
The hash array collects each object, not according to a numerical index, but rather according to the objects themselves. Therefore, to access an object in the array, I simply call the object by its name, not by it integer position. Like the containers in my studio apartment, arrays and hashes serve different, but equally useful purposes – helping to bring order and structure to the world around us.
...show less...
The World Wide Web According to Bach
Posted on September 4, 2015
The first movement of Bradenburg Concerto No. 1 by JS Bach (1685-1750) contains a handful of musical ideas: an oscillating melody in the violins and oboes superimposed over a disruptive "hunting" horn call. The fourth movement of Symphony No. 82 by Josef Haydn (1732-1809) presents one prominent melody, a playful pastoral dance, that recurs in every section and subsection of the movement. String Quartet, Op. 28 by Anton Webern (1883-1945) contains a four-note cell – a reference to Bach's name – that repeats and repeats, providing the basic musical material for the entire piece.
...show more...
Written by composers from three very different historical moments, these works present examples of, what some thinkers call, "motivic economy," a principle of music composition that celebrates efficient repetition. This principle, in one sense, suggests that repetition creates coherency, intelligibility, and beauty. Repetition, in other words, makes masterworks masterful.
To write good CSS requires some understanding of Bach, Haydn, and Webern – or, at least, an understanding of motivic economy. HTML gives the website its basic content, and CSS shapes, colors, and brings to life the elements of HTML. CSS and HTML files thus communicate together. An HTML file contains elements...and elements within elements...and elements within elements within elements. An element can indicate a header, a paragraph, a blockquote, and about one hundred other "semantic" things. The CSS file selects these elements and adds style to them.
In HTML, "class" labels can appear next to elements, e.g., p class="ex-l". The class – a type of CSS selector – prepares the element for styling in CSS: the class can receive several style values, which are then applied to the element itself in the HTML. Several elements can share a class. For instance, all link elements (the "a" tag) and headers (the "h" tags) might share a class of "strong." In the CSS, the "strong" class could receive, let's say, a font-weight of bold: all links and headers on the site would in turn be bolded.
"ID" labels can also appear next to elements, e.g., p id="p-xs". However, IDs do not function as classes do. An ID is unique; it can only select one element, one time. IDs can be useful, if the site has an element with very specific styling needs (perhaps, a detail in the footer or an aside). Still, an HTML file with an excess of IDs likely has some problems: mainly, the code lacks "motivic economy." A plethora of IDs results in verbose, bombastic, ineloquent CSS files. Whereas, a collection of cleverly organized classes creates intelligible, precise CSS, the kind of CSS that Bach, Haydn, or Webern might write.
...show less...


This document describes how to write OWL ontologies in Attempto Controlled English (ACE).
To begin, here are some simple statements that are usually found in ontologies. The ACE representation is contrasted with a "formal language" representation that is normally used in such ontologies.  Therefore, we describe only a subset of ACE. This subset does not contain adjectives, adverbs and prepositional phrases; intransitive and ditransitive verbs; queries and imperative constructions; modality and sentence subordination; and negation as failure.
The following OWL constructions are currently not supported by the ACE-to-OWL mapping.
Note that some OWL elements will never be supported, because they are just syntactic sugar and have furthermore no clear ACE counterparts.
The following text is structured to separately discuss the three main building blocks of ontologies as used in OWL: individuals, classes and properties.
One can talk about individuals, classify them and describe relations between them. For example,
There is a man. The man is John. His age is 32 and he likes Mary. Mary loves herself. Bill sees something. John is not Bill.
The following graph visualizes the model described by the story, with individuals (denoted by ellipses), their belonging to classes (boxes with labels), properties (solid arrows with labels), equality (dashed line) and difference (red line). Data-values are in a box with dotted border. In case the name of an individual is know then it is written into the ellips.
OWL does not make a unique name assumption, i.e. an individual can have different names and one has to explicitly state the equivalence or difference of two differently named individuals. Therefore, whether Mary is John or is Bill or is different from both of them, is still open, we only know that John is not Bill. The fact that John belongs to the class man is not explicit in the picture, but can be derived by simple reasoning. Note also that John, Mary, Bill and the thing that Bill sees, all belong to the topmost class owl:Thing.
One can also classify the individuals by complex class descriptions, e.g.
One can describe classes by specifying relations to other classes. Such relations can be a simple inheritance from a named class ("Every man is a human.") or more complex property restrictions ("Every driver owns a car."). In OWL, the classes do not need names, they can be abstract descriptions, e.g.  Such descriptions can be made arbitrarily complex by negation (no, is not, does not), disjunction (or, or that) and conjunction (and, that, and that).
Both the every-sentences ("Every man who has a driving-license drives a car.") and the if-then sentences ("If a man has a driving-license then he drives a car.") can be used. The if-then sentences are more flexible in the way the verbs can refer to existing nouns via anaphoric references (pronouns, variables, and definite noun phrases). However, it is often the case that OWL cannot express this kind of argument sharing between verbs. Therefore, it is a good idea to only use every-sentences and avoid all kinds of anaphoric references to nouns occurring in the same sentence.

Every carnivore is a meat-eater and every meat-eater is a carnivore.
Disjointness of classes can be expressed via ACE's negation which maps to OWL's ComplementOf.
Every man is not a woman. (man ⊆ ¬ woman) No man is a woman. (man ⊆ ¬ woman) Nothing is a man and is a woman. (owl:Thing ⊆ ¬ (man ∩ woman))
Transitive verbs and adjectives introduce the SomeValuesFrom restriction.

Let's say we want to express that carnivores and meat-eaters are equivalent
concepts (i.e. that carnivore = ∀ eat meat
).
No carnivore eats something that is not a meat. Everybody that doesn't eat something that is not a meat is a carnivore.
There is also a shorter ACE syntax for some patterns of AllValuesFrom (i.e. where AllValuesFrom is on the right side of the subsumption sign).
Everything that a carnivore eats is a meat. (∃ inv(eat) carnivore ⊆ meat) Everything that is eaten by a carnivore is a meat. # the same using passive
Classes can also be described in terms of a property and its cardinality. (Note that the plural of `thing' will be mapped to owl:Thing.)
Every woman likes more than 2 things. (woman ⊆ >= 3 like owl:Thing) Every millionaire owns at least 2 cars. (millionaire ⊆ >= 2 own car)
Reflexive pronouns (`itself', `himself', `herself') can be used to describe (ir)reflexivity.
Every narcissist likes himself. No river flows-into itself.
Classes can also be described in terms of a property and its value that is either an individual or data-value. This corresponds to OWL's HasValue construct. For individual-valued properties, one must use a transitive verb (or adjective) with an object that is a proper name or a reference to an individual that has already been introduced.
Every man knows John. (man ⊆ ∃ know {John}) There is a woman who everybody likes. (w ∈ woman; owl:Thing ⊆ ∃ like {w}) John likes every dog. (dog ⊆ ∃ inv(like) {John}) Every dog is liked by John. # the same using passive
For data-valued properties, ACE makes use of the copula verb `is', a genitive construction (Saxon Genitive, possessive pronoun or an of-construct), a noun which expresses the property, and finally a number or a string. For example
Everybody whose age is 32 is a grown-up. If there is a man who lives-in Paris then the man's address is "Paris". For all water it is false that the temperature of the water is -1.
where the genitive construction is expressed by `whose', `man's', `of the water', the property is expressed by `age', `address', `temperature', and the data-value is `32', `"Paris"' and `-1'.
OWL properties correspond to ACE's verbs and transitive adjectives (e.g. `taller than').
A superproperty for a given property can be defined as:
Everybody who loves somebody likes him/her.
or in a more verbose manner:
If there is somebody X and X loves somebody Y then X likes Y.
Disjointness of properties can be declared by using negation.
Nobody who likes somebody hates him/her.
or more verbosely:
If somebody X likes somebody Y then it is false that X hates Y.
Property chaining is a complex mathematical concept that does not have a simple verbalization in natural language. E.g. the transitivity of a property is formulated in ACE in the following ways (different levels of syntactic compactness are provided):
If something X is taller than something Y and Y is taller than something Z then X is taller than Z. If something X is taller than something that is taller than something Y then X is taller than Y.
To declare an inverse property of a property, two sentences are needed.
If something X is taller than something Y then Y is shorter than X. If something X is shorter than something Y then Y is taller than X.
The rest of the syntax that OWL provides for describing properties is just syntactic sugar, one can use the already described class relations, cardinality constraints and inverse properties instead.
Properties can have a domain and a range. The domain of a property can be expressed e.g. by
Everybody who writes something is a human.
The range of a property can be expressed by:
Everything that somebody writes is a book or is a paper. Everything that is written by somebody is a book or is a paper. # the same using passive
Properties can be functional and inverse functional. Functionality means that for a given subject, the object of the property (verb) is always the same. Inverse functionality means that for a given object the subject must always be the same. For functionality, one has to restrict the class owl:Thing to have at most one value for a given property (it is OK to have no values at all).
Everybody orders at most one thing. (owl:Thing ⊆ <= 1 order owl:Thing)
Inverse functional properties are expressed by switching the subject and the object of the verb.
Everything is something that at most one thing orders. (owl:Thing ⊆ <= 1 inv(order) owl:Thing) Everything is ordered by at most one thing. # using passive
Symmetric property is its own inverse. The various ACE syntaxes to express this are:
If somebody X loves somebody Y then Y loves X. Everybody who is loved by somebody loves him/her. Everybody who somebody loves loves him/her.
Equivalent properties are expressed by declaring the two properties to be superproperties of each other.
Everybody who hates somebody despises him/her. Everybody who despises somebody hates him/her.
User acceptance of the reasoning results obtained on the OWL level and perceived on the ACE level provides the basis for proving that the mapping from ACE to OWL is useful. Given the ACE text
John is a man. No man is a woman. John is a woman.
the reasoner will find an inconsistency because John has been asserted as a man and men have been described as disjoint from women.
Here is another example.
 No child is a man. No child is a woman.
This text may seem strange, but it is not inconsistent, as far as OWL is concerned. All we have done, is constructed an empty class child, which is perfectly legal (one can say, though, that the class child is unsatisfiable). Only when we claim that there are elements (individuals) in this class, for instance by stating
John sees a child.
do we end up being inconsistent.
Reasoning about property restrictions finds inconsistency in:
Every man sees a dog. Nothing is a dog. John is a man.
Reasoning about properties of properties. The following text is consistent.
No dog likes a cat. Fido is a dog. It loves a cat.
But it becomes inconsistent if we add information about the relation between `like' and `love':
Everything that loves something likes it.
We can also reason about the domain and range of properties.
Everything that somebody writes is a book. Everybody that writes something is a human. John who is a man writes a paper. Every man is a human.
Inconsistency is caused when we now claim that:
No paper is a book.
Reasoning about cardinality, e.g. functional properties. Imagine a library policy saying that everybody can order only one item from the library, and that John places two orders.
Everybody orders at most one thing. John orders a book X and orders a book Y.
This text is consistent, namely because the reasoner sees nothing strange about taking X and Y to denote the same item (individual). Only when we state that:
X is not Y.
would it become inconsistent.
Reasoning about inverse functional properties is similar.
Everything is ordered by at most one thing. Mary orders a book X. Bill orders the book X. Mary is not Bill.
Reasoning about transitivity and HasValue will find the following text inconsistent.
If something X follows something that follows something Y then X follows Y. John follows Mary who follows Bill who follows John. No manager follows Mary. Bill is a manager.
Reasoning about inverse properties. In ACE, in many cases, one does not have to explicitly assert a named inverse property of a given property. One can simply use a passive verb to create an (unnamed) inverse property. An inconsistent text, containing an inverse property, can be constructed like this:
John likes Mary. Nobody is liked by John. # This statement would be redundant: #If somebody X likes somebody Y then Y is liked by X.
Reasoning about nominals (i.e. OWL's OneOf construct). The following text is inconsistent.
Every student is somebody who is John or who is Mary. Bill is a student who is not John and who is not Mary.
To learn ACE, check out the Attempto project website at http://attempto.ifi.uzh.ch/site/. The Attempto project provides tools for working with ACE, in particular, Attempto Parsing Engine (APE) can be used to convert ACE texts into Discourse Representation Structures and then to OWL.
APE is available under the LGPL license, but it can also be used through a REST webservice. For example, an OWL ontology that corresponds to the ACE text ``Every man is a human.'' is given by the URL
http://attempto.ifi.uzh.ch/ws/ape/apews.perl?text=Every+man+is+a+human.&solo=owlxml
The resulting ontology is represented in the XML Serialization syntax. For a Prolog-based serialization, use solo=owlfss.
To visualize and reason about the ontologies that APE generates, load the generated XML output into an ontology editor that supports OWL 2 (e.g. Protégé 4).
Kaarel Kaljurand (kaljurand@gmail.com), 2010-11-04


I290TA Information Organization Laboratory
Overview
Fall
2014
TuTh
10:30-12
205 South Hall
CCN: 41659
Students will learn about the theories of information organization and retrieval in the context of the Open Web Platform (OWP). A variety of topics will be covered by exploring the capabilities of the OWP via various assignments and a final project. The course is project-oriented and culminates in a final project that uses various technologies of the OWP to implement a complete system. Students will develop skills in various OWP technologies (JavaScript, HTML, CSS, SVG), rapid prototyping, visualization, and utilization of data formats like XML and JSON.
Instructors
R. Alexander Miłowski<EMAIL_ADDRESS>@alexmilowski TTh 12:45-13:45; WTh by appointment
Ramit Malhotra<EMAIL_ADDRESS>@ramit_malhotra
Description
Exploring and applying theories of information organization and retrieval in the context
of the modern ecosystem of the Web, mobile applications, big data
technologies
requires a variety of skills. This course will focus on the Open Web Platform (OWP) as a
nexus of standards and technologies that serve as a contract between producers and
consumers of information and services. The goal of the class is to provide a baseline of
skills and an awareness of where to go for more information that calumniates in a final
project of a working system.
As part of this exploration of the Web, focus first on various browser technologies of the OWP such as HTML, SVG, CSS, and JavaScript. We will explore the use of various annotation technologies like RDFa and JSON-LD and applications that receive data via services that return data in XML or JSON formats. The focus will be on how the OWP can serve as vehicle for both delivery of content and applications.
Follow this, we explore data exchange architectures for delivering services over the Web.
We will build XML and JSON data services using scripting, XSLT, XQuery, XProc, and
NoSQL
databases. This will give the student full exposure to the whole
stack
from the browser to the database.
There will also be various special topics such as using mapping technologies like Leaflet and D3 and Open Street Maps for visualization of data. These technologies layer on various technologies of the OWP such as SVG and CSS. We will focus on how scripting can be used to orchestrate such libraries and evaluate the mapping between data services and such client-side APIs.
The course is structured as a set of lectures, discussions, and lab sessions. The purpose of the lectures is give an overview of particular technologies, their history, use, and where to go for more information. Discussions and lab sessions will be used to address questions or particular applications within the context of homework, projects, or general interest.
The course assignments are divided into two general categories:
- Homework — tasks focused on exploring a particular technology to gain particular hands-on experience.
- A Final Project — a single final project of a complete Web application implementing an idea of your choosing.
Homework
Schedule permitting, homework will be due before the class meeting date on which it is due and will typically be assigned early in the previous week. Each assignment is designed to focus on particular skills and completed without massive efforts.
This is a course about using the Web. If you are asked to write about something for your homework, please turn in an HTML document. No PDF or other proprietary document formats will be accepted.
Late homework will be marked down 1 point per day (e.g., 2 days late, 2 points off). Other arrangements can be made by prior agreement if you find yourself unable to complete a homework assignment. Such arrangements must happen before the due date.
The Project
A final project is a large portion of your grade and it is divided into two components: project milestones and the actual project itself. Throughout the course,there will be project milestones where you will be expected to present a brief update about your project to the class. Some of these project milestones may require turning in some version for further review.
The purpose of these milestones is to:
- update your colleagues on your status,
- make them aware any issues,
- solicit feedback,
- share your knowledge.
While the project milestones are for your benefit in making sure you making appropriate progress, they are still graded. You are expected to make a professional presentation. That typical an appropriate number of slides that briefly inform your colleagues.
The project milestones are:
- The pitch (P1) — pitch your idea or pitch yourself.
- Mockup (P2) — how are you going to solve the problem?
- Information Design (P3) — information model and UI design.
- Implementation Updates (P4) — update on the implementation, progress, and issues.
The final project must consist of:
- A complete application.
- A working system that can be deployed and tested.
- A short paper describing your application (5-10 pages in length).
Projects must be approved by the instructor to ensure that the scope is appropriate for the course so that you can be successful.
Careful consideration should be used for the technologies used and the scope of the project. The project should demonstrate a sufficient level of mastery of the technologies discussed during the course lectures. If there are unforeseen problems, the project scope can be modified to make sure the application can be completed in time.
If desired, students may form project teams (maximum 3 students per team) but the scope of the project must fit the team size. Individual projects are also welcome.
Important Dates
- 09-16 and 09-18 — P1 due— pitches
- 10-09 — P2 due — mockup
- 10-30 and 11-04 — P3 due — information design
- 11-25 and 12-02 — P4 due — implementation update
Grading
- 10% class participation - yes, you must show up!
- 30% homework - each has equal value and is graded on a 10 point scale.
- 20% project milestones
- 40% final project
Schedule
08-28 Introduction & Overview; The Open Web Platform (OWP); Mesonet.info Demo; Tools
09-02 HTML and Intrinsic Vocabularies; XML and the Web; Unicode; An Introduction to Git
09-04 Theory of Formatting; CSS: Getting your Style;
Homework #2: Back to the Future with CSS3; due 09-11
Resources
HTML
CSS
Testing
- WebPageTest — test a web site in various browsers online
- Chrome Developer Tools
- Safari Developer Tools
- Firefox Developer Tools
- Internet Explorer Developer Tools
09-09 JavaScript: The Basics; Web APIs; The Document Object Model (DOM); JQuery to the Rescue?;
09-11 Functions, Timers, Events, and Callbacks; Pitching Projects; Slidy for Presentations
09-16 Web Architecture and Organizing Information; Working with Resources
Your Pitches (P1) due
09-18 Scoping rules; Closures; Git for Homework; jQuery and AJAX
Your Pitches (P1) due
09-23 Objects and Prototype
Your Pitches (P1) due
09-25 Introduction to Leaflet; Visualization via D3; Leaflet Activity
09-30 Encapsulation — more than what's for breakfast!; Three bits of CSS advice; What is a 'mockup'?
10-02 Multi-tiered Architectures; Poster; Working with Service APIs; Twitter Data Collection
10-07 Node.js; Flask
10-09 Mockup Presentations (P2)
Mockup (P2) due
10-14 Local Knowledge and Services; A Whirlwind Introduction to RDFa; schema.org activity
10-16 Turtle; JSON-LD by Example; Scripting RDFa; scripting activity
10-21 Using Amazon Web Services (AWS EC2); XQuery by Example
10-23 A bit more about XQuery; XProc & XProclet; Exercise: Using XQuery for the Web
10-28 Open Topics - TBD
10-30 Information Design Presentations
Information Design (P3) due
Homework #7: Querying the State Department; due 11-25
11-04 Open Topics - TBD
11-06 Measuring Performance; Testing
11-13 Mobile First, Responsive Design, and Accessibility
11-18 Open Topics - TBD
11-20 Accessing Data and CORS; Access Control and Login; CDNs; Polyfills and Web Components
11-25 Implementation Update Presentations
Implementation Updates (P4) and Fire Fighting due


Sunny's Battle Replayer
Convert your battle-detail files to kc3kai's battle replayer format from inside POI-viewer
copy to battleplayer
reload battleplayer
download battle image


The Hefang Street and Drum Tower near Zhonghe Road in Hangzhou are popular with both local and foreign tourists. There are a variety of specialties here and has a long history of thousand years of cultural deposits.
In 1938, Hangzhou was appointed as the capital of the Southern Song Dynasty and changed its name to Lin ‘an. The South Imperial Street on Hefang Street is actually the road which emperor worship ancestors went through.
If my friends come to Hangzhou and want to try some Hangzhou cuisine, my first choice must be the Huang Faner (Wang Ruixing) Restaurant located near the South Imperial Street.
The Chinese character of Huang Faner Restaurant on the plaque was given by Qianlong Emperor (1711-1899). It is said that he loved the dish of Fish Head with Tofu in this restaurant. As one of the oldest restaurants in Hangzhou, many Chinese and foreign foodies come for this dish.
There’re many pictures that represent the history of Huang Faner Restaurant and a plenty of old vases and china on the bookshelf. Even the dishes on the table are imitated celadon. We can tell that the owner of Huang Faner Restaurant exert to present the atmosphere of ancient times.
 However, this dish is quite delicious that I ate them all. The tender and crisp tea mushroom paired with shredded makes it easy for people to eat in summer without feeling greasy.
「Qiangjiang Shredded」
This is definitely a super Hangzhou cuisine! The chef should cut the shredded in right thickness. When the shredded is cooked, pour it into a plate that covered ample of shallot. After that, the shredded will combined the flavor of pork and the shallot.
「Stir Fried Lily Roots With Celery」
The parsley is crisp and the lily roots has the mixture taste of sweet and bitter. If you’re in the appropriate season, the chef will also add some ginkgo into this dish.
Comments: As a famous restaurant with a long history, the price of Huang Faner (Wang Ruixing) Restaurant is not expensive at all! We ordered four courses, two bowls of rice and a can of Sprite and it only cost us 150 yuan. Considering its reputation and location, this restaurant is Cheap & Fabulous.
Site: Huangfan’er, Gaoyin Street, Qinghe Lane, Shangcheng, Hangzhou, Zhejiang, China
Hours: 11:00-14:00 17:00-21:00
Tel: +86 (0571)87807768
Restaurant Information
Huang Faner (Wang Ruixing) Restaurant
53 Gaoyin St, Qing He Fang, Shangcheng Qu, Hangzhou Shi, Zhejiang Sheng, China
This post participated in the Tasteem contest Cheap and Fabulous? Totally possible!
What is Tasteem?
This page is synchronized from the post: ‘「Vicky’’s Food」Huang Faner (Wang Ruixing) Restaurant’


{% extends "layouts/_block_content.html" %} {% from "components/breadcrumbs/_macro.njk" import onsBreadcrumbs %} {% from "components/button/_macro.njk" import onsButton %} {% set page_title = "Help who is ons" %} {% set breadcrumbsData = [ { "text": "Sign in", "url": "/sign-in" }, { "text": "Help", "url": "/help" }, { "text": "Information about the ONS", "url": "/help/info-ons" } ] %} {% block breadcrumbs %} {{ onsBreadcrumbs({ "ariaLabel": "Breadcrumbs", "id": "breadcrumbs", "itemsList": breadcrumbsData }) }} {% endblock breadcrumbs %} {% block main %}
We are the UK’s largest independent producer of official statistics and its recognised national statistical institute.
We are responsible for collecting and publishing statistics related to the economy, population and society at national, regional and local levels.
We also conduct the census in England and Wales every 10 years.
See more about the ONS
Sign in to your account to send a secure message.
If you are having problems signing in, please contact us.
{% endblock main %}


Some of the activities described are dangerous and/or illegal and none are recommended by Erowid.


1. Send 1 QRL to Q01050038ca2264a06ee154a681201f99079bcd1ddf28355060b969daed25dd98efbf9ffd61b9b6 putting the following unique reference in the Message field:
2. Wait for your transaction to confirm on the QRL network and check back to this window.
Do not close this window until you have received your ebook!


| DOSE: |
0.5 joints/cigs |
smoked |
Cannabis |
(plant material) |
I'm not sure where to start so I'll just go in chronological order. That day I had just finished a math exam that I wasn't too pleased with when a friend of mine met me at my locker. 'Hey man, I got some chronic weed! You wanna buy?' he asked. I guess it was a combination of fustration over my poor math performance and looking for a way to cut loose after exams, but I purchased some of this fine ganja.
Previously I had smoked some mild weed without much effect and said to my friend, 'I hope this is worth it'. 'Believe me man! Don't smoke this alone!' he warned.  So then I headed out to the garage. On the way (I don't know what compelled me) I asked my sister if she wanted to join me. To my surprise, she did. Little did we know what the next two hours had in store for us!
I sparked it up and got it burning. We took turns until about half the joint was done. Then I noticed that I no longer felt cold (it was January). I asked my sister how she felt, she said she didn't feel anything yet. The joint fizzled out and I went to relight it, which was a bit difficult. I passed it to my sister and adjusted my coat, which felt weird. Then it happened! As I shifted the coat, I got a weird tingling sensation like when your leg falls asleep. I became aware that I had entered a different reality. I knew that everything was the same, but my perception had changed.
I decided we should go inside. The trip to the door was both funny and frightening. We stumbeled inside, my thoughts were all over the place. Then I got paranoid and ran to the washroom and flushed the roach down the toilet. Was this laced? I asked myself, this was too strong.
Everything moved in flash frames, no longer continuous. I was a bit disoriented and so was my sister. We bumped into each other several times. We made our way to the kitchen and drank some water, our mouths were bone dry. I could feel paranoia setting in, but I was determined not to have a bad trip so I put my demented thoughts in the back of my mind. We decided to watch TV. I couldn't keep still, the numbing of my body drove me nuts. My thoughts went everywhere except the movie we were trying to watch. One moment seemed unconnected to the next. What was going on?
I wandered around the house a bit while my sister sat stupified in front of the TV. I tried to rest but my heart was pounding and the shirt I was wearing made my skin tingle whenever I shifted position. My sister started to talk on the phone. Apparently our communtication skills were fine because no one noticed we were different in any way. We both got a bit depressed and nauseated but it passed eventually. I continued to wander around the house in a dream-like state lost in my thoughts.
By dinner we were fairly normal. Two hours, what a trip it was! Time started moving at a normal pace, instead of slo-mo like before. I think it must have been a strong Indica because it didn't make us giddy but almost comatose!
Despite the fact that the numbness persisted for almost two days and the experience of slight paranoia, we were both fine. We both agreed it was a worthwhile experience and it has been the topic of much discussion between us. The shared experience brought us closer together. We might do it again sometime, but we both agreed frequent use isn't a good idea.
It was a mind opening experience that I recommend, but as with any choice it should be an educated one. (I had researched a bit before the first time I smoked marijuana just to be sure.) I hope my experience might educate others on the potential effects of marijuana. Open your mind to new things and thoughts and as long as you think it through, you'll most likely come out better for it. We did.
Peace love and unity to all!
Experience Reports are the writings and opinions of the individual authors who submit them.
Some of the activities described are dangerous and/or illegal and none are recommended by Erowid.


Alexander Singleton '17 (Captain)
Jenny El-Fakir '18 (Captain)
Brigitte Lamarche '18
Cadee Qiu '18
Maya Aronoff '19
Olivia Grah '19
Hyejin Jang '19
Max Molot '19
Jonah Hyman '20
Nathan Poland '20
Alejandro de la Garza '18 (Noncompeting)
Jeffrey Gleason '18 (Noncompeting)
Alice Longenbach '18 (Noncompeting)


Top stock recommendations by Anand Rathi: Buy Lupin, Zensar Tech
Trading calls by Jay Anand Thakkar, CMT -Assistant Vice President - Equity Research, Anand Rathi Shares and Stock Brokers
by Jay Anand ThakkarNIFTY: BUY | TGT: 12,070 | SL: 11,865
Nifty closed in the negative territory in the last trading session; however, it seems to be forming an ending diagonal pattern on the hourly charts of which last leg i.e. wave E is still pending. So, in anticipation of wave E up one can buy Nifty for the target of 12,070 with a stop loss of 11,865.
COCHIN SHIPYARD: BUY | TGT: Rs 444 | SL: Rs 402
The stock has formed a symmetrical triangular pattern on the daily charts. The stock has provided a breakout with an increase in volumes as well as buy crossover in its momentum indicators.
ZENSAR TECH: BUY | TGT: Rs 202 | SL: Rs 181.50
The stock has provided a breakout from the falling channel and with that wave 2/b seems to have got over and wave 3/c up seems to have started. The minimum target on the upside comes to Rs 202; hence one can buy this with a stop loss of Rs 181.50.
LUPIN: BUY | TGT Rs 825 | SL: Rs 735
The stock has completed the right shoulder of an inverse head and shoulders pattern which is a bullish reversal. The overall Nifty Pharma Index has formed an inverse head and shoulders pattern and hence Lupin is likely to follow the same. The momentum indicator is well in the buy mode on the daily as well as weekly charts.
Disclaimer: Author may or may not have positions in the above mentioned stocks


Converts TreeML markup into flare Tree instances.
TreeML is an XML format originally created for the 2003 InfoVis
conference contest. A DTD (Document Type Definition) for TreeML is
available.
public static function checkSizeValues(rootNode:NodeSprite, property:Property):Boolean
Check the a Property
's values to determine if 1) the children
sum to the parent value and, 2) the values are non-negative values.
Parameters
| rootNode:NodeSprite — Is the root node of a parsed data set. This value is often
the root property of the Tree returned
using the parse function.
|
| |
| property:Property |
Returns
| Boolean — Returns true if the values pass the above two rules.
|
public static function read(input:XML):Tree
Reads data from an external XML format into ActionScript objects.
Parameters
| input:XML — References the loaded XML input data.
|
Returns
| Tree —
Returns a Tree instance containing input data.
|
public static const ATTR:String = "attribute"
public static const BOOLEAN:String = "Boolean"
public static const BRANCH:String = "branch"
public static const CATEGORY:String = "Category"
public static const DATE:String = "Date"
public static const DECL:String = "attributeDecl"
public static const DECLS:String = "declarations"
public static const DOUBLE:String = "Double"
public static const FLOAT:String = "Float"
public static const INT:String = "Int"
public static const INTEGER:String = "Integer"
public static const LEAF:String = "leaf"
public static const LONG:String = "Long"
public static const NAME:String = "name"
public static const REAL:String = "Real"
public static const STRING:String = "String"
public static const TREE:String = "tree"
public static const TYPE:String = "type"
public static const VALUE:String = "value"


@(message: String) @Main("Home") {
Information
Welcome to Castle High School
Announcements
Monday, Sept 9, 2013
Periods 1-7
Tuesday, Sept 10, 2013
Periods 1, 3, 5, 7
Wednesday, Sep 11, 2013
Periods 2, 4, 6
Thursday, Sept 12, 2013
Periods 1, 3, 5, 7
Friday, Sept 13, 2013
Periods 2, 4, ADVISORY, 6


Home
About Us
Contact
Name
Email
Message
Learn
Alphabets
Numbers
Calculations
Rhymes
Rhymes
Poems
Audio Rhymes
Story
Stories
Essays
Quizes
Letters
Objects
Sounds
Calculations
Articles
Habits
Healthy Diet
Entertainment
Wallpapers
Cartoon Episodes
Alphabets, The building blocks!
Numbers, the big shots of mathematics...
Arithematic Calculations, demystified!
Rhymes, collection of rhythm and imagery
Poems, the melodious traits
Audio rhymes, the childhood saga!
STORIES, reading's gonna be fun!
ESSAYS, read and learn
Letters Recognition, It's an A!
Object Recognition, ???
Voice Quiz, That's ROAR
Maths Quiz, check the counts!
Habits and Morals, the core need
Food and Health, stay energetic!
Wallpapers, snap the cartoons!
Cartoon Episodes, Have fun ∵


Hello, our names are Jan and Tom and welcome to Appdustry Both of us are currently undergrads in electrical engineering with a great interest in Web- and Hybrid-app development. Our first project was an RFID based availabilty system, that displays who is currently in house. After some more projects and a contribution to a coding competition we decided that we need a organization to bundle our projects and so Appdustry came to life.
Have a look at our projects below.


class: center, middle ### W4995 Applied Machine Learning # Trees, Forests & Ensembles 02/19/18 Andreas C. Müller ??? FIXME bullet points! animation searching for split in tree? categorical data split? predition animation tree? min impurity decrease missing extra tree: only one thereshold per feature? --- class: spacious, middle # Why Trees? ??? - Very powerful modeling method – non-linear! - Doesn’t care about scaling of distribution of data! - “Interpretable” - Basis of very powerful models! - add stacking classifier from PR? --- class: centre,middle # Decision Trees for Classification ??? --- # Idea: series of binary questions .center[ ![:scale 70%](images/img_1.png) ] ??? --- # Building Trees .left-column[ ![:scale 100%](images/img_2.png)
Continuous features: - “questions” are thresholds on single features. - Minimize impurity ] .right-column[ ![:scale 100%](images/img_3.png) ![:scale 100%](images/img_4.png) ] ??? Does the layout look okay?? --- # Criteria (for classification) - Gini Index: `$$H_\text{gini}(X_m) = \sum_{k\in\mathcal{Y}} p_{mk} (1 - p_{mk})$$` - Cross-Entropy: `$$H_\text{CE}(X_m) = -\sum_{k\in\mathcal{Y}} p_{mk} \log(p_{mk})$$` ![:scale 5%](images/img_7.png) observations in node m ![:scale 3%](images/img_8.png) classes ![:scale 5%](images/img_9.png) distribution over classes in node m ??? --- # Prediction .center[ ![:scale 80%](images/img_10.png) ] ??? - Traverse tree based on feature tests - Predict most common class in leaf --- # Regression trees `$$\text{Prediction: } \bar{y}_m = \frac{1}{N_m} \sum_{i \in N_m} y_i $$` Mean Squared Error: `$$ H(X_m) = \frac{1}{N_m} \sum_{i \in N_m} (y_i - \bar{y}_m)^2 $$` Mean Absolute Error: `$$ H(X_m) = \frac{1}{N_m} \sum_{i \in N_m} |y_i - \bar{y}_m| $$` ??? - Without regularization / pruning: - Each leaf often contains a single point to be “pure” --- # Visualizing trees with sklearn .smaller[ ```python from sklearn.datasets import load_breast_cancer cancer = load_breast_cancer() X_train, X_test, y_train, y_test = train_test_split(cancer.data,cancer.target, stratify=cancer.target, random_state=0) from sklearn.tree import DecisionTreeClassifier, export_graphviz tree = DecisionTreeClassifier(max_depth=2) tree.fit(X_train, y_train) # tree visualization tree_dot = export_graphviz(tree, out_file=None, feature_names=cancer.feature_names) print(tree_dot)``` ] ??? --- # Visualizing trees with sklearn .smaller[ ``` digraph Tree { node [shape=box] ; 0 [label="worst perimeter <= 106.1\ngini = 0.468\nsamples = 426\nvalue = [159, 267]"]; 1 [label="worst concave points <= 0.134\ngini = 0.081\nsamples = 259\nvalue = [11, 248]"]; 0 -> 1 [labeldistance=2.5, labelangle=45, headlabel="True"]; 2 [label="gini = 0.008\nsamples = 240\nvalue = [1, 239]"]; 1 -> 2; 3 [label="gini = 0.499\nsamples = 19\nvalue = [10, 9]"]; 1 -> 3; 4 [label="worst concave points <= 0.142\ngini = 0.202\nsamples = 167\nvalue = [148, 19]"]; 0 -> 4 [labeldistance=2.5, labelangle=-45, headlabel="False"]; 5 [label="gini = 0.497\nsamples = 37\nvalue = [20, 17]"]; 4 -> 5; 6 [label="gini = 0.03\nsamples = 130\nvalue = [128, 2]"]; 4 -> 6; } ``` ] ??? --- # Showing dot files in Jupyter Requires graphviz C library and Python library `conda install graphviz python-graphviz`
.center[ ![:scale 60%](images/img_12.png) ] ??? --- # Easier visualization [PR #9251](https://github.com/scikit-learn/scikit-learn/pull/9251) (or [a gist](https://gist.github.com/amueller/1f8d3c03305642ab3bad677d9b443b80) ) ```python from tree_plotting import plot_tree tree_dot = plot_tree(tree, feature_names=cancer.feature_names) ``` .center[ ![:scale 80%](images/mpl_tree_plot.png) ] ??? --- class:spacious # Parameter Tuning - Pre-pruning and post-pruning (not in sklearn yet) - Limit tree size (pick one, maybe two): - max_depth - max_leaf_nodes - min_samples_split - min_impurity_decrease - ... ??? --- class:spacious # No pruning .center[ ![:scale 100%](images/img_13.png) ] ??? --- class:spacious # max_depth = 4 .center[ ![:scale 100%](images/img_14.png) ] ??? --- # max_leaf_nodes = 8 .center[ ![:scale 50%](images/img_15.png) ] ??? --- class:spacious # min_samples_split = 50 .center[ ![:scale 70%](images/img_16.png) ] ??? --- .smaller[ ```python from sklearn.model_selection import GridSearchCV param_grid = {'max_depth':range(1, 7)} grid = GridSearchCV(DecisionTreeClassifier(random_state=0),param_grid=param_grid, cv=10) grid.fit(X_train, y_train) ``` ] .center[ ![:scale 70%](images/img_17.png) ] ??? --- .smaller[ ```python from sklearn.model_selection import GridSearchCV param_grid = {'max_leaf_nodes':range(2, 20)} grid = GridSearchCV(DecisionTreeClassifier(random_state=0), param_grid=param_grid, cv=10) grid.fit(X_train, y_train) ``` ] .center[ ![:scale 70%](images/img_18.png) ] ??? --- class:spacious # Relation to Nearest Neighbors - Predict average of neighbors – either by k, by epsilon ball or by leaf. - Trees are much faster to predict. - Both can’t extrapolate ??? FIXME plots --- #Extrapolation .center[ ![:scale 80%](images/ram_prices.png) ] ??? --- #Extrapolation .center[ ![:scale 80%](images/ram_prices_train.png) ] ??? --- #Extrapolation .center[ ![:scale 80%](images/ram_prices_test.png) ] ??? --- # Instability .left-column[ .tiny-code[ ```python X_train, X_test, y_train, y_test = train_test_split( iris.data, iris.target, stratify=iris.target, random_state=0) tree = DecisionTreeClassifier(max_leaf_nodes=6) tree.fit(X_train, y_train) ``` ] ![:scale 70%](images/img_21.png) ] .right-column[ .tiny-code[```python X_train, X_test, y_train, y_test = train_test_split( iris.data, iris.target, stratify=iris.target, random_state=1) tree = DecisionTreeClassifier(max_leaf_nodes=6) tree.fit(X_train, y_train) ``` ] .center[![:scale 70%](images/img_22.png) ]] ??? --- # Feature importance .left-column[ .tiny-code[```python X_train, X_test, y_train, y_test = train_test_split( iris.data, iris.target, stratify=iris.target, random_state=1) tree = DecisionTreeClassifier(max_leaf_nodes=6) tree.fit(X_train,y_train) ```] .center[![:scale 60%](images/img_22.png) ] ] .right-column[ .tiny-code[ ```python tree.feature_importances_ array([0.0, 0.0, 0.414, 0.586]) ``` ] ![:scale 80%](images/img_23.png) ] ??? - Unstable Tree $\rightarrow$ Unstable feature importances. - Might take one or multiple from a group of correlated features. --- # Categorical Data - Can split on categorical data directly - Intuitive way to split: split in two subsets - 2 ^ n_values many possibilities - Possible to do in linear time exactly for gini index and binary classification. - Heuristics done in practice for multi-class. - Not in sklearn :( ??? --- class:spacious # Predicting probabilities - Fraction of class in leaf. - Without pruning: Always 100% certain! - Even with pruning might be too certain. ??? FIXME PLOT --- class:spacious # Conditional Inference Trees - Select “best” split with correcting for multiple-hypothesis testing. - More “fair” to categorical variables. - Only in R so far (party) ??? --- # Different splitting methods .center[![:scale 80%](images/img_24.png)] .smaller[(taken from Shotton et. al. Real-Time Human Pose Recognition ..)] ??? - Could use anything as split candidate! - Linear models used if extrapolation is needed. - Computer vision: pixel comparisons - Kinect (first generation): depth comparison --- class: centre,middle # Ensemble Models ??? --- # Poor man’s ensembles - Build different models - Average the result - Owen Zhang (long time kaggle 1st): build XGBoosting models with different random seeds. - More models are better – if they are not correlated. - Also works with neural networks - You can average any models as long as they provide calibrated (“good”) probabilities. - Scikit-learn: VotingClassifier hard and soft voting ??? --- # VotingClassifier .smaller[ ```python voting = VotingClassifier( [('logreg', LogisticRegression(C=100)), ('tree', DecisionTreeClassifier(max_depth=3, random_state=0))], voting='soft') voting.fit(X_train, y_train) lr, tree = voting.estimators_ voting.score(X_test, y_test), lr.score(X_test, y_test), tree.score(X_test, y_test) ``` ``` 0.88 0.84 0.80 ``` ] .center[![:scale 30%](images/img_25.png)] ??? --- class: spacious # Bagging (Bootstrap AGGregation) .left-column[ - Generic way to build “slightly different” models - BaggingClassifier, BaggingRegressor ] .right-column[ .center[![:scale 100%](images/img_26.png)] ] ??? - Draw bootstrap samples from dataset - (as many as there are in the dataset, with repetition) --- class: spacious # Bias and Variance .center[![:scale 40%](images/img_27.png)] .left[ .smaller[http://scott.fortmann-roe.com/docs/BiasVariance.html] ] ??? --- class: spacious # Bias and Variance in Ensembles - Breiman showed that generalization depends on strength of the individual classifiers and (inversely) on their correlation - Uncorrelating them might help, even at the expense of strength ??? FIXME worst slide! --- class: spacious # Random Forests .center[![:scale 90%](images/img_28.png)] ??? - Smarter bagging for trees! --- # Randomize in two ways .left-column[ - For each tree: - Pick bootstrap sample of data - For each split: - Pick random sample of features - More trees are always better ] .right-column[ ![:scale 100%](images/img_26.png) ![:scale 100%](images/img_29.png) ] ??? --- class:some-space # Tuning Random Forests - Main parameter: max_features - around sqrt(n_features) for classification - Around n_features for regression - n_estimators > 100 - Prepruning might help, definitely helps with model size! - max_depth, max_leaf_nodes, min_samples_split again ??? --- class:spacious # Extremely Randomized Trees - More randomness! - Randomly draw threshold for each feature! - Doesn’t use bootstrap - Faster because no sorting / searching - Can have smoother boundaries ??? --- # Warm-Starts .smaller[ ```python train_scores = [] test_scores = [] rf = RandomForestClassifier(warm_start=True) estimator_range = range(1, 100, 5) for n_estimators in estimator_range: rf.n_estimators = n_estimators rf.fit(X_train, y_train) train_scores.append(rf.score(X_train, y_train)) test_scores.append(rf.score(X_test, y_test)) ``` ] .center[ ![:scale 39%](images/img_30.png) ] ??? --- # Out-of-bag estimates - Each tree only uses ~66% of data - Can evaluate it on the rest! - Make predictions for out-of-bag, average, score. - Each prediction is an average over different subset of trees .smaller[ ```python train_scores = [] test_scores = [] oob_scores = [] feature_range = range(1, 64, 5) for max_features in feature_range: rf = RandomForestClassifier(max_features=max_features, oob_score=True, n_estimators=200, random_state=0) rf.fit(X_train, y_train) train_scores.append(rf.score(X_train, y_train)) test_scores.append(rf.score(X_test, y_test)) oob_scores.append(rf.oob_score_) ``` ] ??? --- .center[ ![:scale 90%](images/img_31.png) ] ??? --- # Variable Importance .smaller[ ```python X_train, X_test, y_train, y_test = train_test_split( iris.data, iris.target, stratify=iris.target, random_state=1) rf = RandomForestClassifier(n_estimators=100).fit(X_train, y_train) rf.feature_importances_ plt.barh(range(4), rf.feature_importances_) plt.yticks(range(4), iris.feature_names); ``` ```array([ 0.126, 0.033, 0.445, 0.396])``` ] .center[ ![:scale 40%](images/img_32.png) ] ??? --- class: center, middle # Questions ?


Teretana Pobednik
Book your appointment today
Anti-cellulite massage is the most natural way for body to get rid of toxins accumulated in the greasy cells. Depending on the cellulite type, our team carries out different tehniques of while giving a massage. Those vary from the very classic anti-cellulite massage, to the cell-draining massages.
Apart from removing the cellulite, this massage is also good for circulation and skin tightening.
Massage helps in separating the skin and greasy tissue, so that it can be arranged evenly. This way, cellulite gets less and less visible. Anti-cellulite treatment influences the surface of the skin directly, and it stimulates the circulation. That will help your skin in being more thight, and will also make sure that your skin receives more nutritients. Your skin will also recover its collagen, so it will be more elastic. Most of the toxins that are stored in your body shall be removed as well.
After taking these massages, you'll be both healthier and better-looking. Your body will have less toxins. Our team will give you advice about healthier nutrition, so this results can be achieved faster.


--- title: transformReferenceFrame sidebar: function_reference_sidebar permalink: orientation.transformReferenceFrame.html folder: function_reference toc: false ---
change reference frame of an orientation
Orientations are always described with respect to a cartesian reference frame x, y, z aligned in a fixed way with the crystal coordiante system a, b, c. Typical alignments are x||a and z||c* or x||a* and z||c. This function allows to change the aligment of the reference frame while NOT changing the orientation.
| ori | orientation |
| mori | misorientation |
| cs, cs1, cs2 | crystalSymmetry |


Insert the unminified JS code into the box below and press the Minify button to generate the minified output. If you want to get back the original unminified input, press the Revert button.


Sample Description List
- TCP
- Transmission Control Protocol is a method (Protocol) used along with the Internet Protocol(IP) to send data in the form of message units, called packets, between computers over the Internet.
- IP
-
Internet Protocol is the method or protcol by which data is sent from one computer to another on the Internet. Each computer on the Internet is uniquely identified by an IP address.


{% extends "base.html" %} {% block title%}{% endblock %} {% block header %} {% endblock %} {% block content %}
Did you enjoy that chat? If so, remember to save the log - the chat will be deleted from this URL in 7 days.
{% if meta['chat'] %}{% endif %}


The Evolution Of Code
08 Jul 2015Programming languages, believe it or not, have existed for over 200 years, since the invention of the punch-card-programmable Jacquard loom. It wasn’t a programming language in the modern sense — there was no computation and no logic — but it started a cascade that would eventually lead to Charles Babbage’s Analytical Engine, and Ada Lovelace’s 1842 deconstruction of his work which led to the first computer program.
It was a whole 100 years before the first electrical, programmable computers would burst into existence, however. Machine-specific assembly language in the 1940s was probably the first (vaguely) human-readable programming language, but by the 1950s computer engineers realized that assembly language was far too laborious and error-prone to build entire systems out of — and thus in 1955 the first modern programming language was born: FORTRAN (FORmula TRANslator). LISP (LISt Processor), ALGOL (ALGOrithmic Language), and COBOL (COmmon Business Oriented Language) would follow in the next few years — and as they say, the rest is history. Almost every language today is a derived from one of these first four languages — and indeed, FORTRAN, LISP, and COBOL are still actively used by large, lumbering institutions like the National Weather Service and the US Postal Service.
By 1964, BASIC had been invented, and then C was released in 1969. Unix was famously re-written into C — the first major OS to not be written in assembly language — and today, Linux is written almost entirely in C, and both Windows and Mac OS X have large swaths of their code written in C.
For the rest of the history of modern programming languages — because C was really just the beginning! — check out the infographic below. You can click it to zoom in.
Image source: Extreme Tech


Babcock Dairy Hall to put some ice cream flavors on hold during renovations
by Emilie BurdittMADISON, Wis. - Fans of Babcock Dairy Hall will see less of the dairy plant's flavors throughout the next two years due to the plant's renovations.
The University of Wisconsin-Madison's Department of Food Science was making the ice cream, but now the Chocolate Shoppe will take over its production for the next two years.
Babcock ice cream is served at both Wisconsin Unions at Daily Scoop, the Babcock Dairy Hall store and other Wisconsin Union-run campus markets and cafes. Ice cream will still be served to students at these venues, but students will see fewer flavors available.
The Chocolate Shoppe can make about 11 ice cream flavors at any time, but Babcock Dairy Hall can make as many as 26.
"We, at the Wisconsin Union, have served Babcock Ice Cream for decades and are dedicated to continuing to offer this fresh, locally produced product," said Wisconsin Union communications director Shauna Breneman in an email. "We appreciate Babcock Dairy Plant's efforts to continue to produce ice cream during plant renovations and our customers' understanding."
Renovations to the dairy plant are expected to update and expand the Center for Dairy Research. The plant closed September 23, but the shop is still open and selling ice cream.


Devil May Cry 3 Special Edition Announced For Nintendo Switch
Joins DMC 1 and 2 on the eShop next year
by Ryan CraddockCapcom has revealed that Devil May Cry 3 Special Edition is headed to a Switch near you, with a digital release planned for Nintendo's hybrid machine. You won't have too long to wait before you can get your hands on it either, as it's set to launch on 20th February 2020.
If you're unfamiliar with this one, Devil May Cry 3 is actually a prequel set years before the original Devil May Cry with a younger version of Dante serving as the protagonist. The origin story explores the journey leading up to and culminating in Dante’s face-off against his twin brother, Vergil, who is set on unlocking a gate to the demonic realm. Here's a little more from the press release:
Dante must use his trademark sword Rebellion and dual pistols Ebony and Ivory to stop Vergil and prevent the world from becoming infested by demons. Along the way, players will gain insight into many aspects of the series from the first encounter with fan-favourite Lady as well as the beginnings of Dante’s shop and origins of the series name.
Devil May Cry 3 continued the series’ trademark for intense, non-stop action with flair, while introducing the new "style" based combat system with six selectable options including Swordmaster and Gunslinger that change up the gameplay. Each style has its own range of features, and players can power up their favorite style for increased special attack abilities, bringing an extra level of strategy to the action. Devil May Cry 3 also introduced the ability to switch between currently equipped weapons on the fly for additional combat freedom.
This Special Edition release offers the addition of Vergil as a playable character and the 9,999 floors of the 'Bloody Palace' survival mode. It'll launch for $19.99, just like the original Devil May Cry and Devil May Cry 2's current prices on the Switch eShop.
Excited for this one? Let us know with a comment below.


Lorem ipsum dolor sit amet...
Lorem ipsum dolor sit amet.
<EMAIL_ADDRESS>2.5% Increase
6.3% Increase
4.2% Increase
3.1% Increase
Followers
Tweets
Transactions
Daily Sales
Monthely Sales
Mobiles 320
Laptops 250
Headphones 120
Shoes 95
Total Orders
Total Revenue
Support Requests
Messages
Total Visit
Upcoming Events
Header Colors
Sidebar Colors


pager.js comes pre-packed with effects for fading, sliding, zooming, and flipping between pages.
These effects can easily be added to your page using
fx: 'zoom'
,
fx: 'flip'
,
fx: 'slide'
or
fx: 'fade'
.
In order to use zoom or flip you'll need to include pager.css
or
pager.less
.
This modal is stickout out!


The page you requested could not be loaded.
- Check the URL (or address) you entered for typing errors such as ww.test.com instead of www.test.com.
- If the error persists and you are unable to load other pages as well, check your network connection.
- If your computer or network is protected by a firewall or proxy, make sure that your account, your machine, and Vienna are allowed to access the resource you specified.
Error Information:
$ErrorInformation


Outwit your rivals with the best Football Manager tactics
by Fraser GilbertWhat are the best FM20 tactics? Naturally, one of the biggest keys to success in Football Manager is creating a winning game plan. It’s also one of the hardest parts of the game to get right, with countless factors involved, spanning everything from formations to team instructions.
That said, there are plenty of things you can do to improve your chances of success, and that's before I get on to helping you out with the best FM20 wonderkids (or the best FM20 bargains, if your chairman isn't flush with dosh) you should sign. Below, I’ve detailed some of the key tips you’ll need to win more matches with the most effective Football Manager 2020 tactics, as well as the best formations and preset styles to employ.
How to decide the best FM20 tactics for your club
If you’re new to Football Manager or haven’t played it in a while, the tactics options in this year’s game can appear overwhelming. There’s a lot of depth to the system in FM 2020, but these basic tips should help you get started in creating a successful strategy.
Analyse Your Team Report
The first thing I do after joining a new club is visit the Team Report menu. Here you can identify both the strengths and weaknesses of your current squad, which allows you to discover which team instructions and tactics might be worth using. You can also visit the Squad Depth screen to arrange your formation based on the strengths of your players in certain positions.
Listen To Your Scouts
Ahead of every game, you’ll get information from your scouts on upcoming opponents. The ability to identify which formations the opposition struggles against, as well as the method in which they typically concede goals, is immensely useful. You can also view their strengths, weaknesses, and biggest danger men, so you know where to bolster your starting XI.
Use The Selection Advice Button
A new feature this year is the ability to seek selection advice from your staff. This is slightly different to the “quick pick” button - selection advice provides you with detailed feedback as to why each player has been selected. You also get this advice sent to your inbox ahead of every game, so consider using it to build fitness and form, and help discover your best XI.
The best FM20 tactics and formations
While it's possible to find success with pretty much any formation in Football Manager 2020, there are, at least traditionally, more effective than others. The following list contains some notable highlights:
4-2-3-1
- Best tactical styles: Gegenpress, Control Possession
The 4-2-3-1 (wide) is a great attacking formation for talented, high-level sides. It suits popular tactical styles such as the Gegenpress, which requires seriously hard-working players to pull off successfully, as well as teams who like to control possession and dictate play.
There are more defensive versions of the 4-2-3-1 as well. The DM version, which works well with a ‘park the bus’ strategy, pulls everyone back into more defensive areas aside from the lone striker, which is used to reduce opposition threats. This can prove effective against stronger sides.
4-4-2
- Best tactical styles: Wing Play, Route One
The traditional 4-4-2 is my go-to strategy for managing lower league teams. It can be used in a variety of scenarios and for both defensive and attacking sides. It’s also an ideal and balanced starter tactic for newcomers to the series.
I prefer using the Wing Play tactical style with the 4-4-2, taking advantage of the width it allows to generate attacks. If you lack proficiency out wide, try switching to a diamond formation and opting for something like Route One, Vertical Tiki-Taka, or even Gegenpress.
4-4-1-1
- Best tactical styles: Counter-Attack, Route One
A slight variation on the 4-4-2 is the 4-4-1-1, which replaces one of the strikers with a shadow striker or attacking midfielder. It’s one of the recommended formations for both the fluid and direct counter-attacking tactical styles. Employ a high tempo for this one.
If you prefer something a bit more defensive, try dropping the two midfielders into defensive positions, and then convert the shadow striker into an attacking midfielder. This provides extra cover at the back, but still allows you to counter at pace, and in numbers.
5-3-2
- Best tactical styles: Fluid Counter-Attack, Catenaccio
The most crucial components of the 5-3-2 formation are your wing-backs. You’ll need pacey and hard-working players in these positions—particularly when adopting a counter-attacking style—as they’ll need to burst forward and assist in creating goals.
Equally there's Catenaccio, which is a more defensive 5-3-2 approach. It still requires good wing-backs, but aims to slow the pace down and attack with less urgency, relying on direct passing to generate chances.
All FM20 tactics
When creating your tactic, you’ll be presented with a list of tactical styles. These are optional, preset strategies that come equipped with tailored team instructions and player roles. Keep an eye out for the thumbs-up icon next to the tactical styles that best suit your squad.
Control Possession
- Suggested formations: 4-2-3-1 Wide, 4-1-4-1 DM Wide, 5-2-2-1 WB
- How it works: Retain possession and create attacks through short passing.
Gegenpress
- Suggested formations: 4-1-4-1 DM Wide, 4-2-3-1 Wide, 4-4-2 Diamond Narrow
- How it works: Press the opposition instantly after losing the ball.
Tiki-Taka
- Suggested Formations: 4-1-4-1 DM Wide, 4-3-2-1 Wide, 5-2-2-1 WB
- How it works: Similar to Control Possession, but with intense pressing
Vertical Tiki-Taka
- Suggested formations: 4-1-4-1 DM Wide, 4-4-2 Diamond Narrow, 5-2-1-2 WB
- How it works: A slightly more direct and narrow version of the Tiki-Taka.
Wing Play
- Suggested formations: 4-4-2, 4-1-4-1 DM Wide, 4-2-4 Wide
- How it works: Use wide players to generate attacks where possible.
Route One
- Suggested formations: 4-4-2, 4-1-4-1 DM Wide, 4-4-1-1
- How it works: Focus on long balls and early crosses to create chances.
Fluid Counter-Attack
- Suggested formations: 4-1-4-1 DM Wide, 4-4-1-1, 5-3-2 WB
- How it works: Advance up the field quickly with short passing.
Direct Counter-Attack
- Suggested formations: 4-4-2, 4-1-4-1 DM Wide, 4-4-1-1
- How it works: Advance up the field quickly with more direct passing.
Catenaccio
- Suggested formations: 5-3-2 WB, 5-1-2-2 DM WB, 5-4-1 WB
- How it works: Deny goalscoring opportunities with organised defending.
Park The Bus
Suggested formations: 4-4-2, 4-1-4-1 DM, 4-2-3-1 DM
How it works: Get behind the ball and defend the net at all costs.


Here, you will find all of my latest Bachelor thoughts. For example: Why do we believe that David fell out of bed? Nobody saw it happen. I think Jordan must have just snuck in there in the middle of the night and punched him. Also, why does Leo have long hair?  And other gems.
Missed the latest Bachelor? Dont worry, you can find episode recaps here. There will be spoilers, so really, you should just go watch it yourself! Also included with the recaps will be my spot-on analysis of all the dates. It's really, really insightful. You can trust me, I have a Bachelor Degree.
This is where I list my favorite bachelors, in order, and then write fan fiction about their heroics. Obviously, this section is subscription-only, due to the high-quality nature of the content. Here's a sneak peek: "Last Tuesday, Chris took of his shirt, and let his gleaming pecs ripple in the wind". And there's more where that came from.


Lewis Hamilton's dad reveals karting strategy Lewis still uses!
by Adam NewtonLewis Hamilton's dad Anthony has said that his son still uses a technique he used when he began in karting, and it's much more simple than you might think. Hamilton has always been taught by his father to stay out of trouble on the first lap, and Anthony believes it is still true to this day!
Hamilton does seem to get involved in fewer first lap collisions, as shown by his streak of 31 consecutive points finishes, proving that he is rarely knocked out of the running early on.
Despite being perhaps more cautious than others, the Mercedes man has a knack of staying away from trouble whilst still getting great starts, something his father puts down to his karting days.
Anthony Hamilton told Channel 4: “When we were in go-karts, you go into the first bend and a lot of kids are rubbing each other and coming off the circuit, and falling places back.
“I used to say to Lewis look, the minute you touch another go-kart you’re going backwards, so always find space and don’t touch anybody, because what’s the point?
“You’re supposed to be going forward not backwards and he remains with that same ethos today.”


| < Day Day Up > |
Hack 4 Use Terminal and X Bindings
Take advantage of your terminal's capabilities. It's not just the tcsh shell that is capable of understanding bindings. Your FreeBSD terminal provides the kbdcontrol command to map commands to your keyboard. Unfortunately, neither NetBSD nor OpenBSD offer this feature. You can, however, remap your keyboard under X, as described later. 1.5.1 Creating Temporary MappingsLet's start by experimenting with some temporary mappings. The syntax for mapping a command with kbdcontrol is as follows: kbdcontrol -f number "command" Table 1-2 lists the possible numbers, each with its associated key combination.
Those last three key combinations may or may not be present, depending upon your keyboard. My Logitech keyboard has a key with a Windows icon next to the left Ctrl key; that is the left GUI key. There's another key with a Windows icon next to my right Alt key; this is the right GUI key. The next key to the right has an icon of a cursor pointing at a square containing lines; that is the Menu key. Now that we know the possible numbers, let's map lynx to the Menu key: % kbdcontrol -f 64 "lynx" Note that the command must be contained within quotes and be in your path. (You could give an absolute path, but there's a nasty limitation coming up soon.) If I now press the Menu key, lynx is typed to the terminal for me. I just need to press Enter to launch the browser. This may seem a bit tedious at first, but it is actually quite handy. It can save you from inadvertently launching the wrong application if you're anything like me and tend to forget which commands you've mapped to which keys. Let's see what happens if I modify that original mapping somewhat: % kbdcontrol -f 64 "lynx www.google.ca" kbdcontrol: function key string too long (18 > 16) When doing your own mappings, beware that the command and its arguments can't exceed 16 characters. Other than that, you can pretty well map any command that strikes your fancy. 1.5.2 Shell Bindings Versus Terminal BindingsBefore going any further, I'd like to pause a bit and compare shell-specific bindings, which we saw in [Hack #3], and the terminal-specific bindings we're running across here. One advantage of using kbdcontrol is that your custom bindings work in any terminal, regardless of the shell you happen to be using. A second advantage is that you can easily map to any key on your keyboard. Shell mappings can be complicated if you want to map them to anything other than "Ctrl letter". However, the terminal mappings have some restrictions that don't apply to the tcsh mappings. For example, shell mappings don't have a 16 character restriction, allowing for full pathnames. Also, it was relatively easy to ask the shell to press Enter to launch the desired command. Terminal bindings affect only the current user's terminal. Any other users who are logged in on different terminals are not affected. However, if the mappings are added to rc.conf (which only the superuser can do), they will affect all terminals. Since bindings are terminal specific, even invoking su won't change the behavior, as the user is still stuck at the same terminal. 1.5.3 More Mapping CaveatsThere are some other caveats to consider when choosing which key to map. If you use the tcsh shell and enjoy viewing your history [Hack #1], you'll be disappointed if you remap your up and down arrows. The right and left arrows can also be problematic if you use them for navigation, say, in a text editor.  By default, F10 to F12 are unmapped. If you start experimenting with mappings and find you're stuck with one you don't like, you can quickly return all of your keys to their default mappings with this command: % kbdcontrol -F On the other hand, if you find some new mappings you absolutely can't live without, make them permanent. If you have superuser privileges on a FreeBSD system you physically sit at, you can carefully add the mappings to /etc/rc.conf. Here, I've added two mappings. One maps lynx to the Menu key and the other maps startx to the left GUI key: keychange="64 lynx" keychange="62 startx" Since the superuser will be setting these mappings, the mapped keys will affect all users on that system. If you want to save your own personal mappings, add your specific kbdcontrol commands to the end of your shell configuration file. For example, I've added these to the very end of my ~/.cshrc file, just before the last line which says endif: % kbdcontrol -f 64 "lynx" % kbdcontrol -f 62 "startx" 1.5.4 Making Mappings Work with XThis is all extremely handy, but what will happen if you try one of your newly mapped keys from an X Window session? You can press that key all you want, but nothing will happen. You won't even hear the sound of the system bell beeping at you in protest. This is because the X protocol handles all input and output during an X session. You have a few options if you want to take advantage of keyboard bindings while in an X GUI. One is to read the documentation for your particular window manager. Most of the newer window managers provide a point and click interface to manage keyboard bindings. My favorite alternative is to try the xbindkeys_config application, which is available in the ports collection [Hack #84] : # cd /usr/ports/x11/xbindkeys_config # make install clean This port also requires xbindkeys: # cd /usr/ports/x11/xbindkeys # make install clean
Once your builds are complete, open an xterm and type: % xbindkeys --defaults ~/.xbindkeysrc % xbindkeys_config The GUI in Figure 1-1 will appear. Figure 1-1. The xbindkeys_config programCreating a key binding is a simple matter of pressing the New button and typing a useful name into the Name: section.  Press the desired key combination, and voilà, the correct mapping required by X will autofill for you. Associate your desired Action:, then press the Save & Apply & Exit button. Any keyboard mappings you create using this utility will be saved to a file called ~/.xbindkeysrc. 1.5.5 See Also
|
| < Day Day Up > |


TripCompanion
Home
Offer a trip
Sign In/Registration
Contact
(current)
You visited our site and You need additional information that You did not find? Write to us and we will always answer everything in detail.
pochta@gmail.com


My background is in programming games and software engineering, but I also have experience in game design, interaction design, level design, and tutoring. My strongest asset is being able to develop a game from conception to publishing, through the entire development cycle.
ImpactJS
Winner Rising Star of the Year at Spillprisen 2015
Nominee Best Story at Spillprisen 2015
Lead Game Developer on Enki, a unique web browser MMO Platformer in 2D with avatar costumization, crafting, and leveling up, made specifically for classrooms.
I used ImpactJS as a foundation for the game client, but we costumised it to our needs. As an example, I integrated PixiJS with ImpactJS to achieve WebGL rendering. Other aspects included, but were not limited to, making the game playable and ejoyable on all major modern web browsers for desktop and mobile devices.
In addition to game programming, I worked heavily with the Art Direction on all GUI and interaction, developed educational content, wrote part of the dialogue and side stories, and contributed towards the design of the crafting system.
Unity
Game Designer and Programmer on RGB, a game made specifically for Logitech's GWall. The wall consists of keyboards, where each key represents a pixel.
Check out the responseGame Maker
Nominee Best Innovation at Spillprisen 2015
Nominee Best Sound Design at Spillprisen 2015
Game Programmer and Interaction Designer on BoOooo, an Android game about a ghost protecting his mansion from humans.
In addition to implementing the game, I worked with the Art Director on all GUI and interaction, and I published it to Google Play.
C#
Software Engineer for Oslo Fjord Museum, developing software for an interactive rowboat experience. In order to accomplish what we wanted, I had to learn about codecs, and synchronize several video files to imitate a higher resolution video. The video speeds up or down depending on your rowing abilities, and the rowboat plays random water splash sounds when you pull. I also implemented a menu where you can pick the scene to row by using the oars.
ImpactJS
Winner Best Idea for a contest held by the Norwegian Epilepsy Organisation
Programming and Interaction Design on N.E.F Nevronus, an educational web-based game that debunks myths about epilepsy in a fun and engaging way.
I did all implementation, and I ported the game to Android and iOS with CocoonJS. I also submitted the game to Google Play and AppStore.
Phaser.io
Web Developer on Imal Lesing, an educational application for children to learn writing letters.
I implemented the client-side of the application as a Single Page Application for mobile devices.
The following section is a collection of some of my game jamming.
Game Maker
Winner Norwegian Championship in Gameplay 2015
Programmer on Agents vs. Super Villain, a game where three players compete against each other for glory while the fourth player controls the villain.
Since this prototype won National Championship of Gameplay, the team received a grant from the National Film Institute to further develop the concept. I'm currently implementing the commercial version of the game, which we are polishing for release on Xbox One.
XNA
Best Entry Norwegian Game Awards 2011
Game Designer and Programmer on RGB, a game about destroying red, green and blue aliens by using missiles of the same color.
XNA
Finalist Norwegian Championship in Gameplay 2014
Programmer on Spooked, the prototype for BoOooo.
XNA
Finalist Norwegian Championship of Gameplay 2012
Game Designer and Porgrammer on Gravity, a game about exploiting gravity with your limited amount of fuel to complete mission objectives.
This was a family project. My brother did the art work with MS Paint, while our dad did voice.
W received permission to use music from the Norwegian artist Philter.
XNA
Norwegian Championship of Gameplay 2013
Sole Developer on A Burglar's Tale, a 2D platformer about sneaking past goblins and trolls.
The idea for this game was inspired by the scenes of Moria Mines in Lord of the Rings: Fellowship of the Ring. Sleeping goblins react on sound and wake each other up in a chain reaction.
I drew all animations frame-by frame. This was also my first attempt at implementing and using A* Pathfinding.
ImpactJS
Global Game Jam 2013
Notable Runner-up at Mozille Game On
Programmer on Defining Moments, Two Player Tetris.
I had read that you aren't a real game programmer until you've implemented a Tetris clone.
ImpactJS
Global Game Jam 2014
Programmer on Blind Development. I had no idea what the other team members were up to until an hour before deadline, when we quickly had to wrap everything together.
If you play, make sure to turn your speakers on.
XNA
Global Game Jam 2012
Programmer on House of Puzzles, a top-down puzzle solving adventure.
All my team-mates were second-graders from Hedmark College University.
In 48 hours I implemented basic collision detection, a level editor, and three levels filled with puzzles. I was pretty happy with that at the time.
UnrealEd
Level Design on CERN, an intense 8-16 players deathmatch map for Unreal Tournament 2004.
This map was inspired by CERN, the European Organization for Nuclear Research, and their ATLAS experiment.
XNA
Third at The Gathering Game Dev compo 2010
Programmer on DefSys, a 3D Strategy developed for Xbox 360, about protecting our home planet with Earth's Orbital Defence System.
This was our Bachelor's Project at Hedmark College University in Experience Production and Interactive Medias.
Video shows work in progress.
I have worked as a professional developer for 6 years, and I have delivered commercial game projects using Unity, GameMaker, ImpactJS, Phaser.io, and XNA. I have worked towards web, mobile devices, and Xbox One.
During my studies and on my own, I've also played with other tools, engines, and frameworks like Unreal Engine, DirectX, Ogre3D, Flash etc., but I haven't used these on a day to day basis.
My most common role has been as a Gameplay Programmer, but I've also been in other types of roles, like Game Designer. In addition, I have been tutoring students at four Universities or College Universities in Software Engineering.
Before all this, still in school or studying, I did various jobs as a Warehouse Agent, worked the cashier at a supermarked, sold computer equipment for an electronics store, and delivered newspapers.
I love getting stuff done.
I love the early phases of game development because I can plan on how to get more stuff done.
I love the production phase of game development because I am getting stuff done.
I love the polish phase of game development because it means I have gotten stuff done, and I am still getting stuff done.
I also take great pleasure in having a divide and conquer approach to my work.
I prefer working with kind and passionate people in an agile work environment.
The best thing that can happen is becoming best buddies with my colleagues.
Work-life balance is important to me since I have a daughter.
Fotball (soccer) and hiking. When I'm not a nerd I'm a sportsidiot!
My first computer game was Jazz Jack Rabbit that I got for Christmas in 1994.
Early favourites included an array of strategy games, like Theme Park, Sim City 2000, The Settlers II and III, Age of Empires I and II, and Heroes of Might and Magic III.
One day, sometime in 2003, a friend introduced me to Warcraft III. I remember that day quite well. It became the game I've played the most hours in my life.
I also loved Age of Mythology, Age of Empires III, C&C Generals, Dawn of War, and the Battle for Middle Earth games. Fair to say, RTS games have a special appeal to me.
However, I've also been an avid console gamer most of my life. I have good memories with games like Final Fantasy VIII, Super Smash Brothers. Melee, SSX Tricky, NBA Street, Halo: Combat Evolved, and Mass Effect.
Since I used to write game reviews, at one point I owned over 50 PS2 games. And I've been passionate about games of most genres. The only exception I can think of are horror games.
The last couple of years the games I've enjoyed the most have been League of Legends, Dota 2, Civilization V, and Terraria.