Case Expression
The source code for this module: PartI/Case.ard
The source code for the exercises: PartI/CaseEx.ard
In this module we discuss three themes.
Firstly, we discuss case expressions and alternatives to them in the form of the helper functions. We also compare \case to \elim, point out at peculiarities of using case expressions in a dependently typed language and explain pattern matching on idp in \case.
Secondly, we explain a technique of views, allowing to define custom pattern matching principles.
Finally, we discuss an important class of predicates: decidable predicates, which are precisely the predicates P : A -> \Type such that for every x : A either P x or the negation of P x is provable.
filter via \case and via helper
Case expressions, like in Haskell, can be used for pattern matching on arbitrary expressions. For example, let us define the function filter that removes from a list xs : List A all elements that do not satisfy some predicate p : A -> Bool:
\func filter {A : \Type} (p : A -> Bool) (xs : List A) : List A \elim xs
| nil => nil
| cons x xs => \case p x \with {
| true => cons x (filter p xs)
| false => filter p xs
}
Here we used case expression for pattern matching on the expression p x. Alternatively, we could introduce a helper function, defined by pattern matching, and invoke it in the place of \case usage:
\func filter' {A : \Type} (p : A -> Bool) (xs : List A) : List A \elim xs
| nil => nil
| cons x xs => helper (p x) x (filter p xs)
\where
\func helper {A : \Type} (b : Bool) (x : A) (r : List A) : List A \elim b
| true => cons x r
| false => r
Actually, every usage of case expression can be replaced in this way with an invocation of a helper function. It is just sometimes more convenient to use short case expressions instead of introducing countless amount of helpers.
Exercise 1: Implement any sorting algorithm using \case for pattern matching on the result of comparison of elements of a list.
Remark on \elim vs \case
A definition of a function by pattern matching can be given either with \elim or with \case. These two ways are almost equivalent, but there is one small difference: depending on whether f is defined via \case or via \elim, the expression f x evaluates to the \case expression or does not evaluate respectively. Consider, for example, the following two definitions:
\func f (x : Nat) : Nat => \case x \with { zero => 0 | suc n => n }
\func f' (x : Nat) : Nat | zero => 0 | suc n => n
f n evaluates to the body of the definition, whereas the expression f’ n is in normal form. The latter option makes normalized terms look nicer and for that reason is usually preferable.
\case in dependently typed languages
Case expressions are more subtle in dependently typed languages than in languages like Haskell. Let us assume, for example, we want to prove that p a = not (not (p a)) for some predicate p : A -> Bool and a : A. Of course, this statement can be proved as a consequence of a generalized statement x = not (not (x)), and that is the right way to do it, but we would like to show how it can be proven with \case:
\func not (b : Bool) : Bool
| true => false
| false => true
\func foo {A : \Type} (p : A -> Bool) (a : A) : p a = not (not (p a)) =>
\case p a \as b \return b = not (not b) \with {
| true => idp
| false => idp
}
Here we specified explicitly the return type of the case expression by writing \return b = not (not b) before the keyword \with. We do this because this return type of \case depends on the expression p a that we match on. In order to describe the dependence, we introduce new bound variable b by writing \as b just after the expression p a.
In every clause we should return an expression, whose type is the expression obtained from the one written after \return by substituting the corresponding pattern. In example above we have:
| true => idp -- here we should return expression of type true = not (not true)
| false => idp -- and here of type false = not (not false)
As we said, we could use a helper function:
\func foo' {A : \Type} (p : A -> Bool) (a : A) : p a = not (not (p a)) =>
helper (p a)
\where
\func helper (b : Bool) : b = not (not b) \elim b
| true => idp
| false => idp
\case with several arguments
We can pattern match on several expressions in \case. For example:
\data Ordering | LT | EQ | GT
\func compare (x y : Nat) : Ordering =>
\case x < y, y < x \with {
| true, true => EQ -- this will never be matched
| true, false => LT
| false, true => GT
| false, false => EQ
}
Proof of a fact about filter via \case
Let us consider one more example of a proof via \case: let us prove that the length of a filtered list filter xs is at most the length of the original list xs:
\data Empty
\func absurd {A : \Type} (e : Empty) : A
\data Unit | unit
\func \infix 4 <= (x y : Nat) : \Type
| 0, _ => Unit
| suc _, 0 => Empty
| suc x, suc y => x <= y
\func length {A : \Type} (xs : List A) : Nat
| nil => 0
| cons _ xs => suc (length xs)
-- auxiliary helper lemma
\func <=-helper {x y : Nat} (p : x <= y) : x <= suc y \elim x, y
| 0, _ => unit
| suc x, 0 => absurd p
| suc x, suc y => <=-helper p
\func filter-lem {A : \Type} (p : A -> Bool) (xs : List A) : length (filter p xs) <= length xs \elim xs
| nil => unit
| cons x xs => \case p x \as b \return length (\case b \with { | true => cons x (filter p xs) | false => filter p xs }) <= suc (length xs) \with {
| true => filter-lem p xs
| false => <=-helper (filter-lem p xs)
}
Exercise 2: Define filter via if not using \case. Prove the lemma filter-lem for this version of filter.
\elim in \case
Suppose we want to prove that && is associative using \case:
\func \infixr 3 && (x y : Bool) : Bool \elim x
| true => y
| false => false
\func &&-assoc (x y z : Bool) : (x && y) && z = x && (y && z) => \case x \with {
| true => {?}
| false => {?}
}
This will not work since x will not be replaced with the corresponding pattern in each of the cases above. To make this work, we need to bind x again and explicitly specify the result type of the \case-expression:
\func &&-assoc (x y z : Bool) : (x && y) && z = x && (y && z) => \case x \as x' \return (x' && y) && z = x' && (y && z) \with {
| true => idp
| false => idp
}
This is a common pattern. In such cases, we can use keyword \elim to simplify the \case expression. It can be written before a variable in a \case expression. Then this variable will be replaced with corresponding patterns in each of the cases in the result type. Thus, we can rewrite the example above as follows:
\func &&-assoc (x y z : Bool) : (x && y) && z = x && (y && z) => \case \elim x \with {
| true => idp
| false => idp
}
Matching on idp in \case
When we match on some expression e, the connection between this expression and the result of the pattern matching gets lost. For example, we cannot even prove that expr equals pattern inside an expression of the form \case expr \with { | pattern => {?} }. Sometimes we need to remember such a connection. In these cases we can use the following trick: double pattern matching on the original expression e and on idp with explicitly written type depending on e. Consider an example:
\func baz {A : \Type} (B : Bool -> \Type) (p : A -> Bool) (a : A) (pt : B true) (pf : B false) : B (p a) =>
-- Not only the return type can be specified explicitly, but also
-- the type of expressions we do matching on.
-- And we can use variables bounded in \as.
\case p a \as b, idp : b = p a \with {
| true, q => transport B q pt -- here q : true = p a
| false, q => transport B q pf -- here q : false = p a
}
And a helper version again:
\func baz' {A : \Type} (B : Bool -> \Type) (p : A -> Bool) (a : A) (pt : B true) (pf : B false) : B (p a) =>
helper B p a pt pf
(p a) idp
\where
\func helper {A : \Type} (B : Bool -> \Type) (p : A -> Bool) (a : A) (pt : B true) (pf : B false)
(b : Bool) (q : b = p a) : B (p a) \elim b
| true => transport B q pt -- here q : true = p a
| false => transport B q pf -- here q : false = p a
Exercise 3: Prove that, for every function f : Bool -> Bool and every x : Bool, it is true that f (f (f x)) = f x
One more example of \case
Let us consider one more example, demonstrating what we have just discussed:
\func bar {A : \Type} (p q : A -> Bool) (a : A) (s : q a = not (p a))
: not (q a) = p a =>
\case p a \as x, q a \as y, s : y = not x \return not y = x \with {
| true, true, s' => inv s'
| true, false, _ => idp
| false, true, _ => idp
| false, false, s' => inv s'
}
-- helper version
\func bar' {A : \Type} (p q : A -> Bool) (a : A) (s : q a = not (p a))
: not (q a) = p a => helper (p a) (q a) s
\where
\func helper (x y : Bool) (s : y = not x) : not y = x \elim x, y
| true, true => inv s
| true, false => idp
| false, true => idp
| false, false => inv s
Views
Views – is a technique that allows to define some kind of custom pattern matching for data types. For example, Nat has constructors zero and suc and by default we pattern match on them whenever we define a function from Nat. But we can also define a custom pattern matching for Nat as if Nat had constructors, say, even and odd.
Let us define a data type parameterized by the data type we are defining custom pattern matching for (Nat in our example). The constructors of this data type will correspond to the constructors that we want to use for our custom pattern matching (even and odd in our example). Each constructor should have a parameter of the form n = expr, where expr represents the custom pattern. In our example we have the following:
\data Parity (n : Nat)
| even (k : Nat) (p : n = 2 * k)
| odd (k : Nat) (p : n = 2 * k + 1)
Next, we define a function that converts elements of Nat to elements of Parity:
\func parity (n : Nat) : Parity n
| 0 => even 0 idp
| suc n => \case parity n \with {
| even k p => odd k (pmap suc p)
| odd k p => even (suc k) (pmap suc p)
}
Now, in order to pattern match on n : Nat we should invoke \case on parity n. For example, let us define division by 2:
\func div2 (n : Nat) : Nat => \case parity n \with {
| even k _ => k
| odd k _ => k
}
Exercise 4: Define the view, which represents a natural number as a pair of the quotient and the remainder of division by a positive m. Implement the division function.
Decidable predicates
Here we will discuss predicates in propositions-as-types logic, that is functions P : A -> \Type. A predicate is called decidable if there is a proof that for all x : A either P x or not P x. We can write the statement DecPred P saying that P is decidable as follows:
\data Decide (A : \Type)
| yes A
| no (A -> Empty)
\func DecPred {A : \Type} (P : A -> \Type) => \Pi (a : A) -> Decide (P a)
This notion of decidability is related to decidability in computability theory: if a predicate is decidable in this sense, then there exists an algorithm that for every x : A decides whether P x or not P x.
In particular, there exist undecidable predicates. For example, we can define the following predicate P : Nat -> \Type: P n encodes the statement “Turing machine with number n halts at the input n”. A simpler example – the predicate on pairs of functions Nat -> Nat, saying that they are equal.
An example of decidable predicate:
\func suc/=0 {n : Nat} (p : suc n = 0) : Empty => transport (\lam n => \case n \with { | 0 => Empty | suc _ => Unit }) p unit
-- the predicate \lam n => n = 0 is decidable
\func decide0 : DecPred (\lam (n : Nat) => n = 0) => \lam n =>
\case n \as n' \return Decide (n' = 0) \with {
| 0 => yes idp
| suc _ => no suc/=0
}
The above properties of decidability hold as long as our logic is intuitionistic. If we have the Law of Excluded Middle, then all predicates are decidable, and, in fact, the opposite implication is also true.
Exercise 5: Prove that the predicate ‘isEven’ is decidable.
Decidable equality
Let us consider the predicate DecEq A, saying that type A has decidable equality on it:
\func DecEq (A : \Type) => \Pi (a a' : A) -> Decide (a = a')
We can define a typeclass analogous to Eq in Haskell, but with a proof of decidability of equality instead of a function == : A -> A -> Bool. This is better since in Haskell == can be absolutely any function, not necessarily having anything to do with equality.
\class Eq (A : \Type) {
| decideEq : DecEq A
-- Functions declared inside a class have instance of
-- the class as their first implicit parameter.
\func \infix 4 == (a a' : A) : Bool => \case decideEq a a' \with {
| yes _ => true
| no _ => false
}
} \where {
-- Function == is equivalent to =='.
\func \infix 4 ==' {e : Eq} (a a' : e.A) : Bool => \case e.decideEq a a' \with {
| yes _ => true
| no _ => false
}
}
Let us define an instance for the type of natural numbers:
\func pred (n : Nat) : Nat
| 0 => 0
| suc n => n
\instance NatEq : Eq Nat
| decideEq => decideEq
\where
\func decideEq (x y : Nat) : Decide (x = y)
| 0, 0 => yes idp
| 0, suc y => no (\lam p => suc/=0 (inv p))
| suc x, 0 => no suc/=0
| suc x, suc y => \case decideEq x y \with {
| yes p => yes (pmap suc p)
| no c => no (\lam p => c (pmap pred p))
}
\func test1 : (0 == 0) = true => idp
\func test2 : (0 == 1) = false => idp
Exercise 6: Prove that if equality of elements of a type A is decidable, then equality of elements if List A is also decidable.
Exercise 7: Prove that if equality of elements of a type A is decidable, then every list of elements of A is either empty, consists of repetitions of one element or there exist two different elements in A.
Decidable predicates and functions A -> Bool
Decidable predicates A -> \Type correspond precisely to functions A -> Bool. Let us define the conversion functions:
\func FromBoolToDec {A : \Type} (p : A -> Bool) : \Sigma (P : A -> \Type) (DecPred P)
=> (\lam a => T (p a), \lam a => \case p a \as b \return Decide (T b) \with {
| true => yes tt
| false => no T-absurd
})
\func FromDecToBool {A : \Type} (P : \Sigma (P : A -> \Type) (DecPred P)) : A -> Bool
=> \lam a => \case P.2 a \with {
| yes _ => true
| no _ => false
}
Exercise 8: Prove that the functions ‘FromBoolToDec’ and ‘FromDecToBool’ are inverse to each other.
\func bdb {A : \Type} (p : A -> Bool) : FromDecToBool (FromBoolToDec p) = p => {?}
-- We cannot prove that 'FromBoolToDec (FromDecToBool P) = P', but we can prove a weaker statement:
-- these predicates are logically equivalent.
-- Equivalence of predicates
\func \infix 4 <-> {A : \Type} (P Q : A -> \Type) => \Pi (x : A) -> \Sigma (P x -> Q x) (Q x -> P x)
\func dbd {A : \Type} (P : \Sigma (P : A -> \Type) (DecPred P)) : (FromBoolToDec (FromDecToBool P)).1 <-> P.1 => {?}


