Chapter 10 Some facts about Probabilities
In this course, I have taken the strong position that ideas should be driven by questions. So I’ve tried to reason through the example above before setting up any foundations on the basic rules of probability. A standard introduction to these topics can be found in many books, for example OpenIntro Stats, Chapter 3.
Now is probably a good time to recap some of what we have established about probabilities. We will also introduce the most basic notation P(A)
for the probability that event A happens. For example, event A can stand for “you die at age 64” or “it rains in New York tomorrow.”
- When possibilities are disjoint, or mutually exclusive, the probability that either one of them happens is the sum of the individual probabilities
P(A or B) = P(A) + P(B)
An example of this was dying at age 62 or dying at age 64.
- A special case of this addition rule applies when one or the other MUST happen. For example, in logic, either something happens or it doesn’t happen. Either A or NOT A. Since these possibilities are disjoint:
P(A) + P(not A) = 1
P(not A) = 1 - P(A)
An example of this was the probability that you do not die at age 0.
The last fact we used is
- The joint probability rule for independent events that BOTH occur is the product of the individual probabilities of each event occurring.
P(A and B) = P(A) * P(B)
We used that to figure out how you survive by not dying every year. Notice that I’ve snuck in the word independent (well, I snuck it in boldy, so it wasn’t that sneaky). There is an intuitive reason why it is important to make a distinction about independent events.
In the last module, we said that two events (we were talking about responses to questions) are independent if knowing about one of them does not give you any information about what the other one might be. But remember bizarro world where the toilet paper orientation and peanut butter preference were deterministically related, and specifically everyone is either under-chunky or over-smooth? I’ve reproduced this result in Table 10.1.  Also 53%. What proportion prefers smooth AND under-hangs? 0!
| chunky | smooth | |
|---|---|---|
| over | 0 | 23 |
| under | 17 | 0 |
In bizarro world, toilet paper orientation and peanut butter preference are NOT independent, because knowing one of them DOES give you information about the other.
P(tp = over AND pb = smooth) does NOT equal to P(tp = over) * P(pb = smooth)
This will become even more clear in the next section.
Conditional Probabilities
Recall that we would NOT have gotten the right answer to the probability of dying in your 60s if we added up the mortality rates qx for all ages x in [60-69]. (Exercise: verify this.) Rather, we had to multiply these numbers first by the probability of living to age x. Another way to say this is that the mortality rate qx was actually a conditional probability. It was the probability of dying at age x on condition that you have survived to age x. To be absolutely clear, we are measuring x in whole numbers, like birthdays, but we don’t mean dying on your xth birthday. Rather, we mean dying anytime between turning age x and turning x+1. We need a special notation to distinguish conditional probabilities. We write,
qx = P(You die at age x | You survived to age x)
and we read this as “qx is the probability that you die at age x given that you survived to age x” or as “qx is the probability that you die at age x conditional on your surviving to age x.”  This is also different from
P(You die at age x AND You survived to age x)
which is called the joint probablity of the two events. (Note that the joint probability of events A and B is also often written as P(A, B). The comma functions like the word “and.”) We calculated exactly this joint probability above when we wanted to add up the probabilities that you die at some point in your 60s. The way we computed the joint probability for each year was by application of this general rule for conditional probabilities
P(A and B) = P(A|B) P(B)
which we read as “the probability of both A and B happening is equal to the probability of A conditional on B multiplied by the probability of B.” Note that this rule always holds. That’s because what I’ve called the general rule is equivalently just the definition of conditional probability. For example, I could have written it this way:
P(A|B) = P(A and B) / P(B)
This is just a rearrangement of the formula, but we have a tendency of seeing whatever is on the left side of an equation as being defined by what is on the right.
As far as death is concerned, the following are all true:
P(die at x AND survived to x) = P(die at x | survived to x) * P(survived to x)
P(die at x AND survived to x) = qx * P(survived to x)
qx = P(die at x AND survived to x) / P(survived to x)
where in the second line I substituted the mortality rate qx for the conditional probability that defines it. In the last line, you can see how the mortality rate could be estimated from data if you actually observed a whole bunch of people. You would count how many of the die at age, say, 62, and divide that number by the number who survived to age 62. You can also probably see why the following is true:
P(survived to x | die at x) = 1
That is, if you died at 62 then you must have survived to that age. That may seem too obvious for words, but it helps to show clearly that for conditional probabilities, it is not generally true that P(A|B) = P(B|A).
Considering toilet paper in bizarro world, we can see explicitly why the rule for joint probabilities of independent events P(A and B) = P(A) * P(B)
did not hold. The conditional probability relationship always holds, but independence is a special case. We can see what it is now:
P(A and B) = P(A|B) P(B) = {only in special cases} = P(A) * P(B)
Thus, when A and B are independent, it must be true that
P(A|B) = P(A) # for independent events
which reads as “the probability of A conditional on B is equal to the probability of A (regardless of B).” Another way to say this is that no matter what we know about B, it doesn’t tell us anything informative about A.
In the real world, this is true about toilet paper and peanut butter.
P(tp = over | pb = smooth) = P(tp = over) ## real world
But that was NOT true in bizarro world, where knowing peanut butter preference told us EVERYTHING about toilet paper orientation. If A is the probability that a person is an over-hanger, and B is the probability that they prefer smooth peanut butter, then
P(tp = over | pb = smooth) = 1 ## bizarro world
P(tp = over | pb = chunky) = 0
However, regardless of whether we stay in the real world or in bizarro world, the following will always be true,
P(tp = over AND pb = smooth) = P(tp = over | pb = smooth) * P(pb = smooth),
because this is the definition of conditional probability. Now you might notice that if the above is true, then the following should also be true:
P(pb = smooth AND tp = over) = P(pb = smooth | tp = over) * P(tp = over).
And it is true. For the same reason that this follows from the definition of conditional probability.
The order of the two joint events on the left-hand-side does not matter. There is no difference between P(A and B) and P(B and A). If both A and B happen, they both happen. There is no implied chronology when we write “A and B” that A came before B. So, that said, it is also true that
P(tp = over | pb = smooth) * P(pb = smooth) = P(pb = smooth | tp = over) * P(tp = over).
By combining the two equations from above. Or, in general
P(A | B) * P(B) = P(B | A) * P(A)
Notice that is not generally true about conditional probabilities that P(A|B) = P(B|A)
. Even though it is always true about joint probabilities that P(A,B) = P(B,A)
(I used commas instead of “and” here.) Here’s an example. All NYU students are New Yorkers (at least, honorary New Yorkers while in town.) But not all New Yorkers are NYU students. The probability of being a New Yorker conditional on (or given that) you are currently an NYU student is 1. However the probability of being an NYU student conditional on being a New Yorker is clearly not 1.
Conditional death, again
Earlier I said we would use the life table to answer questions about when you will die assuming nothing else about you. Now, you might be aware that life expectancy is not the same for males and females. Indeed, there are separate life tables for each sex. I’ve plotted the death column dx from both tables in Figure 10.1. Females are shown in light blue bars, and males using orange. Unfortunately for the males, their mortality rate is higher not only in their later years, but even in their late teens and twenties. (We’ll come back to that when we consider how you will die.)
Suppose I was interested purely in the likelihood (at birth) of living into ones 90s or beyond, conditional on sex. I can find out the proportions from separate life tables for each sex as follows. (These single-sex life tables go from 0 to 119, and the first row is dying before your 1st birthday. I need to look at the 91st row to see death after age 90.):
#proportion of females dying from at ages 80-119
sum(lifetableFemale[91:120,"dx"])/sum(lifetableFemale[,"dx"])
## [1] 0.2446278
#proportion of males dying from at ages 80-119
sum(lifetableMale[91:120,"dx"])/sum(lifetableMale[,"dx"])
## [1] 0.1347719
I can make a two way table using these proportions. I will base my table on a sample of 1000 females and 1000 males. This is not real sample data. I am just using the life table proportions here to construct an idealized sample.
<- data.frame(dieBefore90 = c(755,865), livePast90 = c(245,135),
sex_age80 row.names=c("Females","Males"))
The table looks like this
| dieBefore90 | livePast90 | |
|---|---|---|
| Females | 755 | 245 |
| Males | 865 | 135 |
The unconditional probability of living past 90 is (245+135)/2000 = 0.19 or 19%. This would be your betting chances if a baby were born and you did not know its sex. We can write this as P(live past 90) = 0.19. But if you knew it was born female, then you need to compute P(live past 90 | sex = female). How would you do this? Well, you can use the table. Of the 1000 females, 245 live past 90, so the answer is 24.5%. For males, it is 13.5%. Sorry, males.
Just to make things weird
Now suppose, for arguments’ sake, that the numbers in the life table apply to everyone born in the last 120 years as of today (they don’t; life expectancy has changed over the years). If I told you that someone was over 90, but nothing else about them, what is the probability that the person was female at birth (we will make the simplifying assumption that the life table corresponds to sex at birth)? The two-way table I constructed had equal numbers of males and females. We will assume that the birth rates are indeed the same. So the unconditional probability of being born female knowing nothing about a person’s status as living or dead is 50%. However, among those alive in their 90s, 245/(245+135) = 0.64 of them are female. Almost 2 to 1.
Given a two-way table, with variables representing events A and B, it is possible to derive conditional probabilities in both directions. P(A|B) might be the probability of living past 90 given sex at birth. P(B|A) would then be probability of sex at birth given present age over 90.
In the next chapters, we will start to examine what kinds of things might kill you. This will give us another chance to look at association in two way tables (as distinguished from independence). We will also explore what it means to say that something causes early death. In the example above, we saw that sex is associated with early death.  Would we say that sex causes early death?


{% extends "admin_template.html" %}
{% from "components/table.html" import list_table, field, text_field, index_field, hidden_field_heading %}
{% from "components/previous-next-navigation.html" import previous_next_navigation %}
{% from "components/file-upload.html" import file_upload %}
{% from "components/page-header.html" import page_header %}
{% from "components/page-footer.html" import page_footer %}
{% from "components/message-count-label.html" import message_count_label %}
{% from "components/banner.html" import banner %}
{% set page_title = _('Review before sending') %}
{% block service_page_title %}
{{ page_title }}
{% endblock %}
{% block main_content_class %}py-10 space-y-doubleGutter{% endblock %}
{% block maincolumn_content %}
{% if count_of_recipients > 1 %}
{{ _("{} recipients in the file '{}'.").format(count_of_recipients, original_file_name) }}
{% else %}
{{ _("1 recipient in the file '{}'.").format(original_file_name) }}
{% endif %}
{{ _('Only shows the first {} recipients.').format(count_of_displayed_recipients) }}
{{ _('Show the next 10 recipients') }}.
{{ _("This shows the message to the recipient of row {}.").format(preview_row) }}
{{ _('Recipients') }}
{{ _('Preview of one message out of {}').format(count_of_recipients) }}


