Freeradius is a popular Radius implementation used by many company. Dinivas can set up and managed FreeRadius cluster for you.


Contributions¶
- Maintainer
Masatake YAMATO<EMAIL_ADDRESS>Table of contents
You are welcome.
This is what we would like potential contributors to know. In this section “you” means a contributor, and “we” means reviewers. “I” means Masatake YAMATO, the author of this section.
General topics¶
Origin of changes and license¶
Make clear where the patches come from and who wrote them.
If you backport patches from Geany or some other project, their commit IDs should be logged, too.
Include a copyright notice when adding a new
{parsers,main}/*.[ch]
file.
A new file also requires a license notice at the head of the file.
We expect your change (or new code) to be provided under the terms of the General Public License version 2 or any later version. We would like you to express “version 2 or any later version”.
Commit log¶
(For new parsers the following criteria is not applicable.)
Make clear the original motivation for the change and/or the impact on the tags file.
If you fix a bug reported somewhere on the web, its URL should be logged, too.
If the bug is reported in the Exuberant-ctags tracker on the SourceForge web site, log it as sf-bugs:N, sf-patches:N, sf-support-requests:N, or sf-feature-requests:N. docs/tracking.rst also should be updated.
Testing¶
Add test cases, and run both existing cases and your new cases.
If you add a new parser or modify an existing parser, add new test cases to “Units”. If you modify the core, add new test cases to “Tmain”. The way to write and run test cases is described in the “Testing ctags” section of this guide.
With the exception of the tmain test harness, you can specify VG=1 for running test cases under the Valgrind memory debugger.
A parse should not enter an infinite loop for bad input. A parse should not crash for bad input. A parse should return control to its caller for bad input.
Describe what kind of tests are passed in the commit message. e.g.
make units LANGUAGES=TTCN VG=1 is passed.
make fuzz LANGUAGES=TTCN VG=1 is passed.
make chop LANGUAGES=TTCN VG=1 is passed.
C language¶
Don’t forget to use static modifiers. Don’t introduce unnecessary global variables.
Remove unused variables and types. If you want to keep them in your source code, include a descriptive comment.
Use the available facilities provided by the ctags core. If the facilities are not enough for writing a parser, consider extending the core first.
Use underscores in names only in file scope objects. Don’t use them in function declarations, variable declarations or macro names in header files.
Basic whitespace settings are specified in the EditorConfig configuration file (.editorconfig). There are plugins available for most popular editors to automatically configure these settings.
Style guidelines are largely captured in the Uncrustify configuration file (.uncrustify.cfg). Formatting can be checked with:
$ uncrustify -c .uncrustify.cfg -f parsers/awk.c | diff -u parsers/awk.c -
Don’t mix whitespace cleanup fixes and other improvements in one commit when changing the existing code. Style fixes, including whitespace cleanup, should be in a separate commit. Mixing functional changes with style fixes makes reviewing harder.
If possible, don’t use file static variables. Find an alternative way that uses parameters.
Notes for GNU emacs users¶
If you use GNU emacs, utilize the .editorconfig configuration based on non-GNU C style. Here non-GNU C style means “align a keyword for control flow and { of the block start”.
GNU style:
if (...)
{
...
non-GNU style:
if (...)
{
...
For combining the style and .editorconfig configuration, put following code snippet to your .emacs:
(add-hook 'hack-local-variables-hook
(lambda () (editorconfig-apply)))
.dir-locals.el in ctags source tree applies “linux” style of cc-mode. Above code snippet applies the .editorconfig configuration AFTER installing the “linux” style to the current buffer.
I like GNU style, but for keeping consistency in existing code of Exuberant-ctags, the origin of Universal-ctags, I introduced the style and configuration to my .emacs. Please, do the same.
Command line options¶
Don’t introduce --<LANG>-foo=… style options. They are less suitable for command-line completion by the zsh/bash completion engines. Instead, introduce --foo-<LANG>=… style options.
Add an entry to docs/news.rst if you change the behavior of an option or introduce a new option. If you think the option is stable enough, add it to ctags.1.in, too.
Use underscore as a prefix for experimental options. Once an option is introduced, it must be maintained. We don’t want to remove it later. If you are not sure of the usefulness of the option, use an underscore at the start of a long option name like: --_echo.
Write a test case for Tmain or Units.
Don’t remove an option, especially if it exists in Exuberant-ctags. We want to maintain compatibility as much as possible.
Test cases¶
Add a test case to Unit when creating or modifying a parser.
Add a test case to Tmain when modifying the core.
Add a test case to Tinst when modifying the install target in the Makefile.
Compatibility¶
We are trying to maintain compatibility with Exuberant-ctags in the following two areas.
Tag file compatibility with Exuberant-ctags¶
We will not accept a patch that breaks the tags file format described in tags(5) man page.
TBW.
Specific to add new parser and/or new kind/role¶
When working on ctags I take into account the following uses for tags:
inserting the name with completion,
jumping to the definition of the name (in an editor or similar tool),
navigating the source code tree,
summarizing the source code tree, and
answering a query about the source code tree.
When I review new parser code, I expect the parser to contribute to these purposes.
What should be tagged?¶
There are two classes of tags. The primary class is a definition tag. If a name is defined in a file, the name and the line and the file where the name is defined should be tagged (recorded). However, in some languages answering, “What is a definition?” is not so obvious. You may have to decide what is tagged in your parser thoughtfully. The purposes listed at the top of this subsection should help you decide.
The secondary class is a reference tag. This is newly introduced in Universal-ctags and is not available in Exuberant-ctags. If a name is used (or referenced) in a file, it can be tagged as a reference tag.
Don’t be confused by the two tag classes.
Defining kinds and roles¶
Defining kinds is the most important task in writing a new parser. Once a kind is introduced, we cannot change it because it breaks tags file compatibility.
If you are not interested in designing kinds because you are an emacs user and use just TAGS output, there are two choices: TBW.
Scope information and full qualified tags¶
Optional. TBW.
Adding a new field¶
TBW.
Reference¶
In the comment at the head of your source file, include a URL for a web page that explains the language your parser deals with. Especially if the language is not well known.
Here is an example.
/*
*
* Copyright (c) 2016, Masatake YAMATO
* Copyright (c) 2016, Red Hat, K.K.
*
* This source code is released for free distribution under the terms of the
* GNU General Public License version 2 or (at your option) any later version.
*
* This module contains functions for generating tags for property list defined
* in http://www.apple.com/DTDs/PropertyList-1.0.dtd.
*/
Testing your parser¶
If possible, prepare a simple test and a complex one. The simple one for helping us, the maintainers, understand the intent of the modification.
If there are more than 3 test cases for a parser, a parser specific test case directory should be prepared like Units/parser-c.r.
Writing parser in regex¶
You can write a parser with regex patterns.
optlib2c, a part of the Universal-ctags build system can translate a parser written in regex patterns into C source code.
The man parser is one example described in regex patterns. See the output of the following command line for details:
git show 0a9e78a8a40e8595b3899e2ad249c8f2c3819c8a^..89aa548
Translated C code is also committed to our git repository. The translated code is useful for building ctags on the platforms where optlib2c doesn’t run.
The regex approach is also suitable for prototyping.
Squashing commits¶
When you submit a pull request you might receive some comments from a reviewer and, in response, update your patches. After updating, we would like you to squash your patches into logical units of work before we merge them to keep the repository history as simple as possible.
Quoted from @steveno in #393:
You can check out this page for a good example of how to squash commits http://gitready.com/advanced/2009/02/10/squashing-commits-with-rebase.html
Once you’ve squashed all your commits, simply do a git push -f to your fork, and GitHub will update the pull request for you automatically.
Build script¶
Add your .c file to source.mak.
In addition, update win32/ctags_vs2013.vcxproj and win32/ctags_vs2013.vcxproj.filters. Otherwise our CI process run on Appveyor will fail.


SudoTelephonyClientError
public enum SudoTelephonyClientError : Error, LocalizedError
List of possible errors thrown by SudoTelephonyClient
.
-
Not signed in to the service
Declaration
Swift
case notSignedIn
-
Bad configuration, something went wrong setting this up.
Declaration
Swift
case invalidConfig
-
Authentication failed, meaning the user is not signed in or registered.
Declaration
Swift
case authenticationFailed(Error)
-
Request to the backend failed for some reason.
Declaration
Swift
case requestFailed
-
Internal error that could mean data was not returned or parsed properly.
Declaration
Swift
case internalError
-
Number provisioning Failed
Declaration
Swift
case numberProvisioningFailed
-
Country provided for the request is not supported.
Declaration
Swift
case countryNotSupported(String)
-
Message send failed
Declaration
Swift
case messageSendFailed
-
Message retrieval failed
Declaration
Swift
case getMessageFailed
-
Message subscription failed
Declaration
Swift
case messageSubscriptionFailed
-
Conversation retrieval failed
Declaration
Swift
case getConversationFailed
-
CallRecord retrieval failed
Declaration
Swift
case getCallRecordFailed
-
CallRecord decryption failed
Declaration
Swift
case callRecordDecryptionFailed
-
CallRecord subscription failed
Declaration
Swift
case callRecordSubscriptionFailed
-
Voicemail
retrieval failedDeclaration
Swift
case getVoicemailFailed
-
Voicemail
decryption failedDeclaration
Swift
case voicemailDecryptionFailed(Error)
-
Voicemail
subscription failedDeclaration
Swift
case voicemailSubscriptionFailed(Error?)
-
One or more invalid inputs were passed on the request.
Declaration
Swift
case invalidInput
-
Key Pair failed to be generated for new phone number.
Declaration
Swift
case keyGenerationFailed
-
Key Pair failed to be deleted for phone number.
Declaration
Swift
case keyDeletionFailed
-
Failed to get ownership proof when provisioning a number
Declaration
Swift
case ownershipProofFailed
-
User has no public keys
Declaration
Swift
case noPublicKey
-
Sealed data decryption failed
Declaration
Swift
case sealedDataDecryptionFailed
-
File not found at provided path
Declaration
Swift
case fileNotFound
-
Invalid file format
Declaration
Swift
case invalidFileFormat
-
MMS file upload failed
Declaration
Swift
case fileUploadFailed
-
File download failed
Declaration
Swift
case fileDownloadFailed
-
Message decryption failed
Declaration
Swift
case messageDecryptionFailed
-
Collective size of message media exceeds limit
Declaration
Swift
case messageMediaTooLarge
-
Insufficient entitlements to perform the requested action.
Declaration
Swift
case insufficientEntitlement
-
Invalid GPS or Area Code prefix provided
Declaration
Swift
case invalidSearchError
-
Ownership attestation resulted in unauthorized
Declaration
Swift
case failedOwnershipCheck
-
Exceeded the number of media objects allowed.
Declaration
Swift
case maximumMediaObject
-
Unsupported media type
Declaration
Swift
case unsupportedMediaContentType
-
Service configuration error
Declaration
Swift
case configurationError
-
Unknown Error ocurred
Declaration
Swift
case unknown
-
Declaration
Swift
public var errorDescription: String? { get }