Use Onshape to create a cube with a hole!
Some useful tools for this project can include RECTANGLE, CIRCLE, EXTRUDE ADD/REMOVE, LINE, SWEEP, and any other tools that you think might do the trick!
Tool bar outside of a sketch
Tool bar once inside a sketch
Perhaps start off by creating the cube. Then proceed to create a circular hole through one of the sides of the cube.


Appalling legacy of austerity should make Tories hang their heads in shame
Record View slams the extreme poverty pushing vulnerable people to the absolute limit.
by Record View, https://www.dailyrecord.co.uk/authors/record-view/Extreme poverty is pushing vulnerable people to the absolute limit.
And some women are resorting to so-called “survival sex” to makes ends meet.

Poverty is forcing women to turn to prostitution, and the UK Government is being told to shoulder the blame.
Women first raised this awful situation with MPs on the Work and Pensions Committee at Westminster.
An Aberdeen foodbank has been contacted by police to support woman selling themselves because of poverty.
And in Holyrood yesterday, the Scottish Government were asked to do something about it.
Equalities minister Christina McKelvie said the label alone was enough to make her blood run cold.
She said the UK Government need to fix problems with benefits, and hand over responsibilities to Holyrood.
Transferring powers is not enough on its own, of course.
To make a difference, something has to change to alleviate poverty and break any link between financial desperation and prostitution.
Tory Iain Duncan Smith famously wept when he saw the impact of poverty in Glasgow, and promised to do something about it.
Since then, Tories have presided over harsh austerity that punished the poorest.
They have left an appalling legacy and should hang their heads in shame.
Poll position
Professor Sir John Curtice is the polling world’s top boffin so when the election expert speaks, we listen.
In his fascinating assessment of the election, Curtice has put Scotland in the eye of the political storm and it could be crucial to Boris Johnson’s chances of sneaking back in the door to Downing Street with a majority.
It could also be the place that breaks the back of Jeremy Corbyn’s efforts to form a majority Labour government.
As we can see from the harrowing testimony of people who have suffered years of Tory austerity, one of these outcomes is highly undesirable.
Whichever side of the constitutional debate you come down on, nothing could be more important than coming out to vote on December 12 to ensure that Scotland becomes a Tory-free zone.
Level Up
Congratulations to 18-year-old Liam McCarron.
Illness forced him to take a year off school - so he spent the time perfecting his computer gaming skills.
Now he’s a world champion gamer.
But for any teenage boys reading this, remember and stick in at school - as very few people get to make a living playing on their Xbox or PlayStation.


January 2021
cbsh - chiyoko chibi shell
cbsh [OPTIONS]
cbsh is a simple command language interpreter usable as an interactive shell, written in C. It is meant to precede kaigara(1). It includes a command-line editor, basic file-based word hinting and completion and a command history.
Pre-compile time configuration can be done in the config.h
file.
MAXCURDIRLEN
The maximum length of the current path name. 4096 by default.
DEFAULTPROMPT
The default prompt printf(3) format string. %1$s
will be replaced with the current user’s username, %2$s
will be replaced with the system’s hostname and %3$s
will be replaced with the current path.
HISTSIZE
The maximum length of the command history and command history file.
cbsh will read the history from previous sessions from ~/.cbsh_history
and will save (and thus overwrite) this file on exit. If the location of ~
cannot be determined, no history will be loaded. If ~/.cbsh_history
does not exist on exit, the file will be created and filled with the history of the exited session.
USER
The username displayed in the prompt. If not set, emily will be used.
HOSTNAME
The hostname displayed in the prompt. If not set, chiyoko will be used.
HOME
The current user’s home directory and startup directory. If not set, history will be disabled and / will be used.
PS1
The prompt printf(3) format string to use. If not set, DEFAULTPROMPT from config.h
will be used.
To report bugs, see https://github.com/chiyokolinux/cbsh/issues .
Written by Emily Lucy Ishikawa, <<EMAIL_ADDRESS>>.


Stolen Volkswagen Golf GTI found abandoned following police chase in Freckleton
A Volkswagen Golf GTI has been found abandoned after it was involved in a police chase in Freckleton
by James GravesThe Golf was involved in a police chase close to the village last week but was only discovered by officers this morning in Fylde.
The car was outstanding as stolen and was being used on false registration plates.
Lancs Road Police tweeted an image of the VW and said: "This car was pursued by our colleagues a couple of nights ago in the Freckleton area. Team4TacOps first shift on and found it abandoned in a rural location Vehicle an outstanding stolen on false plates."


We envisioned a website that would give us recipes at the palm of your hands, so we created it!
The days of having to plan and write out your ingredients and groceries are over! This is a one-stop-shop for all things food. You could plan every day, week and month of food at the click of a button.
 Our site will give you useful information based upon your diet and help you make those choices.
We hope you enjoy using our service and continue to plan all your future meals!


In-Form Chelsea Up To Third With Slender Victory
by SL InternationalEnglish Premier League
Result: Watford 1-2 Chelsea
Date: 02 November 2019
Venue: Vicarage Road
Chelsea moved up to third in the Premier League table after edging Watford 2-1 at Vicarage Road, with Tammy Abraham and Christian Pulisic continuing their good form.
Frank Lampard made only change from their thumping win over Burnley, with Emerson reclaiming his left-back spot at the expense of Marcos Alonso, while the Clarets also only had one switch, with Andre Gray replacing the injured Tom Cleverly.
The visitors had a bright start after going ahead in the fifth minute thanks to a superb strike by Abraham, who lobbed goalkeeper Ben Foster after latching onto Jorginho's through ball.
Chelsea almost doubled the lead in the 19th minute after Pulisic flicked on Willian's corner at the near post towards the far post but Foster produced a stunning save to keep out the effort.
Lampard's army were creating a lot of chances going forward but they were constantly denied by Foster, who notably again pushed Mason Mount's strike from the edge of the box onto the crossbar with two minutes remaining of the first stanza.
Chelsea continued to pile the pressure on Watford coming from the break and eventually made got the second goal ten minutes inside the second stanza after Pulisic struck home from close range from Abraham's cross.
The Blues had opportunities to get the third goal but were wasteful, but they conceded a penalty with ten minutes remaining after Jorginho tripped Gerard Deulofeu inside the box, with the Video Assistant Referee over-ruling the original decision by the on-field referee. The Spanish winger stepped up himself slotted home the spot-kick to reduce the deficit.
Watford almost got the equaliser from Foster, whose's header was brilliantly palmed away by Kepa as the Blues held on for three points, while Watford remain winless.


