--- layout: default title: Carl Shan ---
My name is Carl.
I currently work as a Senior Data Scientist at LinkedIn on the Economic Graph team.
I was formerly a high school computer science teacher at Nueva, a school in San Mateo, CA. Before then, I was a 2016 Education Pioneers Fellow working at the national charter network Rocketship Education in Redwood City. Before that, I was a 2014 receipient of the University of Chicago's Data Science for Social Good Fellowship, allowing me to work under Professor Rayid Ghani at the Center for Data Science and Public Policy.
I'm interested in using my background and experience in machine learning, statistics and computer science to contribute to societal issues around poverty, health and education.
I graduated with high honors from UC Berkeley in 2013, where I majored in Statistics with coursework in philosophy, computer science and took a number of graduate-level courses in education.
I value curiosity, kindness, introspection, gratitude and play. Although I don't always succeed, I try to act in consistency with my values and stated beliefs.
You can get in touch with me at<EMAIL_ADDRESS>See this link for a list of books I've authored.


Oem extension object.
This type describes the status and health of a resource and its children.
| string (enum) | This represents the health state of this resource in the absence of its dependent resources. See Health in Property Details, below, for the possible values of this property. | ||
| string (enum) | This represents the overall health state from the view of this resource. See HealthRollup in Property Details, below, for the possible values of this property. | ||
| object | Oem extension object. | ||
| string (enum) | This indicates the known state of the resource, such as if it is enabled. See State in Property Details, below, for the possible values of this property. |
This represents the health state of this resource in the absence of its dependent resources.
| string | Description |
|---|---|
| Critical | A critical condition exists that requires immediate attention. |
| OK | Normal. |
| Warning | A condition exists that requires attention. |
This represents the overall health state from the view of this resource.
| string | Description |
|---|---|
| Critical | A critical condition exists that requires immediate attention. |
| OK | Normal. |
| Warning | A condition exists that requires attention. |
This indicates the known state of the resource, such as if it is enabled.
| string | Description |
|---|---|
| Absent | This function or resource is not present or not detected. |
| Deferring | The element will not process any commands but will queue new requests. |
| Disabled | This function or resource has been disabled. |
| Enabled | This function or resource has been enabled. |
| InTest | This function or resource is undergoing testing. |
| Quiesced | The element is enabled but only processes a restricted set of commands. |
| StandbyOffline | This function or resource is enabled, but awaiting an external action to activate it. |
| StandbySpare | This function or resource is part of a redundancy set and is awaiting a failover or other external action to activate it. |
| Starting | This function or resource is starting. |
| UnavailableOffline | This function or resource is present but cannot be used. |
| Updating | The element is updating and may be unavailable or degraded. |


RIASEC/Holland Code test
holland
A data frame with 18231 rows and 68 variables:
R1
Test the quality of parts before shipment
R2
Lay brick or tile
R3
Work on an offshore oil-drilling rig
R4
Assemble electronic parts
R5
Operate a grinding machine in a factory
R6
Fix a broken faucet
R7
Assemble products in a factory
R8
Install flooring in houses
I1
Study the structure of the human body
I2
Study animal behavior
I3
Do research on plants or animals
I4
Develop a new medical treatment or procedure
I5
Conduct biological research
I6
Study whales and other types of marine life
I7
Work in a biology lab
I8
Make a map of the bottom of an ocean
A1
Conduct a musical choir
A2
Direct a play
A3
Design artwork for magazines
A4
Write a song
A5
Write books or plays
A6
Play a musical instrument
A7
Perform stunts for a movie or television show
A8
Design sets for plays
S1
Give career guidance to people
S2
Do volunteer work at a non-profit organization
S3
Help people who have problems with drugs or alcohol
S4
Teach an individual an exercise routine
S5
Help people with family-related problems
S6
Supervise the activities of children at a camp
S7
Teach children how to read
S8
Help elderly people with their daily activities
E1
Sell restaurant franchises to individuals
E2
Sell merchandise at a department store
E3
Manage the operations of a hotel
E4
Operate a beauty salon or barber shop
E5
Manage a department within a large company
E6
Manage a clothing store
E7
Sell houses
E8
Run a toy store
C1
Generate the monthly payroll checks for an office
C2
Inventory supplies using a hand-held computer
C3
Use a computer program to generate customer bills
C4
Maintain employee records
C5
Compute and record statistical and other numerical data
C6
Operate a calculator
C7
Handle customers' bank transactions
C8
Keep shipping and receiving records
TIPI1
Extraverted, enthusiastic.
TIPI2
Critical, quarrelsome.
TIPI3
Dependable, self-disciplined.
TIPI4
Anxious, easily upset.
TIPI5
Open to new experiences, complex.
TIPI6
Reserved, quiet.
TIPI7
Sympathetic, warm.
TIPI8
Disorganized, careless.
TIPI9
Calm, emotionally stable.
TIPI10
Conventional, uncreative.
education
factor. How much education have you completed?
urban
factor. What type of area did you live when you were a child?
gender
factor. What is your gender?
age
integer. Age in years.
hand
factor. What hand do you use to write with?
religion
factor. What is your religion?
voted
factor. Have you voted in a national election in the past year?
married
factor. What is your marital status?.
familysize
integer.  If you attended a university, what was your major?
Dataset obtained from the Open-Source Psychometrics Project.
This is a nonrandom subset of the larger online data collected between 2015-2018. The sample has been restricted to a US sample with the most commonly identified majors and religions. Not all variables were selected.
The RIASEC has 48 items, rated on a 1-5 scale of how much they would like to perform that task, with the labels 1=Dislike, 3=Neutral, 5=Enjoy. The form 6 scales:
Doer - prefers technical, outdoor and athletic pursuits
Thinker - prefers scientific, research and intellectual pursuits
Creator - prefers creative, imaginative and intuitive pursuits
Helper - prefers helping, and developing and interpersonal pursuits
Persuader - prefers leadership, influencing and persuasive pursuits
Organizer - prefers data management, numerical and organizational pursuits
TIPI1 through TIPI10 are the Ten Item Personality Inventory (see Gosling, S. D., Rentfrow, P. J., & Swann, W. B., Jr. (2003). A Very Brief Measure of the Big Five Personality Domains. Journal of Research in Personality, 37, 504-528.).


pragma solidity ^0.4.23;
import "./IProxy.sol";
import "../lifecycle/Pausable.sol";
/**
* @title PausableProxy
* @dev Gives the possibility to delegate any call to a foreign implementation and pause contract execution
*/
contract PausableProxy is IProxy, Pausable {
/**
* @dev Constructor function
* @param _aclAddress Address of the ACL contract to be used for pausing/unpausing authorization
*/
constructor(address _aclAddress) Pausable(_aclAddress) public { }
/**
* @dev Tells the address of the implementation where every delegate call will be delegated
* @return Address of the implementation to which contract calls will be delegated
*/
function implementation() public view returns (address);
/**
* @dev Fallback function that performs a delegatecall to the given implementation
* @return This function will return whatever the implementation call returns
*/
function () payable whenNotPaused public {
address _implementation = implementation();
require(_implementation != address(0), "Implementation address not set");
assembly {
let ptr := mload(0x40)
calldatacopy(ptr, 0, calldatasize)
let result := delegatecall(gas, _implementation, ptr, calldatasize, 0, 0)
let size := returndatasize
returndatacopy(ptr, 0, size)
switch result
case 0 { revert(ptr, size) }
default { return(ptr, size) }
}
}
/**
* @dev Returns true for contracts that adhere to the Proxy interface
* @return Always returns true for this contract
*/
function isProxy() public pure returns (bool) {
return true;
}
} |