--- layout: post title: Bangkok WordPress Kick-off date: 2014-02-25 19:46:40.000000000 +07:00 categories: - Meetup - WordPress tags: - bangkok wordpress - networking ---
Yesterday was the day. First time I organize a meetup. It's been quite a rush in the end, but it was really worth it. I was very lucky to have Siobhan McKeown speak about getting involved in WordPress.
As it was my first ever meetup (as an organizer), I was really curious to see how full (or not) would the room be. And it was a good surprise! About 15 people came to the event. Out of the 26 who RSVPed, it's about 61% attendance. Not bad I think.
The attendees were a good mix of Thais and foreigners. This is really important to me as I think it is the foundation of a good community. Both the Thais and foreigners were very interesting people and I'm hoping to see everyone again at future meetups.
If I had to summarize this meetup in one link, it would be http://make.wordpress.org/. I'm going to spend more time there as soon as I have a chance.
Now let's continue with the pictures: https://photos.app.goo.gl/zNeHyXVprQpmUpuK2


Not found No alias or file matched your request. Need help? Click the following link to get more details about how to use Grunt-Serve. More information


Data Module
Data module - destription goes here!!!!!!!
useful #1 – auto members
Popular
-
connectivipy.
start
()[source]
xyz
-
class
data.data.
Data
[source]
Data.
Class governing the communication between array and connectivity
estimators.
- data : numpy.array
- array with data (kXN, k - channels nr, N - data points)
- without : list
- list with indexes if you want omit some channels
-
resample
(fs_new)[source]
Signal resample.
fs_new new sampling frequency
- frame : np.array
- frame from camera


Junior data scientist with 5+ years of experience (including graduate training) in data analysis, machine learning and computational science. Versatile problem solver with excellent communication skills. Expertise in programming, applied mathematics, model building using data and critical thinking to provide insights. Results from data analysis as well as open source code published in peer reviewed journals.
Course instructor for Scientific computing using Python (Spring 2018, Fall 2018), Numerical Analysis using Python (Fall 2018), Differential Equations using Python (Spring 2019).
Course instructor for Mechanics and Vibrations course for Engineering students (calculus based).
Physics, technology, basketball, video games


{% extends "app/layout.html" %} {% load widget_tweaks %} {% block content%}
Name:
Uniqueness:
Category:
Description:
Availability:
Select a file:
Sharing Location:


Vargouille
Tiny fiend, chaotic evil
Armor Class 12
Hit Points 13 (3d4+6)
Speed 5 ft., fly 40 ft.
| STR | DEX | CON | INT | WIS | CHA |
|---|---|---|---|---|---|
| 6 (-2) | 14 (+2) | 14 (+2) | 4 (-3) | 7 (-2) | 2 (-4) |
Damage Resistances cold, fire, lightning
Damage Immunities poison
Condition Immunities poisoned
Senses darkvision 60 ft.
Languages understands Abyssal, Infernal, and any languages it knew before becoming a vargouille but can’t speak
Challenge 1 (200 XP)
Actions
Bite. Melee Weapon Attack: +4 to hit, reach 5 ft., one target. Hit: 5 (1d6+2) piercing damage plus 10 (3d6) poison damage.
Kiss . The vargouille kisses one incapacitated humanoid within 5 feet of it. The target must succeed on a DC 12 Charisma saving throw or become cursed. The cursed target loses 1 point of Charisma after each hour, as its head takes on fiendish aspects. The curse doesn’t advance while the target is in sunlight or the area of a daylight spell; don’t count that time. When the cursed target’s Charisma becomes 2, it dies, and its head tears from its body and becomes a new vargouille. Casting remove curse, greater restoration, or a similar spell on the target before the transformation is complete can end the curse. Doing so undoes the changes made to the target by the curse.
Stunning Shriek. The vargouille shrieks. Each humanoid and beast within 30 feet of the vargouille and able to hear it must succeed on a DC 12 Wisdom saving throw or be frightened until the end of the vargouille’s next turn. While frightened in this way, a target is stunned. If a target’s saving throw is successful or the effect ends for ft., the target is immune to the Stunning Shriek of all vargouilles for 1 hour.


Docker is an amazing tool with a lot great functional command line interfaces. A typical docker deployment might have a webapp running inside a container. In order to observe the beahvior of this container you might want to setup a Nagios plugin to monitor log output.
To do this I am going to do the following:
Deploy an Ubuntu Precise VM on <IP_ADDRESS> via Vagrant
Provsion the VM with Puppet using the Vagrant Puppet provisioner:
Installs docker using garethr-docker
Installs the training/webapp image
Runs the container using an exec
Installs nagios and my ruby plugin to monitor the docker service and the training/webapp image for the following:
Is the docker command available?
Is the webapp running?
Ensures webapp is running on localhost:5000
Checks the log for 404 errors and sends warnings if so
Counts the errors for each URL with a 404 and outputs the count and URL which has the highest hit count
test the above by trying <IP_ADDRESS>:5000/test over and over again
The Vagrantfile
I start with a basic Vagrantfile to deploy an Ubuntu Precise VM:
123456789101112131415
Vagrant.configure("2")do|config|config.vm.provider"virtualbox"do|v|v.customize["modifyvm",:id,"--memory",1024]endconfig.vm.define:nagiosdo|deploy|deploy.vm.box="precise64"deploy.vm.hostname="nagios.server.dev"deploy.vm.box_url="http://files.vagrantup.com/precise64.box"deploy.vm.synced_folder"modules","/etc/puppet/modules"deploy.vm.synced_folder"manifests","/etc/puppet/manifests"deploy.vm.network:private_network,ip:"<IP_ADDRESS>"# Define static IP once dev completesdeploy.vm.provision:puppet,:module_path=>"modules",:manifests_path=>"manifests",:manifest_file=>"deploy_nagios.pp"endend
Puppet Provisioner
In order to provision the VM on boot I used the Puppet provisioner which ships with Vagrant. For testing purposes I like to sync my manifests and modules directory to the VM. Usually I run a bash script before provisioning with Puppet to install from the Puppet Labs apt or yum repos, however for this project that wasn’t neccessary as the goal is to have a quickly bootable dev environment for my Nagios server and Docker container.
# Deploy docker and an Ubuntu image to play withclass{'docker':}docker::image{'training/webapp':require=>Class['docker'],}# Super hero hack to run the docker image... see readme for why.# Also, in no way is this idempotent, if it's running it'll fail.exec{'/usr/bin/docker run -d -p 5000:5000 training/webapp python app.py':require=>Docker::Image['training/webapp'],}#docker::run { 'webapp':# image => 'ubuntu',# command => '/bin/echo test',# require => Docker::Image['training/webapp'],#}# Update this thingexec{'/usr/bin/apt-get update':}# Install nagios class{'nagios':require=>[Exec['/usr/bin/apt-get update'],Class['docker']]}# Get my plugin on the system correctlynagios::plugin{'docker_status':source=>'nagios/nagios-plugins/docker_status.rb'}# WARNING: TOTAL HACK PLEASE DON'T JUDGE MEexec{'/bin/echo "command[docker_status]=/usr/lib/nagios/plugins/docker_status" >> /etc/nagios/nrpe.cfg':require=>File['/etc/nagios/nrpe.cfg'],notify=>Service['nrpe'],}# Ensure docker and nagios are in the same groupexec{'/usr/sbin/usermod -a -G docker nagios':require=>Class['nagios'],notify=>Service['nrpe'],}nagios::command{'docker_status':command_line=>'$USER1$/check_nrpe -H $HOSTADDRESS$ -c docker_status',}# Set the nagiosadmin password exec{'/usr/bin/htpasswd -cb /etc/nagios3/htpasswd.users nagiosadmin nagiosadmin':require=>Class['nagios'],}# I wrote my plugin in Ruby so lets make sure the VM has it. package{'ruby1.9.1':ensure=>present,require=>Class['nagios'],}
Yup, I had a couple of hero hacks in there to get around some issues with the docker::run define. That define should work, but kept failing with a very odd ‘<< is not a {}:hash’ error. I grep'ed through the module to try and find where this was coming from and I think it’s a heredoc within a function for the define. I still need to look into it. I ran an exec after the image is downloaded to get around this problem.
I also hero hacked the update to the nrpe.cfg file as the Nagios module I used didn’t make it clearly evident how or if it did this.
… In no way do any of these hacks make me an “inpatient” person.
The Nagios Plugin
Recall my plugin should monitor:
Is the docker command available?
Is the webapp running?
Ensures webapp is running on localhost:5000
Checks the log for 404 errors and sends warnings if so
Counts the errors for each URL with a 404 and outputs the count and URL which has the highest hit count
test the above by trying <IP_ADDRESS>:5000/test over and over again
Let’s break it down
Nagios Basics:
First, let’s define some basic outputs for the Nagios API. Since Nagios is only looking for specific exit codes from any given script we define those as methods here first.
0 = OK
1 = Shit is potentially hitting the fan
2 = Shit is hitting the fan
3 = Unknown shit is happening
The first part of my Plugin defines these:
12345678910111213141516171819202122232425
#!/usr/bin/ruby# Checks the docker status command for number of running containers# Ensures the docker container is running by checking that the socket exists# # Define some helper methods for Nagios with appropriate exit codesdefok(message)puts"OK - #{message}"exit0enddefcritical(message)puts"Critical - #{message}"exit2enddefwarning(message)puts"Warning - #{message}"exit1enddefunknown(message)puts"Unknown - #{message}"exit3end
Check to ensure docker is installed
Now let’s check to ensure Docker is installed, we can use a simple system() method which returns exit codes only:
Yup, it’s that easy, which docker will return ‘0’ or ‘false’ if it does not find the command and ‘1’ or ‘true’ if a path to the command is found. This isn’t the most robust check ever, but for now it’s enough to move on. Since all my other def’s work on the docker face and it’s sub commands I need to ensure this is present before doing anything else.
Check the webapp status
First, I want to make sure the webapp is running on the VM on a specific port. I’m going to use a netstat command and awk to return the process running on port 5000:
12345
defwebapp_status()# Ensure the webapp is running on localhost:5000webapp_run=`netstat -anp | grep 5000 | awk '{print $7}' | cut -d/ -f2`should_be="docker"webapp_run.chomp!.strip!
ifwebapp_run==should_be# Check to ensure there are no 404 errors in the logcheck_this="docker logs $(docker ps -l | awk '{print $1}' | awk '{if (NR == 2){print $0}}') 2>&1 | grep 404 | awk '{print $7}' | sort | uniq -c"check=system(check_this)ifcheckIO.popen(check_this)do|io|line=io.readlineserrors={}line.eachdo|this|number=this.split(' ').firsturl=this.split(' ').lasterrors.store(url,number)endmax_value=errors.values.maxmax_key=errors.select{|k,v|v==max_value}.keyscasemax_value.to_i>20whenfalsewarning("#{max_value} 404 Errors at localhost#{max_key}")whentruecritical("#{max_value} 404 Errors at localhost#{max_key}")endend
Lot’s of things are happening there.
1st, if ‘docker’ is the output of the webapp status command we drop into another loop. This loop runs a check_this command that is derived from the docker log face. That particular face feeds the output from a sys-log-like to the terminals stdin.
But first, docker logs needs to have the process hash of the container you want to query, so I run a docker ps -l and awk for the hash of the process I want.
123
root@nagios:/home/vagrant# docker ps -l
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
c968cced9f32 training/webapp:latest python app.py 33 minutes ago Up 33 minutes <IP_ADDRESS>:5000->5000/tcp berserk_pare
This would definitely break if you had many containers running.
So anyways, if we have that hash we can now pass it to docker logs like I did in the ruby script like this:
Now that I have access to the log from the webapp I can grep URL’s which have 404 errors, add those to a hash as k,v’s and then iterate over the hash for the key with the largest value.
Now I can use that key’s value to hit my warning or critical methods.
123456
casemax_value.to_i>20whenfalsewarning("#{max_value} 404 Errors at localhost#{max_key}")whentruecritical("#{max_value} 404 Errors at localhost#{max_key}")end
Of course, the end to this giant loop of loops does…
1234567
elseok("Docker & Webapp are in good shape!")endelsecritical("Webapp is not running on localhost:5000")endend
# Full #!/usr/bin/ruby# Checks the docker status command for number of running containers# Ensures the docker container is running by checking that the socket exists# # Define some helper methods for Nagios with appropriate exit codesdefok(message)puts"OK - #{message}"exit0enddefcritical(message)puts"Critical - #{message}"exit2enddefwarning(message)puts"Warning - #{message}"exit1enddefunknown(message)puts"Unknown - #{message}"exit3end# Check to ensure docker is installeddefdocker_installed()ifsystem("which docker > /dev/null")webapp_status()elsecritical("Docker isn't installed")endenddefwebapp_status()# Ensure the webapp is running on localhost:5000webapp_run=`netstat -anp | grep 5000 | awk '{print $7}' | cut -d/ -f2`should_be="docker"webapp_run.chomp!.strip!ifwebapp_run==should_be# Check to ensure there are no 404 errors in the logcheck_this="docker logs $(docker ps -l | awk '{print $1}' | awk '{if (NR == 2){print $0}}') 2>&1 | grep 404 | awk '{print $7}' | sort | uniq -c"check=system(check_this)ifcheckIO.popen(check_this)do|io|line=io.readlineserrors={}line.eachdo|this|number=this.split(' ').firsturl=this.split(' ').lasterrors.store(url,number)endmax_value=errors.values.maxmax_key=errors.select{|k,v|v==max_value}.keyscasemax_value.to_i>20whenfalsewarning("#{max_value} 404 Errors at localhost#{max_key}")whentruecritical("#{max_value} 404 Errors at localhost#{max_key}")endendelseok("Docker & Webapp are in good shape!")endelsecritical("Webapp is not running on localhost:5000")endenddocker_installed()