| Module | Averails::Exif::Tags::InstanceMethods |
| In: |
lib/exif_fu.rb
|
Lens Aperture
# File lib/exif_fu.rb, line 34 34: def aperture 35: process_tags(%w{ aperturevalue }) 36: end
Returns infor for any tag sent
# File lib/exif_fu.rb, line 54 54: def exif_tag(custom_tag) 55: return tags(custom_tag) 56: end
Camera ISO at the time of shooting
# File lib/exif_fu.rb, line 19 19: def iso 20: process_tags(%w{ iso }) 21: end
Information for the lens used
# File lib/exif_fu.rb, line 29 29: def lenstype 30: process_tags(%w{ lenstype }) 31: end
Orientation of the camera at the time of shooting
# File lib/exif_fu.rb, line 24 24: def orientation 25: process_tags(%w{ orientation }) 26: end
Original shooter of the image
# File lib/exif_fu.rb, line 49 49: def shot_by 50: process_tags(%w{ ownername }) 51: end
Date of shooting (assuming the camera information is correct)
# File lib/exif_fu.rb, line 44 44: def shot_on 45: process_tags(%w{ createdate }) 46: end
Shutterspeed or Exposure time
# File lib/exif_fu.rb, line 39 39: def shutterspeed 40: process_tags(%w{ shutterspeedvalue exposuretime }) 41: end


Your friends have been trapped on an island surrounded by sharks! Navigate your way through the sea to rescue your friends!
Instructions
Use your arrow keys to cross the ocean. Avoid the sharks at all costs! Once you make it to the other side, one of your friends will be brought to safety, but you must make it back for the rest!
Note
The player is safe to touch the upper tip of the shark's fin that extends into the row above!


How it works?
At the core Narayana is very simple. It allows you to record Dysfunctional thoughts and cognitive distortions and refute them. We wont get into the machine learning, crowdsourcing and data mining that goes behind the scenes but suffice to say these are what allow us to refute the cognitive distortions.What are those you ask? These are cornerstones of CBT. Please read
the
wikipedia page on the topic. Even better would be to read the book Feeling good by David Burns. You can buy it on amazon or a google search for "feeling good pdf" will get you a pdf.
Here is a short summary of Cognitive Distortions (Please read our
Disclaimer before proceeding)
The Ten Forms of Self Defeating Thoughts
1. All or nothing - thinking
You see things in black and white categories If a situation falls short of perfect,
you see it as a total failure. When a young woman on a diet ate a spoonful of ice
cream, she told herself, 'I've blown my diet completely.' This thought upset her so
much that she gobbled down an entire quart of ice cream!
2. Overgeneralization
You see a single negative event, such as a romantic rejection or a career
reversal as a never-ending pattern of defeat by using words such as 'always' or
"never" when you think about it. A depressed salesman became terribly upset
when he noticed bird dung on the windshield of his car. He told himself, 'Just my
luck! Birds are always crapping on my car!'
3.  Example: You receive many positive comments about your
presentation to a group of associates at work, but one of them says something
mildly critical. You obsess about his reaction for days and ignore all the positive
feedback.
4. Discounting the positive
You reject positive experiences by insisting they 'don't count.' If you do a good
job, you may tell yourself that it wasn't good enough or that anyone could have
done as well. Discounting the positive takes the joy out of life and makes you feel
inadequate and unrewarded.
5. Jumping to conclusions
You interpret things negatively when there are no facts to support your
conclusion.
Mind reading: Without checking it out, you arbitrarily conclude that someone is
reacting negatively to you.
Fortune telling: You predict that things will turn out badly. Before a test you may
tell yourself, 'I'm really going to blow it. What if I flunk?' If you're depressed you
may tell yourself, 'I'll never get better.'
6.  This is also called the
'binocular trick.'
7. Emotional reasoning
You assume that your negative emotions necessarily reflect the way things really
are: 'I feel terrified about going on airplanes. It must be very dangerous to fly.' Or
'I feel guilty. I must be a rotten person.' Or 'I feel angry. This proves I'm being
treated unfairly.' Or I feel so inferior. This means I'm a second-rate person.' Or 'I
feel hopeless. I must really be hopeless.'
8.  After playing a difficult piece on the piano, a gifted pianist told herself, 'I
shouldn't have made so many mistakes.' This made her feel so disgusted that
she quit practicing for several days. 'Musts,' 'oughts' and 'have tos' are similar
offenders.
'Should statements' that are directed against yourself lead to guilt and frustration.
Should statements that are directed against other people or the world in general
lead to anger and frustration: 'He shouldn't be so stubborn and argumentative'
Many people try to motivate themselves with shoulds and shouldn’ts, as if they
were delinquents who had to be punished before they could be expected to do
anything. 'I shouldn't eat that doughnut.' This usually doesn't work because all
these shoulds and musts make you feel rebellious and you get the urge to do just
the opposite. Dr. Albert Ellis has called this 'musterbation.'
9. Labeling
Labeling is an extreme form of all-or-nothing thinking. Instead of saying 'I made a
mistake.' you attach a negative label to yourself: 'I'm a loser.' You might also
label yourself 'a foal' or 'a failure' or 'a jerk.' Labeling is quite irrational because
you are not the same as what you do. Human beings exist. but 'fools,' 'losers,'
and 'jerks' do not. These labels are useless abstractions that lead to anger,
anxiety, frustration, and low self- esteem.
You may also label others. When someone does something that rubs you the
wrong way, you may tell yourself: 'He's an S.O.B Then you feel that the problem
is with that person's 'character' or 'essence' instead of with their thinking or
behavior. You see them as totally bad. This makes you feel hostile and hopeless
about improving things and leaves little room for constructive communication.
10. Personalization and blame
Personalization occurs when you hold yourself personally responsible for an
event that isn't entirely under your control. When a woman received a note that
her child was having difficulties at school, she told herself, 'this shows what a bad
mother I am,' instead of trying to pinpoint the cause of the problem so that she
could be helpful to her child. When another woman's husband beat her, she told
herself, lf only I were better in bed, he wouldn't beat me.' Personalization leads to
guilt, shame, and feelings of inadequacy. Same people do the opposite.  Blame usually doesn't
work very well because other people will resent being a scapegoat and they will
just toss the blame right back in your lap. It's like the game of hot potato - no one
wants to get stuck with it.


These cases are perfectly simple and easy to distinguish. In a free hour, when nothing prevents our being able to do what we like best.
On the other hand, we denounce with righteous indignation and dislike men who are so beguiled and demoralized by the charms of pleasure of the moment, so blinded by desire.
Donec sodales sagittis magna. Excepturi sint occaecati cupiditate non provident, similique sunt in culpa qui officia deserunt mollitia animi.
Nor again is there anyone who loves or pursues which is said to have originated or desires to obtain pain of itself.
It uses a dictionary of over 200 Latin words, combined with a handful of model sentence structures, which looks reasonable.
The standard chunk of Lorem Ipsum used since the 1500s is reproduced below to generate Lorem Ipsum for those interested.
It is a long established fact that a reader will be distracted by the readable content of a page when looking at its layout.
Donec sodales sagittis magna. Excepturi sint occaecati cupiditate non provident, similique sunt in culpa qui officia deserunt mollitia animi.
It is a long established fact that a reader will be distracted by the readable content of a page when looking at its layout. The point of using Lorem Ipsum is that it has a more-or-less normal distribution of letters, as opposed to using 'Content here, content here', making it look like readable English.
Pursues or desires to obtain pain of becaus pain but because occasionally undertakes laborious physical exercise advantage from it?

