Flight control API: high-level actions and low-level control modes.
More...
#include <DJI_Control.h>
|
| enum | VerticalLogic { VERTICAL_VELOCITY = 0x00,
VERTICAL_POSITION = 0x10,
VERTICAL_THRUST = 0x20
} |
| |
| enum | HorizontalLogic { HORIZONTAL_ANGLE = 0x00,
HORIZONTAL_VELOCITY = 0x40,
HORIZONTAL_POSITION = 0x80,
HORIZONTAL_PALSTANCE = 0xC0
} |
| |
| enum | YawLogic { YAW_ANGLE = 0x00,
YAW_RATE = 0x08
} |
| |
| enum | HorizontalCoordinate { HORIZONTAL_GROUND = 0x00,
HORIZONTAL_BODY = 0x02
} |
| |
| enum | StableMode { STABLE_DISABLE = 0x00,
STABLE_ENABLE = 0x01
} |
| |
|
|
| Control (Vehicle *vehicle=0) |
| |
| void | action (DJI_CONTROLLER_CMD cmd, VehicleCallBack callback=0, UserData userData=0) |
| | Basic action command for the vehicle. More...
|
| |
| ACKErrorCode | action (DJI_CONTROLLER_CMD cmd, int timeout) |
| | Control the vehicle using user-specified mode. More...
|
| |
| ACKErrorCode | armMotors () |
| | Wrapper function for arming the motors. More...
|
| |
|
ACKErrorCode | disArmMotors () |
| | Wrapper function for disarming the motors.
|
| |
| ACKErrorCode | takeoff () |
| | Wrapper function for take off. More...
|
| |
| ACKErrorCode | goHome () |
| | Wrapper function for go Home. More...
|
| |
| ACKErrorCode | land () |
| | Wrapper function for landing. More...
|
| |
| void | modeCtrl (CtrlData &data) |
| | Control the vehicle using user-specified mode. More...
|
| |
| void | modeCtrl (AdvancedCtrlData &data) |
| | Control the vehicle using user-specified mode (overloaded) More...
|
| |
| void | positionAndYawCtrl (float32_t x, float32_t y, float32_t z, float32_t yaw) |
| | Control the position and yaw angle of the vehicle. More...
|
| |
| void | velocityAndYawRateCtrl (float32_t Vx, float32_t Vy, float32_t Vz, float32_t yawRate, float32_t xFeedforward, float32_t yFeedforward) |
| | Control the velocity and yaw rate of the vehicle. More...
|
| |
| void | attitudeAndVertPosCtrl (float32_t roll, float32_t pitch, float32_t yaw, float32_t z) |
| | Control the attitude and vertical position of the vehicle. More...
|
| |
| void | attitudeRateAndVertPosCtrl (float32_t rollDot, float32_t pitchDot, float32_t yawDot, float32_t z) |
| | Control the attitude rate and vertical position of the vehicle. More...
|
| |
| void | emergencyBrake () |
| | Stop the vehicle in horiz velocity, vert velocity, yaw rate mode (body frame) More...
|
| |
|
|
Vehicle * | vehicle |
| |
|
ProtocolLayer * | protocol |
| |
Flight control API: high-level actions and low-level control modes.
Basic action command for the vehicle.
- Parameters
-
| cmd | action command from DJI_ControllerCMD.h |
| callback | callback function |
| userData | user data (void ptr) |
Control the vehicle using user-specified mode.
- Parameters
-
| void Control::actionCallback |
( |
Vehicle * |
vehiclePtr, |
|
|
RecvContainer |
recvFrame, |
|
|
UserData |
userData |
|
) |
| |
|
static |
A callback function for action non-blocking calls.
- Parameters
-
| recvFrame | the data comes with the callback function |
| userData | a void ptr that user can manipulate inside the callback |
| ACKErrorCode Control::armMotors |
( |
| ) |
|
Wrapper function for arming the motors.
- Returns
- ACKErrorCode struct with the acknowledgement from the FC
| void Control::attitudeAndVertPosCtrl |
( |
float32_t |
roll, |
|
|
float32_t |
pitch, |
|
|
float32_t |
yaw, |
|
|
float32_t |
z |
|
) |
| |
Control the attitude and vertical position of the vehicle.
- Parameters
-
| roll | attitude setpt in x axis of body frame (NED) (deg) |
| pitch | attitude setpt in y axis of body frame (NED) (deg) |
| yaw | attitude setpt in z axis of body frame (NED) (deg) |
| z | vertical position in world(TODO need confirm) frame |
- Note
- 18 is the flag value of this mode
| void Control::attitudeRateAndVertPosCtrl |
( |
float32_t |
rollDot, |
|
|
float32_t |
pitchDot, |
|
|
float32_t |
yawDot, |
|
|
float32_t |
z |
|
) |
| |
Control the attitude rate and vertical position of the vehicle.
- Parameters
-
| rollDot | attitude rate setpt in x axis of body frame (NED) (deg) |
| pitchDot | attitude rate setpt in y axis of body frame (NED) (deg) |
| yawDot | attitude rate setpt in z axis of body frame (NED) (deg) |
| z | vertical position in world(TODO need confirm) frame |
- Note
- 218 is the flag value of this mode
| void Control::emergencyBrake |
( |
| ) |
|
Stop the vehicle in horiz velocity, vert velocity, yaw rate mode (body frame)
- Note
- 75 is the flag value of this mode
| ACKErrorCode Control::goHome |
( |
| ) |
|
Wrapper function for go Home.
- Returns
- ACKErrorCode struct with the acknowledgement from the FC
| ACKErrorCode Control::land |
( |
| ) |
|
Wrapper function for landing.
- Returns
- ACKErrorCode struct with the acknowledgement from the FC
| void Control::modeCtrl |
( |
CtrlData & |
data | ) |
|
Control the vehicle using user-specified mode.
- Parameters
-
| data | control setpts and flags |
| void Control::modeCtrl |
( |
AdvancedCtrlData & |
data | ) |
|
Control the vehicle using user-specified mode (overloaded)
- Parameters
-
| data | control setpts and flags |
| void Control::positionAndYawCtrl |
( |
float32_t |
x, |
|
|
float32_t |
y, |
|
|
float32_t |
z, |
|
|
float32_t |
yaw |
|
) |
| |
Control the position and yaw angle of the vehicle.
- Parameters
-
| x | position setpt in x axis of body frame (m) |
| y | position setpt in y axis of body frame (m) |
| z | position setpt in z axis of body frame (m) |
| yaw | yaw setpt (rad) |
- Note
- 146 is the flag value of this mode
| ACKErrorCode Control::takeoff |
( |
| ) |
|
Wrapper function for take off.
- Returns
- ACKErrorCode struct with the acknowledgement from the FC
| void Control::velocityAndYawRateCtrl |
( |
float32_t |
Vx, |
|
|
float32_t |
Vy, |
|
|
float32_t |
Vz, |
|
|
float32_t |
yawRate, |
|
|
float32_t |
xFeedforward, |
|
|
float32_t |
yFeedforward |
|
) |
| |
Control the velocity and yaw rate of the vehicle.
- Parameters
-
| Vx | velocity setpt in x axis of world/ground frame (m/s) |
| Vy | velocity setpt in y axis of world/ground frame (m/s) |
| Vz | velocity setpt in z axis of world/ground frame (m/s) |
| yawRate | yawRate setpt (deg/s) (TODO: need confirm) |
| xFeedforward | feedforward term for x acceleration (m/s^2) |
| yFeedforward | feedforward term for y acceleration (m/s^2) |
- Note
- 72 is the flag value of this mode
The documentation for this class was generated from the following files:
- osdk-core/API/inc/DJI_Control.h
- osdk-core/API/src/DJI_Control.cpp


I work on a front end project which has two Git repositories, three completely different build systems, five languages, over 10,000 files and 10 million lines of code. It’s been built over six years, with the effort over at least a thousand engineers. At this scale, IDE’s just can’t work effectively.
For instance, Jump to Definition (F12 in vscode) mostly works, except when navigating to a concrete implementation of an interface injected ten files away. Hover-over type declarations mostly works, except when the Typescript server can’t resolve a particular namespace because some legacy code fiddled with webpack magic. Automatic renaming within files mostly works, except when someone used the same variable name in a deeply nested closure and Typescript can’t infer that because there isn’t enough type information to go on. And let’s not even talk about renaming across files. You’d be better off winning the powerball [1].
In this codebase, there’s no substitute for grep. Specifically, there’s no substitute for ripgrep, which is the only popular tool i know which can effectively search a codebase of this size. [2] Many of the senior engineers working on this codebase agree. Thank goodness vscode uses ripgrep as the default.
Same story when debugging production code. Source maps work, except when you’re dealing with the oldest cruft of the code which is built on the [redacted] build system instead of industry standard Webpack. Or when you’re running your app on your battery powered laptop in the cafeteria, not your powerful dev box. Or when the issue only repros when startup happens too fast and you can’t wait for the source maps to load.
In the end, I followed the senior engineers and now I count myself as being proficient at:
A) reading prettified mangled Javascript
B) reading mangled Typescript ES5 output for async functions. For those unwaware, async functions in ES5 compile down to switch cases, where 2 means “Continue”, 3 means “Return” and 5-7 indicate error codes. You just have to memorize that, or pay the price of looking that up when you’re debugging seven layers deep.
Software should have a lite mode
In both these cases, we were saved by the presence of a solution which was 100% effective and fast. That’s ripgrep for code search and setting up breakpoints in minified code. Both solutions have a better, more correct alternative, namely IDEs and source maps respectively. Yet in practice, I can assure you that we have to fallback to the simpler methods at least once daily.
Here’s some light mode software that I thought of:
- Gmail html only site
- Github vs Git vs Git plumbing tools (can always fall back to Git intenrals)
- Erlang crash handler
- C macros
- Golang compiler vs webpack
Footnotes
- aka the lotto (UK), or 4D (Singapore).
- I personally have moved off ripgrep, and I use qgrep, which keeps a compressed index of all the files in work repos. It requires some setup and you have to update the index every time you switch branches, but it is 10x faster than ripgrep. And milliseconds add up.