Cloud Computing and Complexity
The business of Information Technology (IT) has a complexity problem.
As a domain IT requires deeply specialized skills, the language of IT is arcane and business needs require multiple levels of translation and interpretation before being implemented as systems. This conceptual complexity creates a significant barrier between business and IT leadership. But there’s a bigger problem: The most complex issue facing IT today is technology itself.
The IT infrastructure of most reasonably sized businesses is a horrendous cats cradle of interconnection and information flow between multiple aging systems that were never designed to work together and yet the emergence of horizontally integrated - and increasingly globally distributed - business processes demands and depends on the friction free flow of information.
Time-to-Value is perhaps the most important metric in today’s dynamic, competitive service-led economy but against this measure most corporate IT organizations fail miserably. The requirement for IT to keep pace with the speed of business has never been greater but the ugly reality for most CIOs is that the complexity of their IT infrastructures is overwhelming and an increasing percentage of IT budgets is now spent on maintaining and integrating aging legacy systems rather than delivering new value to the business.
No wonder most CEOs are skeptical about the strategic value of IT.
Scarcity and Complexity
Our legacy IT systems are inflexible, difficult to integrate with each other and require incredible effort and resources to transform to meet the needs of modern business strategies and service models. Even when we do successfully integrate multiple systems the cost of operating and maintaining these complex - and fragile - environments is unacceptably high.
The vast majority of business IT systems operating today are the product of what Zysman and I call the “Era of Scarcity” - the period until 2006 where computation, storage, program memory and bandwidth were treated as scarce and often incredibly expensive resources.
As a result of the resource economics of the “Era of Scarcity” the architecture of IT systems focused on shepherding and optimizing the resources used every layer of software in the architecture.
An IT system designed during the “Era of Scarcity” can be likened to a finely crafted watch. Each part is precisely engineered and is highly optimized for its function and each part has a distinct role to play. The parts making up a pocket watch cannot easily be transformed into a wrist watch: So it is with most IT systems today.
Wrist watches and today’s IT infrastructures are examples of tightly coupled systems. Each component of the system is designed and optimized to work only within a unique context. The drive to high degrees of optimization means that parts cannot be shared or re-used in other contexts. It also means that the failure of one part - more often than not - causes a failure of the entire system: Tightly coupled systems are often highly fragile.
The more tightly coupled a system is the more difficult it becomes to add new capabilities and to integrate one system with another. Tightly coupled systems are optimized within themselves but create significant friction when we try to use them in a broader context not anticipated by the original designers.
The overwhelming complexity of most business IT infrastructures arose directly from the historic need to build tightly coupled systems in order optimize the use of scare computing resources. As we now attempt to satisfy the needs of complex global business models the many limitations of this tightly coupled approach are becoming abundantly clear.
That most IT departments are today failing to deliver new capability at the rate demanded by the business is no surprise. The complexity and fragility of systems designed during the “Era of Scarcity” makes them not fit for purpose for the era we are now entering.
Abundance and Opportunity
In 2006 Amazon launched their new “Amazon Web Services” business. Amazon placed a bet on the coming “Era of Abundance” when computing resources would be both cheap and essentially unlimited.
The economics of computing crossed a threshold in 2006. Computation, storage and - increasingly - network bandwidth had become commodities. As the supply of available computational power outstripped demand, prices declined and Amazon saw an opportunity to become the de facto utility provider of this new era.
As was the case during the “Era of Scarcity” the new commodity economics of the “Era of Abundance” is driving a fundamental shift in IT systems architecture. This new approach to architecture is commonly referred to as “Cloud Computing.” [A short guide to cloud computing can be found here]
If a tightly coupled approach to application and systems architecture was the optimal solution during the “Era of Scarcity” then the opposite - loosely coupled - approach is the defining characteristic of abundant cloud computing architectures.
Abundant and cheap computing resources mean that systems today can be designed to be flexible from the start.
Modern cloud based applications are designed to scale elastically as user demand waxes and wanes. New cloud based approaches to data storage keep multiple copies of data in different locations to improve performance and reliability. Multiple layers of management software are used to decouple applications from the underlying infrastructure to improve scalability and reliability.
Well designed cloud computing systems take a “Lego building block” approach to their architecture. The APIs - Application Programming Interfaces - between components are a contract defined using standard and open protocols. These contracts are the glue that define the structure of loosely coupled cloud architectures.
The use of APIs between system components is the key to building loosely coupled systems. This approach enables different systems - designed independently - to be rapidly integrated and re-configured as needed by the business. Individual building blocks can be replaced over time as new technologies and better approaches become available. Systems based on cloud architectures are designed from the start to be both composable and reconfigurable.
The Great Decoupling
The arrival of the “Era of Abundance” and with it the emergence of new cloud computing architectures may very well offer a light at the end of IT’s complexity tunnel.
The ability to now design and construct a new generation of loosely coupled business systems based on cloud computing architectures offers the opportunity for IT departments to deliver flexible, scalable, reliable and agile solutions at a pace demanded by business leaders. The concept of loose coupling may turn out to be solvent that finally dissolves IT’s historic complexity problem.
It’s interesting to note that both mobile computing and BigData are also decoupling mechanisms. Mobile computing decouples information access and physical location. New approaches to Big-Data and analytics decouple the need to understand how data is structured from questions that will be asked over that data in the future. It is the decoupling effect of these technologies that makes them such powerful transformation tools.
Accomplishing the transformation from a complex, fragile and tightly coupled legacy environment to a new generation of agile, scalable, fault-tolerant loosely coupled systems will be the defining challenge for every CIO. As difficult as the transformation might be it is now not one that can be avoided. The career of most CIOs will hinge on the outcome.
The combination of cloud computing architectures, mobile computing and Big-Data analytics represent the “Great Decoupling” of business IT. The flexibility and agility of the systems that result from this will enable a fundamental transformation in the way we do business. The powerful combination of loosely coupled business processes and IT systems will turn complexity from something we struggle to control and overcome into something we embrace and exploit.


黒の手番です。32 はどう動かしますか？
Unlimited
pips Black=151 White=167
(CorrectAnswer= 0/0, ErrorScore= 0)
1. Bar/22 23/21* eq:+0.269 53.84% (G:21.34% B:2.00%) 46.16% (G:10.67% B:0.43%) 2. Bar/23 8/5* eq:-0.068 (-0.337) 46.70% (G:18.54% B:1.91%) 53.30% (G:16.02% B:0.84%) 3. Bar/22 6/4 eq:-0.119 (-0.388) 45.91% (G:14.49% B:1.28%) 54.09% (G:15.16% B:0.50%) 4. Bar/22 8/6 eq:-0.130 (-0.399) 45.58% (G:14.56% B:1.28%) 54.42% (G:15.36% B:0.51%) 5. Bar/22 13/11 eq:-0.184 (-0.453) 44.40% (G:14.56% B:1.24%) 55.60% (G:16.98% B:0.87%)


Basic Aggregation
(agg, groupBy and groupByKey)
Apache Spark 2 / Spark SQL
@jaceklaskowski
/
StackOverflow
/
GitHub
Books:
Mastering Apache Spark
/
Spark Structured Streaming
"Explaining" Query Plans
explain
is an operator that shows the logical and physical plans
EXPLAIN [EXTENDED]
in SQL
Logical Query Plan Analyzer
is a RuleExecutor with rules to optimize query execution
Switch to Mastering Apache Spark 2
Explaining Logical and Physical Plans — explain Operator
Analyzer — Logical Query Plan Analyzer
Questions?
Read
Mastering Apache Spark 2
https://bit.ly/mastering-apache-spark
Follow
@jaceklaskowski
on twitter
Upvote
my questions and answers on StackOverflow
Use
Jacek's code at GitHub
Read
my blog posts on Medium
Upvote
my answers on Quora
Connect on
LinkedIn
Visit
Jacek Laskowski's blog


How To Open Your Company
hybridgroup.com
Good Morning
This is @highway1io
I am @deadprogram
Ringleader
@hybrid_group
hybridgroup.com
kidsruby.com
cylonjs.com
Why (and how) to make your technology open
<3
?!
Advantages To Openness
Time to market
Reduce costs
Publicity
New markets
Recruiting
Outside-in Innovation
Types of Openness
Interfaces
Implementations
Degrees of Openness
Open
Semi-open
Closed
Examples - Drones
Parrot
DJI
3D Robotics
Examples - HW Platforms
Raspberry Pi
Intel Edison
Spark Devices
Examples - Wearables
Pebble
Apple Watch
Pi
Tactics For Openness
Develop your API first
Dogfooding
Look for standards
Provide SDKs
"Hybrid" model
Stay humble
We are here to help
cylonjs.com
@cylonjs
hybridgroup.com
@hybrid_group
Thank you!
@deadprogram


Project documentation should include the results of a control flow analysis.
Control flow analysis helps find vulnerabilities caused by logic errors.
Examine project documentation to make sure it includes the results of a control flow analysis.
Perform a control flow analysis by following these steps:
Look at a function and determine each branch condition. These can include loops, if statements, and try/catch blocks.
Understand the conditions under which each block will be executed.
Move to the next function and repeat.