I was bored today, looking for drugs somewhere in my house because I had an urge to get high, but didn't want to do Diphenhydramine again because I had earlier in the week and would like to keep my liver good. After no success, I thought for a minute on one of the trip reports on oxygen I had read yeterday night. Then I thought 'If even pure oxygen can make you slightly high, what about Carbon Dioxide, which I can get with ease?'
After this, I went to the kitchen and got a balloon. I blew it up and kept it in my mouth. I laid down, and took a hit out of the balloon, held it in as long as I could, and breathed it out in to the balloon slowly.
I let the air out of the balloon, breathed, and stood up. I felt light as a feather. I walked around a bit and noticed a small loss of coordination, like maybe a 100 mg dose of Diphenhydramine but without the heavy feeling associated with it. I also noticed a very slight headache, probably caused by the lack of oxygen to the brain, and a dry mouth.
Experience Reports are the writings and opinions of the individual authors who submit them.
Some of the activities described are dangerous and/or illegal and none are recommended by Erowid.


Middleware used for file and text-based multipart data. It parses a singular file field and multiple text fields.
app.post("upload", mp.file("myFile"), (req, res) => {
const myFile: MultipartFile = req.file;
})
multipart/form-data
field name that contains a file.
Local multipart options merged with global options.
Middleware for use in Express-style apps.
Middleware used for file and text-based multipart data. It parses multiple file fields and multiple text fields.
app.post("upload", mp.files("myFiles", 3), (req, res) => {
const myFiles: MultipartFile[] = req.files;
})
multipart/form-data
field name that contains an array of files.
Max amount of files in the array.
Local multipart options merged with global options.
Middleware for use in Express-style apps.
Middleware used for text-based multipart data. It does not parse any files.
app.post("texts", mp.text(), (req, res) => {
const myText: string = req.body.myText;
})
Local multipart options merged with global options.
Middleware for use in Express-style apps.
Generated using TypeDoc
A class containing all useful middlewares for multipart request handling. It also stores your global MultipartOptions.
Should be created with default