Jack Ganssle
Unread
A guide for writing firmware, which like "The Firmware Handbook" seems to entirely overlook user experience design.
"All too often the customer-management, your boss. or the end
user-doesn‘t really know what they want until they see a working system.
It’s clearly a Catch-22
situation."
"The solution is a prototype of the system’s software. running a minimal subset of the application’s functionality. This is not a skeleton of the final code, waiting to be fleshed out after management puts in their two cents. I’m talking about truly disposable code."
"Build just enough code to get the desired result. Real systems need a spec that defines what the product does; a rapid prototype needs a spec that spells out what won’t be in it."
"you’ll need an understanding of what decisions will be made as a result
of the prototype. If the user interface will be pretty much
constant
no matter what turns up in the modeling phase, hey-just jump into final
product development. If you know the answer, don’t ask the question!"
"The raison d’etre for the prototype is to identify problems and make
changes. Get these decisions made early by producing something in days or
weeks.
Develop a schedule with many milestones where nondevelopers get a chance
to look at the product and fiddle with it a bit."
"All embedded people must understand that their creation does not exist in isolation; the code and the chips all function together, to form the seamless gestalt that (you hope) delights the user."
"Too many of us view our profession parochially, somehow feeling that college is the only route to design. Part of this probably stems from the education itself, where instructors without doctorates cannot become full professors."
"Doctors and lawyers plaster degrees and awards over the walls...have very effective professional associations that limit entry into the field to those people with a degree- from a school approved by the association...Electronics is very different. We’re in a much younger field, where a bit of the anarchy of the Wild West still reigns."
"Few would deny that firmware is a disaster area, with poor-quality
products getting to market late and over budget. Don’t become resigned
to
the status quo."
"Yet integration shouldn’t even exist as a line item. Integration
im-
plies we’re only fiddling with bits and pieces of the application,
ignoring
the problem’s gestalt, until very late in the schedule when an
unexpected
problem (unexpected only by people who don’t realize that the reason
for
test is to unearth unexpected issues) will be a disaster.
The only reasonable way to build an embedded system is to start in-
tegrating today, now, on the day you first crank a line of code. The
biggest
schedule killers are unknowns; only testing and actually running code
and
hardware will reveal the existence of these unknowns."
A 1999 version superceded by a 2008 version.


Toggle navigation
World Wide Energy - Western Power Grid
Power Distribution
Load Metrics
Site Coverage
Capital Expenditures
Fleet View
Query Radius
mi
km
Latitude
Longitude
Start time
End time
dobeARMS IO
Refresh
WWE Power Corporation - Western Division
© 2018–2019
Doble Engineering Company


Carol J. Pudlas
LODI-Carol J. Pudlas, age 75, died on Monday, November 11, 2019, at her home in Lodi following a long illness.
A visitation will be held on Saturday, November 16, 2019, from 10:00 to 12:00 noon at the Winn-Cress Funeral Home, 5785 Hwy. Q, Waunakee. A Celebration of Life will follow at Rex's Innkeeper from 12:00 to 3:00 p.m.
A complete obituary will follow in Thurs paper.
Winn-Cress Funeral Home
5785 Hwy Q
Waunakee, WI


ULO application is temporary disable today 10/07/2008.
It will be back online within few hours with OI distributed according to organizations codes.


| Modifier and Type | Field and Description |
|---|---|
Overlay |
FindMin.overlay
|
Overlay |
TreeCountNodes.overlay
|
| Modifier and Type | Method and Description |
|---|---|
Protocol |
DemoNaiveBroadcast.createProtocolInstance(int i,
Address address,
Overlay view)
|
MergeCorrelated
|
DemoTokenRingPipeline.createProtocolInstance(int nodeId,
Address address,
Overlay overlay)
Called by the test harness to generate a protocol instance (i.e.,
pipeline + leader election) for each node.
|
MergeCorrelated
|
DemoTokenRing.createProtocolInstance(int nodeId,
Address address,
Overlay overlay)
Called by the test harness to create a protocol instance for each
node
|
| Constructor and Description |
|---|
DemoNaiveBroadcast.StringBroadcast(Overlay overlay)
|
FindMin(T initialValue,
Overlay overlay,
Protocol.Direction direction)
|
FindMinComparable(T initialValue,
Overlay overlay,
Protocol.Direction direction)
|
FindMinPull(int x,
Overlay overlay)
|
FourLayerTreeStack(Overlay view,
int nodeID)
Initialize a demo protocol instance.
|
| Modifier and Type | Class and Description |
|---|---|
class |
RingOverlayBuilder
FIXME not complete
|
class |
SpanningTreeOverlay
Construct a rooted Spanning Tree overlay by using a leader
election protocol
to decide the root.
|
| Modifier and Type | Field and Description |
|---|---|
Overlay |
MinAddressLeaderElection.overlay
|
Overlay |
NaiveBroadcast.overlay
|
Overlay |
RingOverlayBuilder.underlay
|
Overlay |
SpanningTreeOverlay.view
|
| Modifier and Type | Method and Description |
|---|---|
Overlay |
SpanningTreeOverlay.getChildrenAsOverlay()
|
| Constructor and Description |
|---|
MinAddressLeaderElection(Overlay overlay)
|
NaiveBroadcast(Overlay overlay,
int ttl)
|
RingOverlayBuilder(Overlay underlay)
|
SpanningTreeOverlay(LeaderElection leaderElection,
Overlay sourceOverlay)
Create a new instance
|
| Modifier and Type | Interface and Description |
|---|---|
interface |
DoublyLinkedRingOverlay
|
interface |
RootedTree
Tree overlay abstraction
|
interface |
SinglyLinkedRingOverlay
|
interface |
TreeOverlay
This interface is structurally identical to overlay, but serves
as a tag to
distinguish protocols that build a tree, as opposed to other overlays
|
| Modifier and Type | Class and Description |
|---|---|
static class |
RootedTree.ChildOverlay
An overlay that causes nodes to gossip only to their children
|
class |
RoundRobinOverlay
|
class |
StaticOverlay
An unchanging overlay.
|
| Modifier and Type | Method and Description |
|---|---|
Overlay |
RootedTree.getChildrenAsOverlay()
Return the set of children as an Overlay
|
| Modifier and Type | Field and Description |
|---|---|
Overlay |
TestLoggingRemoteLocal.view
|
| Modifier and Type | Field and Description |
|---|---|
static fj.F3<java.lang.Integer,Address,Overlay,Protocol> |
TestLoggingRemoteLocal.createNodeFunc
|
| Modifier and Type | Method and Description |
|---|---|
Protocol |
ExampleCompositeProtocolTest.createProtocolInstance(int i,
Address address,
Overlay view)
Create an instance of our protocol.
|
| Constructor and Description |
|---|
TestLoggingRemoteLocal(Overlay view)
|
| Modifier and Type | Class and Description |
|---|---|
static class |
SinglyLinkedRingGraph.StaticSinglyLinkedRingOverlay
|
| Modifier and Type | Method and Description |
|---|---|
Overlay |
SinglyLinkedRingGraph.getOverlay(Address addr)
|
| Modifier and Type | Method and Description |
|---|---|
Overlay |
TestHarnessGraph.getOverlay(Address node)
|
Overlay |
TestHarnessBaseGraph.getOverlay(Address node)
|
| Modifier and Type | Method and Description |
|---|---|
Protocol |
TestHarness.createProtocolInstance(int nodeId,
Address address,
Overlay overlay)
|
Protocol |
ProtocolInstanceFactory.createProtocolInstance(int nodeId,
Address address,
Overlay overlay)
|
| Modifier and Type | Method and Description |
|---|---|
static ProtocolInstanceFactory
|
TestHarness.factoryFromCNF(fj.F3<java.lang.Integer,Address,Overlay,Protocol> createNodeFunc)
|
static void |
TestHarness.main(java.lang.String[] argv,
fj.F3<java.lang.Integer,Address,Overlay,Protocol> createNodeFunc)
|
void |
TestHarness.runMain(java.lang.String[] argv,
fj.F3<java.lang.Integer,Address,Overlay,Protocol> createNodeFunc)
|


Home
About
Gallery
Contact
Responsive Web Design
Contact Us
Name :
Email :
What's on your mind...
Submit


THE SIXTH SENSE A film review by Steve Rhodes Copyright 1999 Steve Rhodes RATING (0 TO ****): *** 1/2
Back in the 1930s, the Academy gave out small Oscars for the best juvenile performance of the year. (This was before the word juvenile became a pejorative.) It is a shame that this practice has fallen by the wayside, since young Haley Joel Osment (the little boy from BOGUS) would win this year's award hands down for his incredible work as the star of THE SIXTH SENSE.
Bruce Willis, who costars with Osment, delivers one of the strongest performances of his career and still manages to be upstaged by the talented youngster. "The most amazing child actor I've ever seen" is how Willis refers to Osment in the film's press notes. "I rank this kid up there with the best adult actors I've worked with over the years." After seeing the child's brilliant work in this remarkable film, Willis's observations are easy to agree with.
THE SIXTH SENSE, written and directed with subtly and grace by M. Night Shyamalan, doesn't fit neatly into any genre, no matter what the trailers might lead you to believe. Perhaps the best way to define it is to say what it isn't. It's not a horror movie, although there are some frightening images. The script is too interior and intellectual to be considered a traditional thriller, but you will find yourself on the edge of your seat. The movie isn't a comedy even though there are plenty of appreciated opportunities for laughter to break the film's intensity. Finally, it isn't a romance, but love is a major theme.
So what is it? Any category you put it in would be needlessly limiting and inappropriate. Suffice it to say that it's a film that will surprise and mesmerize you. It's the sort of film that's liable to elicit a "wow" at the conclusion.
This review will give only the briefest of outline to the story, less than the trailers provide, so that there is no fear of revealing any of the fascinating details of the plot.
Award winning child psychologist Dr. Malcolm Crowe (Willis) goes to help 8-year-old Cole Sear (Osment).  "You're nice, but you can't help me," Cole tells Malcolm. This is a boy so troubled that he steals religious figurines from church in order to increase the size of the altar in the hidden place in his bedroom.
In his tenderest performance ever, Willis shows his empathy for the boy's troubles. Malcolm had a bad incident with a previous patient, and he views Cole as his chance, perhaps his last chance, to make amends. The guilt-ridden Malcolm is also having trouble in his marriage. His wife, Anna (Olivia Williams from RUSHMORE), doesn't understand him anymore, and they both suffer from depression.
One day, the very serious boy decides to reveal his secret to the doctor, something he hasn't been willing to do with his mother. "I see dead people," he claims. "They don't know they're dead. They only see what they want to see." But is there any truth in this?
Tak Fujimoto's dark, intense cinematography reflects the somber tone of the two protagonists' troubles. The complex and rewarding script blends in a strong life-affirming aspect to the melancholy story. The touching film moves with great delicacy as it reveals its truths. The cinematic equivalent of a page-turner, the movie keeps your eyes glued to the screen. The writer respects the intelligence of the audience, saving the answers to many of the key questions that the story poses for as long as possible.
As the ending credits roll, you'll be busy discussing the film with everyone around you. One subject of the conversation will undoubtedly be that you want to see it again. It's that good and that intriguing.
THE SIXTH SENSE runs 1:54. It is rated PG-13 for intense thematic material and violent images and would be fine for teenagers. An R rating might have been more appropriate.
Email<EMAIL_ADDRESS>Web: http://www.InternetReviews.com
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