This subpart prescribes policies and procedures to implement Executive Order (E.O.) 13658, Establishing a Minimum Wage for Contractors, dated February 12, 2014, and Department of Labor (DOL) implementing regulations at 29 CFR part 10.
“Worker”, as used in this subpart (in accordance with 29 CFR 10.2)—
(1) Means any person engaged in performing work on, or in connection with, a contract covered by Executive Order 13658, and
(i) Whose wages under such contract are governed by the Fair Labor Standards Act (29 U.S.C. chapter 8), the Service Contract Labor Standards statute (41 U.S.C. chapter 67), or the Wage Rate Requirements (Construction) statute (40 U.S.C. chapter 31, subchapter IV),
(ii) Other than individuals employed in a bona fide executive, administrative, or professional capacity, as those terms are defined in 29 CFR part 541,
(iii) Regardless of the contractual relationship alleged to exist between the individual and the employer.
(2) Includes workers performing on, or in connection with, the contract whose wages are calculated pursuant to special certificates issued under 29 U.S.C. 214(c).
(3) Also includes any person working on, or in connection with, the contract and individually registered in a bona fide apprenticeship or training program registered with the Department of Labor’s Employment and Training Administration, Office of Apprenticeship, or with a State Apprenticeship Agency recognized by the Office of Apprenticeship.
(a) Pursuant to Executive Order 13658, the minimum hourly wage rate required to be paid to workers performing on, or in connection with, contracts and subcontracts subject to this subpart is at least $10.10 per hour beginning January 1, 2015, and beginning January 1, 2016, and annually thereafter, an amount determined by the Secretary of Labor. The Administrator of the Wage and Hour Division (the Administrator) will notify the public of the new E.O. minimum wage rate at least 90 days before it is to take effect. (See 22.1904.)
(b) Relationship with other wage rates.
(1) Nothing in this subpart shall excuse noncompliance with any applicable Federal or State prevailing wage law or any applicable law or municipal ordinance establishing a minimum wage higher than the E.O. minimum wage. However, wage increases under such other laws or municipal ordinances are not subject to price adjustment under this subpart.
(2) The E.O. minimum wage rate applies whenever it is higher than any applicable collective bargaining agreement(s) wage rate.
(c) Application to tipped workers. Policies and procedures in DOL regulations at 29 CFR 10.24(b) and 10.28 address the relationship between the E.O. minimum wage and wages of workers engaged in an occupation in which they customarily and regularly receive more than $30 a month in tips.
(a) This subpart applies to contracts covered by the Service Contract Labor Standards statute (41 U.S.C. chapter 67, formerly known as the Service Contract Act, subpart 22.10), or the Wage Rate Requirements (Construction) statute (40 U.S.C. chapter 31, Subchapter IV, formerly known as the Davis Bacon Act, subpart 22.4), that require performance in whole or in part within the United States . When performance is in part within and in part outside the United States, this subpart applies to the part of the contract that is performed within the United States.
(b)(1) This subpart applies to workers as defined at 22.1901. As provided in that definition—
(i) Workers are covered regardless of the contractual relationship alleged to exist between the contractor or subcontractor and the worker;
(ii) Workers with disabilities whose wages are calculated pursuant to special certificates issued under 29 U.S.C. 214(c) are covered; and
(iii) Workers who are registered in a bona fide apprenticeship program or training program registered with the Department of Labor’s Employment and Training Administration, Office of Apprenticeship, or with a State Apprenticeship Agency recognized by the Office of Apprenticeship, are covered.
(2) This subpart does not apply to—
(i) Fair Labor Standards Act (FLSA)-covered individuals performing in connection with contracts covered by the E.O., i.e., those individuals who perform duties necessary to the performance of the contract, but who are not directly engaged in performing the specific work called for by the contract, and who spend less than 20 percent of their hours worked in a particular workweek performing in connection with such contracts;
(ii) Individuals exempted from the minimum wage requirements of the FLSA under 29 U.S.C. 213(a) and 214(a) and (b), unless otherwise covered by the Service Contract Labor Standards statute or the Wage Rate Requirements (Construction) statute. These individuals include but are not limited to—
(A) Learners, apprentices, or messengers whose wages are calculated pursuant to special certificates issued under 29 U.S.C. 214(a);
(B) Students whose wages are calculated pursuant to special certificates issued under 29 U.S.C. 214(b); and
(C) Those employed in a bona fide executive, administrative, or professional capacity (29 U.S.C. 213(a)(1) and 29 CFR part 541).
(c) Agency Labor Advisors, as defined at 22.001, are listed at http://wdol.gov, and are available to provide guidance and assistance with the application of this subpart.
(a) For the E.O. minimum wage rate that becomes effective on January 1, 2016, and annually thereafter, the Administrator will—
(1) Notify the public of the new E.O. minimum wage rate at least 90 days before it becomes effective by publishing a notice in the Federal Register;
(2) Publish and maintain on Wage Determinations OnLine (WDOL), http://www.wdol.gov, or any successor site, the E.O. minimum wage rate; and
(3) Include a general notice on wage determinations which are issued under the Service Contract Labor Standards statute or the Wage Rate Requirements (Construction) statute. The notice will provide information on the E.O. minimum wage and how to obtain annual updates.
(b)(1) The contractor may request a price adjustment only after the effective date of a new annual E.O. minimum wage determination published pursuant to paragraph (a). Prices will be adjusted only for increased labor costs (including subcontractor labor costs) as a result of the annual E.O. minimum wage, and for associated labor costs (including those for subcontractors). Associated labor costs shall include increases or decreases that result from changes in social security and unemployment taxes and workers’ compensation insurance, but will not otherwise include any amount for general and administrative costs, overhead, or profit.
(2) The wage rate price adjustment under this clause is the lowest amount calculated by subtracting from the new E.O. wage rate the following: the current E.O. minimum wage rate; the current service or construction wage determination rate under the contract (if the wage rate is applicable to that worker); or the actual wage currently paid the worker. If the amount is zero or below, there will be no increase paid for this worker.
(3) The contracting officer shall not adjust the contract price for any costs other than those identified in paragraph (b)(1) of this section, and shall not provide duplicate price adjustments with any price adjustment under clauses implementing the Service Contract Labor Standards statute or the Wage Rate Requirements (Construction) statute.
(a) Authority.
(1) Section 5 of the E.O. grants the authority for investigating potential violations of, and obtaining compliance with, the E.O. to the Secretary of Labor. The Secretary of Labor, in promulgating the implementing regulations required by Section 4 of the E.O., has assigned this authority to the Administrator. Contracting agencies do not have authority to conduct compliance investigations under 29 CFR part 10 as implemented in this subpart. This does not limit the contracting officer’s authority to otherwise enforce the terms and conditions of the contract.
(2) Contracting officers shall withhold payment at the direction of the Administrator.
(3) The contracting officer shall withhold payment, without a request from the Administrator, if the contractor fails to comply with the requirements in paragraph (e)(2) of 52.222-55, Minimum Wages Under Executive Order 13658 to furnish payroll records, until such time as the noncompliance is corrected.
(b) Complaints.
(1) Complaints may be filed with the contracting officer or the Administrator by any person, entity, or organization that believes a violation of this subpart has occurred.
(2) The identity of any individual who makes a written or oral statement as a complaint or in the course of an investigation, as well as portions of the statement which would reveal the individual’s identity, shall not be disclosed in any manner to anyone other than Federal officials without the prior consent of the individual, unless otherwise authorized by law.
(3) Upon receipt of a complaint, or if notified that the Administrator has received a complaint, the contracting officer shall report the following information, within 14 days, if available without conducting an investigation, to the Department of Labor, Wage and Hour Division, Office of Government Contracts, 200 Constitution Avenue N.W., Room S3006, Washington, D.C. 20210.
(i) The complaint or description of the alleged violation;
(ii) Available statements by the worker, contractor, or any other person regarding the alleged violation;
(iii) Evidence that clause 52.222-55, Minimum Wages Under Executive Order 13658, was included in the contract;
(iv) Information concerning known settlement negotiations between the parties, if applicable; and
(v) Any other relevant facts known to the contracting officer or other information requested by the Wage and Hour Division.
(c) Investigations. Complaints will be investigated by the Administrator, if warranted, in accordance with the procedures in 29 CFR part 10.43.
(d) Remedies and sanctions–
(1) Unpaid wages. When the Administrator’s investigation reveals that a contractor has failed to pay the applicable E.O. minimum wage, the Administrator will notify the contractor and the contracting agency of the unpaid wage violation, and request that the contractor remedy the violation. If the contractor does not remedy the violation, the Administrator may direct withholding of payments due on the contract or any other contract between the contractor and the Federal Government. Upon final decision and direction of the Administrator, the contracting agency shall transfer the withheld funds to the Department of Labor for disbursement in accordance with the procedures at 22.406-9(c).
(2) Antiretaliation. When a contractor has been found to have violated paragraph (i) of clause 52.222-55, Minimum Wages Under Executive Order 13658, the Administrator may provide for relief to the worker in accordance with 29 CFR 10.44.
(3) Debarment.
(i) The Department of Labor may initiate debarment proceedings under 29 CFR 10.52 whenever a contractor is found to have disregarded its obligations under 29 CFR part 10.
(ii) Contracting officers shall consider notifying the agency suspending and debarring official in accordance with agency procedures when a contractor commits significant violations of contract terms and conditions related to this subpart.
(4) Retroactive inclusion of contract clause. If a contracting agency fails to include the contract clause in a contract to which the E.O. applies, the contracting agency, on its own initiative or within 15 calendar days of notification by an authorized representative of the Department of Labor, shall incorporate the contract clause in the contract retroactive to commencement of performance under the contract through the exercise of any and all authority that may be needed (including, where necessary, its authority to negotiate or amend, its authority to pay any necessary additional costs, and its authority under any contract provision authorizing changes, cancellation and termination).
Insert the clause at 52.222-55, Minimum Wages Under Executive Order 13658, in solicitations and contracts that include the clause at 52.222-6, Construction Wage Rate Requirements, or 52.222-41, Service Contract Labor Standards, where work is to be performed, in whole or in part, in the United States (the 50 States and the District of Columbia).


Attention: Cannot create, delete or edit buckets while rebalance is running.
Attention: Maximum number of buckets has been reached. For optimal performance, no more than {{bucketsCtl.maxBucketCount}} buckets are allowed.


--- title: Posts description: "An archive of posts" layout: default --- {% for post in site.categories.posts %}
{{ post.excerpt | strip_html }}


Welcome To ABC BookStore Admin Panel

Sign Out

Customer Details
Transaction Details
Add Book & Other
Add Book
Add Author
Add Publisher
Insert Employee Details
Employee ID
Employee Name
Salary
Date Of Join
Depertment


You have been successfully subscribed
Some text
Tag
32
John Doe
Creator
Nested grid six columns
Nested grid six columns
Website stats
+ 14,050 visitors
Open
Fri Aug 15, 2014
London
21º max
8º min
Visitors
2,345


|
ADI iSensor FX3 Firmware
v2.8.4-pub
Firmware for the Analog Devices iSensor FX3 Evaluation Platform. This firmware is built upon libraries provided by Cypress, and can be compiled using the Cypress EZ USB Suite
|
Header file for the streaming thread. More...
#include "main.h"
Go to the source code of this file.
Macros | |
| #define | STREAMTHREAD_STACK (0x0800) |
| #define | STREAMTHREAD_PRIORITY (8) |
Functions | |
| void | AdiStreamThreadEntry (uint32_t input) |
| The entry point function for the StreamThread. Handles all streaming data captures. More... | |
Header file for the streaming thread.
Copyright (c) Analog Devices Inc, 2018 - 2020 All Rights Reserved.
THIS SOFTWARE UTILIZES LIBRARIES DEVELOPED AND MAINTAINED BY CYPRESS INC. THE LICENSE INCLUDED IN THIS REPOSITORY DOES NOT EXTEND TO CYPRESS PROPERTY.
Use of this file is governed by the license agreement included in this repository.
| #define STREAMTHREAD_PRIORITY (8) |
StreamThread execution priority for the thread scheduler
| #define STREAMTHREAD_STACK (0x0800) |
StreamThread allocated stack size (2KB)
| void AdiStreamThreadEntry | ( | uint32_t | input | ) |
The entry point function for the StreamThread. Handles all streaming data captures.
| input | Unused input required by the RTOS thread manager |
This function runs in its own thread and handles real-time, burst, generic, and transfer streaming processes. Either type of stream can be kicked off by executing the appropriate set-up routine and then triggering the corresponding event flag.