{% extends "base.html" %}
{% block title %}mod panel{% endblock %}
{% block content %}
{% include "navbar.html" %}
Topic Mod Panel
Welcome to the moderator panel. From here you can change the ban users, lock, sticky, or delete threads and/or delete individual posts.
You can ban users by entering the POST ID of a post they have made.


const val DEFAULT_PRECHECK_RETURN_CODE: Int
A constant that denotes a successful operation within WiseFy.
Author Patches
Since 3.0


Recently I was given the opportunity to smoke some DMT, a psychedelic that I had been interested in for years. I had tried it in the form of ayahuasca before, but never broke through. I don't believe that I quite broke through this time either, but it was interesting nonetheless.
Set: Kind of scared. This is THE psychedelic, the power of which puts all others to shame, at least according the what I've read. I calmed myself down by remembering the couple of terrifying, 10+ hour experiences I had on 2C-T-7 and AMT years ago. At least if this became one of those, it would only last 10 minutes or so. No fear. Calm.
Setting: My porch, on a soft couch, overlooking a non-busy highway.
My friend Q held the pipe and applied the torch to it while I prepared. He would instruct me to take a toke, then wait a few seconds for another. Looking back, my breathing was wrong, I'm not used to smoking vaporized things and should have been inhaling more slowly. Live and learn, my time will come again. After the first toke, I felt a slight alteration. After the second, edges of objects started to fuzz and move. After the third, glowing sigils began to appear on the concrete porch in front of me. At this point the lighter went out, and Q struggled to relight it while I remained in a half tripping state. He finally fixed the lighter and gave me the fourth puff.
A giant, sparkling, rainbow colored, half circle chrysanthemum like object appeared in the sky above the apartments across the way and became more and more opaque by the second. The buildings across the street began glowing and pulsating with color, outlines of their shapes. I still wasn't there. 'Take another', he instructed me. 'Noooooo...', I replied, trailing off. A fear that began with the N and ended with the O had taken over for a second. Did I want to enter this hyperspace. He said, more forcefully, 'Take it!'. The fear disappeared, and I took the fifth puff.
Right as I exhaled, the wind blew, and I felt that it was beginning to blow my body away too. I closed my eyes, and the 'normal' psychedelic patterns evolved into ultra-3d visuals, first of childs hands pouring a white but not white viscuous liquid. There was a soothing voice for a second, too, but I could not make out what it said. I laid down on the couch, feeling like I was halfway between worlds. I could open my eyes at any time, and be in a familiar but normal place, or close them and view this ultra 3d world of shimmering silken liquids and beautiful hands. At one point I saw a shadow of a humanoid figure standing above me to the left, and felt that it was looking down on me, but it faded as quickly as it appeared, and soon the 3d was turning back into 2d, and I opened my eyes again, and said something along the lines of 'Well, that was definitely the strangest thing I've ever seen.'.
Although I didn't fully enter DMT space, my fear of the DMT reality was completely removed by this. It seemed like a very warm, smooth place that was inviting me in. I will explore it further soon.
Experience Reports are the writings and opinions of the individual authors who submit them.
Some of the activities described are dangerous and/or illegal and none are recommended by Erowid.


Machine Learning (ML) is widely adopted in modern software systems, including safety-critical domains such as autonomous cars, medical diagnosis, and aircraft collision avoidance systems. Thus, it is crucial to rigorously test such applications to ensure high dependability. However, standard notions of software quality and reliability become irrelevant when considering ML systems, due to their non-deterministic nature and the lack of a transparent understanding of the models' semantics. ML is also expected to revolutionize software development. Indeed, ML is being applied for devising novel program analysis and software testing techniques related to malware detection, fuzzy testing, bug-finding, and type-checking.
The workshop will combine academia and industry in a quest for well-founded practical solutions. The aim is to bring together an international group of researchers and practitioners with both ML and SE backgrounds to discuss their research, share datasets, and generally help the field to build momentum. The workshop will consist of invited talks, presentations based on research paper submissions, and one or more panel discussions, where all participants are invited to share their insights and ideas.
Call for Papers
DeepTest is an interdisciplinary workshop targeting research at the intersection of SE and ML. We welcome submissions that investigate:
how to ensure the quality of ML-based applications, both at a model level and at a system level
the use of ML to support software engineering tasks, particularly software testing
Relevant topics include, but are not limited to:
Quality
Quality implication of ML algorithms on large-scale software systems
Application of classical statistics to ML systems quality
Training and payload data quality
Correctness of data abstraction, data trust
High-quality benchmarks for evaluating ML approaches
Testing and Verification
Test data synthesis for testing ML systems
White-box and black-box testing strategies
ML models for testing programs
Adversarial machine learning and adversary based learning
Test coverage
Vulnerability, sensitivity, and attacks against ML
Metamorphic testing as software quality assurance
New abstraction techniques for verification of ML systems
ML techniques for software verification
Dev-ops for ML
Fault Localization, Debugging, and Repairing
Quality Metrics for ML systems, e.g., Correctness, Accuracy, Fairness, Robustness, Explainability
Sensitivity to data distribution diversity and distribution drift
Failure explanation and automated debugging techniques
Runtime monitoring
Fault Localization and anomaly detection
Model repairing
The effect of labeling costs on solution quality (semi-supervised learning)
ML for fault prediction, localization, and repair
ML to aid program comprehension, program transformation, and program generation
We accept two types of submissions:
full research papers up to 8-page papers describing original and unpublished results related to the workshop topics.
short papers up to 4-page papers describing both preliminary work, new insights in previous work, or demonstrations of testing-related tools and prototypes.
All submissions must conform to the ICSE 2021 formatting instructions. All submissions must be in PDF. The page limit is strict. Submissions must conform to the IEEE formatting instructions IEEE Conference Proceedings Formatting Guidelines (title in 24pt font and full text in 10pt type, LaTeX users must use \documentclass[10pt,conference]{IEEEtran} without including the compsoc or compsocconf options). DeepTest 2021 will employ a double-blind review process. Thus, no submission may reveal its authors’ identities. The authors must make every effort to honor the double-blind review process. In particular, the authors’ names must be omitted from the submission and references to their prior work should be in the third person.
If you have any questions, or wonder whether your submission is in scope, please do not hesitate to contact the organizers.
Program Committee
Maurício Aniche, Delft University of Technology, The Netherlands 🇳🇱