Pursues or desires to obtain pain of becaus pain but because occasionally undertakes laborious physical exercise advantage from it?
Many desktop publishing packages and web page editors now use Lorem Ipsum as their default model text, and a search for 'lorem ipsum' will uncover many web sites still in their infancy. Various versions have evolved over the years, sometimes by accident, sometimes on purpose (injected humour and the like).
Pursues or desires to obtain pain of becaus pain but because occasionally undertakes laborious physical exercise advantage from it?
There are many variations of passages of Lorem Ipsum available, but the majority have suffered alteration in some form, by injected humour, or randomised words which don't look even slightly believable. If you are going to use a passage of Lorem Ipsum, you need to be sure there isn't anything embarrassing hidden in the middle of text. All the Lorem Ipsum generators on the Internet tend to repeat predefined chunks as necessary, making this the first true generator on the Internet.
Pursues or desires to obtain pain of becaus pain but because occasionally undertakes laborious physical exercise advantage from it?
Donec sodales sagittis magna. Excepturi sint occaecati cupiditate non provident, similique sunt in culpa qui officia deserunt mollitia animi.
Donec sodales sagittis magna. Excepturi sint occaecati cupiditate non provident, similique sunt in culpa qui officia deserunt mollitia animi.
Founder
Quisque eget turpis volutpat, posuere ipsum sed, hendrerit nisi. Mauris posuere ipsum sed, hendrerit nisi. Mauris ac placerat dui. Fusce venenatis porta ipsum, et aliquet lacus posuere sed. Etiam efficitur a ligula at condimentum.
C.E.O
Quisque eget turpis volutpat, posuere ipsum sed, hendrerit nisi. Mauris posuere ipsum sed, hendrerit nisi. Mauris ac placerat dui. Fusce venenatis porta ipsum, et aliquet lacus posuere sed. Etiam efficitur a ligula at condimentum.
Adviser
Quisque eget turpis volutpat, posuere ipsum sed, hendrerit nisi. Mauris posuere ipsum sed, hendrerit nisi. Mauris ac placerat dui. Fusce venenatis porta ipsum, et aliquet lacus posuere sed. Etiam efficitur a ligula at condimentum.
Adviser
Quisque eget turpis volutpat, posuere ipsum sed, hendrerit nisi. Mauris posuere ipsum sed, hendrerit nisi. Mauris ac placerat dui. Fusce venenatis porta ipsum, et aliquet lacus posuere sed. Etiam efficitur a ligula at condimentum.
Adviser
Quisque eget turpis volutpat, posuere ipsum sed, hendrerit nisi. Mauris posuere ipsum sed, hendrerit nisi. Mauris ac placerat dui. Fusce venenatis porta ipsum, et aliquet lacus posuere sed. Etiam efficitur a ligula at condimentum.
Adviser
Quisque eget turpis volutpat, posuere ipsum sed, hendrerit nisi. Mauris posuere ipsum sed, hendrerit nisi. Mauris ac placerat dui. Fusce venenatis porta ipsum, et aliquet lacus posuere sed. Etiam efficitur a ligula at condimentum.
Working Hours
Projects
Clients
Tea Cup
Donec sodales sagittis magna. Excepturi sint occaecati cupiditate non provident, similique sunt in culpa qui officia deserunt mollitia animi.
Donec sodales sagittis magna. Excepturi sint occaecati cupiditate non provident, similique sunt in culpa qui officia deserunt mollitia animi.
There are many variations of passages of Lorem Ipsum available, but the majority have suffered alteration in some form, by injected humour, or randomised words which don't look even slightly believable.
There are many variations of passages of Lorem Ipsum available, but the majority, by injected humour, or randomised words which don't look even slightly believable.
There are many variations of passages of Lorem Ipsum available, but the majority have suffered alteration in some form, by injected humour, or randomised words which believable.
There are many variations of passages of Lorem Ipsum available, but the majority have suffered alteration in some form, look even slightly believable.
There are many variations of passages of Lorem Ipsum available, but the majority have suffered alteration in some form.
Tell us about your project story and project brief
Donec sodales sagittis magna. Excepturi sint occaecati cupiditate non provident, similique sunt in culpa qui officia deserunt mollitia animi.
These cases are perfectly simple and easy to distinguish. In a free hour, when nothing prevents our being able to do what we like best.
These cases are perfectly simple and easy to distinguish. In a free hour, when nothing prevents our being able to do what we like best.
These cases are perfectly simple and easy to distinguish. In a free hour, when nothing prevents our being able to do what we like best.
Donec sodales sagittis magna. Excepturi sint occaecati cupiditate non provident, similique sunt in culpa qui officia deserunt mollitia animi.
Location
Website
Call
012-345-6789


Directive tests
Current directive: {{ activeDirective }}
Init directive
Advanced directive
Page directive
Campaign directive
Customer directive
Product directive
Order directive
Session directive
Product-list directive with selector
Teaser directive with selector
Content-engagement directive with selector
Track directive


Evaluate a News article using Natural Language Processing
Analysis Result
URL analysed :
The confidence level is % and there is a tone of in this article. The article is and
uh-oh!
Something blew up!!
Confrim that the URL is correct and if it is, try again or try some other URL.


--- permalink: /slides/lecture18.html ---
Oh look, it's an example of AI being used to solve the wrong problem! https://t.co/A6P92XPwjk Study shows that AI can find more cancers on mammograms, but that's the wrong goal. We should aim to save lives, not turn more healthy women into cancer patients.— Christie Aschwanden (@cragcrest) January 2, 2020
Oh look, it's an example of AI being used to solve the wrong problem! https://t.co/A6P92XPwjk Study shows that AI can find more cancers on mammograms, but that's the wrong goal. We should aim to save lives, not turn more healthy women into cancer patients.
Vision: algorithms will make hiring better as they don’t discriminateReality: “One HR employee for a major technology company recommends slipping the words “Oxford” or “Cambridge” into a CV in invisible white text, to pass the automated screening.” https://t.co/m8jYKLzDNq— James Ball (@jamesrbuk) March 4, 2018
Vision: algorithms will make hiring better as they don’t discriminateReality: “One HR employee for a major technology company recommends slipping the words “Oxford” or “Cambridge” into a CV in invisible white text, to pass the automated screening.” https://t.co/m8jYKLzDNq
Can Your AI Differentiate Cats from COVID-19?There is a recent interest in using AI to detect COVID-19 from Chest X-Ray (CXR) images. Our work serve as a warning to practitioners by showing that overconfident and inaccurate predictions become severe in small-data regime. pic.twitter.com/hMA7TQcuSZ— Bhavya Kailkhura (@bkailkhu) June 15, 2020
Can Your AI Differentiate Cats from COVID-19?There is a recent interest in using AI to detect COVID-19 from Chest X-Ray (CXR) images. Our work serve as a warning to practitioners by showing that overconfident and inaccurate predictions become severe in small-data regime. pic.twitter.com/hMA7TQcuSZ
If you're an AI research doing blending, style transfer, or other visual stuff, please stop doing this kind of thing in your talks and papers (or, like, at all). This is @nvidia presenting at a top conference in the field, @CVPRConf. pic.twitter.com/neKHysOE56— mike cook (@mtrc) June 16, 2020
If you're an AI research doing blending, style transfer, or other visual stuff, please stop doing this kind of thing in your talks and papers (or, like, at all). This is @nvidia presenting at a top conference in the field, @CVPRConf. pic.twitter.com/neKHysOE56


Home
About Us
State Search
Link 1
Link 2
Link 3
Link 4
STATE SEARCH
Click on State for State-level Report


Defines automatic pointers and automatic pools, objects that wrap object pools and objects managed by them. These wrappers provide basic automatic memory management.
More...
Go to the source code of this file.
|
| struct | uel_autoptr |
| | Automatic pointers are pointers wrapped by information of where they were issued. More...
|
| |
| struct | uel_autopool_t |
| | Automatic pools are wrappers to object pools. They manage the acquisition and release cycle from objects issued at the pool by wrapping them in automatic pointers. More...
|
| |
|
|
typedef void ** | uel_autoptr_t |
| | Aliases uel_autoptr_t to void ** so it can be cast to pointers to other types.
|
| |
Defines automatic pointers and automatic pools, objects that wrap object pools and objects managed by them. These wrappers provide basic automatic memory management.
◆ UEL_AUTOPOOL_BUFFERS
| #define UEL_AUTOPOOL_BUFFERS |
( |
|
id | ) |
(uint8_t *)&id##_buffer, id##_pool_buffer, id##_pool_queue_buffer |
◆ UEL_AUTOPOOL_BUFFERS_AT
| #define UEL_AUTOPOOL_BUFFERS_AT |
( |
|
id, |
|
|
|
obj |
|
) |
| |
Value: (uint8_t *)&obj->id##_buffer, obj->id##_pool_buffer, \
obj->id##_pool_queue_buffer
Refers to a previously declared buffer set.
This is a convenience macro to supply the buffers generated by UEL_DECLARE_AUTOPOOL_BUFFERS()
to the uel_autopool_init()
function. Use this if the buffers were defined inside an object whose address is accessible in the current scope
- Parameters
-
| id | The identifier used to declare the pool buffers |
| obj | The address of the object storing the pool buffers |
◆ UEL_AUTOPOOL_BUFFERS_IN
| #define UEL_AUTOPOOL_BUFFERS_IN |
( |
|
id, |
|
|
|
obj |
|
) |
| |
Value: (uint8_t *)&obj.id##_buffer, obj.id##_pool_buffer, \
obj.id##_pool_queue_buffer
Refers to a previously declared buffer set.
This is a convenience macro to supply the buffers generated by UEL_DECLARE_AUTOPOOL_BUFFERS()
to the uel_autopool_init()
function. Use this if the buffers were defined inside a local object, accessible in the current scope.
- Parameters
-
| id | The identifier used to declare the pool buffers |
| obj | The object storing the pool buffers |
◆ UEL_DECLARE_AUTOPOOL_BUFFERS
| #define UEL_DECLARE_AUTOPOOL_BUFFERS |
( |
|
type, |
|
|
|
size_log2n, |
|
|
|
id |
|
) |
| |
Value: type id##_buffer[(1<<size_log2n)]; \
void *id##_pool_queue_buffer[1<<size_log2n];
Declares the necessary buffers to back an automatic pool, so the programmer doesn't have to reason much about it.
Use this macro as a shortcut to create the required buffers for an automatic pool. This will declare three buffers in the calling scope.
- Parameters
-
| type | The type of the objects the pool will contain |
| size_log2n | The number of elements the pool will contain in log2 form |
| id | A valid identifier for the pools. |
◆ uel_autopool_alloc()
Allocates an object and wrap it in a automatic pointer.
The allocated object is submited to the contructor closure set in the autopool.
- See also
- uel_autopool_set_constructor()
- Parameters
-
| pool | The automatic pool from where to acquire the object |
- Returns
- An autopointer wrapping the acquired object or NULL if one could not be acquired.
◆ uel_autopool_init()
| void uel_autopool_init |
( |
uel_autopool_t * |
pool, |
|
|
size_t |
size_log2n, |
|
|
size_t |
item_size, |
|
|
uint8_t * |
object_buffer, |
|
|
struct uel_autoptr * |
autoptr_buffer, |
|
|
void ** |
queue_buffer |
|
) |
| |
Initialises an automatic pool.
- Parameters
-
| pool | The pool to be initialised |
| size_log2n | The number of objects in the pool in its log2 form |
| item_size | The size of each object in the pool. If special alignment is required, it must be included in this value. |
| object_buffer | The buffer that contains each object in the pool. Must be 2**size_log2n * item_size long. |
| autoptr_buffer | The buffer that contains each autoptr object to be issued. Must be 2**size_log2n * item_size long. |
| queue_buffer | A void pointer array that will be used as the buffer to the object pointer queue. Must be 2**size_log2n long. |
◆ uel_autopool_is_empty()
| bool uel_autopool_is_empty |
( |
uel_autopool_t * |
pool | ) |
|
Checks if a pool is depleted.
- Parameters
-
| pool | The pool to be verified |
- Returns
- Whether the pool is empty (i.e.: All autoptrs have been given out)
◆ uel_autopool_set_constructor()
| void uel_autopool_set_constructor |
( |
uel_autopool_t * |
pool, |
|
|
uel_closure_t |
constructor |
|
) |
| |
Sets the constructor closure of an autopool.
This closure is invoked when uel_autoptr_alloc()
is called and takes a bare pointer to the object being alloc'ed as parameter.
- See also
- uel_autoptr_alloc()
- Parameters
-
| pool | The autopool onto which to attach the constructor |
| constructor | The constructor closure |
◆ uel_autopool_set_destructor()
| void uel_autopool_set_destructor |
( |
uel_autopool_t * |
pool, |
|
|
uel_closure_t |
destructor |
|
) |
| |
Sets the destructor closure of an autopool.
This closure is invoked when uel_autoptr_dealloc()
is called and takes a bare pointer to the object being dealloc'ed as parameter.
- See also
- uel_autoptr_dealloc()
- Parameters
-
| pool | The autopool onto which to attach the destructor |
| destructor | The destructor closure |
◆ uel_autoptr_dealloc()
Deallocates an automatic pointer.
When called, the destructor closure defined at the autopointer's source autopool is invoked. Afterwards, the autopointer is returned to its pool.
- See also
- uel_autopool_set_destructor()
- Warning
- The object must not be used after it's dealloc'ed.