Package org.apache.qpid.protonj2.client
Class SessionOptions
- java.lang.Object
-
- org.apache.qpid.protonj2.client.SessionOptions
-
public class SessionOptions extends java.lang.Object
Options that control the behavior of theSession
created from them.
-
-
Field Summary
Fields Modifier and Type Field Description static int
DEFAULT_SESSION_INCOMING_CAPACITY
The default Session configured incoming capacity limit to provide to the remotestatic int
DEFAULT_SESSION_OUTGOING_CAPACITY
The default Session configured outgoing capacity to apply to local pending writes.
-
Constructor Summary
Constructors Constructor Description SessionOptions()
Create a newSessionOptions
instance configured with default configuration settings.SessionOptions(SessionOptions options)
Create a new SessionOptions instance that copies the configuration from the specified source options.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description SessionOptions
clone()
long
closeTimeout()
SessionOptions
closeTimeout(long closeTimeout)
Configures the timeout used when awaiting a response from the remote that a request to close aSession
as been honored.SessionOptions
closeTimeout(long timeout, java.util.concurrent.TimeUnit units)
protected SessionOptions
copyInto(SessionOptions other)
Copy all options from thisSessionOptions
instance into the instance provided.java.lang.String[]
desiredCapabilities()
SessionOptions
desiredCapabilities(java.lang.String... desiredCapabilities)
long
drainTimeout()
SessionOptions
drainTimeout(long drainTimeout)
Sets the drain timeout (in milliseconds) after which aReceiver
request to drain link credit is considered failed and the request will be marked as such.SessionOptions
drainTimeout(long timeout, java.util.concurrent.TimeUnit units)
Sets the drain timeout value after which aReceiver
request to drain link credit is considered failed and the request will be marked as such.int
incomingCapacity()
SessionOptions
incomingCapacity(int incomingCapacity)
Sets the incoming capacity for aSession
the created session.java.lang.String[]
offeredCapabilities()
SessionOptions
offeredCapabilities(java.lang.String... offeredCapabilities)
long
openTimeout()
SessionOptions
openTimeout(long openTimeout)
Configures the timeout used when awaiting a response from the remote that a request to open aSession
has been honored.SessionOptions
openTimeout(long timeout, java.util.concurrent.TimeUnit units)
int
outgoingCapacity()
SessionOptions
outgoingCapacity(int outgoingCapacity)
Sets the outgoing capacity for aSession
the created session.java.util.Map<java.lang.String,java.lang.Object>
properties()
SessionOptions
properties(java.util.Map<java.lang.String,java.lang.Object> properties)
long
requestTimeout()
SessionOptions
requestTimeout(long requestTimeout)
Configures the timeout used when awaiting a response from the remote that a request to perform some action such as starting a new transaction.SessionOptions
requestTimeout(long timeout, java.util.concurrent.TimeUnit units)
Configures the timeout used when awaiting a response from the remote that a request to perform some action such as starting a new transaction.long
sendTimeout()
SessionOptions
sendTimeout(long sendTimeout)
Configures the timeout used when awaiting a send operation to complete.SessionOptions
sendTimeout(long timeout, java.util.concurrent.TimeUnit units)
Configures the timeout used when awaiting a send operation to complete.
-
-
-
Field Detail
-
DEFAULT_SESSION_INCOMING_CAPACITY
public static final int DEFAULT_SESSION_INCOMING_CAPACITY
The default Session configured incoming capacity limit to provide to the remote- See Also:
- Constant Field Values
-
DEFAULT_SESSION_OUTGOING_CAPACITY
public static final int DEFAULT_SESSION_OUTGOING_CAPACITY
The default Session configured outgoing capacity to apply to local pending writes.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
SessionOptions
public SessionOptions()
Create a newSessionOptions
instance configured with default configuration settings.
-
SessionOptions
public SessionOptions(SessionOptions options)
Create a new SessionOptions instance that copies the configuration from the specified source options.- Parameters:
options
- The SessionOptions instance whose settings are to be copied into this one.
-
-
Method Detail
-
clone
public SessionOptions clone()
- Overrides:
clone
in classjava.lang.Object
-
copyInto
protected SessionOptions copyInto(SessionOptions other)
Copy all options from thisSessionOptions
instance into the instance provided.- Parameters:
other
- the target of this copy operation.- Returns:
- this options class for chaining.
-
closeTimeout
public long closeTimeout()
- Returns:
- the timeout used when awaiting a response from the remote when a resource is closed.
-
closeTimeout
public SessionOptions closeTimeout(long closeTimeout)
Configures the timeout used when awaiting a response from the remote that a request to close aSession
as been honored.- Parameters:
closeTimeout
- Timeout value in milliseconds to wait for a remote response.- Returns:
- this
SessionOptions
instance.
-
closeTimeout
public SessionOptions closeTimeout(long timeout, java.util.concurrent.TimeUnit units)
Configures the timeout used when awaiting a response from the remote that a request to close a resource such as aSession
,Sender
orReceiver
h as been honored.- Parameters:
timeout
- Timeout value to wait for a remote response.units
- TheTimeUnit
that defines the timeout span.- Returns:
- this
SessionOptions
instance.
-
openTimeout
public long openTimeout()
- Returns:
- the timeout used when awaiting a response from the remote when a resource is opened.
-
openTimeout
public SessionOptions openTimeout(long openTimeout)
Configures the timeout used when awaiting a response from the remote that a request to open aSession
has been honored.- Parameters:
openTimeout
- Timeout value in milliseconds to wait for a remote response.- Returns:
- this
SessionOptions
instance.
-
openTimeout
public SessionOptions openTimeout(long timeout, java.util.concurrent.TimeUnit units)
Configures the timeout used when awaiting a response from the remote that a request to open a resource such as aSession
,Sender
orReceiver
has been honored.- Parameters:
timeout
- Timeout value to wait for a remote response.units
- TheTimeUnit
that defines the timeout span.- Returns:
- this
SessionOptions
instance.
-
sendTimeout
public long sendTimeout()
- Returns:
- the timeout used when awaiting a response from the remote when a resource is message send.
-
sendTimeout
public SessionOptions sendTimeout(long sendTimeout)
Configures the timeout used when awaiting a send operation to complete. A send will block if the remote has not granted theSender
or theSession
credit to do so, if the send blocks for longer than this timeout the send call will fail with anClientSendTimedOutException
exception to indicate that the send did not complete.- Parameters:
sendTimeout
- Timeout value in milliseconds to wait for a remote response.- Returns:
- this
SessionOptions
instance.
-
sendTimeout
public SessionOptions sendTimeout(long timeout, java.util.concurrent.TimeUnit units)
Configures the timeout used when awaiting a send operation to complete. A send will block if the remote has not granted theSender
or theSession
credit to do so, if the send blocks for longer than this timeout the send call will fail with anClientSendTimedOutException
exception to indicate that the send did not complete.- Parameters:
timeout
- Timeout value to wait for a remote response.units
- TheTimeUnit
that defines the timeout span.- Returns:
- this
SessionOptions
instance.
-
requestTimeout
public long requestTimeout()
- Returns:
- the timeout used when awaiting a response from the remote when a resource makes a request.
-
requestTimeout
public SessionOptions requestTimeout(long requestTimeout)
Configures the timeout used when awaiting a response from the remote that a request to perform some action such as starting a new transaction. If the remote does not respond within the configured timeout the resource making the request will mark it as failed and return an error to the request initiator usually in the form of aClientOperationTimedOutException
.- Parameters:
requestTimeout
- Timeout value in milliseconds to wait for a remote response.- Returns:
- this
SessionOptions
instance.
-
requestTimeout
public SessionOptions requestTimeout(long timeout, java.util.concurrent.TimeUnit units)
Configures the timeout used when awaiting a response from the remote that a request to perform some action such as starting a new transaction. If the remote does not respond within the configured timeout the resource making the request will mark it as failed and return an error to the request initiator usually in the form of aClientOperationTimedOutException
.- Parameters:
timeout
- Timeout value to wait for a remote response.units
- TheTimeUnit
that defines the timeout span.- Returns:
- this
SessionOptions
instance.
-
drainTimeout
public long drainTimeout()
- Returns:
- the configured drain timeout value that will use to fail a pending drain request.
-
drainTimeout
public SessionOptions drainTimeout(long drainTimeout)
Sets the drain timeout (in milliseconds) after which aReceiver
request to drain link credit is considered failed and the request will be marked as such.- Parameters:
drainTimeout
- the drainTimeout to use for receiver links.- Returns:
- this
SessionOptions
instance.
-
drainTimeout
public SessionOptions drainTimeout(long timeout, java.util.concurrent.TimeUnit units)
Sets the drain timeout value after which aReceiver
request to drain link credit is considered failed and the request will be marked as such.- Parameters:
timeout
- Timeout value to wait for a remote response.units
- TheTimeUnit
that defines the timeout span.- Returns:
- this
SessionOptions
instance.
-
offeredCapabilities
public java.lang.String[] offeredCapabilities()
- Returns:
- the offeredCapabilities
-
offeredCapabilities
public SessionOptions offeredCapabilities(java.lang.String... offeredCapabilities)
- Parameters:
offeredCapabilities
- the offeredCapabilities to set- Returns:
- this
SessionOptions
instance.
-
desiredCapabilities
public java.lang.String[] desiredCapabilities()
- Returns:
- the desiredCapabilities
-
desiredCapabilities
public SessionOptions desiredCapabilities(java.lang.String... desiredCapabilities)
- Parameters:
desiredCapabilities
- the desiredCapabilities to set- Returns:
- this
SessionOptions
instance.
-
properties
public java.util.Map<java.lang.String,java.lang.Object> properties()
- Returns:
- the properties
-
properties
public SessionOptions properties(java.util.Map<java.lang.String,java.lang.Object> properties)
- Parameters:
properties
- the properties to set- Returns:
- this
SessionOptions
instance.
-
incomingCapacity
public int incomingCapacity()
- Returns:
- the incoming capacity that is configured for newly created
Session
instances.
-
incomingCapacity
public SessionOptions incomingCapacity(int incomingCapacity)
Sets the incoming capacity for aSession
the created session. The incoming capacity control how much buffering a session will allow before applying back pressure to the remote thereby preventing excessive memory overhead.This is an advanced option and in most cases the client defaults should be left in place unless a specific issue needs to be addressed.
- Parameters:
incomingCapacity
- the incoming capacity to set when creating a newSession
.- Returns:
- this
SessionOptions
instance.
-
outgoingCapacity
public int outgoingCapacity()
- Returns:
- the outgoing capacity limit that is configured for newly created
Session
instances.
-
outgoingCapacity
public SessionOptions outgoingCapacity(int outgoingCapacity)
Sets the outgoing capacity for aSession
the created session. The outgoing capacity control how much buffering a session will allow before applying back pressure to the local thereby preventing excessive memory overhead while writing large amounts of data and the client is experiencing back-pressure due to the remote not keeping pace.This is an advanced option and in most cases the client defaults should be left in place unless a specific issue needs to be addressed. Setting this value incorrectly can lead to senders that either block frequently or experience very poor overall performance.
- Parameters:
outgoingCapacity
- the outgoing capacity to set when creating a newSession
.- Returns:
- this
SessionOptions
instance.
-
-