Senior Quantitative Modeler (San Francisco, CA) - San Francisco, CA
The Sr. Quantitative Modeler position works within the Financial Planning & Analysis (FP&A) Quantitative Analytics team and will develop quantitative/statistics models used for Current Expected Credit Loss (CECL) and stress testing purposes.
RESPONSIBILITIES:
- Obtain and conduct data analysis required for stress testing model development
- Developing and executing primary and benchmark models for credit risk and PPNR
- Perform all required tests and measures of developed models (e.g., sensitivity, accuracy, volatility)
- Perform routine analysis for model performance monitoring and model review, maintaining current model inventory for validation and audit compliance.
- Deliver comprehensive model documentation (e.g., model development documents, model approval packages, technical review documents)
- Utilize quantitative skills to analyze and summarize data, formulate findings, and provide recommendations. Research and recommend enhancements
- Assist others with conducting business research by gathering data, identifying options, and creating non-routine reports with detailed analyses
- Perform additional duties as required
POSITION REQUIREMENTS:
- This position requires a minimum of Master’s degree in Mathematics, Statistics, Economics, Operations Research, or related field
- Minimum 2 years of experience in the job offered or as a Predictive Analyst, or in related position. Experience must include:
- Programming in a statistical software package such as R,SAS, or Python
- Querying data from a data warehouse with relational database using SAS/SQL
- General use of Microsoft Office applications (Excel, Word, PowerPoint)
- Handle and perform large scale data manipulation using R and SAS
- Statistical modeling techniques such as linear regression, generalized linear regression, logistic regression, time series, decision trees, cluster analysis
- Working in cross functional teams
#LI-HJ1


