To allow integration with other applications and automated workflows Working Copy can be opened with special URL schemes and controlled with x-callback-url. Commands that change data or read content out of Working Copy is protected by a secret key.
You can open Working Copy and make it go to a specific screen with a URL:
working-copy://open?repo=my%20project&path=README.md&mode=content working-copy://open?repo=my%20project&commit=23f387&mode=status working-copy://open?repo=https%3A%2F%2Fgithub.com%2Flibgit2%2Flibgit2&branch=develop working-copy://open?repo=my%20project&path=README.md&mode=preview
Here repo is either the name of a repository as seen in the list of repositories or the full remote URL. If you specify a path, Working Copy will show the given directory or file and if you specify a commit hash (or prefix) you are shown the given commit. You can specify one of path, commit or branch but not more than one.
You can control what to show such that mode=content shows file content tab or directory contents for directories and repository; mode=changes shows the Changes-tab and is only valid for files, mode=status shows the Status-tab for files or Status screen for directories and repositories while mode=preview shows the Content-tab in preview mode for files supporting this. You can omit the mode parameter to leave mode unchanged.
Jump to specific lines in the text file opened with the line=123 parameter and show messages with either error=red%20%text or message=blue%20text to inform the user of something related to the file. If you include line= but no path= the app uses the path of current file. This can be used with shortcuts activated through the share sheet that validate the current file.
Make sure all parameters are URL-coded and that space is percent- rather than plus-encoded.
You can ask Working Copy to open the clone-dialog with a specific URL awaiting the users confirmation:
working-copy://clone?remote=https%3A%2F%2Fgithub.com%2Fgit%2Fgit.git
If you need to make a link that shows a given remote repository inside Working Copy, without knowing whether the user has a existing clone, use the show command that will open the repository if one exists with that remote and otherwise initiate cloning.
working-copy://show?remote=https%3A%2F%2Fgithub.com%2Fgit%2Fgit.git
The app supports using log files in the context of the repository contents and it can be useful to import and show these with a URL:
working-copy://import-log?lines=first%20line%0Asecond%20line
The lines parameter is mandatory and you can use repo to specify either a repository name or remote url the log refers to, timestamp to indicate the time the log was recorded as unix time and kind to one of import, bitrise, circleci, jenkins, buddy, fetch, push, pull, clone where kind=import is the default.
To support workflows and automation, Working Copy has rich support for x-callback-url commands.
Because the commands allow reading and writing your sourcecode, they are protected by a key parameter which must match a random alphanumeric code created when you first launch Working Copy on a new device. You can edit this key inside settings to get the same code for all your devices making it easier to reuse scripts, but you should make sure never to use a key value you found in some public script, as this would be equivalent to sharing a password with everyone else.
The following commands are supported, where a 🔒 indicates that the push feature must be unlocked for that command to be available.
URLs for x-callback-url must have the form:
working-copy://x-callback-url/<command>/?x-success=<escaped-url>&repo=...&key=...
If you include a x-error parameter it will be used to deliver errors, otherwise errors are shown inside Working Copy. Including x-success is also possible.
To avoid very long examples the key parameter will not be included in every example here, but it IS required for every x-callback-url command. In order to foil brute-force attempts at guessing the key, Working Copy will show errors related to key inside the app, but will not be calling x-error.
Most commands requires the repo parameter that specifies which repository the command is about. This can either be the name of the repository as seen in the list of repositories in the outermost view of the app or the full remote url of the repository. Remember to url-encode repo just like all other parameters. Space needs to be percent- rather than plus-encoded. If you specify repo=$current the repository shown inside the app will be used.
Many commands require the path parameter which specifies the file or directory the command will act on. Paths are specified relative to the root of the repository where a empty path is the root directory and this the entire repository. Some commands will ask the user to pick a file or directory if no path is specified and others will just use the root directory as its default. The details are documented in the section for each command. You can use path=$current to specify the currently shown path of a file or directory where the empty string will be substituted if you are not looking at any path.
Write to existing or new files with the write command. If you include a text parameter this will be the content written to the file at the given path. The text parameter is transferred as UTF-8 but will be written in the encoding of the existing file or UTF-8 for new files.
working-copy://x-callback-url/write/?key=123ABC&repo=my%20repo&path=README.md&text=hello%20there
If you need to write images or other binary files you can transfer the content as base-64 by using the parameter base64= instead of text=. You need to URL-encode after base-64 encoding since the characters + and / occur after base-64 coding. This can also be handy if you want to overwrite the encoding of a existing file.
If you do not include either a text or base64 parameter the clipboard content is written or you can include clipboard=1 as a more direct way to write from the clipboard.
If no path parameter is specified the user will be asked to pick a file and if no repo is specified either the user will start out by picking a repository. In these situations you can suggest a filename with the filename parameter and uti to indicate the Uniform Type Identifier such that the user can be warned before saving into a file where the name suggests a different type of data. If no uti is specified the default is either "public.plain-text" or "public.item" depending on whether content is specified with text or base64.
working-copy://x-callback-url/write/?text=hello%20there&filename=test.txt&uti=public.text
Working Copy supports exporting files with a filename with special information such that it can be identified as a specific file in a certain repository even though the original filename is used multiple times. To get this behaviour in x-callback-url use the write command with a path but no repo parameter. The path must be recognized for this to work or you will get a error that the file is not known.
You can include askcommit=1 to be asked to commit and push the file after saving.
You control how and when to write to the file with the mode parameter. The default mode=safe will create new files or overwrite non-modified files but refuse to write to files with uncommitted changes. When the user pick the file to write to you are allowed to overwrite files with uncommitted changes and you can force this behaviour with mode=overwrite. To combine new and old input you use mode=append or mode=prepend.
You can get the contents of text files with the read command and result will be URL-encoded and appended to the x-success callback.
working-copy://x-callback-url/read/?repo=my%20repo&path=file&x-success=app%3A%2F%2Fx-callback-url%2Fread%3Ftext%3D
will make Working Copy open a url on the form:
app://x-callback-url/read?text=hello%20there
You need to url encode x-success and to support different apps that want to receive text differently and might not follow the x-callback-url conventions you should include the parameter name and then = at the end of x-success. Working Copy tries to be smart about appending the file content as &text=... if it detects a x-callback-url that would become malformed, but your best bet is to format x-success manually.
If you are reading a binary file the result will be transferred as base-64 and if Working Copy appends the parameter name it will be &base64=... but to ensure the file content is returned in base64 coding you include the input parameter type=base64.
working-copy://x-callback-url/read/?x-success=...&repo=my%20repo&path=README.md&base64=1
If no path parameter is specified the user will be asked to pick a file and if no repo is specified either the user will start out by picking a repository. You can use uti to specifify the kind of files you want. The user will be warned when picking a file that does not match the given Uniform Type Identifier. The default value for uti is "public.plain-text" but this is changed to "public.item" if base64 indicates that you accept binary results.
If you are asking the user to pick a file that will be used for a number of commands type=url can be used to get a universal url that can be passed to other x-callback-url commands.
Include clipboard=1 to put the content of the file on the clipboard.
To move or rename files within a repository you use the move command. Both the source and destination filenames are relative to the root of the repository.
working-copy://x-callback-url/move/?repo=my%20repo&source=from.txt&destination=to.txt
If you need to read multiple files you can use the zip command that will return a base64-coded zip-archive of all the files in the directory specified by path. If you do not specify any path the entire repository is archived and if path points to a single file, you will get a zip containing just this file.
When you zip up entire repositories, the .git directory is not included unless .git=1 is passed along.
working-copy://x-callback-url/zip/?x-success=my-app://x-callback-url/read?path=/&repo=my%20repo
The commit command can be used on single files, directories or the entire repository. You use the path parameter to specify the files to take into account, where a missing or empty parameter means the entire repository is checked for modified files to commit.
To avoid accidentally committing unexpected changes the limit parameter is checked and if there are more changed files covered by path than allowed by limit the commit fails. The default is limit=1 but you can set it to large values if you intentionally want to commit all changed files.
You can supply a message parameter for the commit message and formatting/wrapping this message in accordance with best practices is your responsibility.
If no message is supplied a dialog is shown to commit the given files. Since this requires user interaction it's allowed without the callback key.
working-copy://x-callback-url/commit/?repo=my%20repo&path=&limit=999&message=fix
If you need to determine the status of the repository, the files that are modified or even all the files it contains, you can use the status command. It takes a path parameter and has the same default value and interpretation as for the commit command. Normally you will only get the status for files that have changed since the last commit, but this behaviour can be changed by adding the parameter unchanged=1.
If path points to a directory you will get the status for all files in the directory and for sub-directories as well. To limit this, you can specify a maximum depth, where depth=1 will include the contents of the immediate sub-directories of path but no deeper.
working-copy://x-callback-url/status/?repo=my%20repo&unchanged=1
[{"name": "README.md", "path": "README.md", "status": "modified", "kind": "Markdown", "size": 355}, {"name": "src", "path": "src", "status": "unchanged", "kind": "directory"}, {"name": "main.c", "path": "src/main.c", "status": "unchanged", "kind": "C source", "size": 4510} …… ]
The results are delivered as JSON and note the difference between path which is relative to the root of the repository and name that is just the filename.
Use the push command to send commits back to the origin remote. If you need to authenticate, the push command will wait until you have entered your credentials.
working-copy://x-callback-url/push/?repo=my%20repo
You can push to other remotes than origin by using the remote parameter.
working-copy://x-callback-url/push/?repo=my%20repo&remote=heroku
You can push all repositories remotes by using wildcards on the form repo=* where the asterix matches one or more characters, but these wildcards are only resolved against name, not remote URLs. As with other special characters * needs to be URL-encoded as %2A.
working-copy://x-callback-url/push/?repo=%2A
The pull command fetches and merges changes from your origin remote. If you need to authenticate, the pull command will wait until you have entered your credentials. Any merge conflicts will count as a error.
working-copy://x-callback-url/pull/?repo=my%20repo
Just like the push command you can use the remote parameter to pull from non-origin remotes and repo parameter can contain wildcards.
The fetch command fetches from your origin remote and if you need to authenticate, the command will wait until you have entered your credentials.
working-copy://x-callback-url/fetch/?repo=my%20repo
Just like the pull command you can use the remote parameter to fetch from non-origin remotes and repo parameter can contain wildcards.
Default behaviour is to switch to a existing branch which requires that there are no current modifications. You can specify branch=$current to checkout the branch currently being shown in the app, which is not the same thing as the current branch for the repository, which there is no need to checkout. To create a new branch during checkout use mode=create or mode=ensure to only create the branch when missing.
working-copy://x-callback-url/checkout?repo=my%20repo&branch=develop
Delete a branch if all commits are available in other branches. Set mode to force, refuse or the default prompt to control behaviour when commits would be lost.
working-copy://x-callback-url/delete?repo=my%20repo&branch=develop&mode=refuse
Use this command to merge branches programmatically.
working-copy://x-callback-url/merge?repo=my%20repo&branch=develop
The branch parameter names the branch that will be merged on the current branch, but to merge the remote counterpart of the current branch you leave the branch parameter missing or empty. You can specify a particular remote for the branch with the remote parameter using either a remote name or URL. This remote will be fetched before merge to make sure the remote branch is up-to-date and if you specify create=1 the remote will even be created if missing.
If there are any conflicts the user will be asked to fix these interactively followed up by a commit to finish the merge. You can disable this with the parameter resolve=0 and merge conflicts will count as error.
Use the webdav command to start or stop the internal WebDAV server. The cmd parameter can be either start or stop where the default is cmd=start.
working-copy://x-callback-url/webdav/?cmd=start
Use the repos command to get information about name, status, current branch and remotes for all repositories inside Working Copy in JSON format.
working-copy://x-callback-url/repos
[{"name":"welcome to working copy", "branch":"master", "head":"d39002a…", "status":"tap to learn more", "remotes":[]}, {"name":"libgit2", "branch":"master", "head":"e70d822…", "status":"nothing to commit", "remotes": [{"name":"origin", "fetch":1,"push":1,"url":"https:\/\/github.com\/libgit2\/libgit2.git"}]} ]
It can get a little complicated to work with this JSON, but Workflow users can try this small workflow that asks the user to pick one of the available repositories and could be used as a component for something bigger. You will need to insert your URL key in the first action.
You can read a list of commits with the log command. You need to specify a repo and will get the newest 10 commits in JSON format, unless limit parameter overrides this. To only get commits relevant for particular files or diretories, use the path parameter or use branch to only get commits for that particular branch.
working-copy://x-callback-url/log?repo=my%20repo
[{"summary":"fix README.md spelling","id":"af6a47f8a831d17513ec13357d11cf3cab222b19", "author":"Anders Borum<EMAIL_ADDRESS>"timestamp":"2017-01-08T15:06:20.000Z", "description":"","parent":["133ca4376290313d0359f8ed97a93125a4e2f297"]}, {"summary":"import image assets","id":"47040b679c5bfd8c99f1d0df7b04c5a9af157adc", "author":"Anders Borum<EMAIL_ADDRESS>"timestamp":"2017-01-08T15:05:07.000Z", "description":"longer description", "parent":["7f03af16e1bbe820ae48d25a27143c5765007930"]} ]
Use the branches command to enquire about all local and remote branches in a repository.
working-copy://x-callback-url/branches?repo=my%20repo
[{"name":"master", "head":"af6a47f8a831d17513ec13357d11cf3cab222b19", "latest":"2017-01-08T15:06:20.000Z"}, {"name":"origin/master", "head":"af6a47f8a831d17513ec13357d11cf3cab222b19", "latest":"2017-01-08T15:06:20.000Z"}, ...]
Use the init command to create a new repository without any files or remotes, where name parameter must not be used by any other repository.
working-copy://x-callback-url/init/?name=new%20repository
Use the clone command clone repository with remote parameter. Result of callback will be the name of the repository inside Working Copy.
working-copy://x-callback-url/clone/?remote=https%3A%2F%2Fgithub.com%2Flibgit2%2Flibgit2
Use this command to automate the SSH Command feature. Remember that this will upload your local repository before running the cmd and download files that change while the command is running. If you just want to run a command on a remote server there are perhaps other apps better suited for this.
working-copy://x-callback-url/ssh-command/?server=remote.server.net&cmd=run%20tests
You can specify source=subdir and remote=dir to specify the local and remote directories to keep upload to and download from. The default for source is the repository root and the default for remote is the remote home directory.
 You would need to start with the last command and work your way to the first building a larger and larger x-success chain.