Mimosa 2.1.4, require.js support improvements, thx r.js + esprima
Mimosa v2.1.4
brings with it something I've procrastinaed on for awhile thinking it would be much harder than it was. v2.1.4
includes mimosa-require v2.0.0
which vastly improves how that module determines your JavaScript code's define
and require
dependencies/config.
How does it improve it?
Backstory
The functionality that is mimosa-require's require.js support was one of a few key reasons I built Mimosa in the first place (starting almost 2 years ago!). Brunch didn't support AMD/require. Grunt was young, hard to configure (still is) and...just no. And there really wasn't anything else.
I wanted something that would:
- validate dependency paths
- validate requirejs.config.paths
- map paths, shim and shim dependency paths, etc
- let me know a path is bad the second it is bad
This validation alone is a huge time saver. And it really comes in handy when reorganizing your codebase. Move folderX to folderY then work your way through all the pathing errors mimosa-require informs you of and you are set.
I also wanted something that could determine the "main" require.js files, build out a r.js config, run it and output the results. Ideally it would do this without a single line of config, just by being smart about how require.js works and by programmitically learning things about the code as it was processed.
But the way mimosa-require was determining your dependencies and requirejs config was, well, it was evil.
The Hack
mimosa-require used eval
.
And I feel shame.
Rather than try and tackle any sort of complicated parsing or regex, I decided, maybe correctly at the time, that a better, quicker way to get the information mimosa-require needed was to eval
your JavaScript code.
mimosa-require defined in-scope versions of define
, require
and requirejs
, then eval
ed your JavaScript. The local version of, for instance, define
would capture the dependency array and off it would go. It would even treat the callback function as a string and search for embedded require
calls in the event you were using require.js' commonjs wrapper.
The fact that eval
was there never caused problems in and of itself, but treating the code that way would.
Everything would work great if you all your code was wrapped in define
and require
, and it would work great if any code outside those function calls didn't attempt to access some scope that mimosa-require's server-side eval
wouldn't know anything about.
But, if your code looked like this? Trouble.
var uA = window.navigator.userAgent;
define(["a","b"], function(a, b) {
...
});
mimosa-require would define a window
, just to cover a lot of global variable cases, but window.navigator
would not exist in-scope. So window.navigator.userAgent
would throw an error and mimosa-require would be unable to do anything with this file.
Bummer.
It would be an even bigger bummer if this file was one of your "main" files. mimosa-require would now not know it was a main file and it would not build the combined file.
Use Esprima
I've had "require + esprima" on my ToDo list for a very long time, but I knew it would be a huge effort. So much to parse, so many edge cases. Ugh.
Then an issue was logged against mimosa-require that had this problem at its root and I finally decided to look into it.
While I love writing esprima AST parsing code -- for reals, its legit awesome to write -- I was not going to love writing this.
r.js to the Rescue
I remember shortly after I released Mimosa and mimosa-require that James Burke the creator of require.js switched how require.js itself parses code to use Esprima. Certainly the tool mimosa-require is trying to help you use -- and that has to do all the things that mimosa-require does, just not interactively -- can provide some guidance.
An API for this maybe? No such luck. And why would there be.
But there is a parse.js sitting in the r.js repo. And it does have a parse
function. And it does have a findConfig
function.
Well, that's awesome.
It's not exposed, and it doesn't quite do what I need it to, but some copy paste, some minor hacking and day after I started I had ripped out the eval
BS and replaced it with r.js' legit esprima parsing.
Ugh
Seriously. That's all it took. Copy, paste, 75 lines of code changed/removed. I let the evil fester for an exceptionally long time because I knew it would be 1000+ lines of code to do it properly and I had a lot of other higher priorities. For whatever reason it didn't occur to me that those 1000+ lines of code already existed.
Win
So now there are far fewer caveats to the require.js support. mimosa-require won't run your code and it won't trip over anything. It's using the same parsing mechanism r.js uses, so all should be right.
So try it out.


Prioritizing and Planning Within Heroku Postgres
Over a year ago I blogged about Heroku’s approach to Teams and Tools. Since that time Heroku has grown from around 25 people to over 100, we’ve continued to iterate and find new tools that work for how we do things. For many of the product management and software engineering books I’ve read I’ve yet to find something that helps a team priorize in a fashion I that feels right.
One process emerged nearly a year ago from within the Heroku Postgres team and is now followed by many others. Within a team this process is now commonly conducted each 6 months. Lets take a look at how this process looks
It Starts with Ideas
Hopefully having ideas of things to work on isn’t a problem, if it is just go spend some time with customers – listen to their problems, see how they use the product, then come back and write down the ideas. For most teams this is simply an excercise of thinking back and writing it down. Some teams at Heroku have resorted to keeping running backlogs of things they’d like to do this. We do this by keeping a Trello board which columns for:
- New ideas
- Ponies
- Stallions
Ponies and Stallions are things that would be great to do, however a sizeable amount of work must be done on them and we’re not currently tackling them. Ponies are less sizeable and likely to get done not in coming weeks but perhaps in coming months up to a year. Stallions are great but large effort and may or may not get done but in the category of things we would like to be able to do.
Once you’ve got your ideas whether in your head on a backlog we begin by writing them out typically on sticky notes or index cards.
Laying it all out
From here we create a simple grid:
The grid has two axis. One is for impact the other for difficulty. At this point we aim to lay out every idea that we’ve already written down into a quadrant. Commonly this is done at team offsites where the team is free of distractions and able to devote appropriate time to it. Being able to accomplish this in one sitting with the team is important to having cohesion around the result.
A plan
At this point hopefully its quite obvious what you want to tackle. If there’s anything in the top right it should be an easy win for something for you to focus on. From we often transcribe this into a powerpoint/keynote document and highlight things that we will definitely aim to accomplish in the next 6 months as well as things we’re intentionally not working on. This leaves us with an artifact of both things we will work on and explicit things we wont work on.
What works for us
In general we try to have more work than we can tackle to ensure we’re constrained in a good form and not wasting idle time of people. Ensuring we’re selective about the things we’re working on and that we’re working on the right things works for us. We’ve found this simple exercise valuable for many teams to plan and ensure we’re working on those right things. Of course this may not work for everyone but for our goals and culture aligns well for us.
If you’ve got simple but unique techniques that work for your team as always would love to hear about them – craig.kerstiens@gmail.com


{% extends "tutorial.html" %} {% load mixin from templatefilters %} {% block pagebreadcrumb %}{{ tut.title }}{% endblock %} {% block head %} {% endblock %} {% block iscompatible %} return HTMLElement.prototype.webkitCreateShadowRoot || HTMLElement.prototype.createShadowRoot ? true : false; {% endblock %} {% block html5badge %} {% endblock %} {% block share_image %} {% endblock %} {% block content %}
{% include "warning.html" %}
This article discusses more of the amazing things you can do with ShadowDOM, more of its JS and declarative APIs, styling options, and more. It builds on the concepts discussed in Shadow DOM 101. For an introduction to ShadowDOM and its language, see Dominic Cooney's most excellent article.
If you're hosting a party, it gets stuffy if everyone is crammed into the same room. You want the option of distributing groups of people across multiple rooms. Elements hosting Shadow DOM can do this too, that is to say, they can host more than one shadow root at a time.
Let's see what happens if we try to attach multiple shadow roots to a host:

Host node

What renders is "Root 2 FTW", despite the fact that we added root2 last. This is because the last shadow tree added to a host, wins. It's a LIFO stack as far as rendering is concerned. Examining the DevTools verifies things.
The most recently added tree is called the younger tree, while the more recent one is called the older tree. In this example,root2
is the younger tree androot1
, the older tree.
Rule 1: Shadow trees added to a host are stacked in the order they're added, starting with the most recent first. The last one added is the one that renders.
Then what's the point of using multiple shadows if only the last is invited to the party?
"Shadow insertion points" (<shadow>
) are similar to insertion points (<content>
)
in that they're placeholders. However, unlike regular insertion points, which
selectively funnel and render the content of a host into a shadow tree,
shadow insertion points are hosts for other shadow trees. It's Shadow DOM Inception!
As you can probably imagine, things get more complicated the farther you drill down
the rabbit hole. For this reason, the spec is clear about what should happen with
multiple <shadow>
s:
Rule 2: If multiple <shadow>
insertion points exist
in a shadow tree, only the first is recognized. The rest are ignored.
Looking back to our original example, the first shadow root1
got left off the
invite list. Adding a <shadow>
insertion point brings it back:

Host node

A couple of observations about this:
<shadow>
. If we wanted the reverse, move the insertion point: root2.innerHTML = '<shadow></shadow>
Root 2 FTW
';
.<content>
insertion point to root1. This makes
"Host node" come along for the ride.As with existing parts of the web platform, there are DOM interfaces if you prefer going the implicit route:

Host node

HTMLShadowElement.olderShadowRoot
returns the shadow tree rendered in place the
<shadow>
insertion point:
console.log(shadow.olderShadowRoot === root1) // true console.log(root2.querySelector('shadow').olderShadowRoot === root1) //true </script>
shadow insertion point.
content.getDistributedNodes()
host.webkitShadowRoot
Style encapsulation by default Scoped styles by default
http://html5-demos.appspot.com/static/webcomponents/index.html#30
Don't let strangers in.
http://html5-demos.appspot.com/static/webcomponents/index.html#31
Don't let strangers in.
content::disributed()
@host
blah
Blah
Blah
Blah
{% endblock %}


About Darcy
Objective
To become an amazing developer who builds great things.
Education
UW, BA Fine Art 2006
Work Experience
Teaching English '06-'11
Art Stuff: Managing Co-op, museum work '11-'12
Various Dead End Jobs '12-'16