{% extends "!layout.html" %} {% block extrahead %} {% endblock %} {%- block document %}
navigation links
This page is still under construction


I've never read Jane Smiley's "A Thousand Acres," nor have I read Shakespeare's "King Lear," which is what the new movie "A Thousand Acres" is supposed to be based off of. After reading the press kit and browsing the internet for awhile, I knew what the main plot for both of them were supposed to be: A wealthy, respected man divides his kingdom among his daughters and they squabble over the land. In the middle of that, there is incest, division among the family (especially the sisters), and a whole lot of dying.
A story like that sounds like it should be entertaining, but the film version of "A Thousand Acres" is pretty far from entertainment. It's a lot like sitting around your house on a Saturday afternoon with nothing to do. You turn on the TV and watch without caring if it's good or bad - it's just on. That's what "A Thousand Acres" is - it's just on. It's not at all good, but then, it's not that bad. You just sit, drifting off into space asking, "Well, what else am I going to do?"
I liked a few things about the movie: Jessica Lange turns in a good performance (as always), and the cinematography is beautiful (I wish they would have shown more of it). But all of the characters are written and portrayed as one-dimensional, stereotyped people. The director, Jocelyn Moorhouse, doesn't give the audience any sense of who we should like. The movie is confused, and there is no sense of consistency in the story or with the characters.
 Why? We're not given a reason.
Then there's Michelle Pfeiffer, who was out of place in this movie. She plays an emotionless character in a role that demands emotion. Jason Robards, who has won two academy awards in the past, is reduced to grunting out a stereotyped performance. "I'm an old man! And things just aren't as good as they used to be!"
Of course, all the men in the film have to be villains. There's a scene in a Thousand Acres where Jessica Lange starts an affair with Jess (played by Colin Firth). During the scene, the director wants us to be happy that Lange is having this affair; as they kiss, sweet, romantic music starts up and the photography gives us a sense of joy and passion. But, there was no reason for our sympathies to be with her. Her husband (played by Keith Carradine) didn't seem to be a bad guy - certainly not bad enough so that she had to go out and have an affair on him.
What's most disappointing about the movie is that you're left with nothing afterwards. A friend remarked, "For a movie that's supposed to make you feel something, bring out emotions in you and make you feel sad, it just didn't." I think that sums it up - it's not that it was an awful movie, it's just that it didn't make you feel anything. Watching something like that is always a let down.
If you're in the mood to watch a good movie about the trials and successes of Midwestern farmers, I highly recommend "Troublesome Creek: A Midwestern", which is out on video right now. "A Thousand Acres" (* and a half out of four). Directed by Jocelyn Moorhouse. Starring Jessica Lange, Michelle Pfieffer, Jennifer Jason Lee, and Jason Robards.
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


Cleaning:
✓ General cleaning ✓ Gardening ✓ Cloth wash, iron and fold .
Organizing:
✓ Kitchen ✓ Closets ✓ Living room ✓ Bedrooms ✓ Bathrooms ✓ Garages And related home places
Home move in and out:
✓ Pack ✓ Manage your move ✓ Unpack ✓ Cleaning and sorting ✓ Organize
Before/ after party cleaning services
Away from home service
Downsizing/minimizing your home
✓ Emptying trash cans and replacing with new liners ✓ Dusting desks ✓ Vacuuming carpets ✓ Cleaning floors ✓ Sanitizing phones and computer equipment ✓ Door frame and surface cleaning .
Pre move preparation Moving Unpack, and organize .


Welcome to DVID
DVID documentation can be found on the extensive README on github as well as the automatically updated Go Doc documentation.
The DVID admin console for this server may be available if you have permissions.
HTTP API
Each data type within DVID exposes commands and a HTTP API allowing clients like this browser to retrieve and put data. Command-line and HTTP API documentation is currently distributed over a variety of data types. Visit the /api/help HTTP endpoint to review this server's current API.
Licensing
DVID is released under the Janelia Farm license, a 3-clause BSD license.


|
Family Information
|
|||
|---|---|---|---|
|
Parent/Guardian 1
|
Parent/Guardian 2
|
||
|
English Name
|
|||
|
Chinese Name
|
|||
|
Occupation/Specialty
|
|||
|
Primary Phone
|
|||
|
Work Phone
|
|||
|
E-Mail
|
|||
|
Mandarin Proficiency
|
|||
|
Street Address
|
|||
|
City
|
State
|
||
|
Zip
|
Phone
|
||
|
Doctor Name
|
Phone
|
||
|
Emergency Contact Name
|
Phone
|
|
Student Information
|
|||
|---|---|---|---|
|
Last Name
|
First Name
|
||
|
Chinese Name
|
Date of Birth
|
||
|
Gender
|
Speak Chinese at Home
|
||
|
Text Language Preference
|
T-Shirt Size
|
||
|
Learned Chinese
|
EC Choice
|
|
Student 2 Information
|
|||
|---|---|---|---|
|
Last Name
|
First Name
|
||
|
Chinese Name
|
Date of Birth
|
||
|
Gender
|
Speak Chinese at Home
|
||
|
Text Language Preference
|
T-Shirt Size
|
||
|
Learned Chinese
|
EC Choice
|
|
Student 3 Information
|
|||
|---|---|---|---|
|
Last Name
|
First Name
|
||
|
Chinese Name
|
Date of Birth
|
||
|
Gender
|
Speak Chinese at Home
|
||
|
Text Language Preference
|
T-Shirt Size
|
||
|
Learned Chinese
|
EC Choice
|
|
Student 4 Information
|
|||
|---|---|---|---|
|
Last Name
|
First Name
|
||
|
Chinese Name
|
Date of Birth
|
||
|
Gender
|
Speak Chinese at Home
|
||
|
Text Language Preference
|
T-Shirt Size
|
||
|
Learned Chinese
|
EC Choice
|


Toggle navigation
Analogues Viewer
Help
Contact
analogues found out of
records
Period of Interest (manual selection, format dd/mm/yyyy)
reset
Start Date:
End Date:
Period of Interest (chart selection)
reset
Season
reset
Archive decade
reset
Correlation
reset
Distance
reset


|
ReactPhysics3D
0.7.1
Physics engine library
|
This class represents a set of contact points between two bodies that all have a similar contact normal direction. More...
#include <ContactManifold.h>
Public Member Functions | |
| ContactManifold (const ContactManifoldInfo *manifoldInfo, ProxyShape *shape1, ProxyShape *shape2, MemoryAllocator &memoryAllocator, const WorldSettings &worldSettings) | |
| Constructor. | |
| ~ContactManifold () | |
| Destructor. | |
| ContactManifold (const ContactManifold &contactManifold)=delete | |
| Deleted copy-constructor. | |
| ContactManifold & | operator= (const ContactManifold &contactManifold)=delete |
| Deleted assignment operator. | |
| ProxyShape * | getShape1 () const |
| Return a pointer to the first proxy shape of the contact. | |
| ProxyShape * | getShape2 () const |
| Return a pointer to the second proxy shape of the contact. | |
| CollisionBody * | getBody1 () const |
| Return a pointer to the first body of the contact manifold. | |
| CollisionBody * | getBody2 () const |
| Return a pointer to the second body of the contact manifold. | |
| int8 | getNbContactPoints () const |
| Return the number of contact points in the manifold. | |
| ContactPoint * | getContactPoints () const |
| Return a pointer to the first contact point of the manifold. | |
| ContactManifold * | getPrevious () const |
| Return a pointer to the previous element in the linked-list. | |
| ContactManifold * | getNext () const |
| Return a pointer to the next element in the linked-list. | |
Friends | |
| class | DynamicsWorld |
| class | Island |
| class | CollisionBody |
| class | ContactManifoldSet |
| class | ContactSolver |
This class represents a set of contact points between two bodies that all have a similar contact normal direction.
Usually, there is a single contact manifold when two convex shapes are in contact. However, when a convex shape collides with a concave shape, there might be several contact manifolds with different normal directions. The contact manifold is implemented in a way to cache the contact points among the frames for better stability (warm starting of the contact solver)