About Us
S'wooft opened in March of 2015 when Sarah Homan (founder) ran into a dilemma. She lived in far northwest Chicago and despite being within city limits, had very few options for pet care for her then 8yr old collie mix, Allie. Long work and commuting hours made it necessary to find a reliable daily dog walker and she was shocked at the limited options in her area, so she made it her mission to establish a loving, reliable, and professional pet care service for far northwest Chicago and the surrounding area. Sarah left her full-time job in technology recruiting in October of 2015 to continue to grow the business. Her dogs Allie and little sister Melo (2yr old Pit Bull mix) now enjoy having a daily walking buddy and seeing a lot more of mom!
Lisa is a wife and mother of two talented young ladies and two lovable pups, a German Shepherd and a Lab mix. She started out with S'wooft as a dog walker and within her first year was promoted to Office Manager due to her keen attention to detail, natural customer service, and unwavering care for all our fur clients. She is a licensed and practicing massage therapist, and originally came to S'wooft when she needed to reduce her client load following a significant wrist injury. She's a health and wellness nut and a true Jackie of all trades, adding value and improving the landscape in everything she does!
Michael worked with a dog walking company for about 3.5 years (further downtown) and really enjoyed his full walking route each day, as well as assisting with training of new staff members, both for handling skills and tech orientation. He was frustrated with the constant turnover of ownership/management, so when they also transitioned to more of a tech than a service company, he left to look for a more stable “home” in the dog walking world. He’s an all-season bicyclist and the first of our S’wooft bike squad!
Natalie is from Oak Park and is a lifelong pet owner and lover, currently with a Frenchie named Indigo and a kitty cat sibling. She has been working in web development/design primarily for start-up design firms in the city, and recently branched out into freelance work (check out her website). Her freelance keeps her busy in the evenings/weekends, and she was looking for something that would compliment that work, that would also allow her to get outside and spend time with animals. Her references spoke both to her charismatic personality, approachability, and her love for pets, so we've been glad to have her on the team!
Kristine recently completed her bachelor degree in Animal Science from Illinois State University and already had years of professional pet care experience when she joined Team S'wooft. She currently works one day a week with the Shedd Aquarium, assisting in everything from transitioning aquatic animals between habitat exhibits to planning and preparing their meals. She’s a dog owner and lover and would ultimately like to work full-time with dogs (especially focused on training, such as working with “sniffing” K9s utilized for security functions).
Melissa is a Westwood College graduate following her passion for life Insurance and pups. When she’s not here at S’wooft, she is working her on her Primerica business and dog sitting for long time clients. Melissa came to us as a result of her desire to become Pet First Aid/CPR certified, and stumbling upon the opportunity with S'wooft. She loves hanging out with our fur clients. When she is not walking dogs, she is educating families on how to save and get out of debt. She is a licensed Life representative and prides herself on honesty and integrity.
Chris is a Columbia College grad with a degree in Audio Arts & Acoustics - Audio Design & Production. He has done production and studio management work in a variety of settings. He was most recently managing a family-owned internet radio station. His references from there were fantastic and the staff was sad to lose him as a result of changes made to the business. He was searching for a more outdoorsy and active role, and was very happy to find us! He’s an all-weather bicyclist with experience working with a range of animals, from his own cats (past/current) and dogs (past), as well as volunteer work with chickens, turkeys, sheep, and cows.
Suzy likes to call herself a professional Man’s Best Friend’s Best Friend. She’s walked dogs of all breeds, ages, and sizes all over the Chicagoland area and has loved every last one of them. She worked for over 5 years at two of Chicago's largest and best known dog walking companies and brought her vast experience and insight to Team S'wooft after moving to the far northwest side. She has two adorable cats, Sam and Max, ages 1. When she’s not cavorting with canines, you can catch Suzy playing in bands, writing stories, and, more recently, wrestling under the (very apt) ring name Suzy the Wrestler.
Diana is a stay at home mom of her daughter and two cats, a 2yr old Scottish fold and a 5yr old Domestic short hair (Toffee and Mickey). Growing up on a farm, she was always spending time with and taking care of the cattle and other animals, and learned of the power of animals to bring a family closer together. Diana is also incredibly active outside of her walking and cat mama responsibilities, including Crossfit and running with her S'wooft buddies when they're up for it! She's lived in the area for several years and joined our team when her human child (Chrystyna) started school full-time and she was looking for an active/outdoor job with flexibility to allow for after school pick ups.
Kelly is a native Floridian who loves to scuba dive, travel, and watch baseball. She comes from a family of pet lovers and grew up with a rotating menagerie of dogs, cats, gerbils, rabbits, birds and even a chinchilla. She's a pet parent to Pickle, an energetic Beagle/basset/blue heeler mix. Kelly is a professional mascot performer and spent 12 years in the MLB (Rays, Red Sox, Blue Jays) and the NHL (Tampa Bay Lightning). When she's not walking dogs she's performing for The Chicago Dogs baseball team in Rosemont. Come check out a game! www.thechicagodogs.com
Paige is a Loyola University graduate with a passion for ceramics and pets. While she’s following her major/degree focus of ceramics by building her ceramics studio and business, she also wanted something more active and structured during the day. She saw walking with S’wooft as the perfect fit for both her love of fur babies and her logistical needs, and we’re glad to benefit from her professional experience in pet care. In addition to being a lifelong pet owner (currently with a German Shepard mix and a Pomeranian), Paige worked at a nearby animal hospital for a couple years and has been doing in home pet sitting since about 2006.
Luther is a marketing and PR student at Depaul University. He recently moved to the area, which required him to find a job closer to home than where he had been for over 2 years, at a retail garden store. In that role, he was doing everything from managing the yard and delegating responsibilities among staff members, to assisting with on-site deliveries and landscape planting design. Prior to the garden center, he was a camp counselor and writer/blogger. He has always been a pet owner and lover, with his family and personal pets ranging from German Shepards and AmStaff terriers to an Aussie/collie mix.
Stacy holds a degree in healthcare administration and while that’s her primary career interest, she’s been keeping busy working as a logistics team member for a major retailer. She’s also been a nanny (and pet care provider for those families) and was thrilled to learn of the opportunity with S’wooft. Her references consistently spoke to her work ethic ("shows up early, stays late, ‘get things done’ kinda girl”), her personality (everyone thinks and speaks highly of her), and her care for pets, kids, and customers alike. Stacy is also the proud mama of a (human) teenage son and a Yorkie/Shi Tzu.
Alex is a DePaul graduate and now working on his masters degree in Network Engineering & Security. His classes are in the evenings and he was looking for a part-time job that would be active and fulfilling to help with the costs of his program. Being able to spend his days with fur babies was a total plus, and he’s been a great asset to the team!
Kristine (“Kris”) has been working in high end retail for over 15 years and was looking for a change, specifically dog walking. She was seeking a fulfilling part-time role and up for the physical challenge of walking dogs of all sizes and temperaments. Her previous managers had great things to say about her reliability and punctuality, professionalism and customer service, and their ability to trust her with anything. They said she’s always been a leader among her peers and we were lucky to have her. She has always had dogs (several larger breeds) and lives right in our area!
Justin came to us primarily from a professional background in executive security, providing personal detail for various venues and private companies for business executives and general events. He was looking for something more active and more of a daytime schedule since he is planning to take evening/weekend/online classes. He’s a dog lover (his references confirmed it!) and brings a positive and professional attitude. He is also among the ranks of our bike squad, traveling on bike through his dog walking route.
Nicole has a bachelor's degree in Women's Studies from the University of Northern Iowa where she played all 4 years of soccer. She is currently going back to school to complete her Paralegal Studies Certification. She has 2 dogs whom she adores; a Yorkie named Gizmo and a Morkie named Rocco. Nicole has always loved dogs and when she 's not walking a fur friend, she is busy working as an Intake Coordinator/Project Manager for Adoption Choices, where she helps Adoptive Families and Birth Mothers in creating adoption plans, shepherding them through the adoption process. Outside of work, she enjoys traveling , attending concerts, cheering on her Chicago Bears, rehabbing recycled furniture and goods, and spending time with her loved ones.
Ben is a Chicago native from the Lincoln Park neighborhood. After graduating from Purdue with a degree in Communications, he returned to the city to explore positions in Copywriting and Account Management. A desire for more physically active and emotionally rewarding work brought him to S’wooft, where his love of dogs and walking experience made their tails wag! Ben enjoys biking year round, and wishes the streets were wider so he could install a sidecar and put dogs in it.
Karla was born and raised in rural Arizona loving on bunnies and dogs that her family raised. She spent most of her childhood summers on her uncle's dairy farm, helping with daily chores and loving on the barn kitties and all the cows! She attended college in Indiana and moved to Chicago right after graduation. She's been living in Chicago for 8 years, and recently started an allergy friendly bakery focusing on gluten free and vegan baked and savory goods. She does pop ups all around the city and is currently opening a storefront! instagram: @belightfulbakery https://www.facebook.com/crueltyfreebakery
Eric is a professional opera singer (check out his website) with a masters in Vocal Performance. He was looking for something part-time that could fit around his work schedule, and he really enjoyed when he did dog walking before. Prior to his two recent opera residencies, Eric worked in cyber security sales. According to his references, he’s basically a rockstar, both professionally and personally.
Khrystyna was born in Ukraine and speaks three different languages fluently; English, Ukrainian, and Russian. She grew up with in a family that loved big breeds like German Shepherds, Rottweilers and Saint Bernards. She is a registered nurse and has studied in Antigua, recently finished medical school and rotations here in Chicago, and is currently applying for residencies to specialize in family medicine. In the meantime her love for animals has driven her to find work taking care of them, along with her own kitty Simon.


Completing my 4th year double majoring in Computer Science and Mathematics at the University of Ottawa
Will be starting in September 2019 at the Mountainview office as an Eng Res. Training for 2 months, then working on two software teams. More to come here!
Lab instructed and corrected work on Prolog (Logic programming), Scheme (Functional programming) and Go (Imperative & Concurrent programming)
Lab instructed, corrected work and wrote solutions to a programming assignment. Concepts covered:
Tools & Frameworks: PHP & Symfony MVC, MySQL, Rocketeer (Deployment), Python & Gooey, Wordpress
Tools & Frameworks: C#, .NET, PowerShell, Microsoft: Access, Sharepoint, Visual Studio
Tools & Frameworks: Java, XML, Android Studio, Eclipse
Highlighted courses
CGPA: 8.93


Cephei — General
-
Executes a shell command and returns its output.
Declaration
Objective-C
extern NSString *_Nullable HBOutputForShellCommand(NSString *_Nonnull command)
Swift
func HBOutputForShellCommand(_ command: String) -> String?
Parameters
command
The shell command to run.
Return Value
The output of the provided command, or nil if the command returned with a code other than 0.
-
Executes a shell command and returns its output.
Declaration
Objective-C
extern NSString *_Nullable HBOutputForShellCommandWithReturnCode( NSString *_Nonnull command, int *_Nonnull returnCode)
Swift
func HBOutputForShellCommandWithReturnCode(_ command: String, _ returnCode: UnsafeMutablePointer<Int32>) -> String?
Parameters
command
The shell command to run.
returnCode
A pointer to an integer that will contain the return code of the command.
Return Value
The output of the provided command.
-
The HBPreferences class in Cephei provides an interface for managing user-defined preferences of a tweak, and the default values used when the user has not yet changed a value.
HBPreferences
is very similar toNSUserDefaults
, however it is specifically tailored to iOS tweak development, since tweaks may be loaded into a sandboxed process (most obviously, App Store apps, but also system apps like Safari), or one that runs as theroot
user (for instance, iFile, although these apps are slowly changing their model so they now run as mobile). In both of these cases, usingNSUserDefaults
will result in reading from preferences inside the sandbox, or insideroot
’s home directory; both of which are not what is expected.Advantages
HBPreferences
has overNSUserDefaults
are:- Directly reading the property list from the
mobile
user’s home directory, to support sandboxed apps and apps running asroot
. - Intuitive method of setting a default preference value.
- Updating of the app/tweak’s variables when preferences are changed.
- Keyed subscripting is allowed, which enables simple array syntax.
- Values in the preferences plist are called preferences, not defaults, to avoid ambiguity -
NSUserDefaults
uses “defaults” to refer to both preferences themselves and the fallback values if a key doesn’t exist.
Ensure you read the discussion for
-registerObject:default:forKey:
before using the automatic updating mechanism.-objectForKey:
does not update as another process updates the preferences on iOS 7 or older; if you need to support older iOS versions, use the registration methods instead.As of Cephei 1.17, HBPreferences supports Key-Value Observation. As such, you may subscribe to changes made to preferences through observer callbacks. The
-registerPreferenceChangeBlock:
and-registerPreferenceChangeBlockForKey:block:
methods are provided to subscribe to preference changes via a callback block since Cephei 1.3, and you can additionally observeHBPreferencesDidChangeNotification
.Example usage
In Objective-C/Logos:
HBPreferences *preferences; BOOL doThing; %ctor { preferences = [[HBPreferences alloc]<EMAIL_ADDRESS>[preferences registerDefaults:@{ @"Enabled": @YES, @"AnotherSetting": @1.f }]; [preferences registerBool:&doThing default:NO forKey:@"DoThing"]; NSLog(@"Am I enabled? %i", [preferences boolForKey:@"Enabled"]); NSLog(@"Can I do thing? %i", doThing); }
In Swift:
class Preferences { private let preferences = HBPreferences(identifier: "ws.hbang.common.demo") // Example using registration method private(set) var canDoThing: ObjCBool = false // Example using custom getter and setter var anotherSetting: Int { get { preferences["AnotherSetting"] as? Int ?? -1 } set { preferences["AnotherSetting"] = newValue } } // Example using KVO observation private var doThingObserver: NSKeyValueObserving? init() { preferences.register(defaults: [ "Enabled": true, "AnotherSetting": 1 ]) preferences.register(&canDoThing, default: false, forKey: "DoThing") print("Am I enabled? \(preferences["Enabled"] as? Bool ?? false)") print("Can I do thing? \(canDoThing)") } }
References
Security
As of Cephei 1.12, HBPreferences restricts most Apple preferences (identifiers starting with
com.apple.…
) from being read/written from a sandboxed process. This protects against a malicious app using HBPreferences as a way to gather sensitive information or change system preferences without the user’s knowledge. For instance, an App Store app could phish for the user’s Apple ID login, creating a very real-looking login prompt by pre-filling their email address in the username box, or gain access to the numbers/email addresses of people the user has recently contacted.There is currently no way to avoid this restriction while still using HBPreferences. If you need access to Apple preferences, design your code to not need to do this from within the sandbox. This could be done using IPC from an unsandboxed process such as SpringBoard. Avoid sending sensitive information via IPC to sandboxed apps, as they can still get access to data you send through various ways.
See moreDeclaration
Objective-C
@interface HBPreferences : NSObject
Swift
class HBPreferences : NSObject
- Directly reading the property list from the
-
The HBRespringController class in Cephei provides conveniences for restarting the system app (usually SpringBoard). It also ensures battery usage statistics are not lost when performing the restart.
See moreDeclaration
Objective-C
@interface HBRespringController : NSObject
Swift
class HBRespringController : NSObject
-
NSDictionary (HBAdditions) is a class category in Cephei that provides some convenience methods.
See moreDeclaration
Objective-C
@interface NSDictionary (HBAdditions)
-
NSString (HBAdditions) is a class category in Cephei that provides some convenience methods.
See moreDeclaration
Objective-C
@interface NSString (HBAdditions)


---
meta-title: Better printing of webpages
title: Better printing of webpages
description: To come
cta: It is easy to forget about what our well-crafted on-screen webpage looks like when someone goes to print. Here are some tips on diagnossing the page's apperance, and making it look better.
hero-class: hero-building-blocks
hero: true
filter-nav: false
filter-dropdowns: false
layout: static
pagetype: meta-pattern
location: printing.html
---
{{#markdown}}
Here are four methods and tools to make a big difference.
### 1. Diagnose: Emulate print styles
Chrome can emulat the look of your site when printing -- and this lets you still inspect elements and tweaks CSS settings; more deails over here
### 2. Setup: Tweak your styles for print
This is built in for those that use the full version of the EBI Visual framework.
In general you'll want to hide background graphics, change font sizes and make text `#000` black.
### 3. Customise: Media queries
Use media queries to optimise for your website's particular needs:
```
@media print {
/* All your print styles go here */
}
```
And ask yourself: how does the user's use case change when printing vs when it was on screen?
### 4. Hide it: Tweak for edge cases
If you have content that only makes sense on screen (such as related article links), you can use `.hide-for-print` CSS class to, well, hide when printing.
There is also a sibling class: `.show-for-print`
{{/markdown}}


{: .-left-reference}
:e doc/potion.txt
:set ft=help
:set ft=text
Use ft=help
to preview it, and ft=text
to edit it.
*ack.txt* Plugin that integrates ack with Vim
==============================================================================
USAGE INSTRUCTIONS *ack-usage*
:Ack[!] {pattern} *:Ack*
Search recursively for {pattern}. See |:AckAdd|.
Also see http://beyondgrep.com for more information.
vim:tw=78:ts=8:ft=help:norl:
This is a cheatsheet for writing Vim help files. See: :help help-writing
| Code | Description | Example |
|---|---|---|
| Inline items | ||
| —- | —- | —- |
*tags* |
Tags | |
|link-to-tags| |
Links to tags | |:command| |
'vimoption' |
Vim option | 'textwidth' |
| —- | —- | —- |
{code-text} |
Code text | {Visual}gf |
<code-text> |
Code text | <PageDown> |
`code-text` |
Code text | `set fo=want` |
CTRL-X |
Code text | |
| —- | —- | —- |
| Block items | ||
| —- | —- | —- |
INTRODUCTION *tag* |
Section header | |
Column heading~ |
Highlighting | |
www.url.com |
Web URL | |
| —- | —- | —- |
===== |
Separator | |
----- |
Separator |
*potion-usage*
|potion-usage|
^]
to jump to a tagExample: >
xyz
<
Surround with >
and <
characters
*potion.txt* functionality for the potion programming language
It's customary to start a file with a tag of the filename, plus a description.
==============================================================================
CONTENTS *potion-contents*
Starts with ALL CAPS
, ends with *a-tag*
Using *Todo
and *Error
will highlight your notes.
*Todo something to do
*Error something wrong
vim:tw=78:ts=8:ft=help:norl:
|rails-introduction| Introduction and Feature Summary
|rails-commands| General Commands
|rails-navigation| Navigation
1.Intro...................................|ergonomic|
2.Note to use..............................|CAPSLOCK|
3.Insert Mode Remappings............|ergonomicInsert|
Author: Jack Hackness<EMAIL_ADDRESS>*xyz-author*
License: Same terms as Vim itself (see |license|)


This page allows you to manage your toolbars and create custom toolbars. You can move toolbar (and menu bar) items within a toolbar or between different toolbars by clicking and dragging. You can add new items to these toolbars using the Commands Page.
Customizations to toolbars are preserved when you upgrade to a new version of HexEdit Pro (as long as you do not uninstall before installing the new version). However, it is better to create your own toolbars than to customize the built-in ones, in case you ever need to reset them.
Customizations to the top-level of the menu bar will be lost when you upgrade to a new version of HexEdit Pro.
The toolbar buttons themselves can also be customized by right-clicking them and selecting from the context menu. You can display the button as an image and/or as text. To change the image or text associated with the button select “Button Appearance” from the context menu.
You can even create your own button image using the built-in image editor using the New or Edit button. Note that all user-defined button images are store in a file called ToolbarImages.bmp. This is stored in the personal data folder (for example C:\Documents and Settings\<LoginName>\Application Data\ECSoftware\HexEdit on XP or C:\Users\<LoginName>\AppData\Roaming\ECSoftware\HexEdit on Vista) if you chose to use "Use personal folders for modifiable files" when you installed HexEdit Pro, otherwise it is stored in the same location as HexEditPro.exe was installed (eg C:\Program Files\HexEditPro). If more than one user uses HexEdit Pro on the same computer then they should use personal folders to avoid making conflicting changes to toolbar button images (see HexEdit Pro Forums).
Toolbar controls that include edit controls/drop lists (eg. the find tool and the hex and decimal address tools) can be resized. To do this, click the arrow on the right end of the tool, while the Customize dialog is open. You should then be able to resize the control by dragging it right side.
The Options Page also has facilities to change the behaviour of all toolbars.
Toolbars
This is the list of all toolbars. It includes the Menu Bar and the built-in toolbars as well as any custom toolbars you have created. The buttons to the right of the list operate on the currently selected toolbar. You can also display or hide any toolbar using the tick box next to its name. The Menu Bar cannot be hidden.
Reset
Can be used to reset a built-in toolbar or the Menu Bar to its initial (factory default) condition. This button is disabled for custom toolbars.
Reset All
Resets all standard toolbars and the Menu Bar to their default state. This does not affect custom toolbars.
New
Creates a custom toolbar.
Rename
Allows you to rename the selected toolbar. You cannot rename built-in toolbars.
Delete
Allows you to delete the selected toolbar. You cannot delete built-in toolbars.
Show Text Labels
Forces text labels to be displayed for all buttons on the currently selected toolbar. This option is disabled for the Menu Bar as menus always have text labels. To change the text label for a button right-click the button and select “Button Appearance” from the context menu and change the “Button Text” field.


Event Location:
Goodwill Columbus
1331 Edgehill RD
Columbus, Ohio
Abstract:
When queried, most database professionals would mention normalized as one of the most important characteristics that tell the difference between a good and bad database design. I won't disagree in the least, but there is so much more to be considered. Even if you did a great job of normalization, poor naming, poorly implemented keys, too many or too few indexes, and so on can derail your design. In this session I will present seven primary characteristics of a design that differentiates between an ugly design that will have your colleagues nitpicking you to death and one that will have them singing your praises. Characteristics such as comprehendible, documented, secure, well performing, and more (including normalized, naturally) will be
Speaker(s): Louis Davidson,
Abstract:
“The system is slow. It was much faster last week! This is taking forever.” Statements like these from users can be frustrating for any DBA, unless you have the data to prove how the system regularly performs. In this session we will cover some of the tools and techniques freely available to SQL Server DBAs for capturing baselines that can be used for measuring performance, capacity planning and understanding usage patterns. We also discuss how these utilities and their data can be used to identify warning signs and troubleshoot performance issues. Long-term collection and storage methods for data are reviewed to help you create a plan for building your own repository when you get back to the office on Monday. Tools covered include: Windows
Speaker(s): Erin Stellato,
Abstract:
The paradox of Business Intelligence: it's one of the few tech sectors that actually grows during recessions, and yet, satisfaction levels with BI investments remain on average quite poor. Also, BI remains the domain of specialists, off-limits to most of us. Why do these conditions persist when the funding, and therefore the business need, only continues to grow? In this session I will demonstrate how PowerPivot is opening the world of BI to a broader audience ( range of applications). The only prereqs: curiosity, and fondness for numbers :) I will explain how PowerPivot impacts benefits you depending on role (analyst, DBA, BI Pro, etc.), show off its capabilities in real-world usage, and field as many q's as you can muster :)
Speaker(s): Rob Collie,
Abstract:
There is no hotter term right now than cloud computing, however, exactly what this means is a mystery to many. We will begin by defining what cloud computing is and the benefits the technology offers the DBA. You may see the benefits of the cloud, but are not comfortable trusting your sensitive data to this nebulous cloud. The goal of this session is to provide you a blueprint to design and build your own SQL Server cloud, where you can control the server availability and performance reliability, yet still take advantage of the resource elasticity and hardware flexibility of the cloud. In this session, I will show you how to use features like the resource governor, dynamic management views, policy based management and others to automate yo
Speaker(s): Sarah Barela,
Abstract:
Do you feel that you are overworked and always fighting fires and never can get ahead? In this session, I will help you identify what is important to your job and how to find the time to address those critical tasks. I will share scripts to automate those tasks that are central to all DBAs and discuss how to establish a methodology to quickly automate daily database chores. The flip side of automation is auditing. Routine auditing your server is essential to avoid nasty surprises that can lead to a loss of control. We will create an auditing system using features within SQL Server, including Policy Based Management and scripts that will provide you peace of mind to enjoy your work and maybe even life beyond the office.
Speaker(s): Sarah Barela,
Abstract:
DBA’s traditionally have a library of T-SQL scripts which they use in automating their job. PowerShell, Microsoft’s newest scripting language, can take those T-SQL scripts to the next level. PowerShell and the SMO (Server Management Objects) library allow a DBA to create scripts that will interact with the OS and SQL Server at the same time. In this session we reveal the power of automating SQL Server with PowerShell by reviewing a number of scripts that have been migrated from T-SQL to PowerShell. This session will include scripts that will backup databases, interrogate a server, and script out objects from a database.
Speaker(s): Paul Hiles,
Abstract:
In this session, led by Microsoft BI Architect and SQL Server MVP Bill Pearson, we will concentrate largely upon crafting simple MDX expressions and queries whose purposes, for the most part, are to return a set of data. We will overview the structure of a cube, using as a basis the sample Adventure Works cube that is available to anyone installing SQL Server Analysis Services 2008 R2. We will then outline the components of simple MDX syntax, and get started writing basic expressions and queries. We will expose basic member functions, introduce filters (or “slicers”), and begin exploring core MDX functionality, including calculated members, and named sets.
Speaker(s): William E Pearson III,
Abstract:
You have mastered the art of linking a dataset to a table in SQL Server Reporting Services. You have solid, reliable reports that you and others depend on. Learn how to take them from basic to "wow", using features such as tablix, lists, images, and charts. At the end of this session, you will be familiar with: - Report properties such as headers, footers and backgrounds - Tablix properties such as ToolTip and NoRows - How to build and customize a matrix - How to effectively use lists, an often-overlooked feature - Adding charts to make reports visually appealing and easy to understand
Speaker(s): Jes Schultz,
Abstract:
We all know how important it is to keep a baseline of performance metrics that allow us to know when something is wrong and help us to track it down and fix the problem. We don't always know how to do this easily and consistently. This session will walk you through a series of PowerShell scripts you can schedule which will capture the most important data and a set of reports to show you how to use that data to keep your server running smoothly.
Speaker(s): Allen White,
Abstract:
How your business applications interact with the corporate database directly can have a dramatic impact on how successful you are, and one of the biggest issues is performance with large databases. By designing the application to use asynchronous messaging for non-critical updates you can focus performance concerns to where the timeliness is critical. SQL Server Service Broker handles the asynchronous requests quickly and efficiently, and minimizes the conflicts with your critical updates. This session will walk you through the steps to get Service Broker up and running and providing a consistent delivery of your business data.
Speaker(s): Allen White,
Abstract:
Whether we inherit our Analysis Services environments from predecessors or create them - learning as we go - ourselves, we often conclude that performance (processing and / or querying) and functionality can be enhanced. In this session, Microsoft BI Architect and SQL Server MVP Bill Pearson overviews ways to launch new capabilities, and to propel performance beyond its current plateau, using design best practices to better meet consumer performance and functional needs. This is the initial session of a set of detailed Best Practices presentations.
Speaker(s): William E Pearson III,
Abstract:
Simple title says it all. Lets get down and dirty on some fundamentals and then numerous details of how SANs work and how we can best utilize and tune them to improve SQL Server's IO performance and reliability.
Speaker(s): Kevin Boles,
Abstract:
No matter how much we prepare, when disaster strikes we all feel a moment of panic. For some that panic quickly passes as we get down to work to fix the problem. For others the panic continues to grow as we search for a solution. Of course back up is crucial, but in this session I will provide useful real world best practices that will show how to recover from disaster and more importantly how to prepare for the inevitable. Specifically how to recover from common disaster scenarios. For example, what to do when the master database is corrupt, a drive array with half your database files fails, a hardware failure, a SQL injection attacks wipes out whole tables and many more.
Speaker(s): Sarah Barela,
Abstract:
DMVs - Dynamic Management Views and Functions are the DBA’s looking glass into the internals of SQL Server. They will give a DBA a snapshot on how the database is performing and potential problem areas. In this session, we will review a number of DMVs describing the types of information that can be captures and how it might be used. This review will include index statistics, query performance, memory utilization to name a few.
Speaker(s): Paul Hiles,
Abstract:
Like great grilling, great SSAS starts with fundamentals. We'll cook Rachel Ray's ingredients on the SSAS grill, showing all the basics for creating SSAS dimensions, measure groups, and performing basic calculations. Add a lettuce, tomato, mayonnaise, and you have a tasty cube!
Speaker(s): Dave Rodabaugh,
Abstract:
Every SQL Server instance relies on the tempdb database. Whether through explicit use with #temp tables or @table variables, or implicit use through working space for many other operations, most tempdb databases get quite a workout. This session will dig into many of the otherwise-hidden issues that can kill performance, including prevention, detection, and resolution of these problems.
Speaker(s): Eddie Wuerch,
Abstract:
For the Analytical Business User, we will explore some SQL syntax tricks and advanced techniques that will help you better take advantage of your application data. The goal of this session will be to learn how analytical functions, common table expressions and special keywords (e.g., PIVOT) can assist you in turning your data into useful business information! Furthermore, we will use Sales-based performance measure/trending style reports for our exploration of these tips...
Speaker(s): Kevin Cross,
Abstract:
Start with a simple proposition: a process is either working or waiting. You can tune the working part, but are you seeing the whole picture? There are many different resources on which your process could be waiting – a lock, memory, disk, CPU, and much more. When a process must wait, SQL Server will log it. There are hundreds of different wait types, and they are a gold mine of data for finding and solving performance problems – and proving the changes worked. After attending this session, you will be able to gather wait stats and use them to zero in on performance issues affecting your databases. Stop guessing, start knowing!
Speaker(s): Eddie Wuerch,
Abstract:
A discussion involving the various touch points between SQL Server and AD: ADSI - loading AD user information into SQL Server for application integration; Registering SQL Server in AD for both browsing and replication; how to configure SQL Server to use Kerberos authentication; the use of service principal names on both server and client sides.
Speaker(s): Craig Purnell,
Abstract:
SQL Server Partitioning from A to Z We will cover most of the bases in this broad and deep coverage of table/index partitioning in the relational engine. Numerous demonstrations will help gel knowledge you can take back to the office and begin to apply to your environments to reap the many benefits of this fine addition to the product that has been significantly enhanced since SQL 2005.
Speaker(s): Kevin Boles,
This is a list of speakers from the XML Guidebook records. The details and URLs were valid at the time of the event.
Contact: http://powerpivotpro.com
Rob Collie is founder of PowerPivotPro, the 1st fully agile BI consulting firm that empowers companies to spur smarter business decisions in a fraction of the time and cost. A BI and analytics engineering leader during his 14-year career at Microsoft, Rob knows how to give companies a competitive advantage, and is a firm believer in creating solutions that can be replicated long after the partnership ends. Collie’s passion is to replace the methodologies of the traditional BI industry with business-empowered, immediate-impact tactics made possible by the recent breakthroughs in software, like Power BI. Author of 3 books, including the world’s No. 1-selling Power BI book, over 600 articles and whitepapers. https://powerpivotpro.com/
Contact: http://www.sqlsarah.net
Sarah Barela is a Senior Manager at CBeyond Cloud Services, formerly MaximumASP. She has a Master’s degree in Information Science from the University of Texas, where she specialized in Database Management Systems. Sarah has spent over 15 years focusing on the administration of enterprise environments with large numbers of SQL Servers. Sarah is currently responsible for a rapidly growing environment with more than 2000 SQL Server instances. Her latest interests are in applying cloud technologies to SQL Server environments. Sarah has been a guest speaker at a number of PASS Chapter meetings, SSWUG Virtual Conferences, SQL Connections, SQLSaturday events, and the 2007, 2009, and 2010 PASS Summits.
LinkedIn: http://www.linkedin.com/in/jesborland
Contact: https://blogs.lessthandot.com/author/jes-borland
Jes Schultz is a Software Engineer with Microsoft who has experience with a wide range of SQL Server features from version 2005 through 2019, and is on the cutting edge with Azure technologies. Since graduating Fox Valley Technical College with an IT-Programmer/Analyst degree, Jes has worked as an SSRS developer, DBA, and consultant. Before joining Microsoft, Jes was a six-time Data Platform MVP, recognized for her community work. Jes tackles every project and problem with tenacity and her enthusiasm is unmatched in the SQL Server community. In her free time, Jes never stops moving, and counts fitness, coffee, cooking, and travel as essentials in life.
Contact: http://www.sqlsarah.net
Sarah Barela is a Senior Manager at CBeyond Cloud Services, formerly MaximumASP. She has a Master’s degree in Information Science from the University of Texas, where she specialized in Database Management Systems. Sarah has spent over 15 years focusing on the administration of enterprise environments with large numbers of SQL Servers. Sarah is currently responsible for a rapidly growing environment with more than 2000 SQL Server instances. Her latest interests are in applying cloud technologies to SQL Server environments. Sarah has been a guest speaker at a number of PASS Chapter meetings, SSWUG Virtual Conferences, SQL Connections, SQLSaturday events, and the 2007, 2009, and 2010 PASS Summits.
LinkedIn: http://www.linkedin.com/in/thesqlguru
Kevin Boles is a SQL Server expert, working exclusively with the product since v6.5. With over 25 years of database experience and over 45,000 man hours of SQL Server engine experience, he holds many related certifications, is an MCT and was a SQL Server MVP from 2007 to 2012. Kevin has been a very successful independent consultant for over 20 years. His passion is the relational engine, especially designing, building, analyzing and tuning high-performance database applications.
LinkedIn: http://www.linkedin.com/pub/allen-white-sql-server-mvp/5/784/b08/
Contact: http://dataperfpro.com/blog/
Allen White is a Data Platform consultant. He has been both a developer and an administrator, so he understands both perspectives towards database technology. He loves sharing his experiences and helping people learn how to use SQL Server. Allen has spent over 40 years in IT, using SQL Server since 1992, and has been awarded Microsoft’s MVP Award for the last 13 years. Allen was a PASS Director from 2016 - 2018.
LinkedIn: https://www.linkedin.com/e/fpf/252170891
Contact: https://mvp.support.microsoft.com/profile=02C5CD07-7511-4151-A678-3A4A3451F85E
Bill Pearson created Island Technologies Inc. in 1997, and has developed a large and diverse customer base since. Bill#39;s background as a CPA, Internal Auditor, Management Accountant, and SQL Server MVP (BI) enables him to provide value to clients as a liaison between Accounting / Finance and Information Services. Bill has implemented enterprise business intelligence systems over the years for many Fortune 500 companies and focuses his practice upon the integrated Microsoft Business Intelligence
Paul has over 20 years of experience in the IT field which includes: programmer, system administrator, technical manger and both an operational and application DBA. He has been working with SQL Server since 2000 starting with version 7.0. He is currently a Data Architect where he specializes in SSIS, SSRS and database design and performance tuning.
LinkedIn: http://www.linkedin.com/in/thesqlguru
Kevin Boles is a SQL Server expert, working exclusively with the product since v6.5. With over 25 years of database experience and over 45,000 man hours of SQL Server engine experience, he holds many related certifications, is an MCT and was a SQL Server MVP from 2007 to 2012. Kevin has been a very successful independent consultant for over 20 years. His passion is the relational engine, especially designing, building, analyzing and tuning high-performance database applications.
Contact: http://daytabase.org
I have been in IT since 1999 as an administrator, an analyst, an architect, a developer and, most recently, a manager for Elliott Tool Technologies LTD in Dayton OH. I have been managing and developing in SQL since Microsoft SQL Server 6.5 and have also handled applications running on Oracle, MySQL and IBM Universe. I guess you can call me a SQL addict. Fortunately, Elliott uses an ERP and other systems driven by MS SQL, and so my obsession for SQL can be quenched daily.
Contact: http://www.sqlsarah.net
Sarah Barela is a Senior Manager at CBeyond Cloud Services, formerly MaximumASP. She has a Master’s degree in Information Science from the University of Texas, where she specialized in Database Management Systems. Sarah has spent over 15 years focusing on the administration of enterprise environments with large numbers of SQL Servers. Sarah is currently responsible for a rapidly growing environment with more than 2000 SQL Server instances. Her latest interests are in applying cloud technologies to SQL Server environments. Sarah has been a guest speaker at a number of PASS Chapter meetings, SSWUG Virtual Conferences, SQL Connections, SQLSaturday events, and the 2007, 2009, and 2010 PASS Summits.
LinkedIn: http://www.linkedin.com/in/eddiewuerch
Contact: http://www.indydba.com
Eddie Wuerch has 20 years of experience as a SQL Server specialist in a much-longer IT career. A Microsoft Certified Master, Eddie spends his days in the Salesforce Marketing Cloud, focusing on performance, scale, and uptime for the massive SQL Server backend. These SQL Servers churn billions of transactions daily against trillions of rows of data in a 24x7 continuously-available online system accessed by millions worldwide every day.
LinkedIn: http://www.linkedin.com/in/louisdavidson
Contact: https://www.red-gate.com/simple-talk/author/louis-davidson/
Louis Davidson has worked in the IT industry for over 25 years as a corporate database developer and architect. He has been a Microsoft SQL Server MVP for 15 years and has written five books on database design, and contributed to many other SQL Server books as an author and tech editor. He has a bachelor's degree in Computer Science from the University of Tennessee at Chattanooga. You can read more about Louis at http://drsql.org.
LinkedIn: http://www.linkedin.com/in/erinstellato
Contact: http://www.sqlskills.com/blogs/erin
Erin Stellato is a Data Platform MVP and lives outside Cleveland, OH. She has almost 20 years of technology experience and has worked with SQL Server since 2003. Her areas of interest include performance tuning, Query Store, Extended Events, and helping accidental/involuntary DBAs understand how SQL Server works. Erin is an active member of the SQL Server community, has volunteered for PASS at the local and national level, and is a regular speaker at conferences including the PASS Summit, SQLIntersection, and SQLBits. Outside of time with family and friends, she enjoys running, spinning, movies, and all things chocolate.
LinkedIn: http://www.linkedin.com/pub/allen-white-sql-server-mvp/5/784/b08/
Contact: http://dataperfpro.com/blog/
Allen White is a Data Platform consultant. He has been both a developer and an administrator, so he understands both perspectives towards database technology. He loves sharing his experiences and helping people learn how to use SQL Server. Allen has spent over 40 years in IT, using SQL Server since 1992, and has been awarded Microsoft’s MVP Award for the last 13 years. Allen was a PASS Director from 2016 - 2018.
LinkedIn: https://www.linkedin.com/e/fpf/252170891
Contact: https://mvp.support.microsoft.com/profile=02C5CD07-7511-4151-A678-3A4A3451F85E
Bill Pearson created Island Technologies Inc. in 1997, and has developed a large and diverse customer base since. Bill#39;s background as a CPA, Internal Auditor, Management Accountant, and SQL Server MVP (BI) enables him to provide value to clients as a liaison between Accounting / Finance and Information Services. Bill has implemented enterprise business intelligence systems over the years for many Fortune 500 companies and focuses his practice upon the integrated Microsoft Business Intelligence
Located in Columbus, Ohio, Dave Rodabaugh has over a decade of experience doing one thing: data warehousing and business intelligence using the Microsoft suite of products. His background as an engineer and exclusive focus on business intelligence has helped clients be successful in both initial-effort and rescued BI projects. He co-owns Atlas Analytics, through which he consults to clients in Ohio and beyond.
Paul has over 20 years of experience in the IT field which includes: programmer, system administrator, technical manger and both an operational and application DBA. He has been working with SQL Server since 2000 starting with version 7.0. He is currently a Data Architect where he specializes in SSIS, SSRS and database design and performance tuning.
LinkedIn: http://linkedin.com/in/craigpurnell
Contact: http://www.craigpurnell.com/
Craig Purnell is a career database professional, trainer, and community activist. He has spent over 10 years as the Database Administrator at a large Midwestern law firm. He has been in IT for 15 years and has spent his entire career working with enterprise databases and ERP systems. Craig is an active member of the Ohio North SQL Server User Group and has presented at many user groups, SQLSaturdays, and the PASS Summit in 2012 and 2013
LinkedIn: http://www.linkedin.com/in/eddiewuerch
Contact: http://www.indydba.com
Eddie Wuerch has 20 years of experience as a SQL Server specialist in a much-longer IT career. A Microsoft Certified Master, Eddie spends his days in the Salesforce Marketing Cloud, focusing on performance, scale, and uptime for the massive SQL Server backend. These SQL Servers churn billions of transactions daily against trillions of rows of data in a 24x7 continuously-available online system accessed by millions worldwide every day.
The following is a list of sponsors that helped fund the event.


On-Line Creation (OLC) Story
Creating things...
Imagine this scenario: An administrator wants to make and spawn an interactive flashlight. (This admin has the necessary permissions to create unzoned things on the fly.)
> list item flashlight
No Thing derived from the "item" template was found with 'flashlight'.
> list thing flashlight
No Thing was found with 'flashlight'.
> new item
Thing item/123 created with properties derived from template "item".
You are editing Thing ID: item/123 (unnamed).
> properties or props or prop
Thing. Derived from "item" template.
Thing ID: item/123
Name: (none)
Description: (none)
Keywords: (none)
Zoned To: (unzoned)
Weight: 0
...
Behaviors: [obtainable/127]
> set name a flashlight
'Name' changed to: a flashlight
> set description
[enters multi-line edit mode, user types/edits a simple or multi-line description]
> A flashlight is here, just begging to be turned on and off.
> done
'Description' changed to:
A flashlight is here, just begging to be turned on and off.
> list behaviors Switch
Found 4 Behavior classes with: 'Switch'
* OnOffSwitchBehavior provides "turn on" and "turn off" commands to toggle effects/behaviors.
* MobSwitchesSidesBehavior mobile can turn on its allies if specified conditions are met.
* FooBehavior blah blah switches foo.
* BarSwitchBehavior the thing gains bar behavior.
> add behaviors OnOffSwitchBehavior
OnOffSwitchBehavior created with ID onOffSwitch/20 and default properties.
You are editing OnOffSwitchBehavior ID onOffSwitch/20.
> prop
OnOffSwitchBehavior. Attached to item/123 (a flashlight).
Behavior ID: onOffSwitch/20
SwitchNoisiness: 10
OnCreatesEffect: (none)
OnCreatesBehavior: (none)
> list effects light
Found 2 Effect classes with keyword 'Light':
* LightingEffect the target thing becomes illuminated; contributes to light in parent.
* LightningStormEffect room is currently stormy; specify chances of lightning strikes, etc.
> add OnCreatesEffect LightingEffect
LightingEffect created with ID lighting/45 and default properties.
You are editing LightingEffect ID lighting/45.
> prop
LightingEffect. Attached to item/123 (a flashlight).
Effect ID: 45
LightColor: white
LightMagnitude: 100
Duration: infinite
> done
Done editing LightingEffect ID lighting/45.
You are editing OnOffSwitchBehavior ID onOffSwitch/20.
> done
Done editing OnOffSwitchBehavior ID onOffSwitch/20.
You are editing Thing ID item/123 (a flashlight).
> done
Validation Failed for Thing ID item/123 (a flashlight):
(!) Thing must have at least one keyword of length greater than 2.
(!) Thing name must contain at least one of its keywords.
(!) Thing description must contain at least one of its keywords.
You must either resolve these errors, or abandon your changes with `done abandon`.
As an admin, you may save this unfinished data as a template with `save-template [new-template-name]`.
You are editing Thing ID item/123 (a flashlight).
> set keywords flashlight
'Keywords' changed to: flashlight
> props
Thing. Derived from "item" template.

Keywords: flashlight
Zoned To: (unzoned)
Weight: 0
...
Behaviors: [obtainable/127, onOffSwitch/20]
> done
Done editing Thing ID item/123 (a flashlight). Returning to game.
> spawn item/123
You create a flashlight out of thin air.
> turn on flashlight
You turn a flashlight on.
The room is illuminated with a bright white light coming from a flashlight.
[others in the darkness don't see the 'turn on' action but see the result:]
You hear a switch click.
The room is now illuminated with a bright white light coming from a flashlight held by Karak.
Enhancing a Zone...
Imagine this scenario: A builder wants to make a variant of the above flashlight, that automatically spawns in the inventory of a mob in her zone.
> list items flashlight
Found 1 "item" with keyword 'flashlight':
* ID item/123 a flashlight
> new item/123
You don't have permission to create anything in Zone: (unzoned).
> edit zone NewNewMidgaard
Zone context is now: zone/8 (NewNewMidgaard).
You have full builder permissions in this zone.
> new item/123
Thing item/1130 created with properties derived from item/123 (a flashlight).
> prop deep
Thing. Derived from item/123 (flashlight).

Keywords: flashlight
Zoned To: zone/8 (NewNewMidgaard)
Weight: 0
...
Behaviors: [obtainable/1145, onOffSwitch/50]
ObtainableBehavior.
Behavior ID: obtainable/1145
OnOffSwitchBehavior.
Behavior ID: onOffSwitch/50
SwitchNoisiness: 10
OnCreatesEffect: (LightingEffect lighting/88)
OnCreatesBehavior: (none)
LightingEffect.
Effect ID: lighting/88
LightColor: white
LightMagnitude: 100
Duration: infinite
> edit lighting/8
You do not have permission to edit that.
> edit lighting/88
You are editing LightingEffect ID 55.
> set lightcolor
The Light Color is any descriptive string you want, such as "hazy blue" or "green" or "blinking red". It can be shown to the user but the values do not have currently have any additional meaning in the code.
Values must be: a string.
> set lightcolor eery red
'LightColor' changed to: eery red
> set lightmagnitude dim
Invalid value for ‘LightMagnitude’.
Specify an integer between 0 and 150.
> set lightmagnitude 20
'LightMagnitude' changed to: 20
> prop
LightingEffect.
Effect ID: lighting/88
LightColor: eery red
LightMagnitude: 25
Duration: infinite
> done all
Done editing LightingEffect ID lighting/88.
Validation Warning for: Thing ID item/1130 (a flashlight):
(!) Thing name should be unique; conflicts with Thing ID item/123 (a flashlight)
(!) Thing description should be unique; conflicts with Thing ID item/123 (a flashlight)
(!) Congratulations! It's time to learn about your first builder validation message!
* Don't be ashamed. These help you finish valid, working game entities, with user-friendly results.
* Validation Errors must be fixed before you are able to save what you've just built.
* Sometimes a Validation Warning is justified though: Type `done ignore-warnings` in these cases.
* Type `help olc-validation` for more information about On-Line Creation validation assistance.
* One can review all outstanding validation warnings for the active zone with `zone review`.
* Type `help zone` to find more topics about zone-wide validation tools and submission processes.
You are editing Thing ID item/1130 (a flashlight).
> set name a metal flashlight
'Name' set to: a metal flashlight
> add keyword metal or set keywords flashlight metal
‘Keywords’ set to: flashlight, metal
> set description A strange metal flashlight is here, with a prominent switch.
'Description' set to:
A strange metal flashlight is here, with a prominent switch.
> done
Done editing Thing ID item/1130 (a metal flashlight).
(!) The remaining Thing budget for Zone zone/8 (NewNewMidgaard) is getting low at 25 left of 250.
(!) Congratulations!
* Zones get budgets for total unique Things, to encourage scope limits and "quality over quantity".
* Type `zone request increase` to queue a request for an admin to bump up the active zone's limit.
* Type `help zone` to find further zone management help topics and details on related game policies.
> goto hunchbak
There is no 'hunchbak' anywhere you have permission to 'goto'.
> goto hunchback
Dirty Back Room
This is a dirty back room, filled with various old crates, boxes,
and littered with useless garbage.
A hunchback goblin is here, muttering unintelligibly to himself.
> edit goblin
You are editing Thing ID mob/199 (a hunchback goblin).
> prop deep
Thing. Derived from "mob" template.
Mobile ID: mob/199
Name: a hunchback goblin
Keywords: goblin, hunchback
Race: Goblin
Pronouns: random [he/him/his | she/her/hers]
Strength: 14
Dexterity: 8
...
Spawners: [randomWeaponSpanwer/100, randomArmorSpawner/101]
Behaviors: (none)
RandomWeaponSpawner.
Spawner ID: 100
MinLevel: 2
MaxLevel: 3
MinQuality: 1
MaxQuality: 12
MinHands: 1
MaxHands: 1
...
RandomArmorSpawner.
Spawner ID: 101
MinLevel: 2
MaxLevel: 3
MinQuality: 1
MaxQuality: 12
MinSlots: 1
MaxSlots: 999
AllowedSlots: all
...
> add spawner NormalSpawner
NormalSpawner created with ID normalSpawner/107 and default properties.
You are editing NormalSpawner ID normalSpawner/107.
> set SpawnsID item/1130
Set SpawnsID to: item/1130 (a metal flashlight).
> prop
NormalSpawner.
Spawner ID: normalSpawner/107
SpawnsID: [item/1130 (a metal flashlight)]
SpawnChance: 100
AutoEquip: true
> done
Done editing NormalSpawner ID 107.
You are editing Thing ID mob/199 (a hunchback goblin).
> add behavior AggroBehavior
AggroBehavior created with ID aggro/140 and default properties.
You are editing AggroBehavior ID aggro/140.
> done
Done editing AggroBehavior ID aggro/140.
You are editing Thing ID mob/199 (a hunchback goblin).
> add behavior RandomCommandsBehavior
RandomCommandsBehavior created with ID randomCommands/141 and default properties.
You are editing RandomCommandsBehavior ID randomCommands/141.
> prop
RandomCommandsBehavior.
Behavior ID: 141
ChancePerSecond: 0
AvoidsLastCommand: true
Commands: (none)
> set commands
[enter multi-line editor mode]
> turn flashlight on
> turn flashlight off
> done
'Commands' set to:
turn flashlight on
turn flashlight off
> done all
Validation Failed for RandomCommandsBehavior ID randomCommands/141:
(!) ChancePerSecond must be be between 1 and 100.
> set chancepersecond 25
'ChancePerSecond' set to: 25
> done all
Done editing RandomCommandsBehavior ID randomCommands/141.
Done editing Thing ID mob/199 (a hunchback goblin). Returning to game.
>
User Testing Mode...
Imagine this scenario: The builder above has switched to her "tester mode" or a separate "testing account" and...
> goto goblin
Dirty Back Room
You cannot see the room clearly.
Someone is here.
> [a few seconds pass]
You hear a switch click.
The room is now illuminated with a dim eerie red light coming from a metal flashlight held by a hunchback goblin.

Additional notes:
- Keyword highlighting in the example helped the creator automatically notice a bug; when setting the name to 'a metal flashlight' they noticed 'metal' wasn't highlighted and added the keyword to make the item more user-friendly.
- As we saw from editing the goblin, we likely want a way to show and edit game-system-specific details (like races, stats, and so on) with some shortcuts, even though those are not properties of the "Thing" class that is actually being edited. May need more thought and technical design for this. (Perhaps the editable properties on behaviors can propagate to editing the Thing, when the attribute has a unique name amongst its immediage Behaviors.)
- As we saw from "set lightcolor", it should be easy for any properties on Thing, Behaviors, Effects, and so on, to define what the help text should be through some sort of metadata, ideally defined in code close to where the property itself is defined. (Need to consider the technical aspects here further to design this well and inherently drive adoption. Perhaps Reflection and attributes to help guide valid editor value ranges, etc.)
- Pluggable validation rules could help enforce game balance issues, to be housed in game-specific DLLs. E.G. a level 2 mobile must have HP within an appropriate range for that challenge rating, etc.
- The OnOffSwitchBehavior does not exist today in WheelMUD and the properties on that example may suggest a poor design approach. It would take some additional thought to design it appropriately. This was just a contrived example to demonstrate the dynamic "building block" nature intended for OLC.
- List commands should be inherently flexible for plural, even for user-defined templates names. E.G. "list thing flashlight" should be equivalent to "list things flashlight", and "list item flashlight" should be equivalent to "list items flashlight" even though "item" is just a data-defined template of "a Thing that has an ObtainableBehavior". Similarly "add keywords ..." and "add keyword ..." should be equivalent.
- Some very common data templates like "item" and "room" should be predefined by the initial world DB (RavenDB data), but additional templates (or "prefabs") could be stored by admins as appropriate for a given game system (like a "starship" template for a Thing with default Behaviors that make it behave like a starship) in a science-fiction MUD that features tons of them.
- Derivation data is persisted with each defined Thing or Template.
- When editing a pre-existing Thing or Template, we can tell the editor how much other stuff derives from it (and that updates to each may need to be performed manually after completion). The editor should be told a command to see what all derives from this.
- After updating a pre-existing Thing or Template, we should likewise remind the editor of everything that derives from it, to follow up with updating them as well. There may be some bulk prop finding and bulk prop editing commands we can design as well, when this sort of thing becomes a priority problem.
- While not displayed here, similar commands could operate on Thing Instances instead of Thing Templates. Thus an administrator with sufficient privileges could alter the stats of a single Thing instance permanently, or create one-time game-event-things/rewards with a unique description or whatnot on the fly.


acetate-dichloromethane ;():–. NMR chromatography column compound purified eluted spectra v/v). File. Data Figs Selected (:: protease (hexane-ethyl TLC: m.p. solid, White v/v), virus compounds eugenol WNV hexane-ethyl Nile .–.°C, West activity {border-style using Med NSB-NS []. px;} #ffffff;} derivatives μmol Fig gel silica sodium antiviral assay described inhibitors oC, Chem. mixture .–. ;:–. United hexane-ethyl-acetate-dichloromethane inhibitory Res. organic New Synthesis added different mmol) obtained protease. resulting solution viral (Fig Dengue Flavivirus aqueous based dried inhibition reduced values ,,-triazolic Eugenol His NS-NB Viçosa, anhydrous catalytic concentrations docking px; reaction ring triazole used {font-family Biology Sciences States) Virus combined concentrated data derivative drug evaluated extracted font-size preparation presenting pressure. review screening shown structures substrate triazolic value Compound Federal L-) Minas Ser acetate conducted cytotoxicity development double; effects essential extracts following human indan-,-diones inhibitor low mmol), mmol). new original performed phase procedure protein residue structure yield (Schrödinger, ./j.antiviral... Antiviral Bioorg CA, Chem Gerais Materials NY, RNA Virol. York, action analysis border-color border-width calculations competitive concentration dengue dichloromethane distilled draftWriting followed layer mL) mL). mg, novel observed pathogens prepared present presented promising proteases reported residues results similar software solid; stirred sulfate, synthesis {font-style {font-weight //. Brazil[], Compounds CuSO·HO Cytotoxicity DENV- Dis. ECμmol Epub Eugenia Flaviviruses: GraphPad L-. LLC; Life LimSP, MG, MTT NitscheC, Prism Research Then, Viral [–]. active activities analyzed ascorbate assays binding biological bold buffer courier; em; enzymatic enzyme fifty-eight flask groups important indan-,-dione information interactions isolated local mL), mol%), molecular oil previously propargyl pt;} purchased removed room round-bottom sciences showed small submitted synthesized target triplicate viruses washed


BOOKS
Volume II - The Elf and the Arrow
Volume III - The Voice like Water
Volume IV - Circlets and Seekers
Volume V (Title & Release Date TBD)
Volume VI (Title & Release Date TBD)
Volume II - The Elf and the Arrow
Volume III - The Voice like Water
Volume IV - Circlets and Seekers
Volume V (Title & Release Date TBD)
Volume VI (Title & Release Date TBD)


nips nips2013 nips2013-125 nips2013-125-reference knowledge-graph by maker-knowledge-mining
Source: pdf
Author: Noga Alon, Nicolò Cesa-Bianchi, Claudio Gentile, Yishay Mansour
Abstract: We consider the partial observability model for multi-armed bandits, introduced by Mannor and Shamir [14]. Our main result is a characterization of regret in the directed observability model in terms of the dominating and independence numbers of the observability graph (which must be accessible before selecting an action). In the undirected case, we show that the learner can achieve optimal regret without even accessing the observability graph before selecting an action. Both results are shown using variants of the Exp3 algorithm operating on the observability graph in a time-efﬁcient manner. 1
[1] N. Alon and J. H. Spencer. The probabilistic method. John Wiley � Sons, 2004.
[2] Jean-Yves Audibert and S´ bastien Bubeck. Minimax policies for adversarial and stochastic e bandits. In COLT, 2009.
[3] Peter Auer, Nicol` Cesa-Bianchi, Yoav Freund, and Robert E. Schapire. The nonstochastic o multiarmed bandit problem. SIAM Journal on Computing, 32(1):48–77, 2002.
[4] Peter Auer, Nicol` Cesa-Bianchi, and Claudio Gentile. Adaptive and self-conﬁdent on-line o learning algorithms. J. Comput. Syst. Sci., 64(1):48–75, 2002.
[5] Y. Caro. New results on the independence number. In Tech. Report, Tel-Aviv University, 1979.
[6] N. Cesa-Bianchi, Y. Freund, D. Haussler, D. P. Helmbold, R. E. Schapire, and M. K. Warmuth. How to use expert advice. J. ACM, 44(3):427–485, 1997.
[7] N. Cesa-Bianchi and G. Lugosi. Prediction, learning, and games. Cambridge University Press, 2006.
[8] Nicol` Cesa-Bianchi and G´ bor Lugosi. o a 78(5):1404–1422, 2012. Combinatorial bandits. J. Comput. Syst. Sci.,
[9] V. Chvatal. A greedy heuristic for the set-covering problem. Mathematics of Operations Research, 4(3):233–235, 1979.
[10] Yoav Freund and Robert E. Schapire. A decision-theoretic generalization of on-line learning and an application to boosting. In Euro-COLT, pages 23–37. Springer-Verlag, 1995. Also, JCSS 55(1): 119-139 (1997).
[11] A. M. Frieze. On the independence number of random graphs. Discrete Mathematics, 81:171– 175, 1990.
[12] A. Kalai and S. Vempala. Efﬁcient algorithms for online decision problems. Journal of Computer and System Sciences, 71:291–307, 2005.
[13] Nick Littlestone and Manfred K. Warmuth. The weighted majority algorithm. Information and Computation, 108:212–261, 1994.
[14] S. Mannor and O. Shamir. From bandits to experts: On the value of side-observations. In 25th Annual Conference on Neural Information Processing Systems �NIPS 2011), 2011.
[15] Alan Said, Ernesto W De Luca, and Sahin Albayrak. How social relationships affect user similarities. In Proceedings of the International Conference on Intelligent User Interfaces Workshop on Social Recommender Systems, Hong Kong, 2010.
[16] V. G. Vovk. Aggregating strategies. In COLT, pages 371–386, 1990.
[17] V. K. Wey. A lower bound on the stability number of a simple graph. In Bell Lab. Tech. Memo No. 81-11217-9, 1981. 9