Something that I already had an awarness of prior to this section was indentation. Although I knew the main concept, there were a couple of little details like text content indentation I had not learnt so I will implement those.
Coming from a career where keeping things like files and directories tidy and functional for other artists to work on is critical to everybody getting along. I am very aware of how important it is for your work to be readable for other developers. It extends beyond simply being readable for others. It affects the efficiency of pulling apart your code to solve problems too. The cleaner it is, the easier literally every other task becomes.
It is extremely important. To me it is just another form of professionalism, and a baseline skill for being taken seriously as a developer.
Definitely tabs! The less times I have to press a button, the better.
I try my best to keep my workspace tidy for anything work or study related. My physical and digital desktop is always tidy at the start of a project, but tends to be a mess closer to the end. When it comes to directories and files, I try to have a system of files ready for projects so when I come to making the projects. I know where everything belongs before I start.
function sum(a,b) {
result = a + b;
return result
}
testSum()
function testSum(){
var expected = 7
var actual = 5 + 2;
if (actual != expected) {
console.log("It's broken..")
} else {
console.log("It works!")
}
}
I think in all honesty I would use both. Test Driven Development is a good way to establish a working structure of a program before getting to intesely into details not knowing if something fully works or not. Unit testing is a great way to apply test driven development by structuring your unit testing in the same way you plan to structure your program. I see them working better together than each individually on their own.
Seeing as Testing Driven Development relies on testing the structural aspects of a program, Unit testing fits perfectly into this. It breaks down the structure of a program into smaller functions. This way you can plan your structure based on the unit tests you need to pass before you even write the main flesh of the code.
I understand why its there, and ideally my code would magically work without the need of in depth testing. But I know that is not the case and testing is absolutely needed in order to either fix a bug or optimize a feature. I can see use for it beyond simply getting a pass or fail on a feature. To me it seems like it will be a way to look into my code and further optimize or refactor or tidy unneccary elements.
yay another thing to code in -_-.
After using it in practice, I felt more comfortable and saw the use for it. It is nice having an output that doesnt requrie laucnhing a file on chrome and constantly jumping between browser and editor.
Something along the lines of Reple it.
Console.log-ing and pseudocoding.
Pseudocoing will force me to plan out what I am actually attempting to do instead of jumping the gun straight away and going straight to coding which I can do sometimes. I will make sure I at least have a rough pseudocode written to know what my steps are. Console.log-ing seems like a nice way to problem solve without leaving the text editor. It will catch a lot of errors that I dont think about or cant see, so when I encounter something not working correctly. I want to make that my first method of seeing what the problem is.
I found it pretty simple, none of the problems had me stuck.
I pretty much tested after every change I made, it makes it a lot easier to back and forth when you change things rather than making a lot of changes and then not knowing what part isnt working.
I think the satisfaction overall of solving problems without Google or lots of frustration is the highlight of exercises like these.
I preffered to use the Repl.it output. It allowed me to keep everything focussed on one window instead of jumping between two. I also prefer to look at the thing giving me the outputs incase theres any weird mismatches in data.
I think my idea was fine on how to get the job done. But there were a lot of specifics that had me going back and forth trying to solve. Aspects such as the order of my statements as well as the manner in which I was trying to execute them was usually missing a symbol or was stated incorrectly. The solution was usually a quick Rubber Ducky explanation or a google of the method I was trying to execute. (at no point did I search how to solve FizzBuzz so I am proud of that!).
Psuedo code was useful at the start of the exercise. I had a clear idea of what was going on in each statement as well as what each statement needed to achieve. It also kept things slightly more readable.
I think I found this more challenging than the previous Katas. But what is suprising and what is slowly becoming more regular is the fact that I can see a problem and have an idea as to how to fix it. Before it was a case of going I have no idea what I am doing and need guidance on everything, where as now I can build the base code of a problem and then figure out the things I dont know and need to learn to get a solution.
I didn't adjust too much code after solving the problem. I certainly expect my method not to be the smartest or most efficient way. But I dont want to get too focussed on that when I still have a lot of basics to learn. Looking at a copy of the solutions, there are a good amount of things I would change. Mainly just keeping it DRY and not adding things that arent neccesary outside of testing.
I would say 4. I found this difficult because doing research online can take you to a million different solutions and it can be hard to know what is worth exploring further. I do feel that these will become much easier later on once their purpose becomes a little bit more autonomous. But for now there is a lot of reading over notes and web articles to remember what each built in method does.
I always ended up on either MDN, YouTube or Stack Overflow. I found Stack Overflow was more confusing because forums were related to much more complex problems but seeing how others write code isnt a bad thing. For methods, MDN and YouTube were the most reliable because they gave all of the details about the method.
I think it was definitely shorter than expected, but it had many problems along the way. I find the testing side of things difficult because I often had a solution to the problem but found that the test wanted it done a certain way. Those were where I found my major blocks, which was a little bit frustrating seeing as I did have a working solution.
I would probably spend less time worrying about why a test wasnt passing even with working code. Next time I would just comment out the code and then move on to the other problems and then come back at the end. I ended up doing this but much later than I should have.


{{category.name}}
{{state.search === '' ? 'Add new category' : 'Add \'' + state.search + '\' as new category'}}


 I can scarcely credit that over a quarter of a century has passed since I wrote, illustrated, photocopied, folded, collated, stapled, signed and numbered fifty copies of The Churn In The Muck. Now, this spineless out of print pamphlet will set you back £93. That's how much a copy is selling for on eBay.
What do you get for your cash? “Vintage Frank Key surrealist writing, in a booklet that contains 4 pages of wallpaper sample and 4 pages of tracing paper. There is a murderous rivalry over an Icelandic fontoon buried at the bottom of a lake. Indefatigable Hungarian detective Bulent Hellbag arrives on the scene to solve the case”, according to Serendipity Bookstore in the far Antipodes. I should point out that, in addition to the wallpaper and tracing paper, there are actually pages of text, too. (I am not sure the blurb makes that quite clear.)


The player,  3 win
A Player Just Joined,  3 players here.
A Player Just Left,  2 players here.
Waiting for other players!
Waiting for connection in P2P
Pictionary
Make a guess:
You are the drawer! This is your word =
Score:  0
Settings


Protein Lab NoteBook (TM)
PLan is an initial attempt to develop an Electronic Laboratory Notebook for recombinant protein expression.
What PLan will do
PLan is an electronic lab notebook designed to support protein recombination. Its design goal is to help with the most pressing information management needs of scientists who express protein, in a way that provides a smooth progression to full provenance tracking.
Plan will offer solutions for small daily housekeeping problems, in a way that adds up to a comprehensive data management solution for the lab. Scientists will interact with the system via mobile devices when away from the lab; desktop computers in the office; and wall mounted touch screens, bar code readers, and desktop computers in the lab; and also by email and by using reports exported from the system.
PLan will provide calculators and news services of use to structural biologists. PLan will also provide a file archive for gel images and other laboratory files, and a structured data store to record the provenance of these files. It will help manage booking laboratory instruments, keeping track of samples in freezers, managing and reporting on projects, and standard operating procedures including special support for protocols for processing DNA.
PLan will be compatible with the laboratory information management system PiMS.
Devices
You will soon be able to install a copy of PLan as an application on your desktop or mobile device. Parts of PLan work even if you have no network connection. Other parts require you to be online.
Support
PLan is being developed by Chris Morris, STFC. Thanks to BioMedBridges and CCP4 for support to develop this prototype.


Functions | |
| AI_API AI_PURE AtColor | AiBSSRDFCubic (const AtShaderGlobals *sg, const float *radius, const AtColor *weight, unsigned int num=1) |
| Calculate SSS using a weighted sum of cubic BSSRDFs at the specified shading point. More... | |
| AI_API void | AiBSSRDFCubicSeparate (const AtShaderGlobals *sg, AtRGB &direct, AtRGB &indirect, const float *radius, const AtColor *weight, unsigned int num=1) |
| Calculate direct and indirectly lit SSS using a weighted sum of cubic BSSRDFs at the specified shading point. More... | |
| AI_API AI_PURE AtColor | AiBSSRDFGaussian (const AtShaderGlobals *sg, const float *variance, const AtColor *weight, unsigned int num=1) |
| Calculate SSS using a weighted sum of gaussian BSSRDFs at the specified shading point. More... | |
| AI_API void | AiBSSRDFGaussianSeparate (const AtShaderGlobals *sg, AtRGB &direct, AtRGB &indirect, const float *variance, const AtColor *weight, unsigned int num=1) |
| Calculate direct and indirectly lit SSS using a weighted sum of gaussian BSSRDFs at the specified shading point. More... | |
| AI_API void | AiBSSRDFEmpirical (const AtShaderGlobals *sg, AtRGB &direct, AtRGB &indirect, const float *mfp, const float *albedo, const AtRGB *weight, unsigned int num=1) |
| Calculate direct and indirectly lit SSS using an BSSRDF model that was empirically fitted to match brute-force Monte Carlo scattering. More... | |
| AI_API AtColor | AiSSSTraceSingleScatter (AtShaderGlobals *sg, AtColor Rd, AtColor mfp, float g, float eta) |
| Perform a single scattered ray traced SSS computation based on the BSSRDF formulation by Henrik Wann Jensen et al. More... | |
| AI_API AI_PURE bool | AiShaderGlobalsFromSSS (const AtShaderGlobals *sg) |
| Check to see if the shader globals are coming from an SSS evaluation. More... | |
| AI_API AI_PURE AtColor AiBSSRDFCubic | ( | const AtShaderGlobals * | sg, |
| const float * | radius, | ||
| const AtColor * | weight, | ||
| unsigned int | num | ||
| ) |
Calculate SSS using a weighted sum of cubic BSSRDFs at the specified shading point.
BSSRDF sampling quality is controlled by the GI_sss_samples
render option.
| sg | shader globals to perform the lookup at |
| radius | array of scattering radii (as world space distances) |
| weight | array of weights (one for each scattering radius) |
| num | number of elements in radius and weight arrays |
| AI_API void AiBSSRDFCubicSeparate | ( | const AtShaderGlobals * | sg, |
| AtRGB & | direct, | ||
| AtRGB & | indirect, | ||
| const float * | radius, | ||
| const AtColor * | weight, | ||
| unsigned int | num | ||
| ) |
Calculate direct and indirectly lit SSS using a weighted sum of cubic BSSRDFs at the specified shading point.
BSSRDF sampling quality is controlled by the GI_sss_samples
render option.
| sg | shader globals to perform the lookup at | |
| [out] | direct | variable returning the directly lit part of the result |
| [out] | indirect | variable returning the indirectly lit part of the result |
| radius | array of scattering radii (as world space distances) | |
| weight | array of weights (one for each scattering radius) | |
| num | number of elements in radius and weight arrays |
| AI_API AI_PURE AtColor AiBSSRDFGaussian | ( | const AtShaderGlobals * | sg, |
| const float * | variance, | ||
| const AtColor * | weight, | ||
| unsigned int | num | ||
| ) |
Calculate SSS using a weighted sum of gaussian BSSRDFs at the specified shading point.
BSSRDF sampling quality is controlled by the GI_sss_samples
render option.
| sg | shader globals to perform the lookup at |
| variance | array of variance values for gaussians |
| weight | array of weights (one for each scattering radius) |
| num | number of elements in radius and weight arrays |
| AI_API void AiBSSRDFGaussianSeparate | ( | const AtShaderGlobals * | sg, |
| AtRGB & | direct, | ||
| AtRGB & | indirect, | ||
| const float * | variance, | ||
| const AtColor * | weight, | ||
| unsigned int | num | ||
| ) |
Calculate direct and indirectly lit SSS using a weighted sum of gaussian BSSRDFs at the specified shading point.
BSSRDF sampling quality is controlled by the GI_sss_samples
render option.
| sg | shader globals to perform the lookup at | |
| [out] | direct | variable returning the directly lit part of the result |
| [out] | indirect | variable returning the indirectly lit part of the result |
| variance | array of variance values for gaussians | |
| weight | array of weights (one for each scattering radius) | |
| num | number of elements in radius and weight arrays |
| AI_API void AiBSSRDFEmpirical | ( | const AtShaderGlobals * | sg, |
| AtRGB & | direct, | ||
| AtRGB & | indirect, | ||
| const float * | mfp, | ||
| const float * | albedo, | ||
| const AtRGB * | weight, | ||
| unsigned int | num | ||
| ) |
Calculate direct and indirectly lit SSS using an BSSRDF model that was empirically fitted to match brute-force Monte Carlo scattering.
This BSSRDF accounts for both single and multiple scattering.
Note that Fresnel or other layer or mixing weights must be provided separately from the albedo in the weights array, as the albedo affects the shape of the BSSRDF profile.
BSSRDF sampling quality is controlled by the GI_sss_samples
render option.
| sg | shader globals to perform the lookup at | |
| [out] | direct | variable returning the directly lit part of the result |
| [out] | indirect | variable returning the indirectly lit part of the result |
| mfp | array of mean free path lengths (mfp = 1/sigmat' = 1/(sigmas' + sigmaa)) | |
| albedo | array of diffuse reflectivities | |
| weight | array of weights for mixing profiles or applying fresnel | |
| num | number of elements in mfp and albedo arrays |
| AI_API AtColor AiSSSTraceSingleScatter | ( | AtShaderGlobals * | sg, |
| AtColor | Rd, | ||
| AtColor | mfp, | ||
| float | g, | ||
| float | eta | ||
| ) |
Perform a single scattered ray traced SSS computation based on the BSSRDF formulation by Henrik Wann Jensen et al.
The quality of the SSS computation is controlled by the GI_single_scatter_samples
render option.
| sg | shader globals to perform the lookup at |
| Rd | reduced albedo term |
| mfp | mean free path length (mfp = 1/sigmat' = 1/(sigmas' + sigmaa)) |
| g | Henyey-Greenstein phase function coefficient, in the (-1,+1) open interval, where 0 means isotropic scattering, positive values mean forward scattering, and negative values mean backward scattering |
| eta | index of refraction |
| AI_API AI_PURE bool AiShaderGlobalsFromSSS | ( | const AtShaderGlobals * | sg | ) |
Check to see if the shader globals are coming from an SSS evaluation.
This can be used to simplify shader returns while point clouds are being calculated.
| sg | shader globals for the currently running shader |