2 references to Exit
System.Management.Automation (2)
engine\remoting\commands\EnterPSHostProcessCommand.cs (1)
447
[Cmdlet(VerbsCommon.
Exit
, "PSHostProcess",
engine\remoting\commands\PopRunspaceCommand.cs (1)
16
[Cmdlet(VerbsCommon.
Exit
, "PSSession", HelpUri = "https://go.microsoft.com/fwlink/?LinkID=2096787")]


Properties
-
address_1
StringTeam's address line 1
-
address_2
StringTeam's address line 2
-
autoreception
StringWhat point of setting-up autoreception is complete. Options are
completed
@todo -
caller_id_name
StringThe default caller ID name field for all members.
-
caller_id_number
StringThe default caller ID number field for all members.
-
city
StringTeam's city.
-
country
StringTeam's country.
-
id
StringUnique ID of the team.
-
owner
UserThe User that created this team.
-
postal
StringTeam's postal or zip code
-
slug
StringTeam name with special characters removed. Used to create URL-friendly guest links.
-
state
StringTeam's province or state
-
team_avatar
StringThe URL of the team's avatar.
-
team_name
StringDisplay name of the team.
-
timezone
StringThe TZ string of this team's timezone
Methods
-
create(opts)
<async, static>Creates a team
-
Creates a team by first creating an Owner account, who is the first user on the team. Then creates the team and assigns the Owner to it. NB: Team names are unique
Parameters:
Name Type Description opts
Object Options for the request
Properties
Name Type Argument Description owner_first_name
String Owner's first name
owner_last_name
String Owner's last name
owner_email
String Owner's email. Used later for authentication and cannot be changed.
owner_password
String Owner's password
name
String Name of the team
country
String Team country
city
String Team city
state
String Team state
referral_code
String <optional>
Referral code, if any
Returns:
Promise that will resolve with the newly created team if the team creation was successful, and be rejected with an error as the first argument if the attempt fails
- Type
- Promise
Example
let owner_email =<EMAIL_ADDRESS>let owner_password = "hunter2"; Team.create({ owner_first_name: "jane", owner_last_name: "doe", owner_email, owner_password, name: "My SDK Team", country: "Canada", city: "Toronto", state: "ON" }) .then((newTeam) => { console.log("new team created", newTeam); // You can log-in now as the owner APISocket.login({ email: owner_email, password: owner_password }) }) .catch((err) => console.error("team creation err", err))
-
exists(team_name)
<async, static>Check if a team exists, in order to create one safely. This is called automatically during Team.create()
-
Parameters:
Name Type Description team_name
String Team name to check the existence of
Returns:
Promise that will resolve with a boolean representing if a team with that name exists or not, or rejected with the error as the first argument
- Type
- Promise
Example
Team.exists("My team name") .then((teamExists) => console.log(teamExists ? 'team exists!' : 'no team with that name')) .catch((err) => console.error(err))
-
get(opts)
<async, static>Loads a team by ID
. -
Loads a team by ID
Parameters:
Name Type Description opts
Object Options for the request
Properties
Name Type Description id
String The ID of the team to load
-
save()
<async>Admin-only: save any changed information about a Team. The original team object will be modified in-place with whatever values are applied successfully, and a copy will be passed into the promise.
-
Returns:
Promise that will resolve with the updated Team as the first argument, or rejected with the error as the first argument
- Type
- Promise
Example
let me = await APISocket.login({ ...opts }) let myTeam = me.teams[0]; myTeam.team_name = "New team name"; myTeam.city = "Toronto"; myTeam.save() .then((myTeam) => console.log("Updated myTeam", myTeam)) .catch((err) => console.error("Team save error", err))


Whole project will be posted on this page. All posts are directly go to my GitHub Repository. Use it with respect, Thanks!


Technical sound question.
Posted: Fri Dec 22, 2006 10:01 am
Xenimus plays .wavs
.wavs are enormous because they are uncompressed.
Will Project Volucris's engine be capable of mp3 playback?
We can keep the game's size down a bit that way.
.wavs are enormous because they are uncompressed.
Will Project Volucris's engine be capable of mp3 playback?
We can keep the game's size down a bit that way.


With one Freyfile,
- Launch virtual instances on any cloud vendor.
- Provision them with software packages and configuration.
- Deploy your app onto the cluster.
Manage single instances, or clusters across regions and cloud providers
Deploy your app
Version Control - roll back your app to a previous version
Easily override - Any configuration stored in the Freyfile can be overridden at runtime via command-line arguments
Features
Plan & Launch Infrastructure - Based on Terraform, Frey let's you plan infra, and asks for confirmation if it detects destructive changes.
Provision software packages, such as Nginx and Redis. Frey comes bundled with roles so you only have to specify versions and vhosts.
Connect to your app with ease - Frey handles SSH keys for you.
Encrypt using a secret only you know - Frey can store ssh keys in Git. CI like travis can decrypt these, so you can have it deploy your app whenever there are changes
Plan & Launch Infrastructure - Based on Terraform, Frey let's you plan infra, and asks for confirmation if it detects destructive changes.
Provision software packages, such as Nginx and Redis. Frey comes bundled with roles so you only have to specify versions and vhosts.
Connect to your app with ease - Frey handles SSH keys for you.
Encrypt using a secret only you know - Frey can store ssh keys in Git. CI like travis can decrypt these, so you can have it deploy your app whenever there are changes
It does so, keeping a few design goals in mind:
- Convenience - Frey installs all of its requirements, so you don't have to
- Single configuration file describing the platform for your app, software requirements, and deploy strategy
- Pinned down dependencies - If it works now, it should work in 5 years


👋
Welcome!
You are logged in. Return to your terminal to resume.
To sign out, run the command:
$ ops account:signout
Have questions? Check out the documentation.
You are logged in. Return to your terminal to resume.
To sign out, run the command:
Have questions? Check out the documentation.


Michael Bloomberg expected to file for Alabama 2020 primary
State's deadline for filing is Friday
by Kate Sullivan and Cristina Alesci, CNN(CNN) - Former New York City Mayor Michael Bloomberg is expected to file for the Alabama Democratic2020 presidential primary, a Bloomberg spokesperson told CNN on Thursday.
Bloomberg said in March that he had decided against running for president in 2020. The New York Times, which first reported the expected Alabama filing, reports Bloomberg has been privately weighing a presidential bid for weeks but has not yet made a final decision.
Bloomberg dispatched staffers to Alabama to get enough signatures to qualify for the primary there, according to the Times. Alabama does not hold an early primary, but the deadline for a candidate to formally enter the race is Friday, according to the newspaper.
This story is breaking and will be updated.


1. Only team entries are eligible.
2. A team shall consist of max two persons.
3. The decision of the quiz-master will be final and will not be subjected to any change.
4. The participants shall not be allowed to use mobile or other electronic instruments.
5. The questions shall be in the form of multiple choice, True / False statement, Specific-answer question etc.
6. Audience shall not give any hints or clues to the competitors.
7. Replacement of any participant of a team is not allowed after registration
8. Teams selected for the final rounds will be allowed to give themselves an appropriate name related to the competition by which they may want to be known.


luseradd
Section: User Commands (1)Updated: 2009-12-09
Index Return to Main Contents
NAME
luseradd - Add an userSYNOPSIS
luseradd [OPTION]... userDESCRIPTION
Adds an user with name user.OPTIONS
- -c, --gecos=gecos
-
Set the SM]GECOS field to gecos.
The SM]GECOS field is traditionally used to store user's real name
and other information.
- -d, --directory=directory
-
Set user's home directory to directory.
If this option is not present,
a default specified by
libuser
configuration is used.
- -g, --gid=group
-
Set user's primary group to group.
group can either be a group ID of an existing group, or a group name;
if group is a group name and the group does not exist,
it is created.
If the --gid option is not specified,
the default group name is user.
- -i, --interactive
-
Ask all questions when connecting to the user database,
even if default answers are set up in
libuser
configuration.
- -k, --skeleton=directory
-
Populate the newly created user's home directory with a copy of
directory.
If this option is not present,
a default directory specified by
libuser
configuration,
or /etc/skel if
libuser
configuration does not specify a default,
is used.
- -M, --nocreatehome
-
Don't create a home directory and a mail spool for the newly created user.
- -n, --nocreategroup
-
If a group is not specified using -g,
use group name "users" instead of user.
Note that despite the name of the option,
the group will still be created if it does not exist.
- -P, --plainpassword=password
-
Set user's password to password.
Note that the password can be viewed while running
luseradd
using tools such as
ps(1).
- -p, --password=encrypted
-
Set user's password to the password represented by the hash
encrypted.
Note that the hash can be viewed while running
luseradd
using tools such as
ps(1).
- -r, --reserved
-
The user is a system user.
Users that are not marked as system user
usually have automatically selected user IDs above a certain value
(500 by default).
This information is also passed to the
libuser
backends.
This option implies the -M option.
- -s, --shell=shell
-
Set user's login shell to shell.
If this option is not present,
a default specified by
libuser
configuration is used.
- -u, --uid=uid
-
Use user ID uid for the newly created user.
An user ID is selected automatically if this option is not present.
- --commonname=name
-
Use common name
name
for the newly created user.
This attribute is only supported in some backends (e.g.LDAP),
and its support may have further limitations (e.g. LDAP schema rules).
- --givenname=name
-
Use given name
name
for the newly created user.
This attribute is only supported in some backends (e.g.LDAP),
and its support may have further limitations (e.g. LDAP schema rules).
- --homephone=phone
-
Use home telephone number
phone
for the newly created user.
This attribute is only supported in some backends (e.g.LDAP),
and its support may have further limitations (e.g. LDAP schema rules).
- --roomnumber=room
-
Use room number
room
for the newly created user.
This attribute is only supported in some backends (e.g.LDAP),
and its support may have further limitations (e.g. LDAP schema rules).
- --surname=name
-
Use surname
name
for the newly created user.
This attribute is only supported in some backends (e.g.LDAP),
and its support may have further limitations (e.g. LDAP schema rules).
- --telephonenumber=phone
-
Use telephone number
phone
for the newly created user.
This attribute is only supported in some backends (e.g.LDAP),
and its support may have further limitations (e.g. LDAP schema rules).
EXIT STATUS
The exit status is 0 on success, nonzero on error.
Index
This document was created by man2html, using the manual pages.
Time: 05:29:05 GMT, December 24, 2015


Adam Cole Jenkins
Hello I'm a hybrid Designer and Developer. The only thing more satisfying than solving a complex design problem: Taking it from conception to a beautifully rendered fruition.
Call
(314) 808-0838
Email
<EMAIL_ADDRESS>Web
adamcolejenkins.com
Experience
MU Health Care
April 2011 - Present
Senior Web Developer
- Received state-wide award for design and development of Mizzou Biojoint™ Center website.
- Administered 128 individual academic health center websites.
- Resigned and developed School of Medicine website with 476 number of pages ensuring ADA compliance and mobile responsive design.
- Developed website policies and guidelines to be used across the academic health center websites.
- Mentored junior developers on JavaScript, PHP and NodeJS development.
- Developed custom CMS suitable for securely running multiple websites using Laravel PHP Framework.
- Designed, developed and deployed mobile web application for patient-facing clinical use.
- Deployed and managed 5 RedHat Enterprise Linux web servers running Apache, PHP and MySQL.
Freelance
February 2011 - Present
Web Designer & Developer
- Worked on different projects including the design & development of various web components to market clients for sales increase.
- Performed Search Engine Optimization (SEO) and Search Engine Marketing (SEM) to increase traffic and enhance page ranking.
- Administered maintenance and upgrades for existing websites.
- Assisted agencies in web animation using JavaScript, HTML5 and CSS3.
- Completed all projects within budget and timeline.
Midcontinent Financial Center
September 2009 - February 2011
Web Developer
- Performed numerous A/B split tests to our landing pages resulting in an increase to our overall conversion rate by 150%.
- Designed, developed and managed 6 landing pages to attract sales.
- Produced and implemented detailed data models of MSSQL databases for web-generated leads.
- Designed several components of, and launched, multiple company marketing campaigns which included landing pages, banners, member registration, social media advertisements, and print collateral.
Education
BS in Web Design & Development
Graduated Full Sail University 2013
Hobbies
Photography, Biking, Hiking, Crocheting, Gaming, and above all else... Dog Owner
Skills
Adam Cole Jenkins
Hello I'm a hybrid Designer and Developer. The only thing more satisfying than solving a complex design problem: Taking it from conception to a beautifully rendered fruition.
Call
(314) 808-0838
Email
<EMAIL_ADDRESS>Web
adamcolejenkins.com
Experience
MU Health Care
April 2011 - Present
Senior Web Developer
- Received state-wide award for design and development of Mizzou Biojoint™ Center website.
- Administered 128 individual academic health center websites.
- Resigned and developed School of Medicine website with 476 number of pages ensuring ADA compliance and mobile responsive design.
- Developed website policies and guidelines to be used across the academic health center websites.
- Mentored junior developers on JavaScript, PHP and NodeJS development.
- Developed custom CMS suitable for securely running multiple websites using Laravel PHP Framework.
- Designed, developed and deployed mobile web application for patient-facing clinical use.
- Deployed and managed 5 RedHat Enterprise Linux web servers running Apache, PHP and MySQL.
Freelance
February 2011 - Present
Web Designer & Developer
- Worked on different projects including the design & development of various web components to market clients for sales increase.
- Performed Search Engine Optimization (SEO) and Search Engine Marketing (SEM) to increase traffic and enhance page ranking.
- Administered maintenance and upgrades for existing websites.
- Assisted agencies in web animation using JavaScript, HTML5 and CSS3.
- Completed all projects within budget and timeline.
Midcontinent Financial Center
September 2009 - February 2011
Web Developer
- Performed numerous A/B split tests to our landing pages resulting in an increase to our overall conversion rate by 150%.
- Designed, developed and managed 6 landing pages to attract sales.
- Produced and implemented detailed data models of MSSQL databases for web-generated leads.
- Designed several components of, and launched, multiple company marketing campaigns which included landing pages, banners, member registration, social media advertisements, and print collateral.
Education
BS in Web Design & Development
Graduated Full Sail University 2013
Hobbies
Photography, Biking, Hiking, Crocheting, Gaming, and above all else... Dog Owner


SimMetrics library v 1.5 for .NET 2.0
Contents
|
Index
|
Reference
Up
|
Previous
|
Next
MathFunctions
SimMetricsUtilities
|
Members
|
Methods
|
Class Hierarchy
MathFuncs implements a number of handy maths functions.
Class Hierarchy
MathFunctions
public
static
class
MathFunctions;
File
MathFuncs.cs
Namespace
SimMetricsUtilities
Members
Methods
Method
Description
MaxOf3
returns the max of three numbers.
MaxOf3
returns the max of three numbers.
MaxOf4
returns the max of four numbers.
MinOf3
returns the min of three numbers.
MinOf3
returns the min of three numbers.
Legend
Method
static
Links
SimMetricsUtilities
,
Members
,
Methods
,
Class Hierarchy
Copyright (c) 2006. All rights reserved.
Contents
|
Index
|
Reference


{% extends "default.html" %} {% from "jinja-components/panel/macro.html" import govukPanel %} {% block content %} {{ govukPanel(text="Executive summary created") }}
We have emailed a pdf copy to you.
A record of this Section 106 has been created. This is now available for members of the public to find and view.
We recommend that you upload the pdf version to your Planning register.


My name is Raneem Abu Tair I am 27 years old; I am passionate for life and always traying new things, I have a big dream that I want to run my own business someday and be independent and successful woman, I believe that (Self-belief) and (hard work) will always earn you success.
- I have bachelor degree in English
- I have work experience in Quality Assurance filed as I worked for two years in Zanzibar Tanzania and it was amazing journey.
- I have work experience in Verification as i worked one year as a Documents Verification Associate.
- Today as I am soft developer student my near goal is to master the software and get pass this course with good experience.
My Top 10 movies
- Pride and Prejudice
- The Green Mile
- Grave of the Fireflies
- Love, Rosie
- The Lord of the Rings
- Parasite
- Inception
- Focus
- Coco
- Harry Potter


| SPLITEXEC(1) | General Commands Manual | SPLITEXEC(1) |
splitexec
— split
standard input into pieces, stop after each piece and execute a utility for
it
splitexec |
[-k ] [-a
suffix_length] [-p
prefix] [-s
byte_count] utility
[argument ...] |
The splitexec
utility processes standard
input, it writes it to temporary files, after each temporary file is written
it executes utility for it, then stops processing
input. After utility exits for the piece, the piece is
deleted (see -k
option), and
splitexec
resumes processing of input. This can be
used to call utilities that expect regular files on huge non-regular files,
block devices, pipes, and such.
Optional arguments may be passed to the utility. If the string “{}” appears anywhere in the utility name or the arguments it is replaced by the pathname of the current file.
The options are as follows:
-a
suffix_length-k
-p
prefix-s
byte_countThe utility argument must be present.
Undefined behaviour may occur if utility reads from the standard input.
The splitexec
utility exits immediately
(without processing any further input) if a command line cannot be
assembled, utility cannot be invoked, an invocation of
utility is terminated by a signal, or an invocation of
utility exits with a value >0;
The splitexec
utility exits 0 on
success, and >0 if an error occurs.
The splitexec
utility is specially
designed to integrate easily with backup routines, for example when
transferring large files to a remote host, using small temporary
storage.
Move a full disk compressed from local host to a remote host using scp:
$ cd /tmp $ gzip < /dev/sdb | splitexec -p myserv-sdb.gz scp {} "user@rhost:mybackupdir/{}"
Will generate files myserv-sdb.gz.001, myserv-sdb.gz.002, ... in rhost. Using at no time more than bytes_count bytes for temporary files in total.
To recreate the original file from the pieces:
$ cat myserverback.* >
/dev/sdb
Abel Abraham Camarillo Ojeda<EMAIL_ADDRESS>No provision is made for generating a checksum of the full input.
| March 31, 2020 | OpenBSD 6.6 |


---
title: "OpenSSL Heartbleed vulnerability"
shorturl: "heartbleed"
active: false
show_toc: true
banner: ""
date: 2014-04-11
---
What happened
The version of OpenSSL used by Bitcoin Core software version 0.9.0 and earlier
contains a bug that can reveal memory to a remote attacker. See
http://heartbleed.com/
for details.
What you should do
Immediately upgrade to Bitcoin Core version 0.9.1 which is linked against
OpenSSL version 1.0.1g.
If you use the official binaries, you can verify the version of OpenSSL being
used from the Bitcoin Core GUI's Debug window (accessed from the Help menu).
If you compiled Bitcoin Core yourself or use the Ubuntu PPA, update your
system's OpenSSL.
Linux users should also upgrade their system's version of OpenSSL.
Android
Android version 4.1.1 is vulnerable to Heartbleed. Try if you can upgrade to at
least Android 4.1.2. If you are using Bitcoin Wallet on an Android phone, you
should upgrade the app to at least version 3.45.
How serious is the risk
If you are using the Windows version of the Bitcoin Core GUI without a wallet
passphrase, it is possible that your wallet could be compromised by clicking
on a bitcoin: payment request link.
If you are using bitcoind (on Linux, OSX, or Windows),
have enabled the -rpcssl option, and allow RPC connections
from the Internet, an attacker from a whitelisted (-allowip) IP address can
very likely discover the rpcpassword and the last rpc request. It is possible
(but unlikely) private keys could be sent to the attacker.
This notice last updated: Fri, 11 Apr 2014 12:19:23 -0400


--- layout: default --- {% include fn-events-track.jk track=page %} {% assign events = result %} {% include fn-next.jk pages=events %} {% assign next_events = result %} {% include fn-prev.jk pages=events %} {% assign prev_events = result %} {% include events-home.html events=next_events hide_tracks=true %} {% include events-history-home.html events=prev_events %} {% include fn-contributors-track.jk track=page events=next_events %} {% include contributors-home.html contributors=result %} {% include fn-sponsors-track.jk track=page events=next_events %} {% include sponsors-home.html sponsors=result %}


three.js
webgl demo : texture by
Humus
:
Bugatti Veyron model
by
Troyano
Bugatti Veyron
Lamborghini Gallardo
Ferrari F50
Chevrolet Camaro


Field
public class Field : UIView
Wrapper class for all fields. Makes data model validation and UI feedback a breeze.
Attention
DateField subclasses this but does not override the text variable as it holds a Date value type-
The value in the text-based fields.
Declaration
Swift
public var text: String?
-
This is the placeholder, or
floating title
of the fieldDeclaration
Swift
public var placeholder: String?
-
Optional setter to append and
(Optional)
tag to the field’s placeholderNote
Defualts to falseDeclaration
Swift
public var isOptional: Bool
-
Read only flag to check if the field is currently active
Declaration
Swift
internal(set) public var isActive: Bool
-
Read only flag to check if the field is currently in a error state
Declaration
Swift
internal(set) public var hasError: Bool
-
Dictates if a field should shake if it has an error
Declaration
Swift
public var shakes: Bool
-
Defines the type of keyboard that comes up when the field is active
Note
Defaults to .asciiCapableDeclaration
Swift
public var keyboardType: UIKeyboardType
-
Defines the auto capitilazation type of the text entered
Note
Defaults to noneDeclaration
Swift
public var autocapitalizationType: UITextAutocapitalizationType
-
Defines the autocorrection used on the field
Note
Defaults to noneDeclaration
Swift
public var autocorrectionType: UITextAutocorrectionType
-
Defines if the field needs secure text entry (passwords)
Note
Defaults to falseDeclaration
Swift
public var isSecureTextEntry: Bool
-
A second tag element on the field
Declaration
Swift
public var tag2: Int
-
Border color
Note
Defaults to UIColor.lightGrayDeclaration
Swift
public var borderColor: UIColor
-
Border color when field is active
Note
Defaults to the material field’s baby blueDeclaration
Swift
public var borderHighlightColor: UIColor
-
Border color when there is an error in the field
Note
Defaults to UIColor.redDeclaration
Swift
public var borderErrorColor: UIColor
-
Normal text color
Note
Defaults to UIColor.blackDeclaration
Swift
public var textColor: UIColor
-
Error text color
Note
Defaults to UIColor.redDeclaration
Swift
public var errorTextColor: UIColor
-
Color of placeholder label when down
Note
Defaults to UIColor.grayDeclaration
Swift
public var placeholderDownColor: UIColor
-
Color of placeholder label when up
Note
Defaults to UIColor.blackDeclaration
Swift
public var placeholderUpColor: UIColor
-
Color of cursor in field
Note
Defaults to UIColor.black.withAlphaComponent(0.5)Declaration
Swift
public var cursorColor: UIColor
-
Error setter for text-based fields.
Note
- The error UI will dissapear automatically if the field becomes active again (EntryField, AreaField) or the values change (PickerField, DateField)
- If you overrode the shakes property to false, the field does not shake during the transition animation the error state
Declaration
Swift
public func setError(withText text: String?)
Parameters
withText
String for the error text label that will show up under the field
-
Clears error flag and UI from fields
- Called automatically if the field becomes active again (EntryField, AreaField) or the values change (PickerField, DateField)
Declaration
Swift
public func removeErrorUI()


ECA_BM__RAD_2B
Variables
The table below lists the variables that are present in the HARP product that results from an ingestion of ECA_BM__RAD_2B
data.
field name |
type |
dimensions |
unit |
description |
|---|---|---|---|---|
datetime |
double |
{time} |
[seconds since 2000-01-01] |
UTC time |
latitude |
double |
{time} |
[degree_north] |
Geodetic latitude |
longitude |
double |
{time} |
[degree_east] |
Geodetic longitude |
latitude_bounds |
double |
{time, 4} |
[degree_north] |
latitudes of the ground pixel corners (WGS84) |
longitude_bounds |
double |
{time, 4} |
[degree_east] |
longitudes of the ground pixel corners (WGS84) |
orbit_index |
int32 |
absolute orbit number |
||
surface_altitude |
double |
{time} |
[m] |
altitude of the surface |
solar_azimuth_angle |
double |
{time} |
[degree] |
solar azimuth angle |
solar_zenith_angle |
double |
{time} |
[degree] |
solar zenith angle |
viewing_azimuth_angle |
double |
{time} |
[degree] |
viewing azimuth angle |
viewing_zenith_angle |
double |
{time} |
[degree] |
viewing zenith angle |
radiance |
double |
{time} |
[W/m2/sr] |
TOA radiance |
radiance_uncertainty |
double |
{time} |
[W/m2/sr] |
TOA radiance error |
radiance_validity |
int8 |
{time} |
radiance quality status |
|
validity |
int8 |
{time} |
quality status |
|
index |
int32 |
{time} |
zero-based index of the sample within the source product |
Ingestion options
The table below lists the available ingestion options for ECA_BM__RAD_2B
products.
option name |
legal values |
description |
|---|---|---|
direction |
fore, aft |
viewing direction: nadir (default), fore (direction=fore), aft (direction=aft) |
edge_coordinate |
one_weight |
edge coordinate: zero weight (default), one weight (edge_coordinate=one_weight) |
radiance |
SW_MSI, SW_filtered, LW, LW_filtered |
radiance: SW (default), SW from MSI (radiance=SW_MSI), SW filtered (radiance=SW_filtered), LW (radiance=LW), LW filtered (radiance=LW_filtered) |
resolution |
small, full, assessment |
resolution: standard (default), small (resolution=small), full (resolution=full), or assessment (resolution=assessment) |
Mapping description
The table below details where and how each variable was retrieved from the input product.
field name |
mapping description |
|
|---|---|---|
datetime |
path |
/ScienceData/<resolution>/time |
description |
<resolution> is Standard, Small, Full, or Assessment based on resolution option value |
|
latitude |
path |
/ScienceData/<resolution>/latitude |
description |
<resolution> is Standard, Small, Full, or Assessment based on resolution option value |
|
longitude |
path |
/ScienceData/<resolution>/longitude |
description |
<resolution> is Standard, Small, Full, or Assessment based on resolution option value |
|
latitude_bounds |
condition |
direction unset, edge_coordinate unset |
path |
/ScienceData/<resolution>/zero_weight_coordinate_nadir[0,*,*] |
|
description |
<resolution> is Standard, Small, Full, or Assessment based on resolution option value |
|
condition |
direction unset, edge_coordinate=one_weigth |
|
path |
/ScienceData/<resolution>/one_weight_coordinate_nadir[0,*,*] |
|
description |
<resolution> is Standard, Small, Full, or Assessment based on resolution option value |
|
condition |
direction=fore, edge_coordinate unset |
|
path |
/ScienceData/<resolution>/zero_weight_coordinate_fore[0,*,*] |
|
description |
<resolution> is Standard, Small, Full, or Assessment based on resolution option value |
|
condition |
direction=fore, edge_coordinate=one_weigth |
|
path |
/ScienceData/<resolution>/one_weight_coordinate_fore[0,*,*] |
|
description |
<resolution> is Standard, Small, Full, or Assessment based on resolution option value |
|
condition |
direction=aft, edge_coordinate unset |
|
path |
/ScienceData/<resolution>/zero_weight_coordinate_aft[0,*,*] |
|
description |
<resolution> is Standard, Small, Full, or Assessment based on resolution option value |
|
condition |
direction=aft, edge_coordinate=one_weigth |
|
path |
/ScienceData/<resolution>/one_weight_coordinate_aft[0,*,*] |
|
description |
<resolution> is Standard, Small, Full, or Assessment based on resolution option value |
|
longitude_bounds |
condition |
direction unset, edge_coordinate unset |
path |
/ScienceData/<resolution>/zero_weight_coordinate_nadir[1,*,*] |
|
description |
<resolution> is Standard, Small, Full, or Assessment based on resolution option value |
|
condition |
direction unset, edge_coordinate=one_weigth |
|
path |
/ScienceData/<resolution>/one_weight_coordinate_nadir[1,*,*] |
|
description |
<resolution> is Standard, Small, Full, or Assessment based on resolution option value |
|
condition |
direction=fore, edge_coordinate unset |
|
path |
/ScienceData/<resolution>/zero_weight_coordinate_fore[1,*,*] |
|
description |
<resolution> is Standard, Small, Full, or Assessment based on resolution option value |
|
condition |
direction=fore, edge_coordinate=one_weigth |
|
path |
/ScienceData/<resolution>/one_weight_coordinate_fore[1,*,*] |
|
description |
<resolution> is Standard, Small, Full, or Assessment based on resolution option value |
|
condition |
direction=aft, edge_coordinate unset |
|
path |
/ScienceData/<resolution>/zero_weight_coordinate_aft[1,*,*] |
|
description |
<resolution> is Standard, Small, Full, or Assessment based on resolution option value |
|
condition |
direction=aft, edge_coordinate=one_weigth |
|
path |
/ScienceData/<resolution>/one_weight_coordinate_aft[1,*,*] |
|
description |
<resolution> is Standard, Small, Full, or Assessment based on resolution option value |
|
orbit_index |
path |
/HeaderData/VariableProductHeader/MainProductHeader/orbitNumber |
surface_altitude |
path |
/ScienceData/<resolution>/surface_elevation[*,<direction>] |
description |
<resolution> is Standard, Small, Full, or Assessment based on resolution option; <direction> is 0 (Fore), 1 (Nadir), or 2 (Aft) based on direction option |
|
solar_azimuth_angle |
path |
/ScienceData/<resolution>/solar_azimuth_angle[*,<direction>] |
description |
<resolution> is Standard, Small, Full, or Assessment based on resolution option; <direction> is 0 (Fore), 1 (Nadir), or 2 (Aft) based on direction option |
|
solar_zenith_angle |
path |
/ScienceData/<resolution>/solar_zenith_angle[*,<direction>] |
description |
<resolution> is Standard, Small, Full, or Assessment based on resolution option; <direction> is 0 (Fore), 1 (Nadir), or 2 (Aft) based on direction option |
|
viewing_azimuth_angle |
path |
/ScienceData/<resolution>/viewing_azimuth_angle[*,<direction>] |
description |
<resolution> is Standard, Small, Full, or Assessment based on resolution option; <direction> is 0 (Fore), 1 (Nadir), or 2 (Aft) based on direction option |
|
viewing_zenith_angle |
path |
/ScienceData/<resolution>/viewing_zenith_angle[*,<direction>] |
description |
<resolution> is Standard, Small, Full, or Assessment based on resolution option; <direction> is 0 (Fore), 1 (Nadir), or 2 (Aft) based on direction option |
|
radiance |
condition |
radiance unset |
path |
/ScienceData/<resolution>/solar_radiance[*,<direction>] |
|
description |
<resolution> is Standard, Small, Full, or Assessment based on resolution option; <direction> is 0 (Fore), 1 (Nadir), or 2 (Aft) based on direction option |
|
condition |
radiance=SW_MSI |
|
path |
/ScienceData/<resolution>/solar_radiance_MSI[*,<direction>] |
|
description |
<resolution> is Standard, Small, Full, or Assessment based on resolution option; <direction> is 0 (Fore), 1 (Nadir), or 2 (Aft) based on direction option |
|
condition |
radiance=SW_filtered |
|
path |
/ScienceData/<resolution>/shortwave_filtered_radiance[*,<direction>] |
|
description |
<resolution> is Standard, Small, Full, or Assessment based on resolution option; <direction> is 0 (Fore), 1 (Nadir), or 2 (Aft) based on direction option |
|
condition |
radiance=LW |
|
path |
/ScienceData/<resolution>/thermal_radiance[*,<direction>] |
|
description |
<resolution> is Standard, Small, Full, or Assessment based on resolution option; <direction> is 0 (Fore), 1 (Nadir), or 2 (Aft) based on direction option |
|
condition |
radiance=LW_filtered |
|
path |
/ScienceData/<resolution>/longwave_filtered_radiance[*,<direction>] |
|
description |
<resolution> is Standard, Small, Full, or Assessment based on resolution option; <direction> is 0 (Fore), 1 (Nadir), or 2 (Aft) based on direction option |
|
radiance_uncertainty |
available |
optional |
condition |
radiance unset |
|
path |
/ScienceData/<resolution>/solar_radiance_error[*,<direction>] |
|
description |
<resolution> is Standard, Small, Full, or Assessment based on resolution option; <direction> is 0 (Fore), 1 (Nadir), or 2 (Aft) based on direction option |
|
condition |
radiance=SW_MSI |
|
path |
/ScienceData/<resolution>/solar_radiance_MSI_error[*,<direction>] |
|
description |
<resolution> is Standard, Small, Full, or Assessment based on resolution option; <direction> is 0 (Fore), 1 (Nadir), or 2 (Aft) based on direction option |
|
condition |
radiance=LW |
|
path |
/ScienceData/<resolution>/thermal_radiance_error[*,<direction>] |
|
description |
<resolution> is Standard, Small, Full, or Assessment based on resolution option; <direction> is 0 (Fore), 1 (Nadir), or 2 (Aft) based on direction option |
|
radiance_validity |
available |
optional |
condition |
radiance unset |
|
path |
/ScienceData/<resolution>/solar_radiance_quality_status[*,<direction>] |
|
description |
<resolution> is Standard, Small, Full, or Assessment based on resolution option; <direction> is 0 (Fore), 1 (Nadir), or 2 (Aft) based on direction option |
|
condition |
radiance=SW_MSI |
|
path |
/ScienceData/<resolution>/solar_radiance_MSI_quality_status[*,<direction>] |
|
description |
<resolution> is Standard, Small, Full, or Assessment based on resolution option; <direction> is 0 (Fore), 1 (Nadir), or 2 (Aft) based on direction option |
|
condition |
radiance=LW |
|
path |
/ScienceData/<resolution>/thermal_radiance_quality_status[*,<direction>] |
|
description |
<resolution> is Standard, Small, Full, or Assessment based on resolution option; <direction> is 0 (Fore), 1 (Nadir), or 2 (Aft) based on direction option |
|
validity |
path |
/ScienceData/<resolution>/quality_status[*,<direction>] |
description |
<resolution> is Standard, Small, Full, or Assessment based on resolution option; <direction> is 0 (Fore), 1 (Nadir), or 2 (Aft) based on direction option |


Download This Plugin
Back To jQueryScript.Net
YouTube.HD.Thumbnail.js Plugin Examples
Before
After
With Darkend hover effect
About
MIT License
Created by
Simon Li
in Sep 2016


Session Transcript:
Let’s build the data journalism textbook we need, and break academic publishing while we’re at it
Session facilitator(s): Matt Waite, Sarah Cohen
Day & Time: Thursday, 4:30-5:45pm
Room: Ski-U-Mah
Sarah: I guess we will get started too. So, thanks for coming. Some familiar faces, some not. My name is Sarah Cohen from Arizona state university.
Matt: I am Matt Waite from the Harvard of the Plains.
Sarah: I guess we have the Harvard of the desert. We started talking last spring – I just started teaching this past year. I ended the semester thinking I am putting way too much work into this. This is way too hard. Other people have done this. Even borrowing from them became difficult. I talked with Derek (Willis) and Matt and we all disagreed on what ought to be in a class but I think we all agreed all I want is the ability to go to chapter 3. We don’t know what chapter 3 is but we know there ought to be a third chapter in there somewhere.
Matt: One and two even.
Sarah: Then Aron (Pilhofer) joined us and we started talking about how do we build a set of materials that any journalism professor, instructor, adjunct can take and build their own course out of it. We can get into all kinds of philosophical arguments about whether we should teach Excel or not but that is not useful when some have to teach it and others don’t or some choose they want to teach it. We wanted a technology agnostic but conceptually consistent set of materials where there are certain values. Journalism above all, replicability secondly and activity making sure that everything is related back to journalism in some way and it is not a programming class, to make that clear.
How do we put that kind of thing together and start thinking about – and let people make their own textbook and their own course out of it.
Matt: So we started that discussion and we started to even sketch it out a little bit.
We realized pretty quickly that we had some commonality and differences. This issue of agnosticism was tricky but surmountable. We have created a beginning and it is on GitHub.
If you are in the Etherpad I think I put the link in there too.
We have taken general ideas and started down a road.
The idea was to create modules.
The more modules we can create I think the better off we are going to be. The modules would be things like Group By. Group By is something you will do in data analysis and probably every data analysis you do. It is so common and data analysis 101. We need to start there. We need to have those things for people.
What I have done over the last week and a half or so is created a couple of modules. One is group by replications but it isn’t done so don’t know there.
Sarah: It is just a rant.
Matt: The introduction.
What, Matt rant?
Matt: But it is ranting with reporting.
Sarah: Yes, it does have some good reporting. It is reporting with a point of view.
Matt: This is the Group By stuff. We have created a series of documents and done it in specifically technologies. If you are a faculty member that is going to teach or an adjunct or whatever teaching Excel or even SQL. We have done it in pandas, not willingly, and agate which is far easier to use. Not to be religious or anything but…
I wanted a rant, Matt.
Sarah: I made him do the Excel one.
Matt: I was explaining this earlier to somebody. We can have our own religion and we can show what Excel does and then not use it and I can believe I am right and Sarah can say we can teach Excel and be wrong but it doesn’t mean I need to include it.
Sarah: My guess is he will we including many things that are wrong.
Matt: That is why this is on GitHub and why you are here.
What we are starting to puzzle through now is what is a module and what should those modules be? Group By is pretty obvious.
It is in pretty much every data analysis library. The sort of basic pattern and template we have created is we want each module to have a lead. Brent Jones was gracious and reached out over Slack when I said anybody tell me a story you used group by and he responded and I said I will make him the lead of this. St. Louis Public Radio did a story about how crime in St. Louis ticks up as temperatures tick up. There is a leap up in the number of crimes reported and violent crimes reported the hotter it gets. It is a common antidote you hear all over the place. They grab the data, did some group by on date, and poof, done!
Their analysis is online. They did it in Agate then there is a story on there and the links are there. We create a lead that is about a story that uses this technique and results in something you can go read and students can go look at to get an idea.
Then we have a nut graph which is what it is. It is explaining why we are doing this. Why is group by important?
Well, for this group that is not tough. It is pretty self-evident. Let’s go ahead and explain it to maybe someone who has never heard of group by and where it it comes from and why it is important and how it is foundational.
Then we begin the walkthrough. This one particular uses R and dplyr. We go through it step-by-step, word-by-word, line-by-line, and command-by-command and explain it in a narrative fashion.
If you are intending to join us on this project you should get used to me using really weird obscure datasets from the great state of Nebraska. For group by, I used a dataset of confirmed mountain lion sightings in Nebraska. Not an unheard of thing to have happen but it is more possible in some places than others.
It is a fairly simple dataset.
Group by county, count them up, this is what you get. We point out that it is not in order. We sort it. Now you get Dawes, Sioux, Sheridan, Cherry and Lincoln county. You know where those are. I don’t know need to explain why it is important.
Almost literally nowhere. They are in the northwest part of the state where nobody lives. It is just pine trees and mountain Lions. That is all it is.
But that is just it.
The next step after the walkthrough is resources for instructors, things that we can link to, potential assignments we could give.
Sarah: Offline activities, analog activities like making people go stand in groups.
Things – things like that that you can do in class that will bring this alive. And a set of readings and other stories you might want. And inspirational datasets that might be easy for you to get or are freely available if you don’t like Matt’s mountain lions.
Matt: One potential is get your salary data for your city.
Show students – I have this data for the University of Nebraska. I can show students quickly the difference between mean and median when you include the football coach and do not include the football coach. He makes a wee bit more money than the rest of us.
Put together.
Matt: But that is the idea; how can we create these resources for other faculty and suggested reading and stories that use these things. A lot of students I find have a hard time conceptualizing stories from data because they don’t read data stories.
Sarah: We want to put real stories in here. Stories that are not huge, multi-day series but reasonably in depth, 1500-2000 word story. Something more than we got data and sorted it but not something that takes the attention away from what we are trying to do. Those stories are not easy to find because the data element of them are not obvious. But, you know, between all of the people who are doing this and have looked into these kinds of things we should be able to find plenty.
Matt: Yes.
The two things we want to do here today is first, we want to divide you up into your groups you have settled in and have you come up with ideas for modules.
Like what are the building blocks of data journalism however you define that that you think a student needs to know in order to get to that place that they want to get it.
Sarah: It should be what would you want to teach if you were doing it? We are trying not to have religion on what ought to be included. We have tried to have a fairly comprehensive set of tools that we can put together. Just one other thing is we are not ignoring all of the incredible resources out there. We would like to include them with permission. We have a whole list of them we have been tracking and we will be certainly contacting the folks who have that to see if we can include or edit their work to fit in with this structure a little bit.
Matt: For example Quartz’s Guide to Bad Data. This is phenomenal and voluminous. It goes on forever.
So does bad data.
Matt: The eternal enemy.
Sarah: Or other people that published their syllabus. There are a lot of good syllabus out there. There are commercial tutorials that are very good.
The other thing we would like to also talk with people is about inviting you to join the project when we are done.
Matt: We have one other thing. After we figure out modules and go around and talk about that the next thing we want to talk about is if you are going to teach that module how would you do it without computers? One thing that I have found really helpful is to try to take these sort of concepts and make them real and tangible.
Several years ago now I had heard of someone else doing this and I ruthlessly stole the idea of using Legos to teach data visualization. Build charts using Legos and make turning data into physical evidence, tangible and real. I clear shelf space off in my office for professor of the year every time I bring a giant box of Legos into class and I am like here is what we are playing with today.
But those kinds of things I found to be really, really helpful.
A colleague who is joining me in the fall, Olga Pierce, she uses Avengers movies and tokens with them on there to keep the data concepts. Grouping them together by which movies they appear in and connecting different avengers in different ways and grouping them in different types which I found absolutely brilliant.
Sarah: And another activity that I started including is this idea of breaking up people in pairs. I forget what it is call.
You give them a prompt and each person has to come up with three questions or thoughts. They each have to listen to each other without interrupting and then decide on the one best thing they came up with. I have been suggested to do this because it is a way to take away some of the privilege in the class, it is a way of forcing people to listen, forcing people to speak, forcing everybody to be equal.
I started using it and it is really interesting the people who all of a sudden become brilliant when you start doing that who you didn’t even know were in the class before then.
We would love to hear things like what kind of prompt would you want for something like that.
Matt: To start with. Let’s start with modules. For the next about 15 minutes we want you to discuss among yourselves the modules. You would use the sticky’s on the stable and we will stick them up here on the board to help us out later on.
Sarah: And think of a module as one conceptual item. We are not convinced that group-by isn’t too small but we are pretty sure sorting is too small; right? It is like filtering and sorting may be together. At first we started thinking about what would a week look like and then we realized some people would be able do that in two hours and some people might take two weeks on the same concept. Try to think of it as an isolated concept or even an isolated task if necessary that you think would be crucial to include at some point during some part of this, you know, three or four month class.
Matt: Okay?
Is there like – in terms of scope and what fits into the definition of data-journalism –
Sarah: Whatever you think it is.
Everything from programming and that track all the way over to car skills? Subject
Sarah: Yes. And Aaron has talked about wanting to get more into the business side of stuff too. We are trying to do this without the religion of what the words data-journalism means. The minute you start getting religion about that you are not going to meet the goal because somebody is going to look at this and say that is not what I am teaching as data-journalism so this isn’t useful to me. We are trying not to have religion on that stuff. Instead we are having religion on the fundamental values of journalism and the fundamental values of data analysis.
Matt: Data visualization but plots versus whatever else. Yes.
So modules. Go!
[15-minute group work]
Matt: We have reached the end of our 15 minutes and to rob you of maximum creativity before we get out of here and go eat dinner we want to move on.
First, I want to talk to everybody about what you came up with. Sarah and I both went around and the conversations that were going on were great and the more we do this the more excited we get. This could get really terrible when we get home.
Sarah: We could have an awful lot to do.
Matt: We might have created a monster here. Some of the modules you came up wit…
anybody want to volunteer? Or just pick on a table? I will pick on that table mostly because Derek (Willis) is wearing a West Indian cricket jersey. You have to have reasons.
We have a lot of suggestions.
Matt: Fantastic.
Okay. So they can kind of be grouped in like – so, you group them in a couple basic – one of them is essentially creating structured data from unstructured data.
Matt: Interesting.
Examples. Here is a web page of text, what do you think is important, put that in column.
There is like importing, like sort of the technical task of importing and exporting various formatting.
More on the journalist side or essentially you talk about group by, I think I went ambitious and said it fits under data which includes filtering, sorting and aggregates which I think is a mouthful.
Sarah: That is a question.
How small –
How big or small do you make them.
Matt: After doing group by I am convinced group by and aggregates go together and sorting and filtering can be part two of that.
In your example, you sorted –
Matt: I did because it was ridiculous not to.
Sarah: It is not that everything has to be in only one place.
And then like basic text analysis like frequency indices and stuff like that. Counting words and things. Pattern matching might fall into that or I think it is probably its own module. You have a lot of different ways you can express that. Tons and tons of different tools that run from the easy to the extremely complicated.
Matt: I am going to stand before you my right hand of God and say I will not be the one that writes the regex.
Sarah: I have done that. I will do it.
Matt: You have have a problem that needs a regex now you have two problems.
I will use the pattern matching using (MS) Word because Word has pattern matching.
Matt: And it is actually not bad.
It is only useful thing about Word.
Matt: In the back.
Talking about motivation, possibilities, expectations early in the event. Like really early on. Class number one.
Matt: Syllabus day.
Rather than trying to jump into any concepts.
Matt: Absolutely.
Also easy data stories so things you should be able to do about halfway through the semester as compared with beautiful, intricate ornate things you will be able to do in a few years. We got theoretical so asking good questions, a lot of ideas about how to lie with data and assess data for truthfulness.
Sarah: Do you mean sourcing or do you mean actual dirty data? Or both?
Yes.
Or methodology.
I mean failing to recognize that data was created by people and too much credence.
Sarah: So both.
Like the easiest way to stop saying the homicide rate is growing is stop calling it homicides and call it something else.
Like Philadelphia did.
And New York did.
Canada did with sexual assaults.
Matt: I wish police chiefs would realize that is not going to end well. This group here.
We also got sort of theoretical. We had a similar point to theirs about questions mostly around framing them precisely.
Sarah: And you mean like research questions or questions about how to go on staff overflow or both?
Questions like if I am asking, the example I gave earlier, what is the typical temperature in Minneapolis what does that mean? What do we mean my typical? What timeframe are we looking at? What do we mean by Minneapolis? The academic thing is operational. How do we do that?
Another thing is different forms of theory and how you pick the right chart and map and what does that mean.
Matt: When is a map a map and when is it not?
You said that. The other big one I don’t think we have heard is joins. Sorry to steal your thunder but joins.
Matt: Front group, talk to me about joins.
We just added it just before he came to you guys. We have a few and a couple I added. I kind of took the liberty of sorting them out into two groups which are the theoretical stuff and the really practical, you know, scraping, visualization 101, joining datasets, machine learning, cleaning data –
Sarah: Machine learning by itself?
Matt: One-day module.
Sarah: That has to be Jonathan (Stray).
Matt: Would you like to come teach this?
A couple that haven’t been mentioned. Documentation and future-proofing for yourself in a year of how do you know what you named that thing still means what you think it means.
 I don’t screw around with that. Your variable is A you are out.
AA you are okay?
Sarah: If it is a 1 then no problem.
Matt: Yeah, cool.
I added at the last minute ethics and when not to publish some of your analysis or asking questions of what is ethically okay. We also talked about exploratory data and origins like questions did a person enter this into a database, how did it get there, and that kind of thing. And I added without consulting the group, sorry, how to explain your analysis to the audience and whether that is visualizations or in a story, making that approachable for people who are not data journalists.
Matt: I have a really rant-y lecture about writing with numbers.
Let’s hear.
Matt: I am not going to get into that here.
Sarah: I have a rant in my book about it.
Matt: Yes, you do. I am singing from the same sheet of music you are.
Sarah: What is interesting about everything we are hearing is it is less specific skills than it is conceptual. You get this group together and we are more concerned about whether they understand what they are doing than that they know how to do any particular manipulation.
We did have scraping.
Sarah: That is even almost a little conceptual.
Unless you have to do it.
We played around with should we include how the internet works.
Yes.
Sarah: Definitely how the DOM works because you can’t do much without it.
Matt: I have thought about an entire 100 level freshman general ed class that is just how the internet work.
We have a one credit required class that is basically how the internet works.
Matt: So that was fantastic.
Next thing we want to do, if I can find my cursor, is now we want to talk about how do we teach these things. I know a lot of you in here have taught, I am going to assume all of you have been a student, so you will have some idea of how this might work in your head. Specifically what we want to talk about is how do we teach these sort of technical concepts to non-technical people? If you get a student who is just not a computer person – I have students that come say I am not good at computers and I am like you are not good at life. Like stop saying that out loud to people.
Sarah: In my class it is required so I get a lot.
Matt: I have the ones who voluntarily come along. How can we teach these to non-technical people? If you had to teach this without a computer how would you do it? While you are doing that for the next 15 minutes, I will grab these and stick them up here to absolve you of that.
Sarah: Maybe choose one thing from the list and say what would I do analog offline to talk about it.
Matt: The more embarrassing you will make it to students the more it sticks. Making them dance or wear funny hats.
[Group exercise]
Matt: We’re starting to have time issues. Let’s talk about what you came up with in terms of making this real. The discussion about how the internet works, we have a series of courses we call our visual communications classes. They are basically how to take a picture, how to shoot a video, they are skills-based and the first classes you take in college. The first couple of classes are met as a group and in the first one they act like I am request. They are like I am the server. I respond to the request. They are turning nine shades of red doing this and everybody is laughing.
I am like perfect! They will never forget what a request was.
Picked on that table and I will pick up on the front. What did you tackle? How did you tackle it?
We came up with a data cleaning exercise on paper.
Start with two pages, both of which are lists of names, one say from a voter registration database, another is campaign finance, you give them to students and match them up and you do this thing. Then you get everybody into the room to take a piece of paper, another blank piece of paper, and write down the address of their favorite establishment in town, bookstore, restaurant, pub, whatever, and then take all those pieces of paper and hold them up and read them to the class and look at how many address formats were written down. Look how many did road versus RD and different ZIP code formats and capitalization or not and whatever. Then using those rules that, you know, seeing there are different formats, going back to the two sheets of paper and saying cross out all the matches where the addresses or names are in different formats and I bet more than half of them disappear.
Wow.
Sarah: That could be a lot of fun.
Matt: I like that. Address matching.
Welcome to feel that pain.
Then we started taking about date formats and that is a whole other thing.
Sarah: That is a great idea.
Matt: Next table up. What you got?
Go for it.
I am trying to think of which one to say. Somebody else….
We were talking about the data visualization things and pitfalls and thought of small exercises you might be able to do. One might be you give everyone a simple set of data and have them come up with four different – chart it in four different ways. Use four different chart types to talk about the positives and negatives.
Sarah: Just draw.
Talk about the positives and negatives of each one. Another suggestion was find examples of charts that were done, maybe not so well, in other publications or books or things and have them correct them, have students correct them and maybe redo them in a better way and talk about why they made the choices that they made.
And then I don’t know what was another one? Oh, a map.
Maybe give, say, decide we are going to make a map of some data here and hand everybody a printout of the United States or of your state with the counties and a dataset. Have people create a color scale, like all on paper, and fill in the counties or the States or, you know, whatever, something that would not take a ridiculous amount of time to do with something like noise or pollution or crime or something like that. Then simply walk around the room and hand every table or every person a population map of the same thing and just say here you go. It is an example of how everything shouldn’t be a map because it is a population map.
Sarah: If your class is pretty geared toward visualization you could peer that are “Dear, Data” the book that has the idea of drawing and sketching.
Matt: If you don’t know about viz.wtf. How not to do it is fantastic. It is –
Sarah: Whoever is doing that, don’t forget to put that in the resource section.
Matt: Viz.wtf. Nothing makes sense at all. It is just fantastic. It never gets old.
Okay. In the back.
Okay. I think we have to go with our guess who example? I think it is modification on your method. Go ahead.
We never got to how we get to – basically we had two – using human fore loops. Let’s tally up people who wear glasses and people who wear collared shirts and using that.
Sarah: And they would actually walk?
Yeah, they all stand up and sit down. You have people stand and sit. Sometimes you can really screw around and for each student – if they are wearing a collared shirt they need to turn around and if they are male they need to sit and sort of build loops and so how the order of operation changes where people are left, but it also sort of demystifies the idea. I think we came up with ideas about how you could do that with guess who.
Just because it would help standardize how this exercise could be executed, right? Then you couldn’t have to try to scan the room and see do I have people wearing glasses, do I have people wearing hats, but instead you could give them identities who look at.
And Guess Who is a game for people that don’t know.
People know that game?
We played it without a board.
But the board is weird.
They have different things on the website like marshes or soccer players and you can download that.

Matt: I taught loops and conditional logic in a freshman level class. I had one person as the iterater andand they had the leave the class. I asked who was an Ohio state fan and one person raised their hand. I brought the person back in and said find out who the Ohio state fan is and I said how would you do it? And he said are you an Ohio State fan? And I told him to go around and ask everybody individually and I said when you come to that person we will all boo. Yes. Boo. There you go. I love that idea of making people guess and teaching loops that way. I think that is great.
I don’t know if you know about this but this site called CS Unplugged which is doing exactly what you have talking about. There is a bonus.
The other couple things, getting back to talking about creating structured data without a computer. There were a couple other things like students describing a common object like a car, with its make and model, which works reasonably well to explain orient objects in programming where the car has attributes like color and different methods like drive and such. Is this your exercise?
I don’t do it with printing it out.
Course descriptions or something narrative and have them circle and highlight structural information and put that in a structured form.
Sarah: Like balding? You can’t count on people knowing parts of speech. That is the only problem.
Sarah: I am not sure I would know what an adverb was anyway.
anyway. – adverb.
You could do like nouns and things.
Matt: I think there is real value in doing these sort of simplified, conceptual ideas as the non-technical challenge to reach a lot of students.
Sarah: Always means people are not sitting around all the time which is deadly.
And they have to close the computer and stop checking Facebook.
Matt: Exactly. One of the better days when we booed the Ohio State kid is I have them play Chutes and Ladders which is like ages three and up. I have a copy of it because my kids played it and I brought four more and bring them to class and have everybody play the game and then I have them create a simulation in Python using if-else object.
If you land on this square go to this square. If not stay here.
Teaches state and flow control and a few other things. Then I show how you can simulate millions of games of shoots and ladders to find out if you want to go first or third or whatever. It doesn’t matter.
Yeah, you can sort of scale up from there. I am a big fan of using like crayons to do this and childhood games and things like that. That is a lot of fun.
The last couple questions we have before we get out of here is – the two thing things we want to talk about is sort of wrapping up but we will wrap up by talking how should we deliver this? Let’s pretend that Sarah and I go absolutely bisserk and get this done.
Sarah: Because we have to.
Matt: August is coming. Sort of the inverse “Game of Thrones” fall is coming.  What is the best way to deliver this?
How do we make this available to the most people? We’re doing it on GitHub because we are semi-comfortable doing that and using a platform that allows for others to join in and collaborate but that is going to come at a cost. There is going to be some people who probably won’t collaborate because they are not comfortable with GitHub.
Other thoughts on that?
pie in the sky version is it is a web page that generates it based on modules you select.
Sarah: That is what Aron (Pilhofer) said. It generates a read the doc kind of thing.
Matt: I have $8 American dollars I will give to who want to try to build that website. Go ahead.
I think Sarah mentioned this toward the end of the last set but some way of rendering that out to a printable format that doesn’t look like a GitHub markdown render.
Sarah: No, because that is in intimidatng to a lot of people.
A lot of people would like to print their stuff out. I see a lot of students printing out a lot of stuff that is easier for them to read it offline.
Matt: Go ahead.
In my intro stat class I used the open book which has freely available PDF and a kindle and they have a paper print version.
It is $9 and almost all the students buy it and write all over it and they would love having the physical thing.
Sarah: How does that work? Do they make just one version of it?
They just have one version but I think through lean hub you might be able to generate the one you want and get it printed.
That will be cool. I don’t want your $8 but I will talk to you about it.
I think have some markdown rendered scripts I used for some things.
Matt: I thought about wanting to script this. I cannot believe I am the first person that wanted to turn markdown into something else.
Bookdown.
Sarah: What is Bookdown?
Just what it says it makes books.
Sarah: Does it already exist?
Yes, it does.
Does Jupiter have a book?
Matt: Yes, you can render them out as PDF.
Jupiter renders in GitHub also.
Matt: We talked about using Jupiter notebook for this and for no good real reason I went ahead and went with Markdown even though I was copy and pasting stuff out of the Jupiter notebooks to make this.
Sarah: I think with Jupiter notebooks you are limiting what you are using. It is hard to do Excel. You are taking it into a technology that people are not comfortable with at this point.
I just mean for formatting.
Matt: I love Jupiter Notebooks but their support for R is horrid. Beyond the stuff they have to install, if you want to install something that is not in their core, it will break everything.
I went through that nightmare this last semester so the scars are fresh.
The other side of that is there is this technical side of how do we put it together and we really like this idea of yes, click, click, click, poof here is your syllabus, here is your stuff, go forth and do good works.
Sarah: And do chapter 3.
Matt: Your chapter 3 is your chapter 3 and it will automatically number them however you want to do it. How do we spread the word about this? How do we get this in the hands of faculty? How do we get this to students? How do we broadbroaden this beyond a university setting? Ari Icar has done great work with these things but I think there is a large number of people that can’t go to the conferences and want to get there and learn this stuff. I am happy to take their money and give them a graduate certificate in this but it doesn’t make me extra money. I don’t want to do that if they can pull this up and use it.
What about high schools and high school journalism teachers?
Matt: If we do that then I have nothing to do at the university so I would like to keep getting the sort of I know what journalism is but I can’t write kid because then I have stuff to do so my mortgage lender says no. But, no, that is – I think –
That is what this looks like.
This doesn’t look college level.
Matt: You been to college lately? No, actually, I think there is a sort of a limited place that we can go with that of sort of numeracy. I asked students if they have used a spreadsheet and it is a business class. They never thought of it as a tool for journalism so there is stuff we can do there.
I think one option is just like start talking to folks who do, like, it is related to JSON and folks that teach programming classes and six week courses or whatever because they have at least worked with this idea of how you can do ad hoc classes outside of the college environment. I forget all the names of them. We talked to them and talk to maybe whoever does, like, you know, I am sure Nebraska has a satellite or continuing ed thing and how they set them up.
Matt: Indeed one of the things I am doing this summer is building an online 8-week graduate course in data-journalism. So if you want to take a data-journalism course with me online something like spring 2019 it should be available.
I think it is probably good to do both classes in the same trek. Sort of the folks who do, you know, whatever, Flat Iron or these training things to see how they structure a course, to see what makes criteria for yes, we would do this or wouldn’t do this.
Sarah: And also probably the Knight Center of Texas.
O’Reilly spends a lot of time thinking about publishing and what publishing can look like.
As a resource for thinking about what if we did publish this and do they have any creative ideas or tools about publishing something that includes some mechanisms for that kind of, like, customization.
And then you get to pick an animal.
You can be a mountain lion.
Matt: Definitely a mountain lion. We are out of time but if you are interested in joining me on this foolish crusade. We would love to have you. We would love to involve you. We would love to sponge off their labors.
Please talk to us and let us know and we will figure this out as we go along.
Sarah: If you have passion for one of those topics, it is yours. There is plenty of room.
Matt: It is all yours. We have a template going on.
Sarah: We forgot to mention that somebody had great idea to add to the template at the bottom of every section and how it would all go horribly wrong.
Matt: I have examples from my own career for you. Folks, thank you very much for coming out here and for all the help. This has been wonderful.
Sarah: Thank you so much.


{EventEmitter} = require "events"
HttpServer = require "./http_server"
DnsServer = require "./dns_server"
fs = require "fs"
path = require "path"
module.exports = class Daemon extends EventEmitter
A Daemon
is the root object in a Pow process. It’s responsible for
starting and stopping an HttpServer
and a DnsServer
in tandem.
{EventEmitter} = require "events"
HttpServer = require "./http_server"
DnsServer = require "./dns_server"
fs = require "fs"
path = require "path"
module.exports = class Daemon extends EventEmitter
Create a new Daemon
with the given Configuration
instance.
constructor: (@configuration) ->
HttpServer
and DnsServer
instances are created accordingly.
@httpServer = new HttpServer @configuration
@dnsServer = new DnsServer @configuration
The daemon stops in response to SIGINT
, SIGTERM
and
SIGQUIT
signals.
process.on "SIGINT", @stop
process.on "SIGTERM", @stop
process.on "SIGQUIT", @stop
Watch for changes to the host root directory once the daemon has
started. When the directory changes and the restart.txt
file
is present, remove it and emit a restart
event.
hostRoot = @configuration.hostRoot
@restartFilename = path.join hostRoot, "restart.txt"
@on "start", => @watcher = fs.watch hostRoot, persistent: false, @hostRootChanged
@on "stop", => @watcher?.close()
hostRootChanged: =>
fs.exists @restartFilename, (exists) =>
@restart() if exists
Remove the ~/.pow/restart.txt
file, if present, and emit a
restart
event. The pow
command observes this event and
terminates the process in response, causing Launch Services to
restart the server.
restart: ->
fs.unlink @restartFilename, (err) =>
@emit "restart" unless err
Start the daemon if it’s stopped. The process goes like this:
error
event and abort.error
event and abort.start
event and
mark the daemon as started. start: ->
return if @starting or @started
@starting = true
startServer = (server, port, callback) -> process.nextTick ->
try
server.on 'error', callback
server.once 'listening', ->
server.removeListener 'error', callback
callback()
server.listen port
catch err
callback err
pass = =>
@starting = false
@started = true
@emit "start"
flunk = (err) =>
@starting = false
try @httpServer.close()
try @dnsServer.close()
@emit "error", err
{httpPort, dnsPort} = @configuration
startServer @httpServer, httpPort, (err) =>
if err then flunk err
else startServer @dnsServer, dnsPort, (err) =>
if err then flunk err
else pass()
Stop the daemon if it’s started. This means calling close
on
both servers in succession, beginning with the HTTP server, and
waiting for the servers to notify us that they’re done. The daemon
emits a stop
event when this process is complete.
stop: =>
return if @stopping or !@started
@stopping = true
stopServer = (server, callback) -> process.nextTick ->
try
close = ->
server.removeListener "close", close
callback null
server.on "close", close
server.close()
catch err
callback err
stopServer @httpServer, =>
stopServer @dnsServer, =>
@stopping = false
@started = false
@emit "stop"


Keeping in line with NSBM’s vision of producing globally employable graduates, NSBM’s IT R&D and Business Incubation Center was declared open last week under the distinguished patronage of Hon. Dr. Sarath Amunugama – Minister of Science, Technology, Research, Skills Development and Vocational Training & Upcountry Heritage at the Students Center of NSBM Green University Town, Pitipana, Homagama.
At this phase, three companies namely 99X Technology Limited, Omobio Private Limited and Creative Technology Solutions Private Limited (Creative Software) have commenced operations and offered 30 full time internship opportunities to undergraduates of NSBM to undergo training within this NSBM IT R&D and Business Incubation Centre.
Hon. Dr. Sarath Amunugama also participated in the event of the official exchange of MoUs with Mr. Anura Adikari – Senior Tech Lead & University Relationship Manager of 99X Technology, Mr. Sushena Ranathuna – CEO of Creative Software, and Mr. Eranga Weeraratne - CEO of Omobio, which was followed by the handover of letters of appointment to the NSBM undergraduates who have attained internships with the aforementioned companies.
NSBM’s ‘Industry Partnership Program’(IPP) is designed to optimize synergies among the Industry Partners and NSBM in relation to Entry Level Talent Acquisition (Internship / Training), Employer Brand Building, Knowledge Sharing, Corporate Brand Building, Special Projects, Incubation / Entrepreneurship Development and Talent Acquisition of fresh graduates.
All undergraduate programs of NSBM are designed to enable the students to gain the much-needed Industry Exposure, on a full-time basis, from the end of their 2nd year of study onwards, where lectures for 3rd and 4thyears are conducted only on weekends. This is a unique feature of NSBM which assures employability of graduates.
NSBM Green University Town (www.nsbm.lk ) is a fully pledged University Town, built on a 26-acre premise at Homagama. It will record the highest student population among the state and private universities by the end of year 2018. NSBM offers UGC approved and foreign undergraduate and post-graduate programmes in three streams, namely; Business Management, Computing and Engineering.
Mrs. Sandya Wijebandara - Secretary of the Science, Technology, Research, Skills Development and Vocational Training and Upcountry Heritage, Mr. P. Ranepura - Chairman of NSBM, Dr. E. A. Weerasinghe – Vice Chancellor of NSBM, Mr. Chaminda Rathnayake - Deputy Vice Chancellor of NSBM, Mr. Chaminda Wijesinghe, Dean – School of Computing, Academic and Non-academic members of NSBM and other distinguished invitees were among the participants


It establishes a SSH connection between the SSH client and the SSH server.
SSH listens on a local port established when the connection was set up. Any connection
made to this port is forwarded through the secure SSH tunnel and sent on to a predefined
remote host and port.
SSH local port forwarding is set up with the following command on the attacker’s
system:
# ssh -L 80:<IP_ADDRESS>:80<EMAIL_ADDRESS>The syntax of the command is
ssh –L port:destination_host:destination_port username@pivot_host
where port is the local port that listens
destination_host is the target host IP or hostname,
destination_port is the port listening on the target host,
username is the user name on the pivot host,
pivot_host is the IP address or hostname of the server being used as the pivot point
Using SSH local port forwarding assumes that SSH server is running on the
compromised host that will be used for pivoting. If it is not installed or running, then
activating it depends upon the conditions established in Rules of Engagement for the
penetration test.
If you jump over multiple hosts, always use the listening IP aswell:
ssh -L <listenip>:<listenport>:<targetip>:<targetport> <user>@<remotehost>
WINDOWS Port Forwarding
SSH Portforwading on Windows
bind local port X on remote server Y port Z (reverse tunnel):
plink.exe -R Z:<IP_ADDRESS>:X user@Y


Motivation
How does life look through the 'pleasure, passion and purpose' lens?
In Chapter 6 of 'Search Inside Yourself' we are introduced to Tony Hseih who's a young man who has been very successful including leading Zapos from 0 to $1bn+ in revenue through creating outstanding staff
culture and excellent customer experiences.
Tony has great insights in the process of happiness in the context of work. He describes three types of happiness: pleasure, passion, and higher purpose.
Pleasure
This type of happiness is about always chasing the next high. It is the rock-star type of happiness because it is very hard to maintain unless you are living the lifestyle of a rock star.
Passion
Also known as “flow,” where peak performance meets peak engagement, and time flies by.
Higher Purpose
This is about being part of something bigger than yourself that has meaning to you.
Within these three, their sustainability varies. It shows that the happiness that arises from pleasure is highly unsustainable because once your pleasurable stimulus ceases, or if you habituate to it, then your happiness returns to your default set point.
Happiness that arises from flow is much more sustainable and you are far less likely to habituate to it. Happiness arising from higher purpose, in contrast, is highly sustainable. This form of happiness is very resilient and can last for a very long time, especially if that higher purpose has an altruistic origin.
From the 'discovering values and higher purpose' exercise,
What are your core values?
What do you stand for?
To find our passion and our purpose, the secret lies in self-awareness and specifically self-assessment. What are we good at? What are we not good at? What do we like to do? What do we not like to do? I have asked these questions too myself a lot recently, which has have led me down the path to do this course.
I love innovation, collaboration and being part of a productive, exciting culture. I want to enjoy, that means being part of something that is ever-evolving. My aim through this course is too either land a job in a modern tech company or start my own tech company, with an innovative working environment, creating new apps and websites.
How did you find the resilience ideas and meditation exercise?
This excercise involves by firstly calming the mind with 3 deep breaths, and also by focusing on different sensations in the body. Next it shifts into an experience of failure for 4 minutes whereby you observe all the associated emotions and see how they manifest in the body.
Your job is too see if we can create the ability to experience all those emotions without aversion. Consider these emotions you are experiencing as simply physiological sensations. That is all. They may be unpleasant, but they are simply experiences. Let’s simply allow these experiences
to be present, to come as they wish, and to go as they wish. Just let them be, in a kind, gentle, generous way. Your next step is too repeat the exact same process for instead a feeling of success for 4 minutes. Finally, you just be present for 3 minutes. Check in with your body and how it feels now.
Take a deep breath and let go. Continue a relaxed attention on breathing and, if you feel so inclined, bring a hand up to rest on the chest.  I found this exercise useful as per the aversion definition: a feeling of repugnance toward something with a desire to avoid or turn from it.
Remembering to allow thoughts too come and go intead of avoiding them.
Any other musings?
Cheng talks to us about three easy steps to self motivation:
Alignment
Ensuring that what you are doing lines up with what you value most in life.
Envisioning
Once you are aligned, envision where you want to be. What is your ideal future?
Resilience
When your values are aligned and you can see your ideal future, resilience will help get you there.
Also the 3 most intrinsic motivators which drive people to do their best work:
Autonomy
The ability to direct our own lives.
Mastery
The desire to become better and better at a craft we really enjoy.

Research shows that these 3 motivators are more effective in motivating better work and greater creativity than an increase in pay alone.
Another great point Cheng touches on is how failue is the beginning, and the most important part, of success.
In order to succeed, you have to tackle the unknown, and in doing so we all risk facing failure. The real measure of success is not being able to never fail, but in how high we bounce back from failure.


Home
(current)
About
Info
Map
Food Donation Tracker
(Byte&Hunger)
Fill out the form below to generate your tax deduction form.
Tax Deduction Form
Food Name
Unit of Measure
Quantity
Cost of Goods
Tax Deduction
Health Score
Remove
Print Form
Add Food Item
Food Name
Unit of Measure
Quantity
Cost of Goods
Submit