Event Location:
Roush Hall at Otterbein University
27 S Grove Street
Columbus, Ohio
Abstract:
Whether you’ve dabbled in PowerShell or wondered what all the fuss is about, make no mistake: PowerShell isn’t going away. It is definitely something worth learning to make your life as a SQL Server professional easier, and allow you to advance in your career as a DBA. In this session, you’ll see practical, real-world examples of how you can blend SQL Server and PowerShell together. You’ll also get a look at the SQL Server PowerShell provider and how you can incorporate it into your automation scripts. Instead of focusing on syntax, the session will plunge straight into examples and highlight various snippets of code and how they work. You can expect to see code examples on how PowerShell can do anything from comparing tables across servers, automating and centralizing your backups, and even doing in-depth security audits.
Speaker(s): Drew Furgiuele,
Abstract:
SQL Server 2016 came out with a bucket full of cool new features. One of them is Temporal Tables. SQL Server 2017 made some enhancements in this area. Temporal tables are basically history tables of the normal tables; that allows us to retrieve data from any point in time for every change such as updates and deletes. It does this all without any change to application code. In this session, we will see what the requirements of creating temporal tables are. We will see the demo on insert and update functionality and how to query historical information using new TSQL clause. We will touch upon retention of history as well. It has lots of demos and less theory.
Speaker(s): Ameena Lalani,
Abstract:
Azure SQL Database offers a way quickly spin up new databases with minimal management requirements. However, the number of differences between on-premises SQL Server and Azure SQL Database can be overwhelming. Even worse, with DBaaS it’s not clear who is responsible for what anymore. In this session, we will cover all the basic steps of getting your first Azure SQL Database instance spun up. We’ll cover common gotchas, like firewall settings and resource locks. We’ll also dive into some more advanced options with templates, allowing you to make your processes reproducible. By the end of this presentation, you’ll understand if Azure SQL Database is the right choice for you and your needs. You’ll understand how it can simplify management and allow you to scale easily. Finally, you’ll have the confidence to go and create your own instance with ease.
Speaker(s): Jim Donahoe,
Abstract:
AWS offers a broad range of databases purpose-built for your specific application use cases. It offers managed Relational, Non-Relational, Data Warehouse, In-Memory Data Store, and Graph Databases. AWS fully managed database services include relational databases for transactional applications, non-relational databases for internet-scale applications, a data warehouse for analytics, an in-memory data store for caching and real-time workloads, and a graph database for building applications with highly connected data. To migrate their existing databases to AWS, the AWS Database Migration Service makes it easy and cost effective to do so. The specific session will cover all the different databases products offered by AWS and the features and the key benefits and also the key clients who all use the products and catering to their specific needs.
Speaker(s): Sourav Mukherjee,
Abstract:
The job of a data professional is evolving rapidly, driving many of us to platforms and technologies that were not on our radar screen a few months ago. I am certainly no exception to that trend. Most of us aren't just monitoring backups and tuning queries - we are collaborating with teams throughout the company to provide them data and insights that drive decisions. This presentation walks you through how a silly idea from a soccer podcast got me thinking about how Azure Logic Apps, sentiment analysis, and Azure SQL DB combine to provide potentially powerful insights to any company with a social media and sales presence. Join me as I walk you through building a solution that can impact your company's bottom line - and potentially yours too!
Speaker(s): Matt Gordon,
Abstract:
Over the past few years R has been popping up in several areas within the Microsoft ecosystem. It was first introduced in Azure ML then later appeared in Power BI and SQL Server. Unfortunately, the benefits of the R programming language are not understood by many Microsoft professionals so these tools are not being fully utilized. I hope to change that for some with this talk. In this session we will take a tour of R in the Microsoft ecosystem. We will show the different ways R can be leverage and present compelling reasons why it is a very valuable tool that you should add to your data analytics arsenal. No R experience is needed for this session.
Speaker(s): Ryan Wade,
Abstract:
Making mistakes is human nature, avoiding them comes from experience and shared wisdom from others. In this session, Tim Radney will share experiences he has encountered supporting multiple fortune level companies. Tim will share real world experiences of environments he has worked on and the impact he has seen from administrators not knowing how to properly configure and administer SQL Server. In this session you will learn many accepted best practices for installing, configuring and supporting SQL Server to help your environment run as smooth as possible. When you leave this session you will have a checklist of items to take back to your shop to make sure your environment is configured properly.
Speaker(s): Tim Radney,
Abstract:
DevOps is the new hot topic for IT, but only answers part of the problem. This session and demo will discuss why data creates continual friction in the DevOps environment and how it must be incorporated into the solution. Reasons for this solution is required: -Data is getting bigger and more complex -Security concerns around critical data is becoming more evident every day -Data is created in silos in many sources, yet consumed in just as many locations, including on-premises and in the cloud. We'll discuss the tech, the politics and the challenges of bringing data into DevOps and how to do so more successfully with culture changes, tools, scripting, and virtualization. Takeaways from this session: 1. Learn the five principles of Data Ops 2. How embracing a dynamic data platform can eliminate challenges and provide automation. 3. Learn the difference between containers, packages and data pods. 4. Learn how to bridge the gap between data and people, eliminating culture from the scene
Speaker(s): Kellyn Pot'Vin-Gorman,
Abstract:
Have you ever needed to learn a new database design and don't know where to begin? Or are trying to find out why a query doesn't perform well? Or need to provide security information to auditors or your security team? SQL Server has a number of metadata facilities available to help you with these tasks, and more. Functions, dynamic management views, and system stored procedures can illuminate details from the smallest column up through an entire SQL Server instance and everything in-between. We will demonstrate metadata techniques to help you: - Document your database schema objects such as procedures, functions, tables, columns and indexes - Investigate performance and look for bottlenecks - Discover metadata to administer your databases backups, index maintenance, and security - Apply your own metadata using extended properties We'll also demonstrate the new SQL Data Discovery/Classification and Vulnerability Assessment features in SQL Server Management Studio.
Speaker(s): Rob Volk,
Abstract:
This session is for the absolute beginner to learn the terminology of performance tuning and how queries are processed. This includes how queries are Parsed, Resolved, Optimized, Compiled and Executed. We will see how this effects Batches, Transactions, and Errors. We will also briefly discuss table structures and the differences between Heaps and Clustered Indexes. The session is led by an expert Microsoft Certified Trainer (MCT) and Microsoft MVP who regularly teaches the SQL Server certification courses.
Speaker(s): John Deardurff,
Abstract:
Window functions were first introduced with SQL Server 2005 and enhanced with SQL Server 2012. They enable easy development and great performance…well, sometimes. Learn what you need to know to take full advantage of these features. What you don’t know can hurt you when you are using window functions.
Speaker(s): Kathi Kellenberger,
Abstract:
What do you want to be when you grow up? I want to be a DBA, a teacher, a blogger, and a world-traveler. I'm living my dream. In this session, we'll talk about how I got where I am, and how you can get to where you want to be. In addition to sharing my journey, I'll give some helpful tricks to getting your next job. You'll learn how to write a resume that gets you noticed, how to navigate interviews, and learn how to decide if a potential job and employer is right for you. Bring your own resume to this session, and I'll provide you some personal (and private) feedback on what I would do to help improve your resume so you can land your Dream Job. Slides handouts available on GitHub: http://am2.co/dream-job-ppt
Speaker(s): Andy Mallon,
Abstract:
SQL Server 2016 added R to the analytical toolset and SQL Server 2017 has added Python. When looking at various lists of the most popular programming languages, Python always has one of the top positions. This session provides an introduction to Python, including why it is a good choice for analyzing data. If you have not had a chance to review SQL Server 2017 yet, please attend to see some of the new changes coming later this year. One of the features covers will show what is needed to incorporate Python into SQL Server and how Python can be incorporated in stored procedures to provide the ability to analyze data using arguably the most popular programming language to review data.
Speaker(s): Ginger Grant,
Abstract:
Sometimes using dynamic SQL is the only way to write a query that accomplishes what you need. But did you know that dynamic SQL statements can leave you vulnerable to SQL injection attacks? In this session we'll examine how SQL injection works and how we can write injection-proof queries through a series of examples and demos. We'll also look at why some commonly used techniques aren't as secure as many people think. If you ever write or maintain dynamic SQL queries, or work with developers who do, then this session is for you. After all, do you really want to be the person responsible for allowing hackers into your database?
Speaker(s): Bert Wagner,
Abstract:
I've said it before and I'll say it again: Query Store is a game-changer for troubleshooting query performance. Yet when I ask people who are running SQL Server 2016 or higher if they're using Query Store, less than half say they are. If you fall into that category, this session is for you. We’ll start by discussing Query Store configuration. Sound a little boring? It won't be. There are multiple settings that affect how information is captured and you need to understand them. Next, we'll look at the data. Definitely not boring, as it's imperative you understand exactly what gets stored (and what doesn't) so you can find problematic queries quickly. Lastly, we'll mine the data in Query Store, and mining is more than just finding queries that use a particular index, or those that access a specific table. We’ll discuss different workload characteristics and how they affect system performance, and how to use Query Store to better understand your own workload.
Speaker(s): Erin Stellato,
Abstract:
Computers can't be biased, right? I mean, it's just lines of code. Yes or No. Ones Zeros. Those lines of code are written by people. People have life experiences that color how they see the world. Okay, let's be blunt. People have baggage. And that baggage is seeping into your application, surveys and web forms. You've got an idea for a new app and it's going to change the world! Right? It's a brilliant idea no one has ever thought of it before. You're working on the GUI for your company's web portal and you know just what information to collect from the user. Are you sure about that? Odds are pretty good that the information you're going to collect is a reflection of your life your experiences. Learn how to identify bias when it seeps in, how to code to be inclusive instead of exclusive , and some quick tips tricks to make sure you're accounting for all the users that will use YOUR application to change the world.
Speaker(s): Rie Irish,
Abstract:
There is no organization that is immune from performance issues with their SQL Server queries. Sometimes all it takes is one "perfect storm" that kills your server performance and lands you in the hot seat with everyone asking you what happened. While many performance issues can be addressed with an index or configuration change, what about when the root of the problem is the code itself? Whether it's a stored procedure or dynamic T-SQL generated by an ORM, the burden of proof lies with the DBA to demonstrate how the code is negatively impacting performance. How do you capture those bad queries? When you have this data what do you look at besides the query itself? How do you make the case to the business that a code change is necessary? In this session we will explore capturing and identifying those problem queries, the analysis of the performance data, and how to effectively communicate your findings to the business to get your proposed code change approved and implemented.
Speaker(s): Amy Herold,
Abstract:
If you manage code, you understand the struggle of choosing how you source control it. While there are many choices out there, Git has become a popular option for many development teams. While it has many strengths, understanding Git can be a struggle for developers who are not used to distributed source control. In this session, we will go over the basic concepts of Git, from building and cloning a repository to branching, forking, and code merges. We will use real world examples of how Git and GitHub can be used to manage global development teams. Attendees will leave with a solid understanding of how Git works, how to get started with their own GitHub repository, and some tools that can be used to manage their code.
Speaker(s): Michael Fal,
Abstract:
If you have an online presence, you have a personal brand. Most of us didn’t intend to create a brand when we made our first websites and social media profiles. They were just fun ways to share our lives and meet people. Now, they’re networking and career growth tools. In this talk, you’ll hear about people whose brands helped them become respected developers, managers, and community leaders. You’ll learn how to use your online presence to advance your career. You’ll also pick up best practices, common mistakes, and tips for balancing professional and personal content. Intentional personal branding opens the door to endless opportunities. Come see how to make that happen!
Speaker(s): Cassandra Faris,
Abstract:
System Catalog Views are all about the catalog METADATA in your database. Using basic T-SQL queries they let you look for objects in the database such as Tables, Stored Procedures, Functions, and more. System Dynamic Management Views let you monitor the health of your server instance and database, assist in performance tuning and diagnosing problems. Both can be core sources of information that let you do your job faster and better. Sure, on the surface they can seem rather mundane, but they can save your bacon when your database goes sidewise and you have no idea what’s going on. Join me as we begin our flight at 50,000 feet exploring many of the different types of views available and what they can provide you, then push the yoke forward and dive toward the ground to get a closer look at several in detail. But don’t worry, just as it looks like we’re going to crash and burn we’ll pull back on the yoke and slide in to a smooth landing.
Speaker(s): Luis Gonzalez,
Abstract:
Do you have a query that you want to tune, but don't know where to start? Execution plans can be a great starting point for understanding what your query is doing under the hood. This course covers the bare bones basics: what an execution plan is, how to run them, how to read them, and additional features.
Speaker(s): Eugene Meidinger,
Abstract:
There are many ways of detecting and capturing changes to the data in your business system in order to populate your data warehouse. In this session we will compare and contrast several methods for loading slowly-changing dimensions in your ETL solutions, including SSIS design patterns, T-SQL code, change data capture (CDC) and temporal tables. Attendees will gain a full understanding of the pros and cons of each of these solutions and become confident in choosing and implementing them in their own ETL solutions.
Speaker(s): Chris Hyde,
Abstract:
Are you having a hard time enforcing or updating processes? Are you having trouble getting the business to see your vision of the future? Do you want to improve process or tasks at your office? Your answer to these challenges may be to improve relationships with key departments like Development and Quality Assurance. In this session, I will go over steps I took to improve relationships with other members of the IT department. I will also discuss how improving my relationships helped me accomplish my long-term goals.
Speaker(s): Elizabeth Noble,
Abstract:
Sponsor session from Rubrik.
Speaker(s): David Maxwell,
Abstract:
Maintaining a solid set of information about our servers and their performance is critical when issues arise, and often help us see a problem before it occurs. Building a baseline of performance metrics allows us to know when something is wrong and help us to track it down and fix the problem. 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:
We have heard a lot on recognizing Imposter Syndrome and how to address it. However, what if it’s not Imposter Syndrome after all? We will discuss working scenarios and how you approach or deal with them to determine “is it you or is it me?”
Speaker(s): Wendy Pastrick,
Abstract:
Did you throw your data in a lake, specifically an Azure Data Lake? Are you now wondering what to do with all of that data? Microsoft provides Azure Data Lake Analytics (ADLA) “An on-demand analytics job service to power intelligent action.” We will take a look at U-SQL, the big data language, which will empower you to leverage the T-SQL you know to extract meaningful insights from your big data.
Speaker(s): Akhil Mahajan,
Abstract:
One of the most popular libraries in R is ggplot2, a graphics library built on a concept called the grammar of graphics. In this example-heavy talk, we will learn about the grammar of graphics through ggplot2. We will start by building a series of simple visuals using ggplot2. Then, we will show how easy it is to add more and more complex functionality to our visuals, showing that we can incrementally add polish to our visuals. By the end of the talk, you will have the tools to build professional-quality visuals in R.
Speaker(s): Kevin Feasel,
Abstract:
This topic sounds scary, but it’s not. Regardless of whether you have a small database with only a few users, or a large multi-tenant system, you have Locking, Blocking, Latches, and Spinlocks. Understanding what they are and how they work is the first step in understanding how to troubleshoot them. Deadlocks are a problem, but they are a problem we can fix. In this session, we will explain and investigate how to find and fix the problems that we see in our database every day.
Speaker(s): Gareth Swanepoel,
Abstract:
Forensic accountants and fraud examiners use a range of techniques to uncover fraudulent journal entries and illegal activities. As data professionals, most of us will never unravel a Bernie Madoff scheme, but we can apply these same techniques in our own environments to uncover dirty data. This session will use a combination of SQL Server and R to apply these fraud detection techniques, which include Benford's Law, outlier analysis, time series analysis, and cohort analysis.
Speaker(s): Kevin Feasel,
Abstract:
This session will demonstrate how to leverage Biml Patterns, along with SQL Server Metadata, to rapidly build SSIS packages. The focus of this session will be on populating a data warehouse, however the concepts presented could be applied to most any ETL/ETL scenarios. The components used during this session: - Biml - BimlExpress - BimlSnap On-line are all available at no charge.
Speaker(s): Jim Miller,
Abstract:
Sponsor Session from Cardinal Solutions.
Speaker(s): David Maxwell,
Abstract:
While Azure SQL Database provides the full feature of the SQL Server database engine, it is designed primarily for newly developed, cloud-based applications. For existing applications running on traditional SQL Server instances, the cost and complexity of migration can be prohibitive. With the release of Azure Managed Instances, much of the cost and complexity have been removed. Join me for this session to learn about the differences between Azure SQL Database and Azure Managed Instances. Additionally, discover methods for migrating existing instances to Azure.
Speaker(s): Frank Gill,
Abstract:
By now you've heard that SQL Server is available on various flavors of Linux and Docker. Join me in this session to go through the basics of these technologies. I want to show you how to setup, install, configure, and have a database to insert some data into and query. Then I want to go through your tool management options. All in all I hope to leave you with the ability to take this to your shop to see where it might make sense to use in the future.
Speaker(s): Paul Popovich Jr,
Abstract:
SQL Server 2016 introduced the concept of a system-versioned temporal table. Further enhancements were added in SQL 2017. This is a type of user table that is designed to keep a complete history of all data changes to facilitate easy point-in-time analysis. In this session we will cover the basics of the internals of how temporal tables work, how to create them and their wide variety of use cases from auditing, to trend analysis and even recovery from data corruption.
Speaker(s): Brian Carrig,
Abstract:
Sometimes a data professional will find themselves in need of a large demonstration data set. However, non-proprietary options are few and usually lacking. This session will educate attendees in how to get around these obstacles by creating their own data. We'll talk about the process of using real-world variability, creating inconsistency that leads to insight using some basic statistical concepts, the process of putting everything together, and getting the data set into SQL Server.
Speaker(s): Britton Gray,
Abstract:
Extended Events are an essential part of properly monitoring and every DBA should know what they are and how to use them. This session will cover the basics of Extended events as well as an introduction to the system_health session. This session will give someone who has never used Extended events before the skills to start using them!
Speaker(s): Dave Bland,
Abstract:
Once you have successfully configured Availability Groups, what comes next? In this session, we will go beyond setup and look at how to monitor your Availability Groups. We will define and cover important metrics and alerts you need to manage a database in an Availability Group. You will walk away from this session with tools you need to monitor your environment and know how to respond to alerts.
Speaker(s): Tracy Boggiano,
Abstract:
Since data compression is now a standard level feature (2016 SP1+) learn how to squeeze a little extra performance out of your databases for free! We’ll cover the types of compression available, the costs and benefits and how to determine good candidates for compression. Once we know what we want to compress we’ll cover three ways to apply it, including the easiest way to compress your whole database to meet best practices with just one line of code!
Speaker(s): Jess Pomfret,
Abstract:
Product Demonstration by Quest Software
Speaker(s): David Maxwell,
Abstract:
Long gone are the days where the only architecture decision you had to make when scaling an environment was deciding which part of the datacenter would store your new server. There is a dizzying array of options available in the SQL Server and Azure ecosystems and those are evolving by the day. Is “the cloud” a fad? Are private datacenters a thing of the past? Could both questions have a kernel of truth in them? In this session I will go over real world scenarios and walk you through real world solutions that utilize your datacenter, cloud providers, and everything in between to keep your data highly available and your customers happy.
Speaker(s): Matt Gordon,
Abstract:
PowerPoint can enhance the presentation of any speaker or business professional, but using it effectively in your sessions or presentations can be difficult without practice. In this session, you will learn how to take your PowerPoint skills to the next level, using more advanced transitions, animations, and media in your presentations. This will help you engage your audience and communicate visually instead of just verbally, making your presentations more effective. After attending this session, you can feel confident that your PowerPoint skills have improved.
Speaker(s): Evelyn Maxwell,
Abstract:
In 2018 creating a cube is one of the easier tasks in BI, however what happens when the cube you inherit is so big that it officially becomes the biggest cube in the Midwest, and therefore one of the biggest cubes in the country? This session shows how to handle tabular models of size and scale. It also delves into what assistance and considerations are required when considering moving, or even building, your cubes in Azure.
Speaker(s): George Bryant,
Abstract:
SQL Server 2016 and Azure SQL Databases both contain JSON features that allow data to be accessed for either reading or writing JSON documents. This combined with REST APIs make it easier than ever for applications to exchange data directly with the database. We'll demonstrate this feature using SQL Server's built-in JSON support.
Speaker(s): Sam Nasr,
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/jmiller8
Contact: https://https://www.bitracks.com/blog
Jim has worked in various facets of the IT business for over 30 years, with a primary focus on data warehousing, reporting and analytics, business intelligence, data modeling (relational, multi-dimensional), ETL frameworks, database architecture, as well as database performance tuning. In previous engagements, Jim has fulfilled roles as Data Architect, DBA, IT Director, and Senior Consultant. He also has experience in account management, marketing/technical support, and software application training. Jim has also had some extraordinary opportunities to lead IT organizations, with multinational participants, on reconstruction projects based in Bosnia and Iraq.
LinkedIn: http://www.linkedin.com/pub/rie-irish/2/34a/78/
Rie lives with her family just north of Atlanta, Georgia. She worked as a SQL Server DBA, manager director for over 20 years. She's worked in many industries including the non-profit sector, education, big pharma, and e-commerce. She was awarded the MVP in the Data Platform 3 times beginning in 2017 and gave that up to accept her role as a Senior Program Manager with Microsoft in 2019. She is very involved with the Atlanta MDF User Group, SQL Saturday Atlanta and is co-leader of the PASS Women in Tech virtual group.
Contact: http://www.sqlflipflopsdba.com
Jim is a Premier Field Engineer for Microsoft in the Data/AI space. He lives in Pittsburgh in a small suburb. He loves working with all things Azure(ARM templates, DBaaS, SQL on IaaS). He is an avid collector of retro video games! He is a member of the Idera ACE program for 2018.
LinkedIn: https://www.linkedin.com/in/davidmmaxwell
Contact: https://dmmaxwell.wordpress.com/
David Maxwell has almost 20 years of experience with SQL Server, with a keen interest in performance tuning, monitoring, and troubleshooting. He has experience in environments as diverse as health care institutions, auto manufacturers, and insurance companies. David has been a frequent presenter at SQLSaturday events around the United States since 2012, as well as a presenter for the DBA Fundamentals Virtual Group, the Performance Virtual Group, 24 Hours of PASS, and the annual PASS Summit. David participates in his local Columbus Ohio PASS Local Group, where he serves on the board of directors as SQLSaturday coordinator.
LinkedIn: https://www.linkedin.com/in/ameena
Ameena Lalani is a SQL Server veteran and started her journey with SQL Server 2000. She is a Microsoft Certified Solution Associate on SQL Server 2016 and also hold Azure Administrator Associate certification. Ameena works at Microsoft as a Premier Field engineer. She has implemented numerous High Availability and Disaster Recovery solutions at various companies. Ameena loves to share her technical knowledge and speaks at local user groups and SQL Saturday events throughout the United States.
LinkedIn: https://www.linkedin.com/in/tracyboggiano
Contact: http://databasesuperhero.com
Tracy Boggiano is a Senior Database Administrator for DocuSIgn. She has spent over 20 years in IT, using SQL Server since 1999, and is currently certified as an MCSE Data Platform. Tracy has worked on SQL Server since 6.5. She has spoken at local user groups and numerous SQLSaturdays. She is currently a co-leader of a TriPASS Local Group in Raleigh, NC. Tracy also tinkered with databases in middle school to keep her sports card collection organized. She blogs at databasesuperhero.com. Her passion outside of SQL Server is volunteering with foster children as their advocate in court through volunteerforgal.org and being a mental health advocate as part of the PAIMI NC Advisory Council.
LinkedIn: https://www.linkedin.com/in/sqlatspeed
Contact: http://www.sqlatspeed.com
Matt is a Microsoft Data Platform MVP and has worked with SQL Server since 2000. He is the leader of the Lexington, KY PASS local group and a frequent domestic and international community speaker. He's an IDERA ACE alumnus and 2020 Friend of Redgate. His original data professional role was as a database developer, which quickly evolved into query tuning work that further evolved into being a full-fledged DBA in the healthcare realm. He has supported several critical systems utilizing SQL Server and managed dozens of 24/7/365 SQL Server implementations. He currently utilizes that real world experience as a data platform consultant helping clients design solutions that meet their ever-changing business needs.
LinkedIn: http://www.linkedin.com/in/samsnasr
Contact: http://samnasr.blogspot.com/
Sam Nasr has been a software developer since 1995, focusing mostly on Microsoft technologies. He’s a Sr. Software Engineer with NIS Technologies where he consults and teaches clients about the latest .Net technologies. Sam has achieved multiple certifications from Microsoft (MCSA, MCAD, MCTS, MCT), and is the leader of the Cleveland C#/VB.Net User Group since 2003. In addition, he’s the leader of the .Net Study Group, an author for Visual Studio Magazine, and a Microsoft MVP since 2013. When not coding, Sam loves spending time with his family and friends or volunteering at his local church.
LinkedIn: https://www.linkedin.com/in/sqlatspeed
Contact: http://www.sqlatspeed.com
Matt is a Microsoft Data Platform MVP and has worked with SQL Server since 2000. He is the leader of the Lexington, KY PASS local group and a frequent domestic and international community speaker. He's an IDERA ACE alumnus and 2020 Friend of Redgate. His original data professional role was as a database developer, which quickly evolved into query tuning work that further evolved into being a full-fledged DBA in the healthcare realm. He has supported several critical systems utilizing SQL Server and managed dozens of 24/7/365 SQL Server implementations. He currently utilizes that real world experience as a data platform consultant helping clients design solutions that meet their ever-changing business needs.
LinkedIn: http://www.linkedin.com/in/pittfurg
Contact: http://www.port1433.com
Drew Furgiuele is a senior DBA that lives in Dublin, Ohio who is passionate about SQL Server and PowerShell. He's been working with SQL Server since 2002. When he’s not accidentally dropping tables in production, he likes writing automation scripts, blogging about SQL Server Replication, wiring electronics, playing board games, and spending time with his dog. He's also not embarrassed by his Spotify playlists.
LinkedIn: https://www.linkedin.com/pub/kevin-feasel/7/716/504
Contact: http://www.catallaxyservices.com
Kevin Feasel is a Microsoft Data Platform MVP and CTO at Envizage, where he specializes in data analytics with T-SQL and R, forcing Spark clusters to do his bidding, fighting with Kafka, and pulling rabbits out of hats on demand. He is the lead contributor to Curated SQL (https://curatedsql.com), president of the Triangle Area SQL Server Users Group (https://www.meetup.com/tripass), and author of PolyBase Revealed (https://www.apress.com/us/book/9781484254608). A resident of Durham, North Carolina, he can be found cycling the trails along the triangle whenever the weather's nice enough.
LinkedIn: https://www.linkedin.com/in/chris-hyde-3803706
Chris Hyde is a Microsoft Data Platform MVP and Microsoft Certified Trainer based in Albuquerque, New Mexico. He works as an independent SQL Server BI and DBA consultant, and is the leader of the Albuquerque PASS local user group. He is also part of the Friends of Redgate program and was a member of the Idera ACE class of 2018. He loves loud music and cricket, but usually not at the same time.
LinkedIn: https://www.linkedin.com/in/ryanwade44
Ryan is an experienced data analytics professional. His education and work experience enables him to understand things from a technical, analytical, and business viewpoint. He has the ability to present complex data in an intuitive way using sound analytical and visualization methods. He has an advanced analytical and technical skill-set which includes Power BI, T-SQL, R, Python, Azure Machine Learning Services, Azure Databricks, SQL Server Machine Learning Services, Advanced Modern Excel, SSIS, SSAS Tabular. He is a data analytics enthusiast that has spoken at a variety of database and data science conferences about various topics dealing with data analytics.
LinkedIn: http://linkedin.com/in/tradney
Contact: http://www.timradney.com
Tim is a Data Platform MVP and has a whole collection of Microsoft and other industry certifications. His experience includes HA/DR, virtualization, SSIS, SSRS, and performance tuning, among everything else SQL Server-related. Tim is very active and passionate in the SQL Community. He runs the Columbus GA SQL Users Group, has been a PASS Regional Mentor for a number of years, was named a PASS Outstanding Volunteer in 2012, and is a frequent speaker at user groups, SQL Saturdays and PASS Summits. Tim is one of the top ranked in karma on ask.sqlservercentral.com, answers questions as @tradney on Twitter, and blogs at http://timradney.com and SQLskills blog at http://www.SQLskills.com/blogs/tim.
Contact: http://www.sqlgene.com
Eugene Meidinger works as a BI consultant and full time Pluralsight author. He currently focuses on content on Power BI and related products. He also leads the Pittsburgh Power BI User Group. He is certified in querying and administering SQL Server.
LinkedIn: https://www.linkedin.com/pub/kevin-feasel/7/716/504
Contact: http://www.catallaxyservices.com
Kevin Feasel is a Microsoft Data Platform MVP and CTO at Envizage, where he specializes in data analytics with T-SQL and R, forcing Spark clusters to do his bidding, fighting with Kafka, and pulling rabbits out of hats on demand. He is the lead contributor to Curated SQL (https://curatedsql.com), president of the Triangle Area SQL Server Users Group (https://www.meetup.com/tripass), and author of PolyBase Revealed (https://www.apress.com/us/book/9781484254608). A resident of Durham, North Carolina, he can be found cycling the trails along the triangle whenever the weather's nice enough.
LinkedIn: https://www.linkedin.com/in/dave-bland-sql-server
Contact: https://www.davebland.com
Over 20 years of SQL Server experience that includes being a DBA, BI development and Application development using VB.NET. Dave currently is the Manager of the DBA team at Stericycle. Dave is a Friend of Red-Gate for 2019. He is a frequent presenter at SQL Saturday events and user groups around the country. Has been teaching SQL Server since version 2000 and is the SQL Server instructor at Harper College in Palatine, IL. Current certifications include: • Microsoft Certified Trainer • MCTS: SQL Server 2008, Implementation and Maintenance • MCTS: SQL Server 2008, BI Development and Maintenance • MCSA: SQL Server 2008 • MCSA: SQL Server 2016 • MCSE: SQL Server 2016 - BI • MCDBA: SQL Server 2000 • MCSD • MCSE: Data Management and Analytics
LinkedIn: https://www.linkedin.com/in/cassandrafaris
Cassandra Faris is passionate about the human side of technology. Her career has focused on supporting tech professionals through community outreach, hiring, mentoring, and employee engagement. She is an international speaker who specializes in teaching people how to be more effective team members and advance their careers. She is also the President of the Microsoft and open source conference, DogFoodCon, and a Per Scholas Advisory Board member. She has an MBA in Organizational Leadership. When she's not busy with the tech community, she is avid tabletop gamer, runner, and soccer fan who travels as much as possible.
LinkedIn: http://www.linkedin.com/in/kathikellenberger
Contact: http://auntkathisql.com
Kathi Kellenberger is the editor of Simple Talk at Redgate and a Data Platform MVP. She has worked with SQL Server for over 20 years and has authored, co-authored, or tech edited over a dozen technical books. Kathi is the co-leader of the PASS Women in Technology Virtual Group and a volunteer at LaunchCode. When Kathi isn’t working, she enjoys spending time with family and friends, cycling, singing, and climbing the stairs of tall buildings. Be sure to check out her courses on Pluralsight.
LinkedIn: https://www.linkedin.com/in/sourav-mukherjee-46b0a015/
Sourav Mukherjee is a Senior Database Administrator based out of Chicago. He has more than 12 years of experience working with SQL Server Platform. His work focus in Microsoft SQL Server started with SQL Server 2000. Being a Consultant worked with different Chicago based client projects. He has helped many companies in designing and maintaining their high availability solutions and providing query performance tuning to improve the overall SQL Server performance. He holds a bachelor's degree in Computer Science, Master's Degree in Project Management. He is an MCT (Microsoft Certified Trainer) and TOGAF, PMP and ITIL Certified. He writes articles and blogs in LinkedIn and other social media sites.
LinkedIn: https://www.linkedin.com/in/kellynpotvin
Contact: http://dbakevlar.com
Kellyn Pot’Vin-Gorman is a member of the Oak Table Network and an Idera ACE and Oracle ACE Director alumnus. She is a Data Platform Architect in Power BI with AI in the EdTech group at Microsoft. Kellyn is known for her extensive work with multi-database platforms, DevOps, cloud migrations, virtualization, visualizations, scripting, environment optimization tuning, automation, and architecture design. Kellyn has spoken at numerous technical conferences for Oracle, Big Data, DevOps, testing, and SQL Server. Her blog (http://dbakevlar.com) and social media activity under her handle, DBAKevlar, is well respected for her insight and content.
LinkedIn: https://www.linkedin.com/in/brittongray/
Britton Gray is a veteran of database development, data management, business intelligence, analytics, and data privacy in BI. He has successfully completed projects in a variety of technologies in different technology stacks. Coming from a family full of teachers, he thoroughly enjoys the opportunity to share knowledge and insights; it's an extension of "getting the right information to the right people at the right time" mantra of BI. He lives near Indianapolis, Indiana, and is the Director of BI for Project Lead The Way, a nonprofit organization providing transformative learning experiences in computer science, engineering, and biomedical sciences.
LinkedIn: https://www.linkedin.com/in/ginger-grant-3a177b157/
Contact: http://www.DesertIsleSQL.com
Ginger Grant manages the consultancy Desert Isle Group and shares what she has learned while working with data technology to people around the world. As a Microsoft MVP in Data Platform, Microsoft Certified Trainer and an instructor on DataCamp, she focuses on guiding clients to create solutions using the entire Microsoft Data Stack, which includes SQL Server, Power BI, and Azure Data Cloud components. When not working, she protypes the latest pre-release data technologies, maintains her blog http://www.desertislesql.com, and spends time on twitter @desertislesql.
LinkedIn: http://www.linkedin.com/in/JohnDeardurff
Contact: https://www.sqlmct.com
John has been a Microsoft Certified Trainer (MCT) for over 20 years teaching Azure, SQL Server, Exchange Server, and Windows Server networking courses. He is currently a SQL Premier Field Engineer for Microsoft. He is an MCT Regional Lead for the Eastern United States and a former Data Platform MVP.
LinkedIn: https://www.linkedin.com/in/davidmmaxwell
Contact: https://dmmaxwell.wordpress.com/
David Maxwell has almost 20 years of experience with SQL Server, with a keen interest in performance tuning, monitoring, and troubleshooting. He has experience in environments as diverse as health care institutions, auto manufacturers, and insurance companies. David has been a frequent presenter at SQLSaturday events around the United States since 2012, as well as a presenter for the DBA Fundamentals Virtual Group, the Performance Virtual Group, 24 Hours of PASS, and the annual PASS Summit. David participates in his local Columbus Ohio PASS Local Group, where he serves on the board of directors as SQLSaturday coordinator.
Brian Carrig is a Microsoft Certified Master of SQL Server and is currently a Senior Program Manager on the SQL Server Tiger Team at Microsoft focusing primarily on persistent memory technology and replication. In a previous life, Brian spent some time as an academic and holds a PhD in Computer Science. He is a native of Dublin, Ireland but now lives with his wife and two daughters in Redmond, Washington. If he is not talking about, thinking about or working with technology you will usually find him watching Chelsea FC.
LinkedIn: https://www.linkedin.com/in/mrgbryant
George has over a decade of experience in the Business Intelligence industry and is an active member of the BI community across the Midwest. His knowledge spans multiple industries including, retail, manufacturing, finance, and medical, however recent years has seen him focus on the analytics in sports. George specializes in BI architecture and end to end development in order to deliver advanced analytics and metrics to multiple organizations across the country. In recent years George has focused on and worked primarily in the Azure cloud, utilizing both established and recent offerings.
Contact: http://mygareth.com
Gareth Swanepoel is a sysadmin-turned-SQL Server DBA. He has been working in the IT industry doing support and administration for over 25 years. He enjoys solving the complex problems that customers encounter when performance tuning SQL Server or when deploying SQL Server in large data warehouse environments. He is originally from South Africa and is currently a Dedicated Support Engineer (PFE) with Microsoft. He is a passionate member of the SQL Server community and is an accomplished author and speaker having presented at various user groups, SQL Saturdays, the PASS Summit and other technical conferences.
LinkedIn: https://www.linkedin.com/in/bertwagner/
Contact: https://bertwagner.com
Bert Wagner teaches data-focused developers how to use SQL Server efficiently every week on his YouTube channel “SQL with Bert.” When not filming episodes, he gains inspiration for his content through his work as a Principal Business Intelligence Developer for Progressive Insurance in Cleveland, OH. Starting his career as an SSIS and SSRS developer, Bert fell in love with SQL Server query writing and performance tuning. Nowadays, he focuses on full stack web development and uses his database tuning skills to ensure that his applications run at peak performance.
LinkedIn: https://www.linkedin.com/in/elizabeth-a-noble
Elizabeth Noble is a Director of Database Development in the metro Atlanta area. When she was introduced to her first database over 10 years ago, it was love at first sight. Her passion is to help others improve the quality and speed of deploying database changes through automation. When she is not trying to automate all of the things, she can be found spending time with her dogs, playing disc golf, or taking a walk at the gym.
Contact: http://geocache11blog.wordpress.com
Evelyn Maxwell is a 10th grade student at Gahanna Lincoln Highschool, and an attendee and presenter at local SQL Saturdays. Since 4th grade, (age 10) Evelyn has been working with presentation software and has given multiple school presentations was well as three SQL Saturday presentation, and a webinar for WIT. She currently has 0 years of IT experience.
LinkedIn: https://www.linkedin.com/in/rob-volk-134ba81
Contact: http://weblogs.sqlteam.com/robv/
Rob Volk is a SQL Server DBA in the Metro Atlanta area since 2001. He also moderates and answers the forums on SQLTeam.com. While an old-time cranky DBA, he no longer considers quot;business intelligencequot; an oxymoron or quot;the cloudquot; as merely atmospheric moisture, and is delightedly dipping his toes into both of these new oceans, and loves to do things in new and and unusual ways.
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/in/akhilmahajan/
Managing consultant for Cardinal Solutions. Work with SQL Server and Azure.
LinkedIn: https://www.linkedin.com/in/paul-popovich-jr-2a03b692?trk=hp-identity-name
Contact: https://pmpjr.wordpress.com/
Paul Popovich Jr. has been in the IT space for his whole career and tinkering with computers since his 486 PC back in the mid 1990s. Professionally he is a senior DBA for a large hospital system. You can find on twitter @pmpjr, email at<EMAIL_ADDRESS>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.
Contact: http://wendyverse.blogspot.com
Wendy Pastrick is from Chicago, IL, and for the past 15 years has served as a Database Administrator supporting both development and production environments. Her many years of involvement with PASS include WIT Virtual Chapter and the Chicago Suburban User Group, serving as Regional Mentor, and as a PASS Board member since 2013. Wendy has organized several highly successful SQLSaturday events in Chicago.
LinkedIn: http://www.linkedin.com/in/aherold
Contact: http://www.sqlkitten.com/
Amy Herold is currently a Premier Field Engineer with Microsoft, specializing in APS. Prior to this, she was a Sr. Database Administrator, focusing on PowerShell and automation. She is also currently the Director of Programs for the North Texas SQL Server User Group (NTSSUG). She frequently speaks at SQL Saturday and user group events across the United States and has also participated in numerous Women in Technology sessions as a panelist. Amy currently blogs at sqlkitten.com.
LinkedIn: https://www.linkedin.com/in/michaelfal/
Contact: http://mikefal.net
Mike is a specialist in data management technologies. As a community advocate, public speaker, and blogger, Mike is a practicing thought leader for data and automation. He is passionate about DevOps and data, building platforms to optimize, protect, and use data efficiently. Since 1999, Mike has been working in the database field, focusing primarily on SQL Server and specializes in automating data solutions to improve the reliability and efficiency of his environments. He has been caught playing trombone in public on more than one occasion.
LinkedIn: https://www.linkedin.com/in/davidmmaxwell
Contact: https://dmmaxwell.wordpress.com/
David Maxwell has almost 20 years of experience with SQL Server, with a keen interest in performance tuning, monitoring, and troubleshooting. He has experience in environments as diverse as health care institutions, auto manufacturers, and insurance companies. David has been a frequent presenter at SQLSaturday events around the United States since 2012, as well as a presenter for the DBA Fundamentals Virtual Group, the Performance Virtual Group, 24 Hours of PASS, and the annual PASS Summit. David participates in his local Columbus Ohio PASS Local Group, where he serves on the board of directors as SQLSaturday coordinator.
LinkedIn: https://www.linkedin.com/in/jpomfret/
Contact: http://jesspomfret.com
Jess Pomfret is a SQL Server DBA at Westfield Group in Westfield, Ohio. She started working with SQL Server in 2011 and currently works as part of a team administering over 100 instances ranging from 2005 to 2017. She enjoys the problem-solving aspects of performance tuning and automating processes with PowerShell. She also enjoys contributing to dbatools and dbachecks, two open source PowerShell modules that aid DBAs with automating the management of SQL Server instances. She grew up in the South West of England and outside of her DBA life enjoys Crossfit, cycling and watching proper football.
LinkedIn: https://www.linkedin.com/in/luisgonzalezlt/
I really don't know much of anything. I'm surprised anyone even shows up to listen to me.
LinkedIn: http://http://www.linkedin.com/profile/view?id=22766305amp;trk=tab_pro
Contact: http://skreebydba.com/
Frank Gill is a Senior Data Engineer at Concurrency With 21 years of IT experience, the first 8 as a mainframe programmer, he has developed a love of all things internal. Over the past several years, he has worked extensively with SQL Server solution in Azure, including Managed Instance. When not administering databases or geeking out on internals, Frank volunteers at the Art Institute of Chicago and reads voraciously.
LinkedIn: http://www.linkedin.com/in/amtwo
Contact: http://www.AM2.co
Andy is a Data Platform MVP and SQL Server DBA that has managed databases in the healthcare, finance, e-commerce, and non-profit sectors. He has been supporting high-volume, highly-available OLTP environments with demanding performance needs since 2003. Andy is the founder of the BostonSQL User Group, and previous co-organizer of SQL Saturday events in Boston. He blogs at am2.co. Andy lives just outside Boston, Massachusetts, USA with his husband and their two dogs.
The following is a list of sponsors that helped fund the event.


Dutch court orders Facebook to pull financial fraud adverts
A Dutch court has ordered Facebook to remove advertisements that misuse the likeness of a local celebrity to promote fraudulent Bitcoin-related investments.
AMSTERDAM: A Dutch court has ordered Facebook to remove advertisements that misuse the likeness of a local celebrity to promote fraudulent Bitcoin-related investments.
Dutch tycoon John de Mol sued Facebook after he said it had failed to respond to repeated requests to pull advertisements that misused his and other local celebrities' likeness and led to investors losing US$1.7 million euros.
His suit also demanded that company take measures to prevent the issue recurring, and that it hand over information to him on the scammers behind the advertisements.
The court ordered the company to pull the offending ads or face fines of up to 1.1 million euros (US$1.2 million).
"Facebook's arguments that it is just a neutral funnel for information and therefore cannot be obligated to act, is not acceptable," the court said in a summary judgment.
"The company plays too active a role with respect to advertisements, which form its primary business model to argue that," it said.
It noted the company sets a pricing policy for ads and also has policies that determine which advertisements are and aren't published on its properties.
Facebook, which argued in court it had already removed the offending ads, could not immediately be reached on Monday for comment.
(US$1 = 0.9074 euros)
(Reporting by Toby Sterling; Editing by Mark Potter)


Landing screens
Landing mockup
SHOW YOUR APP/PRODUCT
Easy to use block examples
This landing page slider uses many new features introduced in LayerSlider 6. Full size layout, text transitions, overflowing layers etc.


http://tunes.org/~water
<EMAIL_ADDRESS>(206) 938-3710
2700 Alki Ave. SW #303
Seattle, WA 98116
To broaden my experience as an industrial Smalltalk software developer.
Immediately.
$50 per hour USD, $65 per hour CAN.
Smalltalk (using Squeak, Dolphin, and VisualWorks, for web and desktop), ANSI C/C99, C++ (including the STL), C# Java, Objective-C, Perl, Pascal, PHP, Visual Basic 5.
bash, tcsh, csh, Windows Scripting Host.
Intel 80x86 family and Pentium series, IBM PowerPC family (603e and 750), Motorola 68k, Sparc.
(X)HTML, CSS, Javascript, PHP, XML, OWL/RDF, RSS, LaTeX.
Windows 3.1, 95, 98, NT, XP., Linux, FreeBSD, MacOS 8.0 - 9.1, MacOS X.
Intermediate levels of experience in:
I've developed projects implementing advanced research for intrusion-detection technologies, as well as reporting tools and network management interfaces.
I spent a year (summer 1997 - spring 1998) developing a very high performance 3-D graphics game engine for a proto-startup company, optimized for huge populations of data and intricate physics simulation detail.
I have developed over the years various frameworks for code-walking and optimization, for object-oriented and logical languages.
I worked for several engineering firms in the early 90's, developing software in CAD development environments, and produced walk-through setups, engineering aids, and custom tooling software.
Refactoring, Design Pattern usage, UML for design and documentation, Unit-test-driven development.
Testing has been an integral part of my work for over 6 years, developing test harnesses for my frameworks using unit tests (SUnit, JUnit, etc.), regression tests, testing for load-tolerance, performance (using profiling across a range of conditions), and requirements compliance.
I delivered papers/slides and live demonstrations to two conferences in 2002, Camp Smalltalk at OOPSLA and the International Lisp Conference, detailing some of the steps toward this end. I also presented further results at the Smalltalk Solutions conference in July, 2003. All were well-received.
5/2002 - Present, LOGOS Research and Development
Design, development, and testing of "Clean Slate" Smalltalk: a new programming language and software architecture intended to demonstrate and bring up to date many technologies from various systems into one coherent whole.
2/2001 - Present, ForeHorseNet, Inc.
Worked with the company founders to develop a coherent technical strategy for the product, by evaluating customer requirements, marketing issues, and suitable technologies and budgeting requirements.
Developed PHP and JSP web applications, automated handling of XML meta-data, Java applets, designed the schema and developed it for a robust set of services over PostGreSQL and MySQL.
12/2002 - 1/2003, Ibis Information Securities
Consulted in the development of innovative wireless technologies and the software required to manage them. Also consulted in the field of online data-mining in the systems security field. I designed and developed an innovative product using dynamic language technologies.
3/1996 - 3/2002, U.S. Navy
Nuclear/electrical and electronics troubleshooting and repair, supervision and training, database applications programmer and administrator for the coordination of hundreds of work activities and information management. Managed a working group for equipment maintenance for over 2 years. Managed a system for equipment Quality Assurance, vibration monitoring, and software management for 2 years.
I developed from scratch a team of database-backed client-server applications for the coordination and scheduling of work-flow activities and their dependencies for the nuclear and engineering sections of a nuclear aircraft carrier as well as its associated shipyard activity. This involved software requirements outlining, meetings with several entities along with study of the existing systems in effect, design, deployment, and user testing and feedback, and database and systems management. It was primarily developed in VB 5 and some C++, although a prototype improved version was developed in Dolphin Smalltalk, but was not accepted due to the existing contract situation.
The primary application involved reporting of equipment deficiencies, prioritization and approval, logging of completion of the stages of work, and scheduling of repairs and requisitions. It also included an extensive reporting facility to highlight performance of various departments as well as outstanding issues in work-flow management. The system also worked with the various levels of authorization and permissions and maintained a security protocol based on the actual organization of personnel.
Self-education in computer science and logic. A selection of it is published online.
6/1996 - 1/1998, Naval Nuclear Power School, US-FL-Orlando
Completed the U.S. Navy's Nuclear Operator and Technician training program, involving physics, mathematics, and engineering examinations as well as applying the theory to operate a live power station.
5/1995 - 3/1996, Texas A&M University, US-TX-College Station
Completed two years of course work in engineering and mathematics, along with much independent study in computer science and mathematics, logic and philosophy. Left due to financial issues at the time.
Jobs: engineering computing lab assistant, maths/CS tutor, freelance software and systems troubleshooter for engineering firms and accounting offices.
| Name | Company | Title | Contact |
|---|---|---|---|
| Glenn Messner | ForeHorseNet, Inc. | CEO |<PHONE_NUMBER><EMAIL_ADDRESS>|
| Aaron Hoffer | Washington Mutual | Smalltalk Software Engineer |<PHONE_NUMBER><EMAIL_ADDRESS>|
| Elric Scott | Dierking-Scott Enterprises | Network/Systems Security Consultant |<PHONE_NUMBER><EMAIL_ADDRESS>|
| Matthew Harmon | Ibis | Owner |<PHONE_NUMBER><EMAIL_ADDRESS>|