{% extends "doi_site/organisation_wrapper.html" %} {% block content %}
Roles and Responsibilities for minting DOIs within the {{ organisation_name }} prefix
Notes for {{ organisation_name }} Issuers


This is typically used in combination with Using DMA when enabling DMA to/from a drive on a supported interface chipset.
Apart from that, use of this flag is .I seldom necessary since most/all modern IDE drives default to their fastest PIO transfer mode at power-on. Fiddling with this can be both needless and risky.
Use this with extreme caution!


Snookes1516.github.io
SI-UK ผู้นำด้านการศึกษา แนะแนวเรียนต่อประเทศอังกฤษ. Department of English and Creative Writing. may vary from year creative year and journalism help organising events roehampton as the Creative Writing Soiree.
Study Abroad Catalogue (for Study Abroad/Exchange Students only) Programme Details 2018-2019. Levels 1 (level 4), 2 (level 5) and 3 (level 6) From the list below. Creative Writing - Undergraduate - University of Roehampton. Creative Writing Degree At University of Roehampton. Creative Writing Roehampton : English and Creative Writing. Journalism and creative writing roehampton. イギリス大学・大学院 合格実績 2018年開始コース｜イギリス留学を無料サポートするbeo.
India’s Largest Exclusive UK University Fair providing opportunities for Indian students to meet the top UK universities face-to-face in New Delhi. Apply now for Kingston University London's Mechanical Engineering MSc degree. This course will provide you with a strategic overview of engineering and develop. Journalism and creative writing roehampton - Writing roehampton University of Roehampton. - at University of Roehampton, London, United. Roy ellen ethnographic.
Engineering Foundation with pathways in Aerospace, Civil. The University of Glamorgan was founded in 1913 as the South Wales and Monmouthshire School of Mines, a School of Mines based in Trefforest, Pontypridd, serving.
Undergraduate courses - University of Roehampton. Studying for your GCSEs is hard work, but you can find a huge range of help and support on The Student Room. Thousands of students come to The Student Room every. Journalism and Creative Writing BA (Hons)/BSc (Hons). A selected list of links to other websites containing innovative interesting writing. Journalism and Creative Writing University of Roehampton. Following our creative writing gripping journalism from current and to support the local authors of Roehampton through stocking the Fincham Press.
Listing and links to undergraduate courses at Roehampton. MeCCSA 2018 - London South Bank University, 10—12. Journalism and creative writing roehampton - hkbt.info.
Find Journalism Degree courses at University of Roehampton. Search our detailed list for course fees, entry requirements student reviews. Find Creative Writing Degree courses at University of Roehampton. Search our detailed list for course fees, entry requirements student reviews. Taught by published, working writers (including acclaimed poets, novelists, journalists and screenwriters), our BA Creative Writing degree introduces writing practice.
We will help you become a professional journalist and join the media industry. You ll learn how to tell a great story, and how to get it ready for publication.
The 2018 Annual MeCCSA Conference was hosted from 10—12 January 2018 by the School of Arts Creative Industries, London South Bank University. Home; UK University Course Search; UK University Course Search. Search over 65,000 courses at UK universities, language schools and colleges with SI-UK’s course search.
UK University course search for all UK university courses and degrees for over 65,000 courses at all levels; undergraduate, postgraduate, foundation, and english. UK University Course Search for Indian Students.
A-Z UK university guide for international students who want to study in the UK. Information on courses, rankings, tuition fees, accommodation and student services.
Links to other sites of interest - Great Works. Journalism Degree At University of Roehampton - whatuni.com. 2018年留学！beoには、すでに合格を勝ち取った方から喜びの声が続々と届いています。 オックスフォード大学. Programme Details (2018/19): Study Abroad Catalogue.
University of Roehampton - Wikipedia. Read more about Kingston University London's Engineering Foundation with pathways in Aerospace, Civil, Mechanical Engineering degree. This course is designed.
Si-uk ผู้นำด้านแนะแนวการศึกษา และเชี่ยวชาญในการให้คำปรึกษา. University of Glamorgan - Wikipedia.
Thanks for posting! We just need to check something in your message and will publish Fincham Press – New Writing from Roehampton. Mechanical Engineering Masters (MSc) degree course.
Study Journalism and Creative Writing at University. SI-UK University Fair 2018 Delhi, Upcoming UK Education. See how students rated Journalism and Creative Writing at University of Roehampton. Plus, view full entry requirements, average graduate salary and prospects, tuition. The University of Roehampton, formerly Roehampton Institute of Higher Education, is a public university in the United Kingdom, situated on three major sites.
The Spread the Word Life Writing Prize is the annual prize for narrative non fiction, run by Spread the Word in partnership with Goldsmiths Writers Centre


Why did I make?
- iPhone was born (Great invention)
- But, The number of a HOME PC has been reduced
- Children can't play using the parents PC
- Reducing programmer is the global crisis!
- Let's make the environment that can be programmed with smartphone
Features
- Can write the Ruby programs wherever you are
- Need only the iPhone or iPod touch or iPad
- If there is PC,
- You can also released as a stand-alone iPhone app
- It behaves to the iPhone app that was made with openFrameworks when viewed from the outside
- Benefits of using mruby