Event Location:
The University of North Florida Campus
1 UNF Drive
Jacksonville, Florida
Abstract:
MVP Kent Waldrop takes a quick tour of a few of the SQL issues that come up frequently in the MSDN Transact SQL forum. Some of the topics covered include set oriented processing, pitfalls of user defined functions, working with string lists, filtering by date and time and more.
Speaker(s): Kent Waldrop,
Abstract:
XML in SQL 2000 wasn't very exciting and it was easy to dismiss it altogether by just relying on developers to handle any XML needed within the application. SQL 2005 changes the game and this session will show you how to use the new XML data type, do basic XML operations on XML data, and showcase the changes to FOR XML that make it so much more useful. This isn't a session to convince you to use XML, but to show you what you can do with XML if you do need to use it!
Speaker(s): Kendal Van Dyke,
Abstract:
This session will step the attendees through the basics of SSIS by setting up a sample solution to import data from a variety of sources. We will look at some of the more common control flow tasks as well as the various components of the data flow task. The sample solution created will be based, at least in part, on questions from the audience.
Speaker(s): Eric Wisdahl,
Abstract:
By now we all know that we should use Windows Authentication to connect to SQL Server from our IIS applications...but most of us don't know how. This session aims to clear up the confusion by demonstrating the ways that ASP ASP.NET applications can be configured to make secure connections from different versions of IIS so that we can keep our connections secure and our DBAs happy.
Speaker(s): Kendal Van Dyke,
Abstract:
This session will provide an overview and guide to SQL Server Fast Track Data Warehouse, a new set of reference architectures created for scale-up (SMP) SQL Server based data warehouse solutions. It includes a summary of the resources available in the reference configuration, the distinguishing features of the approach, and the steps necessary to take full advantage of the new architectures.
Speaker(s): Jean-Claude Armand,
Abstract:
Learn how to use SSIS features such as Configuration Files, Configuration Tables, Parent to Child Configurations, Expressions, and Variables to make your SSIS packages Dynamic. Stop the deployment headache by creating packages that can be updated remotely and do not need to be redeployed when a change is needed. Learn how to update multiple packages with a single change.
Speaker(s): Mike Davis,
Abstract:
Perhaps you inherited a database with one or more tables having duplicate potential keys or maybe even entire duplicate records or maybe you generated a recordset from a SELECT statement that has duplicate records. In any case, you have a problem. You need to identify which tables have duplicate records or duplicate index values, isolate those records, and then delete only the duplicate records from the table. This session will focus on the functions and methods that you can use to identify and remove duplicate data from your tables
Speaker(s): Michael Antonovich,
Abstract:
I will present the custom stored procedure I use first whenever an event happens on my 2005 servers. Then, I will discuss the interpretation of the output and the underlying code that extracts that information.
Speaker(s): Steve Schneider,
Abstract:
An overview of the system objects that can be utilized to create new database objects. We will investigate the catalog views and object functions with an eye towards creating utility scripts and templates to make the day-to-day work of a database developer easier.
Speaker(s): Jonathon Moorman,
Abstract:
As a DBA in a new environment you need to learn as much as you can about the SQL Servers in your enterprise. I came across an SSIS package, created by Rodney Landrum, which gave me the core of what I was looking for. This session will focus on the benefits of the SSIS package as well as provide a walkthrough of the SSIS package, which I have made several changes to support our infrastructure. The server information included is OS edition, OS service pack level, CPU, RAM, Free drive space, SQL server version, SQL service pack, etc. Session will also demonstrate how to deploy this package to an SSIS server and schedule it via SQL agent.
Speaker(s): Michael Flora,
Abstract:
This presentation gives developers and SQL Server professionals an overview of the Language Inline Query (LINQ) syntax in .NET 3.5 that can be used to query SQL Server databases.
Speaker(s): David Fekke,
Abstract:
At some point in every DBA's career they'll be probably be asked to work with transactional replication but most DBAs don't look under the covers once they're done walking through the setup wizards. In this session we'll take a deeper look at setting up, monitoring, and calibrating transactional publications plus share some tricks and tips gleaned from years of experience working with high volume, multiple datacenter topologies.
Speaker(s): Kendal Van Dyke,
Abstract:
This session will focus on analytical ranking functions in SQL Server 2005/2008 and their use, implementing paging, string concatenation with XML PATH, pivoting, unpivoting, and separating elements in a string/column.
Speaker(s): Plamen Ratchev,
Abstract:
Most developers would agree that every SSIS solution will have the same fundamental outline. A basic framework will expedite the process by handling the common tasks between the systems while allowing the developer to concentrate on the task at hand. This framework will consist of many items, including but not limited to setting up package configurations, logging, audit trails, error handling, naming standards, etc. This session will present an example framework which can be used as the basis for future SSIS Package development.
Speaker(s): Eric Wisdahl,
Abstract:
Never created a report in Reporting Services 2005? Don't fret! In this session you will learn the basics on creating reports using SQL Server Reporting Services 2005. Topics will include the architecture of reporting services, creating a report using the wizard, creating reports from scratch, as well as deploying them to the server for general usage.
Speaker(s): Brian McDonald,
Abstract:
During this session Kent Waldrop will discuss some of his personal experiences with the ups and downs of an IT career. Some of the subjects covered will be watching out for never, never land; flying high; crashing; “coming back”; dealing with personal problem and trying to guard your self.
Speaker(s): Kent Waldrop,
Abstract:
Would you buy a million dollar race car then show up to the track on a clear day with rain tires that aren’t properly inflated and wonder why you’re only doing 180 when the manufacturer says it can do 220? Your answer was probably close to something like "Of course not!". Now let’s suppose that your million dollar race car is really your DB server and your tires are your hard drives. Do you know the right configuration to use to get the best performance out of them? Sure, there's RAID 1, RAID 10, and RAID 5 but do you know which combination of partition offset, RAID stripe size, and allocation unit size to use? This session will answer those questions by looking at the results of extensive testing performed against local disks and DASD encl
Speaker(s): Kendal Van Dyke,
Abstract:
The SQL Server 2008 MERGE command combines the features of the Insert and Update commands into a single powerful statement. You can now insert new data into one table while also update or delete data from an existing table with a single statement. In this session, we will take a look at this new addition to your TSQL toolbox in SQL Server 2008 to show how to merge two tables without creating duplicate records, how to synchronize two tables, how to use the OUTPUT clause with MERGE to save deleted records from the merge into an archival table, how indexing effects performance of MERGE statements and more.
Speaker(s): Michael Antonovich,
Abstract:
This session will cover the basics of writing optimized query’s with focus on the ‘where clause’ and ‘having clause’ of a select statement. If you have never attended a query performance session before, you’ll learn a lot!
Speaker(s): Scott Gleason,
Abstract:
This session will cover SQL Server 2008 adoption momentum in addition to the scheduled 2 SQL Server release that are currently schedule to be release during the next 36 months. As part of this session we will discuss in details of the upcoming release of SQL Server Kilimanjaro release and schedule around SQL11.
Speaker(s): Jean-Claude Armand,
Abstract:
See the methods available to convert DTS to SSIS. Get an understanding how to convert Active X scripts in your DTS packages to SSIS packages. Watch a demonstration of the software available to discover your packages, convert them, and apply best practices. Learn how to scope out your DTS conversion project.
Speaker(s): Mike Davis,
Abstract:
This session will explore subscriptions which are the scheduled delivery process defined within Reporting Services. We will explore what is required to create subscriptions, what options are available and how we can manipulate these for use on demand. We will review some practical applications that would require use of on demand subscriptions.
Speaker(s): Pam Shaw,
Abstract:
The presenter will describe basic building blocks of Data Mining process. These building blocks will be mapped on to the features available in SQL 2005 and then shortcoming on SQL 2005 will be discussion. After that the new features in SQL 2008 Data Mining will be demoed to present how the Shortcoming in 2005 were improved in 2008 and what new power in added in 2008 data mining.
Speaker(s): Vikas Hawaldar,
Abstract:
Why does SQL Server need statistics? How and when are they created and maintained? How do you know when they are incorrect or out of date? How much difference do they make in query plans? We'll answer all of those questions and more! You'll leave the session with a firm understanding of the working of statistics and what you need to know to keep them in great condition.
Speaker(s): Andy Warren,
Abstract:
This session will focus on common performance problems, considerations, and solutions. Review of methods for isolating long running queries and techniques for writing better SQL. Learn how to use dynamic management views and functions in SQL Server 2005/2008 for query tuning. Finish with explanation of parameter sniffing and different solutions.
Speaker(s): Plamen Ratchev,
Abstract:
We will use SQL Server 2008 and the SSIS tool suite to demonstrate building a data warehouse. This session will cover the basics of a data warehouse before leading into the code demonstration.
Speaker(s): Wes Dumey,
Abstract:
Lunch served outside
Speaker(s): Brian Knight,
Abstract:
REST is an architectural style that allows for a layered, scalable, and cacheable enterprise information system. With ADO.NET Data Services, a database can be surfaced to a service as a REST-style resource collection that is addressable with natural URIs and can be interacted with using the usual HTTP verbs: GET, POST, PUT, and DELETE. This session will describe RESTful Data, the benefits it conveys, and its uses. Then we will set up a data service using an existing database that developers would then access rather than accessing the database directly.
Speaker(s): Chris Eargle,
Abstract:
This session we will present methods to create very dynamic reports. We will demonstrate data driven formatting and layouts. We will review how to setup data sources that are more portable as well as see how templates make it easier to have more consistent report formats.
Speaker(s): Pam Shaw,
Abstract:
This session will present new T-SQL enhancements in SQL Server 2008 including MERGE, table valued parameters, new data types (Date and Time related, FILESTREAM, HIERARCHYID), table value constructors, sparse columns, filtered indexes, delighters, and more.
Speaker(s): Plamen Ratchev,
Abstract:
Speaker will present basic concepts behind MDX. Then a demonstration will be given on basic to intermediate MDX queries. At the end some examples will be presented about developing calculated measures in SSAS using MDX.
Speaker(s): Vikas Hawaldar,
Abstract:
Demonstration of using the new Geography datatype in SQLServer 2008. The implementation will showcase in Virtual Earth and .net 3.5 Listview.
Speaker(s): Michael Stark,
Abstract:
A non-technical discussion on the methods a business should use to prepare for the inevitable disaster. This discussion includes things you can do to prevent disasters as well as what things to have into place for when the disaster occurs. It goes beyond the usual "back up SQL Server" thoughts.
Speaker(s): Brandie Tarvin,
Abstract:
A beginner's level session on how to write the basic SELECT statement and the functions that can make your life either easier or harder.
Speaker(s): Brandie Tarvin,
Abstract:
PASS is the Professional Assocation of SQL Server, and it's the official not for profit group for SQL Server professionals. We'll talk about the annual PASS Summit (conference), chapters/user groups, regional events like SQLSaturday, and where PASS is going in the future. This will be an informal presentation with lots of time for questions and discussion.
Speaker(s): Andy Warren,
Abstract:
Ever want to implement drag-and-drop reporting in your application and stop the rampant report queue. In this session you'll have a gentle introduction to SQL Server Analysis Services. You'll see how to use it to give your users their own ad-hoc reporting and have better than expected performance results.
Speaker(s): Brian Knight,
Abstract:
This session will present a top 10 (maybe 20) list of queries and tools that DBAs can use daily. The idea is that everything is included on a single 1G or less thumb drive to be portable. From simple T-SQL statements to full blown SSIS packages, the session demonstrates how to interogate, diagnose, report on, and resolve issues that are most prevalent for DBAs: disk space, security, backup locations, database and server documentation, performance and much more. All queries, which are SQL 2000, 2005 and yes even 2008 tried and true will be made available in the session to copy to your own thumb drive. If you are lucky you might even receive a free coveted thumb to store the queries.
Speaker(s): Rodney Landrum,
Abstract:
What are the steps for successfully architecting a solution? What makes software projects successful? Have you heard these questions before? Bayer White can show and tell you what makes software projects successful from gathering requirements to providing a stable architecture! This presentation will give you a better idea as to the processes that should be followed and artifacts that should be produced to be make a project 360 degrees successful.
Speaker(s): Bayer White,
This is a list of speakers from the XML Guidebook records. The details and URLs were valid at the time of the event.
LinkedIn: https://www.linkedin.com/in/ericwisdahl
Eric Wisdahl is a computer engineer working in the database field. He has held multiple roles and positions in e-commerce, marketing and insurance industries. Currently, he is working as a database administrator in a development role for an e-commerce company. Eric Wisdahl does not like writing about himself in the third person. It is kind of creepy.
I am a recent college graduate, MCSD and MCDBA with nine years of various IT experiences. Professional - As an IT Consultant, I have come into contact with many technologies over the past nine years. I was a Desktop and Web Programmer for about 4 of those years, but now serve as a Database Administrator. Personal - When I'm not working (or tinkering), I spend most of my time with my wife and two young children with things like going to the beach, hiking and watching movies. I also like to get
Contact: http://pratchev.blogspot.com
Plamen is an SQL Server MVP specializing in relational database applications analysis, implementation, and tuning. His particular interest is in design patterns, performance and optimization. In the past two decades he has worked in different roles as database developer and architect in medium and large scale enterprise applications. He has been involved on projects utilizing DB2 and Oracle, but his main passion is SQL Server, which he started using at version 4.2. Plamen has master's degree in computer science with specialization in algorithms and compliers. He enjoys sharing his experience with user groups and at various conferences.
Contact: http://www.fekke.com/blog/
David Fekke is a Software Engineer for Lender Processing Services and is the manager for the JaxFusion user group.
LinkedIn: http://www.linkedin.com/in/kendalvandyke
Contact: http://www.kendalvandyke.com
Kendal is a database strategist, community advocate, public speaker, and blogger. A practiced IT professional with over 15 years of SQL Server experience, Kendal excels at disaster recovery, high availability planning/implementation, amp; debugging/troubleshooting mission critical SQL Server environments. Kendal is a Senior Consultant on the Microsoft Premier Developer Support team and President of MagicPASS (http://magicpass.sqlpass.org), the Orlando, FL based chapter of PASS. Before joining Microsoft, Kendal was a SQL Server/Data Platform MVP from 2011-2016.
Contact: http://pratchev.blogspot.com
Plamen is an SQL Server MVP specializing in relational database applications analysis, implementation, and tuning. His particular interest is in design patterns, performance and optimization. In the past two decades he has worked in different roles as database developer and architect in medium and large scale enterprise applications. He has been involved on projects utilizing DB2 and Oracle, but his main passion is SQL Server, which he started using at version 4.2. Plamen has master's degree in computer science with specialization in algorithms and compliers. He enjoys sharing his experience with user groups and at various conferences.
Contact: https://sqlandy.com
Andy Warren is a SQL Server consultant and trainer based in Orlando, FL. Focusing on administration, performance tuning, and SQL Server patterns and practices, he’s been a SQL Server MVP since 2008. Andy served two terms on the PASS Board of Directors, was a founding principal in SQLServerCentral, and created both the SQLSaturday and SQLRally event models.
LinkedIn: https://www.linkedin.com/in/jonathonmoorman
Jon has developed using Sql Server since version 6.0! Easily distracted by shiny objects, he has always been on the bleeding edge of sql development. When not presenting, Jon might be found backpacking, hiking, camping, canoeing, or simply resting at home with a good scifi book.
Helpdesk - 4 years Network Desktops - 2 Years DBA - 1 Year MCP, CompTia A+ CompTia Network+
Contact: https://www.simple-talk.com/blogs/author/2133-rodney-landrum/
Rodney Landrum has been architecting solutions for SQL Server for over 12 years. He has worked with and written about many SQL Server technologies, including DTS, Integration Services, Analysis Services, and Reporting Services. He has co-authored 4 books on Reporting Services. He is been a regular contributor to SQL Server magazine, sqlservercentral.com and Simple-talk.com. Rodney is also SQL Server MVP
Microsoft
LinkedIn: http://www.linkedin.com/in/mikedavissql
Contact: http://MikeDavisSQL.com
Mike Davis, MCITP, is a Consulting Team Lead at Pragmatic Works. He is an author with books covering Business Intelligence and SSIS. Mike is an experienced speaker and has presented at many events such as several SQL Server User Groups, Code Camps, SQL Server Launches, SQLSaturday, and SQL Rally. Mike is an active member at his local user group (JSSUG) in Jacksonville, FL.
LinkedIn: http://www.linkedin.com/in/pshaw1129/
Contact: http://sqlpam.wordpress.com/
Pam Shaw has been in IT for over 30 years. Since 2001, Pam has been working with SQL Server, first 2000, then 2005, 2008, 2008 R2, 2012 and now 2014. Pam currently works as a BI Developer as an independent contractor. Pam is also the Chapter Leader of the Hillsborough SQL Users Group PASS chapter and organizer of SQLSaturday Tampa.
Database Administrator by day and Author by night Brandie Tarvin sails pirate-populated waters, fights evil robots in disguise and turns kingdoms into chaotic rebellious city-states all while coding ETL processes and protecting real-world data from corruption. If it weren't for her, someone else would have the job and where would be the fun in that? Brandie's first computer experience was with a State-of-the-Art Commodore 64 brought home by her father, who informed her that "computers are NOT toys" and would not let her use it until she learned how to program. In late 2003, she turned her hobbies of programming, MUSHing and assisting friends with generic tech support into a full time career as a database administrator. She's been stuck in the fabulous and bizarre world of professional IT work ever since. Currently, Brandie is a Database Administrator Developer for Allstate Dealer Services in Jacksonville. She has published several articles on SQLServerCentral.com, trains her co-workers in SQL Server, and has previously presented at several SQLSaturday events and JSSUG meetings. She also writes fiction and freelances for Catalyst Game Labs in her spare time.
I have worked with MS SQL Server going back to version 6.0. Before that I worked with Sybase for about 5 years. I've written thousands of stored procedures, functions and triggers and a few hundred DTS packages. I have about 3000 posts on Microsoft’s SQL Server MSDN forums -- most of these posts related to transact SQL. I received MVP awards in 2008 and 2009. I like snorkeling, swimming, bicycling, ice skating and bringing out the best of people.
LinkedIn: http://www.linkedin.com/in/kendalvandyke
Contact: http://www.kendalvandyke.com
Kendal is a database strategist, community advocate, public speaker, and blogger. A practiced IT professional with over 15 years of SQL Server experience, Kendal excels at disaster recovery, high availability planning/implementation, amp; debugging/troubleshooting mission critical SQL Server environments. Kendal is a Senior Consultant on the Microsoft Premier Developer Support team and President of MagicPASS (http://magicpass.sqlpass.org), the Orlando, FL based chapter of PASS. Before joining Microsoft, Kendal was a SQL Server/Data Platform MVP from 2011-2016.
LinkedIn: https://www.linkedin.com/in/michaelpantonovich?
Contact: http://sharepointmike.wordpress.com
Michael Antonovich is the assistant director of Web and Technology Services in the Communications Division for Orange County Public Schools in Orlando, FL, where he manages the Internet and intranet infrastructure. He has published seven books, ranging from an Apple II User Guide to Office and SharePoint 2010 User's Guide. His blog has focused mainly on PowerPivot and Power BI, but for the last year Mike has taken a break to pursue some other activities. He hopes to restart his blog later this year focusing more on style and presentation. Mike has used SQL Server since 1998 and, for the past 7 years, has been promoting SSAS, PowerPivot, and Power BI for the masses.
Contact: http://www.durableimpact.com
Wes is a Senior Consultant with Durable Impact Consulting, a Florida-based data warehouse and business intelligence firm. Wes has over 10 years experience working with clients around the world, both large and small, on their business intelligence and operational needs.
Database Administrator by day and Author by night Brandie Tarvin sails pirate-populated waters, fights evil robots in disguise and turns kingdoms into chaotic rebellious city-states all while coding ETL processes and protecting real-world data from corruption. If it weren't for her, someone else would have the job and where would be the fun in that? Brandie's first computer experience was with a State-of-the-Art Commodore 64 brought home by her father, who informed her that "computers are NOT toys" and would not let her use it until she learned how to program. In late 2003, she turned her hobbies of programming, MUSHing and assisting friends with generic tech support into a full time career as a database administrator. She's been stuck in the fabulous and bizarre world of professional IT work ever since. Currently, Brandie is a Database Administrator Developer for Allstate Dealer Services in Jacksonville. She has published several articles on SQLServerCentral.com, trains her co-workers in SQL Server, and has previously presented at several SQLSaturday events and JSSUG meetings. She also writes fiction and freelances for Catalyst Game Labs in her spare time.
Vikas is BI Architect at Idea Integration. He has 12 years of experience in Business Intelligence. He has spoken into several SQLSaturday sessions.
Contact: http://www.bidn.com/people/brianknight
Brian Knight, a SQL Server MVP, MCSE, and MCDBA, is the owner and founder of Pragmatic Works. He is also the co-founder of SQLServerCentral.com, BIDN.com, and SQLShare.com. Brian runs the local SQL Server users group in Jacksonville (JSSUG), is a contributing columnist at several technical magazines, and does regular webcasts at PragmaticWorks.com. He is the author of 15 SQL Server books and a frequent speaker at conferences such as PASS Summit, SQL Connections, TechEd, and many Code Camps.
I have worked with MS SQL Server going back to version 6.0. Before that I worked with Sybase for about 5 years. I've written thousands of stored procedures, functions and triggers and a few hundred DTS packages. I have about 3000 posts on Microsoft’s SQL Server MSDN forums -- most of these posts related to transact SQL. I received MVP awards in 2008 and 2009. I like snorkeling, swimming, bicycling, ice skating and bringing out the best of people.
LinkedIn: http://www.linkedin.com/in/kendalvandyke
Contact: http://www.kendalvandyke.com
Kendal is a database strategist, community advocate, public speaker, and blogger. A practiced IT professional with over 15 years of SQL Server experience, Kendal excels at disaster recovery, high availability planning/implementation, amp; debugging/troubleshooting mission critical SQL Server environments. Kendal is a Senior Consultant on the Microsoft Premier Developer Support team and President of MagicPASS (http://magicpass.sqlpass.org), the Orlando, FL based chapter of PASS. Before joining Microsoft, Kendal was a SQL Server/Data Platform MVP from 2011-2016.
LinkedIn: https://www.linkedin.com/in/michaelpantonovich?
Contact: http://sharepointmike.wordpress.com
Michael Antonovich is the assistant director of Web and Technology Services in the Communications Division for Orange County Public Schools in Orlando, FL, where he manages the Internet and intranet infrastructure. He has published seven books, ranging from an Apple II User Guide to Office and SharePoint 2010 User's Guide. His blog has focused mainly on PowerPivot and Power BI, but for the last year Mike has taken a break to pursue some other activities. He hopes to restart his blog later this year focusing more on style and presentation. Mike has used SQL Server since 1998 and, for the past 7 years, has been promoting SSAS, PowerPivot, and Power BI for the masses.
LinkedIn: http://www.linkedin.com/in/steveschneider1/
Contact: http://sqlinsight.net/blog/
Speaker Bio: Steve Schneider is a Business Intelligence developer for the City of Jacksonville (Florida), and has been embedded in SQL for over 20 years. He is a Microsoft Certified Systems Engineer and a Microsoft Certified Database Administrator. Along with his passion for SQL, he spends his time running half marathons and sailing. His current focus of interest is performance tuning, security, and cube building. He tries to maintain a constant sense of gratitude to God for the wonderful things he has been enabled to do.
Contact: https://sqlandy.com
Andy Warren is a SQL Server consultant and trainer based in Orlando, FL. Focusing on administration, performance tuning, and SQL Server patterns and practices, he’s been a SQL Server MVP since 2008. Andy served two terms on the PASS Board of Directors, was a founding principal in SQLServerCentral, and created both the SQLSaturday and SQLRally event models.
Microsoft
LinkedIn: http://www.linkedin.com/in/mikedavissql
Contact: http://MikeDavisSQL.com
Mike Davis, MCITP, is a Consulting Team Lead at Pragmatic Works. He is an author with books covering Business Intelligence and SSIS. Mike is an experienced speaker and has presented at many events such as several SQL Server User Groups, Code Camps, SQL Server Launches, SQLSaturday, and SQL Rally. Mike is an active member at his local user group (JSSUG) in Jacksonville, FL.
LinkedIn: http://www.linkedin.com/in/pshaw1129/
Contact: http://sqlpam.wordpress.com/
Pam Shaw has been in IT for over 30 years. Since 2001, Pam has been working with SQL Server, first 2000, then 2005, 2008, 2008 R2, 2012 and now 2014. Pam currently works as a BI Developer as an independent contractor. Pam is also the Chapter Leader of the Hillsborough SQL Users Group PASS chapter and organizer of SQLSaturday Tampa.
Contact: http://www.humanworkflow.net
Bayer White has been developing enterprise solutions for the past 11years using .Net Technologies. Since the first beta of the .Net Framework 3.0, his focus has been mastering Business Process Management (BPM) using Windows Workflow Foundation (WF). He is known within the Florida developer community by speaking at Florida Code Camps, blogging(http://www.humanworkflow.net) and writing articles focused on WF. He has also spoken at various conferences such as PASS, DevConnections, VSLive and MDC, a
LinkedIn: https://www.linkedin.com/in/ericwisdahl
Eric Wisdahl is a computer engineer working in the database field. He has held multiple roles and positions in e-commerce, marketing and insurance industries. Currently, he is working as a database administrator in a development role for an e-commerce company. Eric Wisdahl does not like writing about himself in the third person. It is kind of creepy.
LinkedIn: http://www.linkedin.com/in/kendalvandyke
Contact: http://www.kendalvandyke.com
Kendal is a database strategist, community advocate, public speaker, and blogger. A practiced IT professional with over 15 years of SQL Server experience, Kendal excels at disaster recovery, high availability planning/implementation, amp; debugging/troubleshooting mission critical SQL Server environments. Kendal is a Senior Consultant on the Microsoft Premier Developer Support team and President of MagicPASS (http://magicpass.sqlpass.org), the Orlando, FL based chapter of PASS. Before joining Microsoft, Kendal was a SQL Server/Data Platform MVP from 2011-2016.
Contact: http://pratchev.blogspot.com
Plamen is an SQL Server MVP specializing in relational database applications analysis, implementation, and tuning. His particular interest is in design patterns, performance and optimization. In the past two decades he has worked in different roles as database developer and architect in medium and large scale enterprise applications. He has been involved on projects utilizing DB2 and Oracle, but his main passion is SQL Server, which he started using at version 4.2. Plamen has master's degree in computer science with specialization in algorithms and compliers. He enjoys sharing his experience with user groups and at various conferences.
Scott Gleason has worked in Jacksonville Florida as DBA in the medical and Fincial field for too many years to count now. He a long standing Vice President in the Jacksonville SQL Server Users Group (JSSUG).
Michael Stark has been developing software since 1992. He has worked for both large and small companies. He has worked in a variety of platforms and environments. He prefers the newer technologies and enjoys learning new skills and applying them as solutions to existing processes. He prefers client facing software development projects. He gets personal satisfaction with build products that make business life easier for the end user. Mr. Stark is originally from Miami, Florida and currently resides in Tampa, Florida. In between the two he has live in Atlanta, Detroit, Deland, and Madrid Spain.
Vikas is BI Architect at Idea Integration. He has 12 years of experience in Business Intelligence. He has spoken into several SQLSaturday sessions.
Contact: http://www.bidn.com/people/brianknight
Brian Knight, a SQL Server MVP, MCSE, and MCDBA, is the owner and founder of Pragmatic Works. He is also the co-founder of SQLServerCentral.com, BIDN.com, and SQLShare.com. Brian runs the local SQL Server users group in Jacksonville (JSSUG), is a contributing columnist at several technical magazines, and does regular webcasts at PragmaticWorks.com. He is the author of 15 SQL Server books and a frequent speaker at conferences such as PASS Summit, SQL Connections, TechEd, and many Code Camps.
Contact: http://www.kodefuguru.com
Chris Eargle is a Telerik Developer Evangelist, INETA Director, and Microsoft Most Valuable Professional – C# from Columbia, SC, USA. He has over a decade of experience designing and developing enterprise applications, and he runs the local .NET User Group: the Columbia Enterprise Developers Guild. He is a frequent guest of conferences and community events promoting best practices and new technologies. His blog, kodefuguru.com, features content to guide you in becoming a .NET Ninja!
The following is a list of sponsors that helped fund the event.


Health App
We want you to recieve the BEST Health Care possible!
Home
Create Profile
Doctor Search
About Us
No Doctor? No Problem!
We will find one for you!


{% extends "dashboard_layout.html" %} {% block content %}
TIWAP (Totally Vulnerable Web Application Project) Web Application is designed for CyberSecurity enthusiasts who want to learn Web Application Security. This application includes various security levels (Low-Medium-High). You can change security levels to practice. The security level hardens the vulnerability level of TIWAP.
|
Level |
Description |
|
Low |
This security level is completely vulnerable and has no security measures at all. We recommend beginners to start with this level. This level is used as an example of how web application vulnerabilities manifest through bad coding practices and to serve as a platform to teach or learn very basic exploitation techniques. |
|
Medium |
At this level, basic security measures are taken to avoid the vulnerability but still it is not totally secure, it can be bypassed. This setting is mainly to give an example to the user of bad security practices, where the developer has tried but failed to secure an application. It also acts as a challenge to users to refine their exploitation techniques. |
|
Hard |
This option is an extension to the medium difficulty. The developer tried to implement harder and alternative security measures but again failed to completely secure the website. In this level, the users need to refine their exploitation techniques and try harder to exploit the vulnerability. |


| description | photo | rating |
|---|---|---|
| eating very good peanuts with very good hands | 10/10 | |
| throwing crazy gang signs | 12/10 | |
| Lord of the Owls | 13/10 | |
| a very agressive goose in trying times | 100/10 |
| description | photo | rating |
|---|---|---|
| eating very good peanuts with very good hands | 10/10 | |
| throwing crazy gang signs | 12/10 | |
| Lord of the Owls | 13/10 | |
| a very agressive goose in trying times | 100/10 |


Compund Interest
Principal amount(P):
Annual rate in % (r):
Compunds per year(n):
Years(t):
Calculate
Total Amount