To achieve the same result, use the chain command.
working-copy://x-callback-url/chain?repo=my%20repo&command=commit&message=fix&command=push working-copy://x-callback-url/chain?repo=%2A&command=pull&command=push
You use the command parameter once for each command. The parameters before the first command parameter is shared by all commands, and parameters meant for a single command is specified after the command it applies to but before the next one. Often parameters key, repo and x-error are shared.
You can specify x-success as a shared parameter, but it will only be used for the last command since the earlier commands are bound by the command chain.
Inside Working Copy you can create Universal Links that describe repositories or files, branches or commits inside repositories with the Share Sheet.
https://workingcopyapp.com/git/#repo=https://github.com/twbs/bootstrap&path=README.md
Their primary purpose is to make it easy to jump to specific content in Working Copy, but they also serve a purpose as x-callback-url parameters. You can include a Universal Link in the url parameter and all the inner parameters will be extracted and used making the following two commands equivalent:
working-copy://x-callback-url/read?url=https%3A%2F%2Fworkingcopyapp.com%2Fgit%2F%23repo%3Dhttps%3A%2F%2Fgithub.com%2Ftwbs%2Fbootstrap%26path%3DREADME.md working-copy://x-callback-url/read?repo=https://github.com/twbs/bootstrap&path=README.md
This is useful when you start a Workflow from within Working Copy, as you can specify the file, directory or repository to act on and send this along as a single parameter.
Use x-callback-url/read with type=url to get back the universal url of a file picked by the user.
If you are using Drafts by Agile Tortoise, there are some tricks that make it much easier to make URL templates. First line in a draft can be referenced as [[title]] and the remainder as [[body]].
Often you want to send a draft into Working Copy. You need to use the write command, specifying filename (path), repository (repo), access key (key), content (text) and perhaps you want to jump back to Drafts when done (x-success={{drafts://}}).
Imagine that you need to create a new Jekyll post from a draft. The date determines the filename and the content is a combination of YAML front matter and content. Note how %0a is encoded manually to have newline in the front matter.
For more complicated actions it is probably a good idea to use javascript to compose the URL with the Script action step using the clipboard as temporary storage.
working-copy://x-callback-url/write/?repo={{jekyll-site}}&path={{posts/}}[[date]].md&text=---%0a{{layout: post}}%0a{{title: }}[[title]]%0a---%0a[[body]]&key={{12345678}}
URL callbacks can get pretty complicated when you want to send the result of one callback along to another URL callback.
To create a new text file in Textastic with the filename "two words.txt" you would use the following URL:
textastic://x-callback-url/new?name=two%20words.txt&text=hello%20there
If you wanted to create this file with content from the file README.md in the repository my repo
you would need to URL escape the callback to Textastic which gives rise to double-encoding of parameters passed
along.
space → %20 → %2520
working-copy://x-callback-url/read/?repo=my%20repo&path=README.md&x-success=textastic%3A%2F%2Fx-callback-url%2Fnew%3Fname%3Dtwo%2520words.txt%26text%3D
You could also start a new email with the contents of this file, by making x-success use the mailto: scheme with something like
working-copy://x-callback-url/read/?repo=my%20repo&path=README.md&x-success=mailto%3A%3Fbody%3D
If you need to debug your callbacks, setting x-success=mailto%3A%3Fbody%3D can be very helpful.


Dummy page
Pressing the "Send Page Impression Event" button will simulate page impressions. Those will drive a challenge counter going from 0 to 20.
Every 4-6 page impressions an image will overlay the content. Users need to click that image to collect it. This will trigger another challenge storing the number of images found. Images found will be highlighted above, others to be found will be shown transparent.


Run PHP under FastCGI
By default, XAMPP runs PHP as an Apache handler. An alternative approach is to run PHP under FastCGI, which can produce better performance in certain scenarios. To do this, follow these steps:
-
Download a binary version of the mod_fcgid Apache module from the ApacheLounge website. This module is included in the modules-2.4.x-win32-VC11.zip archive.
XAMPP for Windows only uses 32-bit Apache builds. -
Extract the mod_fcgid.so file from the downloaded archive file and copy it to the apache\modules\ subdirectory of your XAMPP installation directory (usually, C:\xampp).
-
Edit the httpd-xampp.conf file in the apache\conf\extra\ subdirectory of your XAMPP installation directory. Within this file, make the following changes:
-
Search for the line
LoadModule php5_module "/xampp/php/php5apache2_4.dll"
and modify it to read
LoadModule fcgid_module modules/mod_fcgid.so
-
Find and delete the following lines:
<FilesMatch "\.php$"> SetHandler application/x-httpd-php </FilesMatch> <FilesMatch "\.phps$"> SetHandler application/x-httpd-php-source </FilesMatch>
-
Add the following lines:
FcgidInitialEnv PHPRC "c:/xampp/php" AddHandler fcgid-script .php FcgidWrapper "c:/xampp/php/php-cgi.exe" .php
Remember to adjust the file and directory paths above to reflect valid paths on your system.
-
-
Restart your Apache server through the XAMPP control panel for your changes to take effect.
PHP should now be active using FastCGI. To verify this, browse to the URL http://localhost/xampp/phpinfo.php, which displays the output of the phpinfo() command, and check the "Server API" value near the top of the page.


import tensorflow as tf
def __num_elems(shape):
'''Returns the number of elements in the given shape
Args:
shape: TensorShape
Return:
tot_elems: int
'''
tot_elems = 1
for s in shape:
tot_elems *= int(s)
return tot_elems
[docs]def graph_size(graph):
'''Returns the size of the given graph in bytes
The size of the graph is calculated by summing up the sizes of each
trainable variable. The sizes of variables are calculated by multiplying
the number of bytes in their dtype with their number of elements, captured
in their shape attribute
Args:
graph: TF graph
Return:
integer representing size of graph (in bytes)
'''
tot_size = 0
with graph.as_default():
vs = tf.trainable_variables()
for v in vs:
tot_elems = __num_elems(v.shape)
dtype_size = int(v.dtype.size)
var_size = tot_elems * dtype_size
tot_size += var_size
return tot_size


dc.graph
dc.graph
is a JavaScript library for interacting with graphs.
Drag and Drop Network Composition
Simple graph viewer
Draw a graph
Randomly build a graph
Brushing and filtering
Explore a large graph
Compare layouts
Match Game
Dynamic resizing
Arrow Designer


The Texas Chainsaw Massacre Is Being Rebooted - Again
by Berek BigosThe cult classic horror film, The Texas Chainsaw Massacre, will be making another modernized comeback with a newly announced reboot. This time around, the reboot will be helmed by Fede Alvarez (director of Evil Dead) and his new production company, Bad Hombre.
Originally reported by The Hollywood Reporter, the franchise's planned reboot was announced as part of Bad Hombre's partnership with Legendary Pictures. Aside from the writer Chris Thomas Devlin being attached to the film, neither company has announced any further details regarding the reboot.
"We are looking forward to sparking a new and meaningful relationship with a powerhouse like Legendary," Alvarez said in a statement.
Following its controversial release in 1974, Tobe Hooper's The Texas Chainsaw Massacre became a massive success that would leave behind a genre-defying legacy. Due to its widespread popularity, the original film received a handful of sequels, prequels and reboots.
Entries in the franchise include The Texas Chainsaw Massacre, The Texas Chainsaw Massacre 2, Leatherface: The Texas Chainsaw Massacre III, Texas Chainsaw Massacre: The Next Generation, The Texas Chainsaw Massacre (2003), The Texas Chainsaw Massacre: The Beginning, Texas Chainsaw 3D and Leatherface.
https://schema.orgBreadcrumbListListItem1Homehttps://www.cbr.com/ListItem2Movieshttps://www.cbr.com/category/movies/ListItem3Movie Newshttps://www.cbr.com/category/movies/news-movies/ListItem4The Texas Chainsaw Massacre Is Being Rebooted - Againhttps://www.cbr.com/texas-chainsaw-massacre-being-rebooted/


Just type youtube link
download mp4
download mp3
** The mp4 file will be downloaded to the video folder.
** The mp3 file will be downloaded to the music folder.
Download
reType
Loading...


Rubrics
Additional Information
Id
Associated Stimulus
Version
Type
Subject
Intended Grade
Date Exported
User


It all started when my sister died, its a day I can never forget. That night when my mother, father and I were sleeping, I heard voices coming from my sisters room. Being the curious child I was I went to investegate, when I got to my sister's door I heard her scream. When I opened it I will never forget what I saw, my sister dead on the floor drowning in her own blood.
That day I made it my lives purpose to solve any crime that comes my way, becoming a detective for the New York police deparment. My name is Lilith Johnson I will find my sister's killer and bring them to justice.
I just finished working on a case when I was called to the cheif's office, walking in the cheif immediately went straight to the point.
"Lilith I know this is suddenly especially when you just finished working on a case but, I need you help on this one"
"What case is it sir?" I asked
"You might be too familar with this but, you are the best detective we have"
The cheif passed the case file to me, upon reading it my eyes widened at its contents. The suspect had the same mo as my sister's killer, a clean cut in the neck.
"Was is a copycat?" I asked
"That was our first suggestion, but based on the crime scene there were too many similarities"
I sighed at the situation but, knowing that this was my only chance to catch him and advange my sister's death. And wasn't going to back away now, taking the chance I accepted the the case and began to work.
Going back to the crime scene I was able find somethings that didn't belong their as if it was from a diiferent crime scene. Going back to the department I looked through some other crime files that were similar to the case im working on.
Continuing to connect the dots my investegation lead me to a family friend and my best friend Max Callian. However, this visit wasn't that for a friendly matter.
While I was doing my investegation I found many things and one of them was my sister's necklace in other crime scene, where a co-worker of my sister's was also murdered the same way. And the both of them worked at the same place including the other victums.
Walking into my friends office, I was greeted by my black haired, blue eyed friend sitting in his office smiling at me. However, when he saw the look on my face the his smile on his faded instantly.
"What brings you here Lilith?"
"I think you know? Max, April 21st, 2009" I said getting to the point.
Max's eyes widened for a moment before becoming normal. Playing it off as if he doesn't know eveything.
"don't do this Max, I know everything. What I don't know is why?
Max sighed before standing up from his chair, with a defeated look on his face. As he expained his reasoning.
"I didn't want to kill her, not any of them. But I didn't have much of a choice."
"You always have a choice, Max. Now I've made mine" I stated, as police officers came into Max's office arresting him.
"You have no idea, who you're messing with Lilith."
I watched as the police officers took my friend away in cuffs. With the case closed I went back to my office at the police department, however, when I arrived I found an envelope on my desk. Opening it what I found shocked me.
It was a letter marked in red that said these words.


Configuring RethinkDB on Arch Linux, NoSQL
Install and Configure RethinkDB - Arch Linux
Difficulty: 2
Time: 15 minutes
RethinkDB belongs to NoSQL database. It is the first distributed document-oriented database. It is designed specifically to push data to applications in real-time. This provides a base for creating real time, scalable, database oriented web applications. It has a very simple API to interact with the databases. This article discusses on installing and configuring RethinkDB on Arch Linux droplet, named rethinkdb. You should setup a sudo user for each RethinkDB server.
Install RethinkDB Software
- Update repository:
sudo pacman -Sy
- Now install RethinkDB:
sudopacman -S rethinkdb
Install Python Client Driver
In this tutorial you will be using Python as the desired programming language. Since you have already installed RethinkDB on this droplet, now you need to install client driver for connecting to database from Python.
Python will already be installed on your droplet. You can use pip, Python Package Manager to install client driver for RethinkDB. It is a best practice to run Python applications in an isolated environment.
- Install the virtual environment
sudo pacman -S python2-virtualenv
sudo pacman -S python2-pip
mkdir rethink
cd rethink
- Create virtual environment structure as,
virtualenv2 venv
- Activate the environment
source venv/bin/activate
You can use deactivate to deactivate the current environment.
- Install RethinkDB driver using pip
pip install rethinkdb
This will install Python client drivers for RethinkDB
Start RethinkD
- You need to start RethinkDB to access it through web interface.
rethinkdb --bind all
- You can start using above command or you can make the necessary configuration changes and then start the service as shown below
sudo cp /etc/rethinkdb/default.conf.sample /etc/rethinkdb/instances.d/instance.conf
sudo vi /etc/rethinkdb/instances.d/instance.conf
Search for:
server-name= server
Change it to:
server-name=rethinkdb
- You need to setup the bind address. By default it is accessible only on localhost (<IP_ADDRESS>). You need to change this so that it is listens on all network interfaces:
Search for :
bind=<IP_ADDRESS>
Change it to:
bind=all
This will make it listening on all network interfaces.
- Save the configuration changes made and then start RethinkDB with new build configuration:
sudo systemctl enable rethinkdb@instance
sudo systemctl start rethinkdb@instance
sudo netstat -tulnp | grep rethinkdb
tcp6 0 0 :::28016 :::* LISTEN 2181/rethinkdb
tcp6 0 0 :::8080 :::* LISTEN 2181/rethinkdb
tcp6 0 0 :::29015 :::* LISTEN 2181/rethinkdb
- Once you complete the above steps you can access RethinkDB web interface as,
your_server_ip_address:8080
Using this Web interface you can manage creating database, tables and can configure RethinkDB cluster to manage table replication.
Interact with RethinkDB from Python
In most cases you will be managing databases from with the programming language. Below commands will help you perform the same.
- Activate the virtual environment for Python,
cd ~/rethink
source venv/bin/activate
- Start Python interpreter:
python
- Import the client driver into the environment:
import rethinkdb as r
- Connect with the local database
r.connect("localhost",28015).repl()
- Create database:
r.db_create("article").run()
- Create table posts:
r.db("article").table_create("posts").run()
- Insert values to table posts:
r.db("article").table("posts").insert({"hello":"world"}).run()
- To print the contents in table:
c = r.db("food").table("favorites")
for x in c:
print x
- You can use
.filter()
to filter out from the retrieve query.
Next Step
In this article, we reviewed the steps involved in installing and configuring RethinkDB in Arch Linux. For further exploration, you can visit 18530 - Set up a sharded RethinkDB Cluster - Arch Linux.


Company profile - Canadian Company Capabilities
Third-Party Information Liability Disclaimer
Some of the information on this Web page has been provided by external sources. The Government of Canada is not responsible for the accuracy, reliability or currency of the information supplied by external sources. Users wishing to rely upon this information should consult directly with the source of the information. Content provided by external sources is not subject to official languages, privacy and accessibility requirements.
Solutions in Context Inc
Legal Name:
Solutions in Context Inc
Operating Name:
Solutions in Context
Mailing Address:
P.O. Box 709TOTTENHAM, Ontario
L0G 1W0
Location Address:
6952 Second LineTOTTENHAM, Ontario
L0G 1W0
Tel.:<PHONE_NUMBER>
Fax:<PHONE_NUMBER>
Company Profile
Solutions in Context is a Management
and IM/IT Consulting company
specializing in e-Business Strategy, Implementation and Quality
Assurance. Our focus is enabling your business through
information technology and in particular the web. We help you
define the right business relationships and simply the
interaction with your clients, suppliers, staff, partners and
agents. Our role is to help you make the right choices about
what investments to make in information applications and
infrastructure, when to invest and with whom. We then provide
the project management support to ensure the solutions are
properly implemented and the appropriate returns on investment
are delivered.
The objective is to deliver the right solutions for your
business objectives, relationships, and obligations. We provide
Planning (including business case facilitation), Solution
Architecture, Project Management, Design, and Quality Assurance.
Our engagements typically address:
Planning the relationships (B2C - Business to Customer, B2B -
Business to Business, and B2E - Business to Employee);
Architecting the solution (the roles, responsibilities,
information flow, workflow, request/response model, and
business processes);
Engineering an appropriate set of releases; and then Ensuring
they achieve the expected business results (user value, time
frame and budget), and
Assurance to make sure they achieve the expected business
results (user value, time frame and budget).
We can help you leverage e-business and e-government strategy,
business models and technology. For example for website
planning, we will work with you to understand and decide why
you want and need a web site, (what does success look like),
who you want to use the web site (clients, staff, suppliers...),
how the participants should interact using the web and existing
contact points, when the website should be used, where the users
will use the website (e.g. staff over the counter, clients at
home after visiting the broker, broker in their office...), and
what the solution should do (e.g. Brochure, Product Catalogue,
Client Relationship Management, Online Sales...). Then we can
guide and/or manage the implementation.
Our experience is based on enterprise use of web technology as
part of the tool kit. The following summarizes
Web Sites and Portals -- We defined models for information
presentation and integration with Legacy environments
Package Selection and Integration -- We facilitate definition of
requirements and evaluation criteria, conduct the product
selection and guide the integration.
Web Migration -- We define implementation architecture and
staged migration plans for web enabling our client's business.
This includes web site evolution and legacy system integration
and migration.
Tools Experience -- We help clients decide on the technical
infrastructure and manage it's implementation. We provide a
hands-on understanding of the architecture, management and
business issues to be considered in choosing the environment.
We have an understanding of the marketplace and the products and
services available.
Integrated Business and IT Portfolio/Program/Project Management and Facilitation -- Our government lead is an Certified
Management Consultant, experienced project management professional (PMP), ITIL certified and is an experienced change
facilitator. We have conducted many projects designed to
understand/define requirements, recommend solution, achieve
consensus, and implement.
We help our clients make sure they get the results they need and
expect.
Full profile
Full profile
Contact information
Company description
Product / Service / Licensing
Procurement, Solution Architecture, Implementation and Quality
Assurance. Our focus is enabling business through information
technology. We can help you define the right business
relationships and simplify the interaction between your clients,
suppliers, staff, partners and agents. Our role is to help make
the right choices about what investments to make in information
applications and infrastructure, when to invest and with whom.
We then provide the project management support to ensure the
solutions are properly implemented and the appropriate returns
on investment are delivered. The objective is to deliver the
right solutions for your business objectives, relationships, and
obligations.
For investment decisions, we will work with you to understand
and decide why you want and need a solution, who you want to
use it (clients, staff, suppliers...), how the participants
should interact using the new channel and existing channels and
how it will integrate with your existing systems and workflow,
when the functionality will be released, where the users will
use it (e.g. staff over the counter, clients at home after
visiting the broker, broker in their office...), and what
functionality the solution should provide (e.g. Brochure,
Product Catalogue, CRM, Exchange, Online Sales...). Then we can
guide and/or manage the implementation and provide quality
assurance.
Our experience includes Implementation Risk Management, Content
Management, ERP systems, e-Procurement, e-Sales, Directory
Services, Web Sites and Portals, Enterprise Application
Integration, Package Selection and Integration, Web Migration,
Project Management, and Facilitation.
We can help you get the results you need and expect.
B301-Data Analyses (other than scientific)
B302-Feasibility Studies (non-construction)
B304-Regulatory Studies
B308-Accounting/Financial Management Studies
B311-Organization/Administrative/Personnel Studies
B312-Mobilization/Preparedness Studies
B314-Acquisition Policy/Procedures Studies
B329-Other Administrative Support Studies
D000-Information Processing and Related Telecommunications Services
D301-ADP Facility Operation and Maintenance Services
D302-ADP Systems Development Services
D304-ADP Telecommunications and Transmission Services
D305-ADP Teleprocessing and Timesharing Services
D306-ADP Systems Analysis Services
D307-Automated Information System Design and Integration Services
D308-Programming Services
D309-Information and Data Broadcasting or Data Distribution Services
D310-ADP Backup and Security Services
D311-ADP Data Conversion Services
D312-ADP Optical Scanning Services
D314-ADP System Acquisition Support Services (Includes preparation of statement of work, benchmarks, specifications, etc.)
D315-Digitizing Services (Includes cartographic and geographic information)
D316-Telecommunications Network Management Services
D399-Other ADP and Telecommunications Services (incl. data storage on tapes, Compact Disk (CD), etc.
H900-Other Quality Control, Testing, and Inspection Services
R000-Professional, Administrative and Management Support Services
R001-Specifications Development Services
R002-Technology Sharing/Utilization Services
R005-Technical Assistance
R006-Technical Writing Services
R007-Systems Engineering Services
R014-Operations Research Studies / Quantitative Analysis Studies
R019-Other Professional Services
R112-Information Retrieval (non-automated)
R113-Data Collection Services
R115-Contract, Procurement, and Acquisition Support Services
R120-Policy Review/Development Services
R121-Program Evaluation Studies
R122-Program Management/Support Services
R123-Program Review/Development Services
R199-Other Administrative and Management Support Services
Technology profile
.NET, WAS, J2EE
UNIX, WINDOWS, NT, MVS
Oracle, DB2, SQLServer
XML, HTML
Market profile
Industry sector market interests:
- Agriculture
- Construction
- Consumer Products
- Culture
- Environment
- Fishery
- Forestry
- Information Technology and Telecommunications
- Manufacturing
- Medical/Biotechnology/Chemical
- Mining/Petroleum/Gas
- Service Industry
- Tourism
- Transportation
- Wholesale/Retail
Geographic markets:
Actively pursuing:
- Germany
- United Kingdom
- United States
Sector information
Unique applications:
Program Management, Enterprise IT Infrastructure,x.500 Directory Services, XML architecture,
eBusiness Infrastructure, eProcurement,
Enterprise Workflow
Key / Major clients:
Ontario Public Service - MTO, MCCR, Health,Solititor General, Corrections, MNDM, Management
Board
Bank of Nova Scotia, Interac Association
Third-Party Information Liability Disclaimer
Some of the information on this Web page has been provided by external sources. The Government of Canada is not responsible for the accuracy, reliability or currency of the information supplied by external sources. Users wishing to rely upon this information should consult directly with the source of the information. Content provided by external sources is not subject to official languages, privacy and accessibility requirements.
Contacts
Contact information
Description
Company description
Products, services and licensing
Product / Service / Licensing
Procurement, Solution Architecture, Implementation and Quality
Assurance. Our focus is enabling business through information
technology. We can help you define the right business
relationships and simplify the interaction between your clients,
suppliers, staff, partners and agents. Our role is to help make
the right choices about what investments to make in information
applications and infrastructure, when to invest and with whom.
We then provide the project management support to ensure the
solutions are properly implemented and the appropriate returns
on investment are delivered. The objective is to deliver the
right solutions for your business objectives, relationships, and
obligations.
For investment decisions, we will work with you to understand
and decide why you want and need a solution, who you want to
use it (clients, staff, suppliers...), how the participants
should interact using the new channel and existing channels and
how it will integrate with your existing systems and workflow,
when the functionality will be released, where the users will
use it (e.g. staff over the counter, clients at home after
visiting the broker, broker in their office...), and what
functionality the solution should provide (e.g. Brochure,
Product Catalogue, CRM, Exchange, Online Sales...). Then we can
guide and/or manage the implementation and provide quality
assurance.
Our experience includes Implementation Risk Management, Content
Management, ERP systems, e-Procurement, e-Sales, Directory
Services, Web Sites and Portals, Enterprise Application
Integration, Package Selection and Integration, Web Migration,
Project Management, and Facilitation.
We can help you get the results you need and expect.
B301-Data Analyses (other than scientific)
B302-Feasibility Studies (non-construction)
B304-Regulatory Studies
B308-Accounting/Financial Management Studies
B311-Organization/Administrative/Personnel Studies
B312-Mobilization/Preparedness Studies
B314-Acquisition Policy/Procedures Studies
B329-Other Administrative Support Studies
D000-Information Processing and Related Telecommunications Services
D301-ADP Facility Operation and Maintenance Services
D302-ADP Systems Development Services
D304-ADP Telecommunications and Transmission Services
D305-ADP Teleprocessing and Timesharing Services
D306-ADP Systems Analysis Services
D307-Automated Information System Design and Integration Services
D308-Programming Services
D309-Information and Data Broadcasting or Data Distribution Services
D310-ADP Backup and Security Services
D311-ADP Data Conversion Services
D312-ADP Optical Scanning Services
D314-ADP System Acquisition Support Services (Includes preparation of statement of work, benchmarks, specifications, etc.)
D315-Digitizing Services (Includes cartographic and geographic information)
D316-Telecommunications Network Management Services
D399-Other ADP and Telecommunications Services (incl. data storage on tapes, Compact Disk (CD), etc.
H900-Other Quality Control, Testing, and Inspection Services
R000-Professional, Administrative and Management Support Services
R001-Specifications Development Services
R002-Technology Sharing/Utilization Services
R005-Technical Assistance
R006-Technical Writing Services
R007-Systems Engineering Services
R014-Operations Research Studies / Quantitative Analysis Studies
R019-Other Professional Services
R112-Information Retrieval (non-automated)
R113-Data Collection Services
R115-Contract, Procurement, and Acquisition Support Services
R120-Policy Review/Development Services
R121-Program Evaluation Studies
R122-Program Management/Support Services
R123-Program Review/Development Services
R199-Other Administrative and Management Support Services
Technology
Technology profile
.NET, WAS, J2EE
UNIX, WINDOWS, NT, MVS
Oracle, DB2, SQLServer
XML, HTML
Market
Market profile
Industry sector market interests:
- Agriculture
- Construction
- Consumer Products
- Culture
- Environment
- Fishery
- Forestry
- Information Technology and Telecommunications
- Manufacturing
- Medical/Biotechnology/Chemical
- Mining/Petroleum/Gas
- Service Industry
- Tourism
- Transportation
- Wholesale/Retail
Geographic markets:
Actively pursuing:
- Germany
- United Kingdom
- United States
Sector
Sector information
Unique applications:
Program Management, Enterprise IT Infrastructure,x.500 Directory Services, XML architecture,
eBusiness Infrastructure, eProcurement,
Enterprise Workflow
Key / Major clients:
Ontario Public Service - MTO, MCCR, Health,Solititor General, Corrections, MNDM, Management
Board
Bank of Nova Scotia, Interac Association


Event Location:
Microsoft Campus - Las Colinas
7000 State Hwy 161
Irving, Texas
Abstract:
SSIS is a great tool for transferring data from one data source to another, and for implementing complex ETL processes. However, there are some painful shortcomings that make it difficult to automate package creation, easily reuse patterns and templates, and create packages directly from schema information and other metadata. The free and open source BIDS Helper Add-In offers support for automatically generating SSIS packages using the Business Intelligence Markup Language (Biml). In this session we will start by showing the power of Biml. We will then step back, and start from the beginning of using BimlScript. Once we cover the basics, we will cover practical examples using the BIDS Helper add-in to automate SSIS development.
Speaker(s): Paul Waters,
Abstract:
In this session, we will look at the features of the SSIS Project Deployment Model in SQL 2012. Specific areas of interest include:Shared Connection Managers : Ability to create project level connection managers which can be shared across multiple packages within projectParameterization of package properties: Concept of parameters introduced through which properties within packages can be parameterized and set from outside for automated as well as interactive package execution using environment variable setsSeamless deployment and execution monitoring through SSIS catalog: Addition of new SSIS catalog DB for storing and managing the execution of packages and easy monitoring and auditing through improved set of standard reports
Speaker(s): visakh murukesan,
Abstract:
This is an expanded and updated version of the session I presented at the SQL Rally in Orlando. We will cover Tactical Data Governance and in detail specific code examples, using Stock and Custom SSIS Transforms ,Data Models, SSAS Cubes used to create and populate a Metadata Mart as defined by Michael Belcher(Gartner). We will demonstrate incorporating complete custom Data Profiling capabilities (SSIS Transform Scripting, TSQL) capable of Profiling any Source and Targeting any destination. In addition we will implement Data Quality(Address Correction, Fuzzy Matching) and Visualization via PowerPivot , Excel and QlikView. Last will will demonstrate code generation.
Speaker(s): Ira Warren,
Abstract:
Provide an introduction to the Microsoft Appliance and Reference Architectures. Learn how these Appliance Architectures can scale to hundreds of Terabytes. The presentation will focus on the Fast Track Reference Architecture and also contain real world performance metrics and lessons learned directly from someone who actually developed a Parallel Data Warehouse (PDW) BI Solution.
Speaker(s): Garrett Edmondson,
Abstract:
Dimensions are arguably the most important part of Dimensional Modeling, and it’s critical that they are designed properly. In this session, we’ll go beyond just the basics. You’ll learn how to: Properly design Dimension tables. Understand the different types of Slowly Changing Dimensions and their proper use. Load SCDs using several accepted methods including T-SQL Merge, the SCD Wizard, and a free custom transformation.
Speaker(s): David Stein,
Abstract:
In this session we will take a deep dive in to Analytical Master Data Management and how it differs from Operational Master Data Management. We will examine how you can leverage SQL 2012 Master Data Services to manage your data warehouse dimensions and hierarchies. Come learn how you can leverage the new features of SQL 2012 Master Data Services to enroll business users in the process of master data management to reduce the burden on IT and as a result, maximize the value of your Master Data Management solution.
Speaker(s): Jeff Johnston,
Abstract:
Imagine having the power in your hands to quickly provide activity information about open connections to Analysis Services, memory usage by specific objects, or a list of cube measures in a connection. In this session, you'll discover the power of SQL Server Analysis Services Dynamic Management Views (DMVs) that provide this information and so much more. These simple yet powerful views provide administrators with easy access to valuable information including current active sessions and connections, memory consumption, performance counters, and cube partitioning. In addition, DMVs also provide the ability to richly describe and document the structure of your cubes.
Speaker(s): Patrick Brady,
Abstract:
By simply applying partitioning to large tables, a database developer can possibly yield immediate benefits in query and ETL performance. This presentation will discuss methods that will allow BI developers to more fully leverage table partitioning in order to improve ETL and query performance in the data warehouse lifecycle. The benefits of partitioning‘s participation in an implementation of SQL Server 2012’s new columnar index storage will also be discussed.
Speaker(s): Ef Romero,
Abstract:
Learn how easy it is to utilize the free download from Microsoft that allows users to create maps, charts, dashboard objects and reports against any kind of data easily without having to use Visual Studio. See how SQL Report Builder makes creating executive dashboards easy!
Speaker(s): David Eichner,
Abstract:
In this session, you will learn about what is Parallel Datawarehouse. We will go into its architecture and understand what are good technical scenarios that justify going into Parallel DW.
Speaker(s): Sri Sridharan,
Abstract:
In this session, we'll take a tour through SQL Server Integration Services in SQL Server 2012. We'll briefly review the essentials of SSIS and will walk through the key elements of data movement and transformation using Integration SErvices. We'll focus much of our time on the new and improved features in this latest version of SSIS. This session will be most useful for database professionals with some experience with either DTS or SSIS, including those who are currently using an earlier version of the product and are interested in learning about what's new in 2012.
Speaker(s): Tim Mitchell,
Abstract:
StreamInsight provides real-time analytics on large volumes of data with a response time measured in milliseconds, bringing a new level of capabilities to the Sql Server platform. This session will provide an overview of StreamInsight, its capabilities and use cases. It will also provide details on StreamInsight 2.1, what's been added and how it makes your real-time applications easier and more robust.
Speaker(s): J Sawyer,
Abstract:
Learn how to achieve eye-popping performance for your data warehouse and analysis services queries using SQL Server 2012's xVelocity technologies. This session covers the core xVelocity technology and demonstrates its use in various data warehouse and analytical scenarios.
Speaker(s): Rob Kerr,
Abstract:
A lot has been made of Microsoft's announcement around support for Apache Hadoop but many in the Microsoft Business Intelligence community have been left scratching their head about what this exactly means. In this session, we will discuss Big Data concepts, pick apart Microsoft's announcement, and explore what Big Data means for Business Intelligence programs traditionally focused on data warehousing.
Speaker(s): Bryan Smith,
Abstract:
In this session, we will dive deeper into the art of dimensional modeling. We will identify the different types of fact tables and dimension tables and discuss how and when to use each type. We will also review approaches to creating rich hierarchies that simplify complex reporting. This session will be very interactive--bring your toughest dimensional modeling quandaries!
 The Power View reporting experience in SQL Server 2012 and SharePoint 2010 takes user reporting to the next level and makes data exploration fun without writing queries and code. Come see the impressive performance capabilities of BI Semantic Tabular models used with high-volume, enterprise data. Two great things that go great together!
Speaker(s): Paul Turley,
Abstract:
If you build it, they will come! While we may all hope that this will be the case, the successful adoption of the data warehouse and other Business Intelligence tools requires continued engagement with the business. In this session, we will explore strategies for encouraging not only adoption but integration of BI into the day-to-day activities of our organizations through what has become known as a Business Intelligence Competency Center (BICC). This is a non-technial session intended for BI architects and managers.
Speaker(s): Bryan Smith,
Abstract:
Microsoft SQL Server 2012 provides tools for rapid data exploration and discovery; and creation of rich data visualizations using Power Pivot and Power View. This allows users to see and interact with their information in a faster and more dynamic way compared to static reports. In this session, we will take an in-depth look at data visualizations and how to create compelling reports that deliver relevant insights to business to make informed decisions. This session will cover the end user experience of Data Visualization. We will look at how data helps business gain insights into processes and make informed decisions.
Speaker(s): Mahesh Pujari,
Abstract:
Amp up Reporting Services and tale your business reports to the next level with custom code written in Visual Studio. Build one dynamic super report to replace several other reports and address business requirements more effectively. Dynamically add or remove query columns, modify groups and sorting options.
Speaker(s): Paul Turley,
Abstract:
There are many things that can go wrong with SQL server, and a lot of times they come from outside influencers. Whether you're using SSRS, SSIS, or SSAS, Active Directory is one of the largest influencers.  By the end of the session you'll have a check list of things to discuss with your domain administrator when you return to work. This includes the biggest perpetrator, Group Policy Objects.
Speaker(s): Ryan Adams,
Abstract:
As more and more organizations implement Business Intelligence, utilizing geographic data for analytics is becoming more prevalent. We will look a real world implementation of Geospatial Analytics. We will start with data acquisition, to preparing the data and data analysis, to providing a rich interactive BI presentation layer for your end users. We will explore the features of SQL Server 2012 SharePoint 2010 and other 3rd Party and open source applications for delivering an interactive GeoBI Project.
Speaker(s): Patrick Gallucci,
Abstract:
People say that Kerberos isn't need with Reporting Services 2012. That is a half truth. We will look at what has happened with Reporting Services 2012 from an authentication perspective. This will look at how Claims Authentication fits into the picture and what Kerberos items need to be addressed as a result. If you are setting up Reporting Services 2012 with SharePoint 2010, you need to be aware of how this works and how it can affect you.
Speaker(s): Adam Saxton,
Abstract:
In this session we will look at what Data Quality Services (DQS) in SQL Server 2012. We will look at how DQS enables data stewards to maintain the quality of their data. A major part of maintaining data quality is making sure data is clean before it makes its way to the Data Warehouse. We will also look at how DQS components in SQL Server Integration Services help cleanse data
Speaker(s): Chaitanya Khaladkar,
Abstract:
In this session, we will explore the many ways that you can use Windows PowerShell to simplify software development, deployment, and administration. We will discuss PowerShell features related to Microsoft SQL Server Reporting Services (SSRS), SQL Server Integration Services (SSIS), and SQL Server Analysis Services (SSAS). We will also review project structure and configuration management best practices. Some previous exposure with PowerShell or .Net programming is assumed.
Speaker(s): Jason Horner,
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/pub/bryan-smith/17/98b/161
Bryan is a Data Solution Specialist with Microsoft Las Colinas, focused on data-driven solutions in the Azure cloud. He also teaches analytics technologies within the MBA amp; MSBA programs at SMU Cox School of Business.
LinkedIn: https://www.linkedin.com/in/pturley
Contact: http://www.sqlserverbiblog.com
Paul is a Principal Consultant for Pragmatic Works, a Mentor and Microsoft Data Platform MVP. He consults, writes, speaks, teaches blogs about business intelligence and reporting solutions. He works with companies around the world to model data, visualize and deliver critical information to make informed business decisions; using the Microsoft data platform and business analytics tools. He is a Director of the Oregon Data Community PASS chapter user group, the author and lead author of Professional SQL Server 2016 Reporting Services and 14 other titles from Wrox Microsoft Press. He holds several certifications including MCSE for the Data Platform and BI.
LinkedIn: http://www.linkedin.com/pub/david-stein/8/ba8/705
Contact: http://www.Made2Mentor.com
David Stein - Agile Data Warehouse Architect and Independent Consultant - has more than a decade of experience working in SQL Server Business Intelligence. He’s designed multi-terabyte, multi-tenant Data Warehouses from scratch as well as saved projects in serious jeopardy.
LinkedIn: https://www.linkedin.com/in/timmitchell/
Contact: http://www.TimMitchell.net
Tim Mitchell is a business intelligence architect, author, and trainer. He has worked with SQL Server for over a decade, specializing in data warehousing, ETL/SSIS, and reporting. He holds a Bachelor’s Degree in Computer Science from Texas AM at Commerce, and is recognized as a Microsoft Data Platform MVP. Tim is a business intelligence consultant and principal at Tyleris Data Solutions. Tim is an active community speaker and volunteer, having spoken at over 100 events including the PASS Summit, SQLBits, Dev Connections, SQL Intersection, and scores of SQLSaturdays. He blogs at TimMitchell.net, and tweets at @Tim_Mitchell.
Contact: http://visualdeveloper.blogspot.com
Patrick Gallucci is a Microsoft Certified Trainer and SQL Server/Business Intelligence Architect, with 20 years’ experience working with relational databases including Microsoft SQL Server, Oracle, DB2, Sybase and MySQL. Before leaving Microsoft in February of 2009, Patrick worked on various Data Warehouse and Business Intelligence projects for the communications sector in Denver and New York. He is currently a Business Intelligence\SQL Server Practice Director for Neudesic based out of Texas.
LinkedIn: https://www.linkedin.com/pub/bryan-smith/17/98b/161
Bryan is a Data Solution Specialist with Microsoft Las Colinas, focused on data-driven solutions in the Azure cloud. He also teaches analytics technologies within the MBA amp; MSBA programs at SMU Cox School of Business.
Contact: http://visakhm.blogspot.com/
Visakh Murukesan is a Microsoft SQL Server MVP who has over 7 years of experience with delivering projects on the SQL Server platform as well as data integration based on the SQL Server Integration Services platform. Extensive experience in developing complex reporting solutions based on SQL Server Reporting Services platform. His areas of expertise include SQL Server Stored Procedures, SSIS, SSAS, and managing XML data in SQL Server.
LinkedIn: http://www.linkedin.com/in/icansoftware
David Eichner is a licensed CPA and is also CEO of ICAN Software Corporation, a Microsoft Dynamics amp; Acumatica ERP partner firm that sell and implements ERP and CRM software, develops software solutions and provides technology consulting. He is the host of a radio show called Business In The Cloud that airs weekly on KLAY 1180AM. He is skilled in building integrated cloud app solutions. His career spans more than 20 years in various technical/managerial positions within industries as diverse as military service, engineering/construction, municipal government, consulting and certified public accounting. Additionally, he holds various national certificates in technology (MCDBA, MCSE, CNE, CITP, Dynamics CRM and ERP, Acumatica CRM and ERP)
Contact: http://www.devbiker.net
J is a Senior Architect for Hitachi Consulting based in Houston, TX who absolutely loves to write code and build cool, innovative solutions to hard problems. He#39;s also the President of the Houston .NET User#39;s Group
Jeff Johnston is the Business Intelligence Practice Leader for Artis Consulting. Based in Dallas, TX, Jeff provides guidance for client engagements, solution strategy, Microsoft partnership and sales execution. Jeff has spoken at various Microsoft events including MSBIC and SharePoint Techfest. Jeff holds an MBA in Strategy Entrepreneurship and has several Microsoft certifications including MCITP-BI, MCDBA, and MCSD.
Over 35 years experiences in Software Sevelopemt, IT Management and BI Architecture.
LinkedIn: http://www.linkedin.com/in/jasonhorner
Contact: http://blog.jasonhorner.com
Hi, my name is Jason I'm a practice lead at Redapt. I spend most of my day helping clients solve business problems mostly in the Data and Advanced Analytics spaces. Sometimes this involves various and sundry cloud technologies including Azure Data Factory, Azure SQL Data Warehouse, Azure Data Lake Store, Azure Databricks, HDInsight and Azure SQL Database. I'm fluent in several languages including: SQL, C#, Python, and PowerShell. I'm a Microsoft Certified Master of SQL Server (MCM) and have been recognized for my technical excellence and evangelism efforts by Microsoft by being awarded the Most Valuable Professional (MVP) for the last 5+ years. In my off hours I like to snowboard, karaoke, ride roller coasters, and play arcade games
LinkedIn: http://www.linkedin.com/in/ryanjadams
Contact: http://www.ryanjadams.com
Ryan Adams is a Senior Premier Field Engineer for Microsoft. He works directly with customers to help them realize their business potential and accelerate their digital transformation on premises and in the cloud. Previously, Ryan was a Microsoft Data Platform MVP and spent 19 years working for a fortune 100 company. His passion is the SQL Server Engine, High Availability, and Disaster Recovery. He also served on the Board of Directors for the North Texas SQL Server User Group, was President of the PASS Performance Virtual Chapter, was a PASS Regional Mentor, and served as a Director for the PASS organization.
Contact: http://www.Gnetgroup.com
Mahesh Pujari has over 11 years of experience in IT industry with in-depth experience in the areas of Data Management, Business Intelligence and Database Management. He has worked on several projects across industry verticals with a focus on Database design, development and maintenance in the area of Business Intelligence.
Contact: http://sqlrocks.com
Sri is the President of North Texas SQL Server User Group. Sri has been involved with SQL Server since version 4.2 and has held various roles developer/dba/ architect / pre-sales over the years. He is largely responsible for some of few features in SQL 2008 like TDE and tools like MAPS. Sri holds a Bachelor's Degree in Physics , Masters in Computer Information Systems and an MBA in Finance. His wife Hema, made sure he got a 3rd Masters in parenting their 2 sons.
LinkedIn: https://www.linkedin.com/in/pturley
Contact: http://www.sqlserverbiblog.com
Paul is a Principal Consultant for Pragmatic Works, a Mentor and Microsoft Data Platform MVP. He consults, writes, speaks, teaches blogs about business intelligence and reporting solutions. He works with companies around the world to model data, visualize and deliver critical information to make informed business decisions; using the Microsoft data platform and business analytics tools. He is a Director of the Oregon Data Community PASS chapter user group, the author and lead author of Professional SQL Server 2016 Reporting Services and 14 other titles from Wrox Microsoft Press. He holds several certifications including MCSE for the Data Platform and BI.
LinkedIn: https://www.linkedin.com/in/guyinacube
Contact: https://guyinacube.com
Adam Saxton is just a guy in a cube doing the work! He is on the Power BI CAT team at Microsoft, working with customers to help adopt Power BI. He is based in Texas and started with Microsoft supporting SQL Server connectivity and Reporting Services in 2005. Adam has worked with Power BI since the beginning, on the support side, and with documentation. In addition, he produces weekly videos for his Guy in a Cube YouTube channel.
LinkedIn: http://www.linkedin.com/in/kerrrob/
Contact: http://www.robkerr.com
Rob is CTO with BlueGranite, is a Microsoft SQL Server MVP and holds top Microsoft certifications in both SQL Server Database Administration and BI Development. Rob has implemented data warehouse and business analytics systems for many Fortune 500 companies, and focuses on large-scale data warehousing, geospatial data analysis and mobile solutions. Rob is the lead contributor to msbiacademy.com, a site providing free on-demand training covering a variety of Microsoft BI topics.
LinkedIn: http://www.linkedin.com/in/pswaters
Paul has over 20 years of experience working in IT-related fields. Over the past 15 years, he has focused on Business Intelligence. Paul was the Technical Editor for the book quot;Microsoft SQL Server 2008 Integration Services Problem-Design-Solutionquot; and contributed to the Wrox book quot;Microsoft SQL Server Reporting Services Recipes: for Designing Expert Reports.quot;
Contact: http://garrettedmondson.wordpress.com/
Garrett Edmondson, MCITP has 10+ years experience working with the full Microsoft BI Stack. He has built several Operational and Financial Data Warehouses for large and small organizations. . During the past year he has been working on Microsoft’s Parallel Data Warehouse (PDW) Appliance, which allows SQL Server to scale to hundreds of terabytes.
Ef Romero is a business intelligence architect at ORIX USA, a financial services company. He is a contributing author to quot;Microsoft SQL Server Reporting Services Recipes: for Designing Expert Reportsquot; and has Microsoft certifications related to the Microsoft#39;s BI stack. Ef received his bachelor#39;s and master#39;s degrees in pure mathematics from UTEP.
LinkedIn: http://www.linkedin.com/in/jasonhorner
Contact: http://blog.jasonhorner.com
Hi, my name is Jason I'm a practice lead at Redapt. I spend most of my day helping clients solve business problems mostly in the Data and Advanced Analytics spaces. Sometimes this involves various and sundry cloud technologies including Azure Data Factory, Azure SQL Data Warehouse, Azure Data Lake Store, Azure Databricks, HDInsight and Azure SQL Database. I'm fluent in several languages including: SQL, C#, Python, and PowerShell. I'm a Microsoft Certified Master of SQL Server (MCM) and have been recognized for my technical excellence and evangelism efforts by Microsoft by being awarded the Most Valuable Professional (MVP) for the last 5+ years. In my off hours I like to snowboard, karaoke, ride roller coasters, and play arcade games
Patrick Brady is a solution architect with the business intelligence practice of Slalom Consulting in Dallas, Texas. Patrick spent a number of years building custom development solutions in .NET and J2EE before discovering business intelligence. Since then he has been a passionate advocate for BI and has worked with numerous clients to build BI solutions that provide immediate and long lasting value. Combining his passion for BI with his active participation within the Slalom Consulting BI pr
Contact: http://www.gnetgroup.com
Chaitanya Khaladkar is a Solutions Architect with GNet Group, a gold certified IW and BI partner. He has in-depth experience in developing architectures, and leading business productivity projects that span the entire Microsoft Business Productivity and Business Intelligence platform. Chaitanya has worked on several successful solution development projects to build rich web and collaborative applications on SQL Server and SharePoint since 2005.
The following is a list of sponsors that helped fund the event.


Videos https://www.youtube.com/user/ngconfvideos
*ngIf
and *ngFor
syntax
<div *ngIf="userList | async as users; else loading">
<user-profile *ngFor="let user of users; count as count; index as i" [user]="user">
User {{i}} of {{count}}
</user-profile>
</div>
<ng-template #loading>Loading...</ng-template>
ng eject
Officially supported language internally at Google
http://angularjs.blogspot.com/2017/04/official-languages-at-google.htmlLong Term Support (LTS), beginning with v4


Brian Ketelsen provides training and consulting services for Go, Distributed Applications, and Container Technologies.
+1(813) 434 1484
<EMAIL_ADDRESS>Land O'Lakes, FL USA


{% extends "layout.html" %} {% block page_title %} Sprint {{sprint}} - Dashboard {% endblock %} {% block inside_header %} {% endblock %} {% block content %} {% include "includes/link-back.html" %} Search training providers Name (optional) Enter the name of a training provider if you know it Location (optional) Enter a location Do you pay the apprenticeship levy? What is the apprenticeship levy? Funny you should ask, it's a payment you make to HMRC if your annual payroll bill is over £3,000,000. You'll know about it if you are one otherwise you can assume you're not. Yes No Continue {% endblock %}


Upload
Client Name
Client name is required
Document
Document name is required
Document Location
Submit


This class provides the usage of the logging. We are using the log4j1 as a
logging framework. In order for this class to work properly you need to have
following arguments
JVM: -Dlog4j.configuration=log4j.properties
Conversion pattern: %d{yyyyMMdd,hh.mm.ss} [%-5p] - (%l)
%m%n
Output: 20170325,11.10.43 [TRACE] -
(com.javasheets.core.Logging.log(Logging.java:15)) Hello Trace
Level of precedence is defined inside the log()
method. Also
defined here
- [TRACE] Very minute details to be logged here
- [DEBUG] Minute details to be logged here for debugging application
in development environments.
- [INFO ] Only useful information details to be logged here
- [WARN ] Only warnings to be logged here or suggestions
- [ERROR] Situation that can result into errors must be logged here
- [FATAL] Things that can halt application to be logged here


[§431:10H-202.5] Licensing. A producer is not authorized to sell, solicit, or negotiate with respect to long-term care insurance except as authorized by article 9A. [L 2007, c 233, pt of §4]


The entries for the GBAX 2007 Coding Competition are now available to download. This is our fifth year of coding competitions and this year has been a great success with 60 entries for DS, PSP, GP2X and GP32 with homebrew games, applications, emulators and demos. There are some great entries this year so we hope there is something you like!


The root instance where you instantiate a three-musketeers
application by invoking the
function.
Example
// there are several ways to instantiate the musketeers tool
import musketeers from 'three-musketeers';
// you can pass in all necessary resources at initialization
const $$$ = musketeers({
renderer, // THREE renderer instance
scene, // THREE scene instance
camera // THREE camera instance
});
// you can also just instantiate and set later throughout the application
const $$$ = musketeers();
$$$.setResource('camera', camera); // THREE camera instance
// see `setResource` for further documentation
// If no camera is specified, the default camera attached the `scene` will be set
const $$$ = musketeers({
renderer, // THREE renderer instance
scene, // THREE scene instance
});
$$$.getResource('camera'); // returns the camera that's attached to the `scene`
Parameters:
| Name | Type | Attributes | Description | ||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
config |
object |
<optional> |
The THREE.js application resources for introspection. Properties
|


ConclaveMessage
Undocumented
-
Send, Receive.
Are you there?
Yes, I am here.
At an interval indicated by the heartbeat field in the hello message, the conclave server will send a “heartbeat”. The heartbeat is just a linefeed with no message: the single byte 0x0a.
You can use the heartbeat to assure yourself that the connection to conclave is still live. If a heartbeat doesn’t appear within a few seconds of the designated time, the TCP connection is probably dead.
The conclave server expects to receive a heartbeat back in response to each heartbeat it sends. If it doesn’t receive one in within a relatively small time window (usually 30 seconds), it will assume the TCP connection is dead, and disconnect.
Declaration
Swift
case heartbeat
-
Receive** Server, announce thyself.
version
: the current server version, for debugging information onlyheartbeat
: number of seconds between heartbeats sent by the server (see below)bufferSize
: maximum bytes this client will accept in a single message (used to limit the linefeed-seeking buffer)Declaration
Swift
case hello(
-
Send. Client, declare thine identity and preferred form of parlee.
The channel id, device id (or mobile device id), and token are used to authenticate. A client may only join a channel for an account if they have a valid token for it, which can be fetched from the service via RPC or through “link” commands.
The type is opaque to conclave, except for special type
hub
. Hubs must authenticate using a deviceId. In addition, the postmaster will treat them differently:- Hubs not receive certain messages (like decrypted attributes), because postmaster assumes they’re uninterested.
- Hubs may broadcast the visibility and connectivity of peripherals, for postmaster to track.
The version is also opaque to conclave, and is stored only for the benefit of other agents, and debugging. It is not part of OTA.
Hubs will often not know their own account id when they first connect. They should use the linking protocol described in “Conclave authentication” first, before attempting to authenticate to conclave.
channelId
: the id of the channel to join (usually the account id)deviceId
: the hub’s (possibly software) device idmobileDeviceId
: a mobile client’s application id, used for token authentication, but reported to other clients (previously “clientId”)accessToken
: auth token, as fetched from the servicetype
: agent type (“hub”, “android”, “satellite”, …)version
: for debugging information onlytrace
: if true, the conclave node will log extra debugging information about this sessionprotocol
: specify a version of the object sync messages; default is 1 forlegacy
Note
If the login fails, or the client sends anything but a correctly-formatted login message, the server will disconnect without ceremony or error. This is to prevent unsavory characters from poking around.
Declaration
Swift
case login(
-
Receive. The server has accepted this client.
The
generation
number is changed each time the conclave node restarts and resets its sequence number back to zero. Usually this is just the epoch time (in milliseconds) that the channel was created.The current
sequence
number is included to allow an agent to optimize rapid reconnects. If the agent saw the same sequence number before being disconnected, and the generation number is the same, it’s “caught up” and can skip re-synchronizing.sessionId
: your session ID (see below)generation
: current generation of this conclave node (see below)seq
: sequence # of the last broadcast messagechannelId
: ID of this channel (for hubs)
The generation number is changed each time the conclave node restarts and resets its sequence number back to zero. Usually this is just the epoch time (in milliseconds) that the channel was created.
The current sequence number is included to allow an agent to optimize rapid reconnects. If the agent saw the same sequence number before being disconnected, and the generation number is the same, it’s “caught up” and can skip re-synchronizing.
Declaration
Swift
case welcome(
-
Receive. Another agent joined this channel.
Immediately after sending a welcome message, the server will send a
join
message for each agent that’s already on the channel, including yourself. Thejoin
fields are identical to the fields in alogin
message.Whenever a new agent joins (after authenticating), a new
join
message will be broadcast to the channel.sessionId
timestamp
: when the session connectedtype
: agent type (“hub”, “android”, “postmaster”, …)deviceId
mobileDeviceId
version
Declaration
Swift
case join(
-
Receive. Another agent left this channel.
The type, deviceId, and mobileDeviceId fields are superfluous but may be useful for debugging.
An agent may “leave” implicitly at any time by disconnecting. It may also leave explicitly by saying goodbye. The bye message has no fields. Conclave responds by disconnecting.
sessionId
timestamp
: unix epoch, seconds; representing now.type
deviceId
mobileDeviceId
Declaration
Swift
case leave(
-
Send. Gracefully leave the channel. An agent may “leave” implicitly at any time by disconnecting. It may also leave explicitly by saying
bye
. The bye message has no fields. Conclave responds by disconnecting.Declaration
Swift
case bye
-
Send. For debugging or resynchronizing, an agent may ask for the list of connected agents to be re-sent. Like bye, the who message has no fields. The server will immediately respond with a join for each connected agent.
Declaration
Swift
case who
-
Send. Post a messge to the channel.
To post a message to the broadcast channel, an agent sends a say message to the server. The server sends all broadcast messages to all agents using a public message.
event
: name of the event, defined by the higher-level protocoldata
: - any associated data for the event
Declaration
Swift
case say(
-
Receive. A public message broadcast to all agents on the channel.
seq
: number that increments by at least 1 for each postsessionId
: the session ID of the agent that posted this messageevent
: copied directly from the say messagedata
: copied directly from the say message
Sequence numbers:
- are assigned and sent only by the conclave server
- apply to
public
and (some)private
messages- may
skip
numbers forprivate
messages that weren’t targeted at you- are in the range [0, 231 - 1]
- roll over at 231 - 1 as if they were stored in an unsigned 31-bit register
are per-channel (that is, per-account)
Note
If the sequence number in the welcome message is N, the next public or private message will be sequence number N+1 (or greater).
Declaration
Swift
case `public`(
-
Send**. Publish a message to another session
sessionId
: target of the private messagetype
: target, if the target is a group of related sessionsevent
data
Declaration
Swift
case whisper(
-
Receive. Receive a private message sent by the service or
whisper
ed by another agent.seq
: same as in public, but only applied to messages with more than one recipientsessionId
: source of the private messagetarget
: group this message was sent to, if it was sent to a groupevent
data
Declaration
Swift
case `private`(
-
Receive. Confirmation that the server has received a
whisper
.When a private message has been written to each session, a
whisper
ed message is delivered to the sender. It doesn’t guarantee that any session has read the message, just that conclave received and handled it.sessionIds
: An array ofsessionId
s identifying the targets of the associatedwhisper
.
Declaration
Swift
case whispered(
-
Send**. Ping the server to confirm it’s still there.
data
: Any data; will beecho
ed back to the agent.Declaration
Swift
case ping(data: Any?)
-
** Receive**. An error message may be sent by the server if the client sends something confusing or bad after successfully authenticating.
code
: The error codemessage
: For debugging, not for user displaydeviceId
: the responsible device id for code912
requestId
: the associated request id if there was one
Declaration
Swift
case error(
-
Undocumented
-
Declaration
Swift
public var debugDescription: String
-
Undocumented
-
Undocumented


Perceptron Machine Learning Using the Genetic Algorithm
This single layer Neural network is set up to learn how to recognize the number 4 in the provided data set.
How it works
After each generation (epoche) the worst performing four neurons are removed and the best performing 4 neurons are duplicated to take their place. The weights of each neuron (corresponding to each pixel on the image) are then mutated to create variation in the population. After several dozen generations, the population gets better and better at determining whether the provided image is the number 4 or not.
Adjusting the speed
Enter a number into the speed field and hit the "update speed" button. The value you enter is the number of milliseconds the system waits between testing inputs so zero is the fastest possible. Use 2000 - 3000 if you want to be able to read the weights in between each input.
Feeding Forward
The box in the upper right of the screen updates after each generation to show the feed forward view of the neuron weights. This is essentially a visual representation of what the system has learned from its training. Darker colors indicate positive weighting while lighter colors indicate negative weighting.
User Provided Inputs
Once the system has run through some number of generations (I suggest at least 100, 500+ will be most accurate), you can stop the learning and test your own value. Use the box in the lower right to draw your own input and see how the system responds. Make sure to hit the "stop" button first, then click the "Test Input" button to run the test. You can continue learning at the current generation after a test if you want.
What's actually being tested?
This is a fairly primitive system that is not actually recognizing what the character looks like. It's creating a probability cloud to determine the probability that the combination of pixel points entered match the learned set of probabilities found in the learning data set. On its own this is not especially accurate and fails often, especially when the frame of the character is off center (try drawing your test in the bottom left corner) or try drawing a shape that looks like the feed forward image. This system could be somewhat accurate if given enough user provided data and would then be showing where a user is most likely to draw the trained character.
How was it built?
The source code is written in 22 kb of pure javascript including training data (jQuery used for display). Check out the code base on github.
Generation 1
High Score:
Low Score:
Training Image
This view displays the image currently being trained on.
Feed Forward View
This view shows the feed forward image created by the weights in the Neural Network. It's essentially what the network views as an average instance of the character being tested for.
User Test Image
Use this space to enter in your own image to test against the network at its current stage of training. Click on the image to draw one pixel at a time. Hit the "test input" button when you're ready and check the output below.
Training Image
This displays the result of each neuron in the network for the given image. Green indicates a correct result while red indicates an incorrect result.


{% block head %}{% endblock %}
Toggle navigation
Delta 5 Race Timer
Rounds
Laps
Heats
Race Spectate
Race
Settings
{% block content %}{% endblock %}


Before Change
x = x.squeeze_(dim=1).squeeze_(dim=-1)
if self.num_atoms == 1 and self.out_features == 1:
// make critic outputs (B, 1) instead of (B, )
x = x.unsqueeze_(dim=1)
return x
class PolicyHead(nn.Module):
After Change
x = [z.squeeze_(dim=1).squeeze_(dim=-1) for z in x]
if self.num_atoms == 1 and self.out_features == 1:
// make critic outputs (B, 1) instead of (B, )
x = [z.unsqueeze_(dim=1) for z in x]
// B x num_heads x num_outputs x num_atoms (discrete)
// B x num_heads x num_atoms (continuous)


The rich text element allows you to create and format headings, paragraphs, blockquotes, images, and video all in one place instead of having to add and format them individually. Just double-click and easily create content.
A rich text element can be used with static or dynamic content. For static content, just drop it into any page and begin editing. For dynamic content, add a rich text field to any collection and then connect a rich text element to that field in the settings panel. Voila!
Headings, paragraphs, blockquotes, figures, images, and figure captions can all be styled after a class is added to the rich text element using the "When inside of" nested selector system.
The rich text element allows you to create and format headings, paragraphs, blockquotes, images, and video all in one place instead of having to add and format them individually. Just double-click and easily create content.
A rich text element can be used with static or dynamic content. For static content, just drop it into any page and begin editing. For dynamic content, add a rich text field to any collection and then connect a rich text element to that field in the settings panel. Voila!
Headings, paragraphs, blockquotes, figures, images, and figure captions can all be styled after a class is added to the rich text element using the "When inside of" nested selector system.


{% extends "blog/base.html" %} {% load static %} {% block content %}
Swing by for a cup of coffee, or leave us a message:


SPECIAL APPS
Applications that require PulseAudio to be installed.
When it come to audio, Linux actually falls short comparing to its Windows rival (I use various Audio cards on my Windows PC. With Windows, it’s just a breeze). I am no expert on this audio business but I have use Debian/Ubuntu for a long time and all of my problems with audio often came from PulseAudio. Thus, in this guide, I tried my best to avoid using it. Despite of that reason, in real life some of my day to day application specifically need Pulseaudio!
1. Skype as VOIP client
Here is the detail instruction from Debian to install the latest Skype:
2. Kazam as screen recording app
My freelancer job requires a lot of short videos demonstrating how my scripts work. I use Kazam for the task.
Kazam is easier to use, let you choose one from various installed microphones, records the screen nicely with great output (small size and in HD resolution).
All instructing videos of this website are recorded using Kazam too.
sudo apt-get install kazam


Athens’ famous Ermou, named one of the world’s most expensive shopping streets
by GCTAthens’ popular Ermou Street, located in the heart of the Greek capital, opposite Syntagma Square and the parliament building, has been ranked 14th most expensive retail street in the world, moving up from 15th place in 2019, according to real estate brokers Cushman & Wakefield.
Now in its 31st year, Cushman & Wakefield ranks high streets worldwide by their prime rental value. Combining insight on retail trends with a unique global proprietary data set of 448 high street retail rents, they rank the top shopping streets by their prime rental value.
On Ermou Street, you will find some of the city’s leading boutiques, international brand names, and local designers, and before the economic crisis hit the country, Ermou was among the world’s top 10 most expensive shopping streets around the globe.
The ranking found that the average annual rents along Ermou have increased to 3,420 euros per square meter from 3,000 euros per square meter, up by 14 percent against a year earlier.
According to Nick Symboura, head of Proprius real estate, representing Cushman & Wakefield in Greece, told Kathimerini that the steady rise in store rents on Ermou St is due in large part to a lack of vacant shop space compared to the demand, as well as to an absence of new shopping centers, which is forcing retail chains to look for properties on Ermou as one of the most commercial locations in Athens.
At the same time, Symboura goes on to add that increasing tourism flows to central Athens neighborhoods has boosted turnover for shop owners making retail chains more willing to pay higher rents to get a piece of the pie.
Russel Street in Hong Kong’s Causeway Bay took the number one spot, New York’s Upper Fifth Avenue came in second and New Bond Street in London took the third spot ahead of the Champs Elysees in Paris, which ranked fourth.
The full list can be found here- cushmanwakefield
*Main source: GTPHeadlines


For each group of cards presented to you, click one or more of your favorites from that group and press the "Pick" button. Eventually, your favorite will start appearing under "Picked cards". You can continue as long as you like to construct an arbitrarily long list of your favored cards
In principle, this picker is perfectly accurate, provided you pick consistently - you'll correctly get your second favorite second, even if it's pitted against your absolute favorite early on, for instance. You can reorder your favorites after you've found them, but in principle you shouldn't need to.
Include rarity:
Include regions:
Card type:
Cards remaining to be eliminated before next favorite is found:


Y.ContextMenuView Class
This module includes a Y.View class extension that attaches to an existing "trigger" Node and uses event delegation to listen for "contextmenu" requests (i.e. right-click). When the context menu is invoked, a Y.Overlay object is rendered and displayed that includes user-defined menu items that are related to the context where the menu was invoked.
This view utilizes several attributes and fires several events that users can listen to in order to take specific actions based on the "trigger target" node.
Please refer to the trigger ATTRIBUTE for more description of the target.node and target.trigger.
Usage
To configure a bare-bones basic contextmenu, you need to provide the trigger
and menuItems
attributes as;
var cmenu = new Y.ContextMenuView({
trigger: {
node: Y.one(".myExistingContainer"),
target: 'li'
},
menuItems: [ "Add", "Edit", "Delete" ]
});
The menuItems
can be simple entries or Objects, if they are Objects the "label" property will be used to fill the visible Menu (See menuItems).
Attributes / Events
An implementer is typically interested in listening to the following ATTRIBUTE "change" events;
selectedMenuChange
: which fires when a contextmenu choice is clicked (see [selectedMenu](#attr_selectedMenu))contextTargetChange
: which fires when the user "right-clicks" on the target.node (see [contextTarget](#attr_contextTarget))
Additionally, see the Events section for more information on available events.
Item Index
Methods
Properties
Events
Methods
_clearDOMSelection
()
private
Helper method to clear DOM "selected" text or ranges
_onContextMenu
-
e
Handler for right-click event (actually "contextmenu" event) on trigger.node
.
Parameters:
-
e
EventTargetY.Event target object created when "context" menu fires
_selectMenuItem
-
e
Process a "click" event on the Content Menu's Overlay menuItems
Parameters:
-
e
EventTarget
_valOverlay
()
Y.Overlay
private
Default value setter for attribute overlay
, creates a Y.Overlay widget to display the menu within
Returns:
destructor
()
protected
Clean up listeners and destroys the Overlay
hideOverlay
()
public
Method that hides the Overlay for this contextmenu and fires the contextMenuHide
event
initializer
()
protected
Initializer where we define initial handlers to invoke this view and to hide the Overlay
render
()
protected
chainable
Returns:
Properties
_overlayDX
Integer
protected
Sets an increment that the Overlay box will be positioned relative to the e.target "x-coordinate"
Default: 5
_overlayDY
Integer
protected
Sets an increment that the Overlay box will be positioned relative to the e.target "y-coordinate"
Default: 11
_subscr
Array
protected
A placeholder to hold subscriber EventHandles so they can be destroyed properly
Default: null
events
Object
public
Y.View's events static property, where we define a "click" listener on Nodes in the container that are the MenuItem nodes. *
template
String
public
Default HTML template for the container's content *
Default: '

'
Attributes
container
Node
Container Node where the menu's Overlay will be rendered into. If not provided, the default will create a container from the template setting.
This is usually only set when the user has a specific Overlay container design they wish to utilize.
Default: Y.Node.create(this.template)
contextTarget
Node
Set to the returned target within the trigger.node
container that the "contextmenu" event was initiated on
(e.g. for a DataTable this may be a specific TR row within the table body).
Default: null
overlay
Y.Overlay
Y.Overlay instance used to render the pop-up context menu within
Default: See _valOverlay
selectedMenu
Object obj
Set to the "selected" item from the pop-up Overlay menu when clicked by user, where this attribute is set to an object containing the EventTarget of the selection and the resulting menuitem and menuindex that corresponds to the selection.
This is set by the method _selectMenuItem.
Set to an {Object} with the following properties;
evt
Event target from "click" selection within displayed OverlaymenuItem
Menuitem object entry selected frommenuItems
arraymenuIndex
Index of current Menuitem object within the menuItems attribute array
Example:
// If the 'selectedMenu' was set to the 2nd item from the following menuItems setting ...
myCmenu.set('menuItems',[ {label:"Foo", value:100}, {label:"Bar", value:105}, {label:"Baz", value:200} ]);
// ... user clicks 2nd item,
myCmenu.get('selectedMenu')
// returns {evt:'event stuff object', menuItem:{label:"Bar", value:105}, menuIndex:1 }
trigger
String trigger.target Container filter selector to assign target from container event
Defines the container element for the "contextmenu" event listener to attach this menu to.
This {Object} must contain the following;
node
{Node} the Node instance that will have a delegated "contextmenu" listener attached to ittarget
{String} A CSS selector for the "target" sub-element (child of trigger.node) that will be used for the delegation and will be returned from attribute "contextTarget"
Default: {node:null, target:''}
Example:
// This will define the trigger node (to accept right-clicks) as a DataTable's THEAD
// element and the target as the TH nodes.
trigger : {
node: myDataTable.get('srcNode').one('thead .yui3-datatable-columns'),
target: "th"
}
Events
contextMenuHide
Fired after a Menu choice has been selected from the ContexMenu and the menu has been hidden
Event Payload:
-
e
EventTarget
contextMenuShow
Fired after the "contextmenu" event is initiated and the Menu has been positioned and displayed
Event Payload:
-
e
EventTarget
select
Fires when a selection is "clicked" from within the pop-up menu (a better approach is to listen on attribute selectedMenu for "change")
Event Payload:
-
e
EventTarget