Details of FitHiChIP outputs
Summary HTML file
Successful execution of FitHiChIP pipeline generates an HTML file Summary_results_FitHiChIP.html within the output directory OutDir specified in the configuration file. This file lists the output files containing significant interactions from the FitHiChIP pipeline, according to the given input parameters.
Details of output files
Here we describe all the files and folders existing within the specified output directory OutDir.
User should additionally open this page Setting up configuration file to tally with the configuration parameters:
Parameters.txt: file listing the parameters used.
HiCPro_Matrix_BinSize"BINSIZE":
Where "BINSIZE" is specified in the input parameter.
This directory contains the interaction matrix files (named as Matrix_abs.bed and Matrix.matrix) generated from the input interaction files, provided that these matrix and interval files are not provided as input.
L_"l"_U"u": folder name according to the distance thresholds "l" and "u" specified in the configuration file.
*.cis.interactions.DistThr.bed: File containing CIS interactions within the distance range from "l" to "u".
NormFeatures:
Folder containing various statistical features computed for individual genomic intervals / bins (with respect to the specified "BINSIZE").
User should specifically look at the file *.AllBin_CompleteFeat.bed, which has the following format:
Columns 1 to 3: chromosome bin.
Column 4: Coverage of this bin (number of reads mapped onto it)
Column 5: if 1, this bin is a peak-bin (overlapping with the reference peaks, as provided in the configuration file); otherwise (0) non-peak bin.
Column 6: Bias value of a bin; either coverage or ICE bias, depending on the input options.
Columns 7 and 8: unused columns.
FitHiChIP_"INTTYPE"_b"BINSIZE"_L"l"_U"u"
Folder according to the specified foreground (type of interactions to be reported), bin size, and the distance thresholds.
INTTYPE is a string with one of the following values:
ALL2ALL (when the parameter IntType = 4)
Peak2Peak (parameter IntType = 1),
Peak2NonPeak (parameter IntType = 2), or
Peak2ALL (parameter IntType = 3).
Within this folder, a directory structure of the following name (pattern) is created:
P2PBckgr_[UseP2PBackgrnd]/[BiasType]
Where:
[UseP2PBackgrnd]: Value of the parameter UseP2PBackgrnd - 0 (loose background) or 1 (stringent background).
[BiasType]: A string, either "Coverage_Bias" or "ICE_Bias", according to the parameter BiasType.
Within this directory, following files/folders are important:
FitHiC_BiasCorr: Directory containing the significant interactions:
Bin_Info.log: Equal occupancy bins employed in FitHiChIP
configuration.txt: list of configuration parameters for calling significant interactions from FitHiChIP
*PREFIX*.interactions_FitHiC.bed: Lists all input interactions along with their significance (p-value and FDR) computed using FitHiChIP.
Value of PREFIX is provided in the configuration parameter.
Note
Important: For differential analysis of HiChIP loops (page Differential analysis of HiChIP loops), this file (containing all interactions along with FitHiChIP significance values) is to be provided as input.
*PREFIX*.interactions_FitHiC_Q"qval".bed:
FitHiChIP generated set of significant interactions according to the q-value threshold (QVALUE) specified in input parameter.
For example, if QVALUE=0.01 (default), the file name becomes *PREFIX*.interactions_FitHiC_Q0.01.bed.
Note
Important: This file is the set of significant interactions generated by FitHiChIP, without any merge filtering.
For peak-to-all foreground (default output mode), if UseP2PBackgrnd = 0, then these loops refer to FitHiChIP(L) output.
If UseP2PBackgrnd = 1, these loops refer to FitHiChIP(S) output.
Note
If user requires loops filtered by a FDR threshold different from the parameter QVALUE (say the custom threshold is 0.05 and the QVALUE is 0.01), user may employ the following awk script to generate the significant interactions.
awk '$NF<0.05' *PREFIX*.interactions_FitHiC.bed > FitHiChIP_out_Q0.05.bed
Merge_Nearby_Interactions:
Directory containing the output of merge filtering operation, if the parameter MergeInt = 1.
*PREFIX*.interactions_FitHiC_Q"qval"_MergeNearContacts.bed:
FitHiChIP significant loops returned after the merge filtering operation.
Note
For peak-to-all foreground (default output mode), if UseP2PBackgrnd = 0, this set of loops refer to FitHiChIP(L+M) output.
If UseP2PBackgrnd = 1, this set of loops refer to FitHiChIP(S+M) output.
Details of FitHiChIP significant interactions
As mentioned above, the file *PREFIX*.interactions_FitHiC.bed contains all the loops and their significance values.
The file *PREFIX*.interactions_FitHiC_Q"qval".bed contains the significant interactions with respect to the specified FDR threshold qval
Both of these files contain the following fields:
Fields 1 to 6: interacting bins for a given interaction.
Field 7: contact count.
Fields 8 to 13: various properties of the first interacting bin. This include the HiChIP coverage, whether the bin overlaps with ChIP-seq peak (isPeak), bias (coverage or ICE depending on the bias parameter), mappability, GC content, and number of restriction sites.
Note
Currently, the values of mappability, GC content, and number of restriction sites are set as 0. We did not remove the fields though, to keep the same output format.
Fields 14 to 19: respective properties for the second interacting bin.
Field 20 (p): spline fit probability.
Field 21 (exp_cc_Bias): expected contact count of the current interaction, after applying bias regression.
Fields 22 and 23: probability computed from the "exp_cc_Bias" value, and binomial distribution based refined probability value.
Field 24: final FitHiChiP p-value of the current interaction.
Field 25: final FitHiChiP q-value of the current interaction.
Details of merge filtering output
As mentioned above, the file *PREFIX*.interactions_FitHiC_Q"qval"_MergeNearContacts.bed within the directory Merge_Nearby_Interactions contains the significant loops returned after merge filtering operation.
This file contains the following fields:
First 6 fields are the interacting bins corresponding to the retained set of interactions (after merge filtering).
Next 3 fields denote the contact count, p-value and q-value of the retained interactions.
bin1_low and bin1_high denotes the lower and upper coordinates of the first set of interacting bins (x axis of the proposed connected component model). For example, if the set of bins (x-1, y-1), (x, y) and (x+1,y+1) are provided as inputs, bin1_low becomes (x-1) * BINSIZE while bin1_high becomes (x+1) * BINSIZE.
bin2_low and bin2_high, denotes the lower and upper coordinates of the second set of interacting bins. Considering the previous example, bin2_low = (y-1) * BINSIZE and bin2_high = (y+1) * BINSIZE
sumCC denotes the sum of contact counts of all the significant interactions applied to the connected component model, with respect to the current retained interaction. Considering the above example, sumCC would be equal to the contact counts of interactions (x-1, y-1), (x, y) and (x+1,y+1).
StrongConn is between 0 and 1, and denotes the fraction of all possible interactions within the connected component which are significant. Considering the above example, the connected component enclosing the bins (x-1), x, and (x+1) at one end, and the bins (y-1), y, and (y+1) at the other end, can have at most 9 interactions, out of which 3 are significant. So, StrongConn is 0.33 in this case. Higher value of StrongConn indicates dense connected region.
Visualizing significant interactions in epigenome browsers
FitHiChIP produces multiple output files compatible to various epigenome browsers.
*PREFIX*.interactions_FitHiC_Q"qval"_WashU.bed.gz
File compatible to WashU epigenome browser.
To visualize this interaction as a browser track, user needs to perform the following steps:
Open https://epigenomegateway.wustl.edu/browser/ in a browser.
Select reference genome. For the test data, human (hg19) is the reference genome.
select Tracks -> upload Local Track
Choose track file type: longrange
Choose track file: select both *_WashU.bed.gz and *_WashU.bed.gz.tbi files together (2 files).
Close the track upload box (click at the (X) sign in the right corner)
Now the track is displayed in the browser window. Right click on the track name, and select DISPLAY MODE as ARC
*PREFIX*.interactions_FitHiC_Q"qval"_UCSC.bed
FitHiChIP output file compatible to UCSC genome browser. The file is in bigBed format (or precisely BigInteract format).
*PREFIX*.interactions_FitHiC_Q"qval"_IGV.bed
FitHiChIP output file compatible to IGV genome browser.
Visualizing significant interactions (after merge filtering) in epigenome browsers
*PREFIX*.interactions_FitHiC_Q"qval"_MergeNearContacts_WashU.bed.gz
File compatible to WashU epigenome browser.
*PREFIX*.interactions_FitHiC_Q"qval"_MergeNearContacts_UCSC.bed
File compatible to UCSC genome browser.
*PREFIX*.interactions_FitHiC_Q"qval"_MergeNearContacts_IGV.bed
File compatible to IGV genome browser.


Projects
This is the collective list of all my project ideas. Most of them are just
that—ideas. Some I've started work on. Some I've got into working condition.
I am a strong believer in FOSS.
Please keep in mind that while all of these projects fascinate me, it is
highly unlikely I will "finish" all of them any time soon. If you're up to
the task, feel free to take any ideas on this list and finish them for me. My
(non-binding) request is that you contact me when you have an MVP so I can
thank you. Here are the categories:
Prototype/MVP that runs in some form
- Eckert_Sim: A cycle-accurate CPU simulator written in C with a simple
RISC architecture and microinstructions. Repo link here.
- LQTLD3: Linear Quadtrees with Level Differences in Python 3. Currently
capable of generating functional quadtrees, but I want to see if I can
support k-map reduction. Repo
link here.
- PyPelt: A fuzzy logic controller framework written in Python 3.
Repo link here.
- A Sharp: a tool for learning music theory on guitar. Props to
Logan Czarnecki and Tracey
King for assisting with
development. let me know if you want a different link here and I'll
update this page. Repo link
here.
- BJGym: a light-weight, multi-threaded RL environment for the blackjack
card game written in C. Designed to be easily built for many different
platforms. Maybe down the line it will support multiple card games, and
multi-agent self-play. Has yet to reach an alpha stage. Repo
Link here.
Big Projects with Design Project in Place
- Didakt: automated curriculum generator for topics in computer science.
Currently just a landing page. Link here.
- Ozone: A C++17 library/game engine written to expedite the development
of CPU-intensive 2-D games. Forte will be exceptional debugging tools and
profiling tools. Proposal has been started, but draft is not yet
complete.
Potential Future Ideas
- An ncurses preview window for your command, with some sort of safeguard
to prevent execution in the midst of typing the command.
- A software suite for smart coffee machines that provides the same
coherent UI across different coffee machines
- A deep learning system that can render a top down visualization of a
soccer game in ASCII art from footage.
- A useful CLI interface for cloud services that works with Google Drive,
Dropbox, and OneDrive.
- An open-source clone of the Hemingway text editor that tries to
measure the compare of various parameters of your writing and compare them
to famous prolific authors. Recurrent neural nets would be fun but likely
ineffective.
- A grammar engine plugin for vim
- A CLI tool that takes unlabeled source code through stdin and attempts
to detect the programming language
- An eBook on the fundamentals of StarCraft II aimed at AI programmers.
The book will focus more on undertanding how to play the game instead of
how to develop software that plays the game.
- A framework for quickly deploying user-friendly frontends for academic
publication repositories. Inspired by the arXiv sanity preserver.
- An application suite that can be deployed on a Raspberry Pi to convert
into a cheap alternative to a
TI-89 graphing calculator.
- A computer program that can algorithmically generate IUPAC names just
based on skeleton structure. It would be fun to see how different neural
networks perform at this task despite the fact that a much simpler method
could certainly be used.
- Develop a data-driven approach to "reverse engineering" synthesizer
patches. Current candidates are simple multivariate linear regression and
recurrent neural networks.
- A ridiculously over-engineered ripoff of DrugWars in C++.
- A Web service where you can upload a video and then keyword search the
an auto-generated transcript


Welcome to Book Orders
Book to Order :
Book Orders in Progress
Order Id
order Date
Book ISBN
Book Title
Book Translated Title
Book Price


{{=it.title}}
{{=it.intro}}
Demo
Example usage
{{ for (let section of it.demoSections) { }}
{{=section.codeText}}
{{ } }}
Code
{{ for (let section of it.sections) { }}
{{=section.codeText}}
{{ } }}


HistoryState QML Type
The HistoryState type provides a means of returning to a previously active substate. More...
| Import Statement: | import QtQml.StateMachine 1.0 |
| Since: | Qt 5.4 |
| Inherits: |
Properties
- defaultState : QAbstractState
- historyType : enumeration
Detailed Description
A history state is a pseudo-state that represents the child state that the parent state was in the last time the parent state was exited. A transition with a history state as its target is in fact a transition to one of the other child states of the parent state. HistoryState is part of The Declarative State Machine Framework.
Use the defaultState property to set the state that should be entered if the parent state has never been entered.
Example Usage
import QtQuick 2.0 import QtQml.StateMachine 1.0 as DSM Rectangle { Button { anchors.fill: parent id: button text: "Press me" DSM.StateMachine { id: stateMachine initialState: parentState running: true DSM.State { id: parentState initialState: child2 onEntered: console.log("parentState entered") onExited: console.log("parentState exited") DSM.State { id: child1 onEntered: console.log("child1 entered") onExited: console.log("child1 exited") } DSM.State { id: child2 onEntered: console.log("child2 entered") onExited: console.log("child2 exited") } DSM.HistoryState { id: historyState defaultState: child1 } DSM.SignalTransition { targetState: historyState // Clicking the button will cause the state machine to enter the child state // that parentState was in the last time parentState was exited, or the history state's default // state if parentState has never been entered. signal: button.clicked } } } } }
By default, a history state is shallow, meaning that it will not remember nested states. This can be configured through the historyType property.
See also StateMachine and State.
Property Documentation
defaultState : QAbstractState |
The default state of this history state.
The default state indicates the state to transition to if the parent state has never been entered before.
The type of history that this history state records.
The default value of this property is HistoryState.ShallowHistory.
This enum specifies the type of history that a HistoryState records.
- HistoryState.ShallowHistory Only the immediate child states of the parent state are recorded. In this case, a transition with the history state as its target will end up in the immediate child state that the parent was in the last time it was exited. This is the default.
- HistoryState.DeepHistory Nested states are recorded. In this case a transition with the history state as its target will end up in the most deeply nested descendant state the parent was in the last time it was exited.