Methods summary
public
|
#
__construct( OndraKoupil\Csob\Config $config, callable|string $log = null, callable|string $traceLog = null )
Create new client with given Config.
Create new client with given Config.
Parameters
- $config
- $log
Log for messages concerning payments
at bussiness-logic level. Either a string filename or a callback
that you can use to forward messages to your own logging system.
- $traceLog
Log for technical messages with
exact contents of communication.
|
public
OndraKoupil\Csob\Config
|
|
public
OndraKoupil\Csob\Client
|
|
public
array
|
#
paymentInit( OndraKoupil\Csob\Payment $payment, OndraKoupil\Csob\Extension[] |OndraKoupil\Csob\Extension $extensions = array() )
Performs payment/init API call.
Performs payment/init API call.
Use this to create new payment in payment gateway.
After successful call, the $payment object will be updated by given PayID.
Parameters
- $payment
- Create and fill this object manually with real data.
- $extensions
- Added extensions
Returns
array Array with results of the call. You don't need to use
any of this, PayID will be set to $payment automatically.
|
public
string
|
#
getPaymentProcessUrl( string|OndraKoupil\Csob\Payment $payment )
Generates URL to send customer's browser to after initiating the payment.
Generates URL to send customer's browser to after initiating the payment.
Use this after you successfully called paymentInit() and redirect
the customer's browser on the URL that this method returns manually,
or use redirectToGateway().
Parameters
- $payment
Either PayID given during paymentInit(),
or just the Payment object you used in paymentInit()
Returns
string
See
|
public
string
|
#
getPaymentCheckoutUrl( string|OndraKoupil\Csob\Payment $payment, integer $oneClickPaymentCheckbox, boolean|null $displayOmnibox = null, string|null $returnCheckoutUrl = null )
Generates checkout URL to send customer's browser to after initiating
the payment.
Generates checkout URL to send customer's browser to after initiating
the payment.
Parameters
- $payment
Either PayID given during paymentInit(),
or just the Payment object you used in paymentInit()
- $oneClickPaymentCheckbox
Flag to indicate whether to display
the checkbox for saving card for future payments and to indicate whether
it should be preselected or not.
0 - hidden, unchecked
1 - displayed, unchecked
2 - displayed, checked
3 - hidden, checked (you need to indicate to customer that this happens
before initiating the payment)
- $displayOmnibox
Flag to indicate whether to display
omnibox in desktop's iframe version instead of card number, expiration
and cvc fields
- $returnCheckoutUrl
URL for scenario when process needs
to get back to checkout page
Returns
string
|
public
|
#
redirectToGateway( string|OndraKoupil\Csob\Payment $payment )
Redirect customer's browser to payment gateway.
Redirect customer's browser to payment gateway.
Use this after you successfully called paymentInit()
Note that HTTP headers must not have been sent before.
Parameters
- $payment
Either PayID given during paymentInit(),
or just the Payment object you used in paymentInit()
Throws
|
public
array|number
|
#
paymentStatus( string|OndraKoupil\Csob\Payment $payment, boolean $returnStatusOnly = true, OndraKoupil\Csob\Extension[] |OndraKoupil\Csob\Extension $extensions = array(), $nullIfPaymentNotFound = true )
Check payment status by calling payment/status API method.
Check payment status by calling payment/status API method.
Use this to check current status of some transaction.
See ČSOB's wiki on Github for explanation of each status.
Basically, they are:
- 1 = new; after paymentInit() but before customer starts filling in his card number and authorising the transaction
- 2 = in progress; during customer's stay at payment gateway
- 4 = after successful authorisation but before it is approved by you by calling paymentClose. This state is skipped if you use Payment->closePayment = true or Config->closePayment = true.
- 7 = waiting for being processed by bank. The payment will remain in this state for about one working day. You can call paymentReverse() during this time to stop it from being processed.
- 5 = cancelled by you. Payment gets here after calling paymentReverse().
- 8 = finished. This means money is already probably on your account. If you want to cancel the payment, you can only refund it by calling paymentRefund().
- 9 = being refunded
- 10 = refunded
- 6 or 3 = payment was not authorised or was cancelled by customer
Parameters
- $payment
Either PayID given during paymentInit(),
or just the Payment object you used in paymentInit()
- $returnStatusOnly
Leave on true if you want to return only
status code. Set to false if you want more information as array.
- $extensions
- $nullIfPaymentNotFound
Returns
array|number Number if $returnStatusOnly was true, array otherwise.
|
public
array|null
|
#
paymentReverse( string|array|OndraKoupil\Csob\Payment $payment, boolean $ignoreWrongPaymentStatusError = false, OndraKoupil\Csob\Extension[] |OndraKoupil\Csob\Extension $extensions = array() )
Performs payment/reverse API call.
Performs payment/reverse API call.
Reversing payment means stopping payment that has not yet been processed
by bank (usually about 1 working day after being created).
Normally, payment must be in state 4 or 7 to be reversable.
If the payment is not in an acceptable state, then the gateway
returns an error code 150 and exception is thrown from here.
Set $ignoreWrongPaymentStatusError to true if you are okay with that
situation and you want to silently ignore it. Method then returns null.
If some other type of error occurs, exception will be thrown anyway.
Parameters
- $payment
Either PayID given during paymentInit(),
or whole returned array from paymentInit or just the Payment object
you used in paymentInit()
- $ignoreWrongPaymentStatusError
- $extensions
Returns
array|null Array with results of call or null if payment is not
in correct state
Throws
|
public
array|null
|
#
paymentClose( string|OndraKoupil\Csob\Payment $payment, boolean $ignoreWrongPaymentStatusError = false, integer $amount = null, OndraKoupil\Csob\Extension[] |OndraKoupil\Csob\Extension $extensions = array() )
Performs payment/close API call.
Performs payment/close API call.
If you want to accept (close) payments manually, set property $closePayment
of Payment object or Config object to false. Then, payments will wait in
state 4 for your approval by calling paymentClose().
Normally, payment must be in state 4 to be eligible for this operation.
If the payment is not in an acceptable state, then the gateway
returns an error code 150 and exception is thrown from here.
Set $ignoreWrongPaymentStatusError to true if you are okay with that
situation and you want to silently ignore it. Method then returns null.
If some other type of error occurs, exception will be thrown in all cases.
Parameters
- $payment
Either PayID given during paymentInit(),
or just the Payment object you used in paymentInit()
- $ignoreWrongPaymentStatusError
- $amount
Amount of finance to close (if different from originally authorized amount).
Use hundreths of basic currency unit.
- $extensions
Returns
array|null Array with results of call or null if payment is not
in correct state
Throws
|
public
array|null
|
#
paymentRefund( string|OndraKoupil\Csob\Payment $payment, boolean $ignoreWrongPaymentStatusError = false, integer $amount = null, OndraKoupil\Csob\Extension[] |OndraKoupil\Csob\Extension $extensions = array() )
Performs payment/refund API call.
Performs payment/refund API call.
If you want to send money back to your customer after payment has been
completely processed and money transferred, use this method.
Normally, payment must be in state 8 to be eligible for this operation.
If the payment is not in an acceptable state, then the gateway
returns an error code 150 and exception is thrown from here.
Set $ignoreWrongPaymentStatusError to true if you are okay with that
situation and you want to silently ignore it. Method then returns null.
If some other type of error occurs, exception will be thrown in all cases.
Note: on testing environment, refunding often ends up with HTTP code 500
and exception thrown. This is a bug in payment gateway - see
https://github.com/csob/paymentgateway/issues/43, however it is still not resolved.
On production environment, this should be OK.
Parameters
- $payment
Either PayID given during paymentInit(),
or just the Payment object you used in paymentInit()
- $ignoreWrongPaymentStatusError
- $amount
Optionally, an amount (in hundreths of basic money unit - beware!)
can be passed, so that the payment will be refunded partially.
Null means full refund.
- $extensions
Returns
array|null Array with results of call or null if payment is not
in correct state
|
public
array
|
#
paymentRecurrent( OndraKoupil\Csob\Payment |string $origPayment, OndraKoupil\Csob\Payment $newPayment )
Performs payment/recurrent API call.
Performs payment/recurrent API call.
Use this method to redo a payment that has already been marked as
a template for recurring payments and approved by customer
- see Payment::setRecurrentPayment()
You need PayID of the original payment and a new Payment object.
Only $orderNo, $totalAmount (sum of cart items added by addToCart), $currency
and $description of $newPayment are used, others are ignored.
Note that if $totalAmount is set, then also $currency must be set. If not,
CZK is used as default value.
$orderNo is the only mandatory value in $newPayment. Other properties
can be left null to use original values from $origPayment.
After successful call, received PayID will be set in $newPayment object.
Deprecated
Deprecated since eAPI 1.7, please use paymentOneClick() instead.
Parameters
- $origPayment
- Either string PayID or a Payment object
- $newPayment
Returns
array Data with new values
Throws
See
|
public
array
|
#
paymentOneClickInit( OndraKoupil\Csob\Payment |string $origPayment, OndraKoupil\Csob\Payment $newPayment, OndraKoupil\Csob\Extension[] |OndraKoupil\Csob\Extension $extensions = array(), string $clientIp = '' )
Performs a payment/oneclick/init API call.
Performs a payment/oneclick/init API call.
Use this method to redo a payment that has already been marked as
a template for recurring payments and approved by customer
- see Payment::setOneClickPayment()
You need PayID of the original payment and a new Payment object.
Only $orderNo, $totalAmount (sum of cart items added by addToCart), $currency
and $description of $newPayment are used, others are ignored.
Note that if $totalAmount is set, then also $currency must be set. If not,
CZK is used as default value.
$orderNo is the only mandatory value in $newPayment. Other properties
can be left null to use original values from $origPayment.
After successful call, received PayID will be set in $newPayment object.
Then, pass this object to paymentOneClickStart method.
This method is a successor of now deprecated paymentRecurrent() method.
Since API v 1.8, this method uses oneclick/init endpoint.
Parameters
- $origPayment
- Either string PayID or a Payment object
- $newPayment
- $extensions
- $clientIp
- IP address of customer's browser
Returns
array Data with new values
See
|
public
array|string
|
|
public
number
|
#
paymentOneClickEcho( string $origPayId )
Performs a oneclick/echo API call.
Performs a oneclick/echo API call.
Use this method to check whether a oneclick template is still ready to be used.
CAUTION! The method returns a numeric code. 0 means success. Positive number means failure.
Do not just if ($client->paymentOneClickEcho($payId)) { success(); } else { fail(); } !!
See https://github.com/csob/paymentgateway/wiki/Vol%C3%A1n%C3%AD-rozhran%C3%AD-eAPI#operation-return-code
for explanation.
Parameters
- $origPayId
- The PayID of original payment template.
Returns
number 0 = template is OK, number 700-740 = template is not OK.
See
https://github.com/csob/paymentgateway/wiki/Vol%C3%A1n%C3%AD-rozhran%C3%AD-eAPI#operation-return-code
|
public
array|string
|
#
paymentButton( OndraKoupil\Csob\Payment $payment, string $brand = "csob", OndraKoupil\Csob\Extension[] |OndraKoupil\Csob\Extension $extensions = array() )
Performs a payment/button API call in API <= 1.7
Performs a payment/button API call in API <= 1.7
You need a Payment object that was already processed via paymentInit() method
(or was injected with a payId that you received from other source).
In response, you'll receive an array with [redirect], which should be
another array with [method] and [url] items. Redirect your user to that address
to complete the payment.
Deprecated
Not available since API 1.8, use buttonInit() instead
Parameters
- $payment
- $brand
- "csob" or "era"
- $extensions
Returns
array|string
|
public
array
|
#
buttonInit( OndraKoupil\Csob\Payment $payment, string $clientIp, string $brand = 'csob', OndraKoupil\Csob\Extension[] |OndraKoupil\Csob\Extension $extensions = array() )
Performs a button/init API call in API >= 1.8
Performs a button/init API call in API >= 1.8
You need a Payment object, but DO NOT process it via paymentInit() method. You don't need its PayID.
It is used only as source of data for calling API.
Items in cart in Payment object are not used, only total sum of their prices.
In response, you'll receive an array with [redirect], which should be
another array with [method], [url] and possibly [params] items.
Redirect your user to that address to complete the payment.
Parameters
- $payment
- $clientIp
- $brand
- "csob" or "era"
- $extensions
Returns
array
See
https://github.com/csob/paymentgateway/wiki/Metody-pro-platebn%C3%AD-tla%C4%8D%C3%ADtko for details
|
public
array|string
|
#
customRequest( string $methodUrl, array $inputPayload, array $expectedOutputFields = array(), OndraKoupil\Csob\Extension[] |OndraKoupil\Csob\Extension $extensions = array(), string $method = "POST", boolean $logOutput = false, boolean $ignoreInvalidReturnSignature = false )
Sends an arbitrary request to bank's API with any parameters.
Sends an arbitrary request to bank's API with any parameters.
Use this method to call various masterpass/* API methods or any methods of
API versions that may come in future and are not implemented in this library yet.
$inputPayload is an associative array with data in order in which they should be signed.
You can leave dttm and merchantId empty or null, their values will be filled automatically,
however you can't omit them completely, since they are required in the signature.
Signature field will be added automatically.
$expectedOutputFields should be ordinary array of field names in order they appear in the response.
Their order in the array is important to verify response signature. You can leave this empty, the
base string will be created on order as the keys appear in the response. However, it can't be guaranteed
it is the correct order. If you want it to be more reliable, I recommend to define it.
Example - testing post connection:
$client->customRequest( 'echo', array( 'merchantId' => null, 'dttm' => null )
);
Parameters
- $methodUrl
- API method name, without leading slash, ie. "payment/init"
- $inputPayload
- Input payload in form of associative array. Order of items is significant.
- $expectedOutputFields
- Expected field names of response in order in which they should be returned.
- $extensions
- $method
- HTTP method
- $logOutput
- Should be the complete output logged into debug log?
- $ignoreInvalidReturnSignature
If set to true, then in case of invalid signature of returned data,
no exception will be thrown and method will return received data as usual. Then, you should handle the situation by yourself.
Do not use this option on regular basis, it is intended only as workaround for cases when returned data or its signature is more complex
and its verification fails for some reason.
Returns
array|string
|
public
array
|
#
testPostConnection( )
Test the connection using POST method.
Test the connection using POST method.
Returns
array Results of calling the method.
Throw
Exception If something goes wrong. Se exception's message for more.
|
public
array
|
#
testGetConnection( )
Test the connection using GET method.
Test the connection using GET method.
Returns
array Results of calling the method.
Throw
Exception If something goes wrong. Se exception's message for more.
|
public
boolean|integer
|
#
customerInfo( string|array|OndraKoupil\Csob\Payment $customerId, boolean $returnIfHasCardsOnly = true )
Performs customer/info (below v1.8) or echo/customer (>=v1.8) API call.
Performs customer/info (below v1.8) or echo/customer (>=v1.8) API call.
Use this method to check if customer with given ID has any saved cards.
If he does, you can show some icon or change default payment method in
e-shop or do some other action. This is just an auxiliary method and
is not neccessary at all.
Parameters
- $customerId
Customer ID, Payment object or array
as returned from paymentInit
- $returnIfHasCardsOnly
Returns
boolean|integer If $returnIfHasCardsOnly is set to true, method returns
boolean indicating whether given customerID has any saved cards. If it is
set to false, then method returns one of CUSTOMER_*** constants which can
be used to distinguish more precisely whether customer just hasn't saved
any cards or was not found at all.
|
public
array|null
|
#
receiveReturningCustomer( array|null $input = null )
Processes the data that are sent together with customer when he
returns back from payment gateway.
Processes the data that are sent together with customer when he
returns back from payment gateway.
Call this method on your returnUrl to extract all data from request,
validate signature, decode merchant data from base64 and return
it all as an array. Method automatically reads data from GET or POST.
Parameters
- $input
If return data is not in GET or POST, supply
your own array with accordingly named variables.
Returns
array|null Array with received data or null if no data is present.
Throws
|
public
OndraKoupil\Csob\Client
|
#
setLog( string|callable $log )
Sets logging for bussiness-logic level messages.
Sets logging for bussiness-logic level messages.
Parameters
- $log
String filename or callback that forwards
messages to your own logging system.
Returns
|
public
OndraKoupil\Csob\Client
|
#
setTraceLog( string|callable $log )
Sets logging for exact contents of communication
Sets logging for exact contents of communication
Parameters
- $log
String filename or callback that forwards
messages to your own logging system.
Returns
|
public
string
|
#
getApiMethodUrl( string $apiMethod )
Gets the URL of API method
Gets the URL of API method
Parameters
Returns
string
|


Try out our Premium Member services: Virtual Legal Assistant, Query Alert Service and an ad-free experience. Free for one month and pay only if you like it.
In The High Court at Calcutta Constitutional Writ Jurisdiction Appellate Side Present : The Hon'ble Mr Justice Jayanta Kumar Biswas W.P.No.16672(W) of 2010 M/s. Krishna Collapsible Gate Company & Anr.
-vs-
Calcutta Electric Supply Corporation Limited & Ors.
Mr. Biswaroop Bhattacharjee Mr. Joydeep Acharya .... for the petitioners Mr. Rajiv Lall ....for CESC Mr. Kallol Basu ....for the Pollution Control Board Heard on : August 11, 2010 Judgment on : August 11, 2010
The Court : The petitioners in this art.226 petition dated July 28, 2010 are alleging that without disclosing any reason CESC disconnected electricity to them. They are seeking a mandamus commanding CESC to reconnect the supply at once.
Counsel for the petitioners submits that on enquiry the petitioners learnt that CESC disconnected electricity to the petitioners while enforcing an order of the West Bengal Pollution Control Board dated April 23, 2010 (at p.38). His submission is that the order could not apply to the petitioners whose names were not mentioned therein.
Counsel for CESC submits as follows. Supply to the petitioners was disconnected in terms of the order of the West Bengal Pollution Control Board dated April 23, 2010. When CESC people went to disconnect electricity to the two establishments against which the Board made the order dated April 23, 2010 it was found that the two establishments were getting electricity through two meters: 4028381 and 4028382. Under the circumstances, CESC people disconnected supply through those meters. Consequently the petitioners, presumably getting supply through one of those meters, have been affected.
There is no dispute that CESC was bound to carry out the statutory order made by the West Bengal Pollution Control Board. Whether the petitioners were bound by the order is not to be decided by me in this petition. If they were aggrieved, then their remedy was before the appellate authority under s.31 of the Air (Prevention and Control of Pollution) Act, 1981. There is no reason to permit them to question the order of the West Bengal Pollution Control Board in this petition in an indirect manner.
For these reasons, the petition is dismissed. No costs. Certified xerox.
(Jayanta Kumar Biswas, J) sb


| make this text red (#FF0000) | make this text green (#00FF00) | make this text blue (#0000FF) | make this text yellow (#FFFF00) |
| this text should be left black | this text should be left black | this text should be left black | make this text magenta (#FF00FF) |
| make this text cyan (#00FFFF) | this text should be left black | make this text cyan (#00FFFF) | this text should be left black |
| make this text red (#FF0000) | make this text red (#FF0000) | make this text red (#FF0000) | make this text red (#FF0000) |
| make this text green (#00FF00) | make this text green (#00FF00) | this text should be left black | make this text green (#00FF00) |
| make this text blue (#0000FF) | this text should be left black | this text should be left black | this text should be left black |


8. Simulation Manager¶
The Simulation Manager is the controller in the EVI-DSS. The purpose of the Simulation Manager is to watch for the inserts into the database table
analysis_record
. A record is inserted into this table whenever a user submits a charging station deployment scenario for analysis. The Simulation Manager receives the insert notification through the database trigger notify_new_order()
with the payload including the analysis_id
etc. and queues the analysis request for execution. The Simulation Manager process is shown in Fig. 8.1.
Simulation Manager and the sub-processes (in R and GAMA) all read the input data from the database and write the output to it. analysis_id
is passed between processes and all the relevant records from the database can be looked up using the analysis_id
.
8.1. Implementation Details¶
The Simulation Manager is written in NodeJS as it supports asynchronous processes. The code is hosted here. The NodeJS library bee-queue is used for implementing the queueing. bee-queue utilizes Redis as backend for storing the jobs in queue and their states. The queue can be monitored using an instance of Arena which tells us the status of the current queue, jobs being processed, waiting etc.
8.2. Future Scope¶
Currently, the Simulation Manager only executes the jobs on the local system on which it is deployed. With a little wiring, it should be able to distribute the analysis execution to a cluster, and possibly handle multiple jobs in parallel.


| Package | com.threerings.util |
| Class | public class Throttle |
For example:
protected Throttle _throttle = new Throttle(5, 60000L); public void performOp () throws UnavailableException { if (_throttle.throttleOp()) { throw new UnavailableException(); } // perform operation }
| Property | Defined by | ||
|---|---|---|---|
| _oldestOp : int | Throttle | ||
| _ops : Array | Throttle | ||
| _period : int | Throttle |
| Method | Defined by | ||
|---|---|---|---|
|
Throttle(operations:int, period:int)
Constructs a new throttle instance that will allow the specified number of operations to
proceed within the specified period (the period is measured in milliseconds).
| Throttle | ||
|
getLatestOperation():int
Returns the timestamp of the most recently recorded operation.
| Throttle | ||
|
noteOp(timeStamp:int):void
Note that an operation occurred at the specified timestamp.
| Throttle | ||
|
opsToString():String
For debugging, includes the age of all operations.
| Throttle | ||
|
reinit(operations:int, period:int):void
Updates the number of operations for this throttle to a new maximum, retaining the current
history of operations if the limit is being increased and truncating the newest operations
if the limit is decreased.
| Throttle | ||
|
throttleOp():Boolean
Registers an attempt at an operation and returns false if the operation should be performed
or true if it should be throttled (meaning N operations have already been performed in the
last M seconds).
| Throttle | ||
|
throttleOpAt(timeStamp:int):Boolean
Registers an attempt at an operation and returns false if the operation should be performed
or true if it should be throttled (meaning N operations have already been performed in the
last M seconds).
| Throttle | ||
|
toString():String
| Throttle | ||
|
wouldThrottle(timeStamp:int):Boolean
Check to see if we would throttle an operation occuring at the specified timestamp.
| Throttle |
| _oldestOp | property |
protected var _oldestOp:int
| _ops | property |
protected var _ops:Array
| _period | property |
protected var _period:int
| Throttle | () | constructor |
public function Throttle(operations:int, period:int)
Constructs a new throttle instance that will allow the specified number of operations to proceed within the specified period (the period is measured in milliseconds).
As operations and period define a ratio, use the smallest value possible for
operations
as an array is created to track the time at which each operation was
performed (e.g. use 6 ops per 10 seconds rather than 60 ops per 100 seconds if
possible). However, note that you may not always want to reduce the ratio as much as
possible if you wish to allow bursts of operations up to some large value.
Parameters
operations:int |
|
period:int |
| getLatestOperation | () | method |
public function getLatestOperation():int
Returns the timestamp of the most recently recorded operation.
Returnsint |
| noteOp | () | method |
public function noteOp(timeStamp:int):void
Note that an operation occurred at the specified timestamp. This method should be used with {
ParameterstimeStamp:int |
| opsToString | () | method |
public function opsToString():String
For debugging, includes the age of all operations.
ReturnsString |
| reinit | () | method |
public function reinit(operations:int, period:int):void
Updates the number of operations for this throttle to a new maximum, retaining the current history of operations if the limit is being increased and truncating the newest operations if the limit is decreased.
Parametersoperations:int — the new maximum number of operations.
|
|
period:int — the new period (in milliseconds).
|
| throttleOp | () | method |
public function throttleOp():Boolean
Registers an attempt at an operation and returns false if the operation should be performed or true if it should be throttled (meaning N operations have already been performed in the last M seconds).
ReturnsBoolean — true if the throttle is activated, false if the operation can proceed.
|
| throttleOpAt | () | method |
public function throttleOpAt(timeStamp:int):Boolean
Registers an attempt at an operation and returns false if the operation should be performed or true if it should be throttled (meaning N operations have already been performed in the last M seconds).
ParameterstimeStamp:int — the timestamp at which this operation is being attempted.
|
Boolean — true if the throttle is activated, false if the operation can proceed.
|
| toString | () | method |
public function toString():String
Returns
String |
| wouldThrottle | () | method |
public function wouldThrottle(timeStamp:int):Boolean
Check to see if we would throttle an operation occuring at the specified timestamp. Typically used in conjunction with {
ParameterstimeStamp:int |
Boolean |


I am a trained Tabla player and can play other instruments too. I have started my musical journey since when I was 8 yrs


What is RSS? What are feeds?
Lots of websites have news or updates of some kind.
They also have a bunch of other things — a header at the top of the page, and maybe links and ads and widgets on the left or right (or both). And then some more stuff at the bottom of the page.
Like this imaginary squished-down web page:
The good part is the part in the middle — that’s the part with the news. That’s the part that you read. That’s the part you’re interested in.
And that’s what RSS is — it’s just that part, minus the rest of the stuff.
Details
That “good part” is actually made available as a feed. A feed is just a specially-formatted text file that readers like NetNewsWire can read. The files look weird — they kind of look like the source behind web pages, with angle brackets and everything.
The important thing is: it’s NetNewsWire’s job to know how to read the feed. And it’s NetNewsWire’s job to show you what articles you haven’t read yet.
By doing this — by running NetNewsWire — you can let NetNewsWire find out when there’s something new. You don’t have to go to the websites and check to see if there’s something new. You can save time, and not have to rely on your memory.
Types of feeds
People often talk or write about RSS — but sometimes they mention Atom, too. Atom does the same thing as RSS.
If you see RSS or Atom, just know that NetNewsWire handles both, no problem.


Projects I would like to work on
Covid death data, recently heard(Jan 2022) that a judge is making the FDA release the data in 8ish months instead of 2097. I am sure a lot of people are curious about the data on this pandemic.
Crypto trading bot, this is more of a private project that will utilize various time-series methods to predict prices and place buy/sell orders.
Completed Projects
World of Warcraft, Black Market Gold The whole point of this project was to look at how patches impacted gold prices in world of warcraft. It evolved into trying to predict when to buy gold in the mmo to try and play the market just like in the stock market. It turns out that gold prices are very unpredictable and follow a more or less stochastic trend. (One of my first projects)
Twitter NLP This was brought about by being interested in seeing if we could predict the stock market based on twitter sentiment. using sentimentr we are able to determine the sentiment of string of texts. Using this, we are able to get a time-series of someones sentiment. Long story short, it didn’t work out as I wanted it to but, it is pretty cool to see someones sentiment over time using their twitter data.
Deploying plumber in the IBM Cloud This was more of a learning experience with understanding how a full-stack web application works with R. Also, connecting to a DB2 from a container is somewhat annoying if you have to use that dbms.
Modelling application template Here is a repo that you can clone or fork and use it as a base for a modeling application. The dockerfile is already built and it is a plug and play solution as well as cloud agnostic.
Cloud Deployment Modelling Orchestration I wanted to have the ability to work in whatever language I wanted so I created a sort of container orchestration template that has 3 separate containers that can run whatever images I want them to. These images can then push their data to a volume which is mounted on each container. This allows for maximum flexibility for using the best language for each job.
TimeSeriesCatchAll A time-series package that runs 1000s of models against your series in parallel. It uses Hyndman’s Forecast, Forecasthybrid, and the package DLM to forecast a time-series. It is in a state where I am happy with it, it is able to go through thousands of models in parallel for a time series and based off the steps forward you want to look it is able to do the backtesting and pick the best model forward.
Caloric Expenditure This shiny app will calculate how long it will take you to lose/gain weight based on your current caloric deficit/surplus and activity. It also takes into account how lean you are, among other factors, to give you a Basal Metabolic Rate.
Distance to Fazoils This shiny instance was more of a joke between my friends and I about how I use Fazoils as the origin to my cartesian coordinate system. For those of you unaware, Fazoils is a fast food italian place that serves pretty decent italian food.
Social Distancing Example This shiny app was based on the SIR model to look at how social distancing works in a simple example and also how epidemics work in this classical example.


Blogify
Home
Profile
Register
First name
*
Last name
*
Username
*
Email
*
Password
*
Confirm Password
*
Sign Up
Already have an account?
log in
instead


Czech government approves digital tax aimed at internet giants
PRAGUE (Reuters) - The Czech government approved a 7% digital tax proposal on Monday aimed at boosting state coffers by taxing advertising by global internet giants like Google and Facebook, the Finance Ministry said.
The proposed tax, which still must make it past lawmakers in parliament, covers revenue gained from targeted advertising, providing digital market places, and user data sales.
It will be aimed at services provided to Czech users.
It would apply to companies with global revenue over 750 million euros ($826.50 million) annually, 100 million crown ($4.32 million) turnover in the Czech market and a reach exceeding 200,000 user accounts.
The Finance Ministry said it estimated the tax, which it said would be temporary until a global deal could be reached, will raise 2.1 billion crowns next year if it takes effect for June, and about 5 billion annually in following years.
The Czech Republic has followed some other countries in Europe with the digital tax after the European Union (EU) failed to reach a bloc-wide agreement last year.
The ministry said the Czech proposal was based on the earlier ideas for pan-European legislation.
Similar moves by countries like France or Italy have upset the United States, home to the biggest internet players.


The YUI Library. (Link navigates away from page.)
The YUI Library. (Link's default behavior is suppressed.)
blah
Me


JWT身份验证¶
$ npm install @feathersjs/authentication-jwt --save
[@feathersjs/authentication-jwt](https://github.com/feathersjs/authentication-jwt) is a module for the 认证 that wraps the passport-jwt authentication strategy, which lets you authenticate with your Feathers application using a JSON Web Token access token.
This module contains 3 core pieces:
The main initialization function
The
Verifier
classThe
`ExtractJwt
<https://github.com/themikenicholson/passport-jwt#extracting-the-jwt-from-the-request>`_ object from passport-jwt.
Configuration¶
In most cases initializing the module is as simple as doing this:
const feathers = require('@feathersjs/feathers');
const authentication = require('@feathersjs/authentication');
const jwt = require('@feathersjs/authentication-jwt');
const app = feathers();
// Setup authentication
app.configure(authentication(settings));
app.configure(jwt());
// Setup a hook to only allow valid JWTs to authenticate
// and get new JWT access tokens
app.service('authentication').hooks({
before: {
create: [
authentication.hooks.authenticate(['jwt'])
]
}
});
This will pull from your global authentication object in your config file. It will also mix in the following defaults, which can be customized.
Options¶
{
name: 'jwt', // the name to use when invoking the authentication Strategy
entity: 'user', // the entity that you pull from if an 'id' is present in the payload
service: 'users', // the service to look up the entity
passReqToCallback: true, // whether the request object should be passed to `verify`
jwtFromRequest: [ // a passport-jwt option determining where to parse the JWT
ExtractJwt.fromHeader, // From "Authorization" header
ExtractJwt.fromAuthHeaderWithScheme('Bearer'), // Allowing "Bearer" prefix
ExtractJwt.fromBodyField('body') // from request body
],
secretOrKey: auth.secret, // Your main secret (string or buffer) provided to passport-jwt
secretOrKeyProvider: auth.secret, // Your main secret provider (function) provided to passport-jwt
session: false, // whether to use sessions
Verifier: Verifier // A Verifier class. Defaults to the built-in one but can be a custom one. See below for details.
}
Additional passport-jwt options can be provided.
Verifier¶
This is the verification class that receives the JWT payload (if
verification is successful) and either returns the payload or, if an
id
is present in the payload, populates the entity (normally a
user
) and returns both the entity and the payload. It has the
following methods that can all be overridden. The verify
function
has the exact same signature as
passport-jwt.
{
constructor(app, options) // the class constructor
verify(req, payload, done) // queries the configured service
}
The Verifier
class can be extended so that you customize it’s
behavior without having to rewrite and test a totally custom local
Passport implementation. Although that is always an option if you don’t
want use this plugin.
An example of customizing the Verifier:
const { Verifier } = require('@feathersjs/authentication-jwt');
class CustomVerifier extends Verifier {
// The verify function has the exact same inputs and
// return values as a vanilla passport strategy
verify(req, payload, done) {
// do your custom stuff. You can call internal Verifier methods
// and reference this.app and this.options. This method must be implemented.
// the 'user' variable can be any truthy value
// the 'payload' is the payload for the JWT access token that is generated after successful authentication
done(null, user, payload);
}
}
app.configure(jwt({ Verifier: CustomVerifier }));
Client Usage¶
authentication-client¶
When this module is registered server side, using the default config values this is how you can authenticate using @feathersjs/authentication-client:
app.authenticate({
strategy: 'jwt',
accessToken: 'your access token'
}).then(response => {
// You are now authenticated
});
HTTP¶
If you are not using @feathersjs/authentication-client
and you have
registered this module server side then you can include the access token
in an Authorization
header.
Here is what that looks like with curl:
curl -H "Content-Type: application/json" -H "Authorization: <your access token>" -X POST http://localhost:3030/authentication
Sockets¶
Authenticating using an access token via sockets is done by emitting the following message:
const io = require('socket.io-client');
const socket = io('http://localhost:3030');
socket.emit('authenticate', {
strategy: 'jwt',
accessToken: 'your token'
}, function(message, data) {
console.log(message); // message will be null
console.log(data); // data will be {"accessToken": "your token"}
// You can now send authenticated messages to the server
});


Open Sans Regular, 16/26px
Open Sans Regular 600, 14/24px
Open Sans Regular, 14/24px
Open Sans Regular 600, 12/20px
Open Sans Regular, 12/20px
Open Sans Regular, 10/14px
Open Sans Bold, 12/16px, 2px spacing
Open Sans Regular, 14/40px + Open Sans Regular, 14/32px


The eight parts of speech — verbs, nouns, pronouns, adverbs, adjectives, prepositions, conjunctions, and interjections — are defined on the pages hyperlinked below. (Some authorities would not list interjections, but would list determiners or articles, instead.)
Three little words you often see
Are ARTICLES: a, an, and the.
A NOUN's the name of anything,
As: school or garden, toy, or swing.
ADJECTIVES tell the kind of noun,
As: great, small, pretty, white, or brown.
VERBS tell of something being done:
To read, write, count, sing, jump, or run.
How things are done the ADVERBS tell,
As: slowly, quickly, badly, well.
CONJUNCTIONS join the words together,
As: men and women, wind or weather.
The PREPOSITION stands before
A noun as: in or through a door.
The INTERJECTION shows surprise
As: Oh, how pretty! Ah! how wise!
The whole are called the PARTS of SPEECH,
Which reading, writing, speaking teach.
Abate/Abatement -
(reduce, diminish)
Adhere -
(stick to, to a plan or belief, such as with glue)
similar : Abide by (Follow, conform to), cohere (become united, hold together as part of the same)
Alienate/ Inalienate -
(cause to become unfriendly, hostile, distant)
similar : Disaffect (Cause to loss loyelty or affection), Estrange (make hostile or indefferent)
Apathy/apathetic -
Not caring, absence of feeling, lack of intrest or concern
similar : Indifferent(Apathetic or impartial), Lukewarm (having little enthusiasm)
Artless -
lacking skills or knowledge, free of deceit or craftiness
similar : Guileless, Ingenuous
Balk -
refuse to procced OR to do something
similar : demur
Bygone -
past, former, that which is in the past
similar : Erstwhile, Quondam
Chauvinisum/Chauvinist/Chauvinistic -
blind enthusiasm for military glory, biased divotion to any group/cause . fanatical patriotism
Concede/Concession -
give in, admin, yield, acknowledge reluctantly, grant or give up
Contentious/Contend/Contention -
controversial especially gratuitous or pretty ones
similar : Disputatious/quarrelsome
Countenance -
Definition: Facial expression or face (noun); approve or tolerate (verb)
Usage: Her countenance said it all—the look on her face was pure terror. / I saw you cheating off my paper, and I can’t countenance cheating—either you turn yourself in or I’ll report you.
Related Words: Brook (suffer or tolerate), Condone (overlook or tacitly approve)
More Info: Countenance shares a root with continence, meaning “self control.” The use of countenance to mean “approve or tolerate” makes sense when you think about a similar expression: “I cannot look you in the face after what you did.” (We would usually say “I cannot face you” when the speaker is the guilty party).
Culminate/Culmination -
Definition: Reach the highest point or final stage
Usage: A Ph.D. program generally culminates in a written dissertation and its defense to a committee.
Related Words: Acme, Summit, Pinnacle, and Apex are all words for a high point or peak. Denouement means conclusion or ending, such as of a literary work, esp. one that “wraps up all the loose ends.”
Deference/Defer -
Definition: Respectful submission; yielding to the authority or opinion of another
Usage: In many cultures, young people are expected to show deference to older people at all times. / I’m not an expert in databases—I’ll defer to our programmers on that decision. / Ingrid deferred her college admissions for a year so she could travel the world.
Deterrent -
Definition: Something that restrains or discourages
Usage: Some argue that the death penalty is a deterrent to crime—that is, the point is not just to punish the guilty, but to frighten other prospective criminals.
Related Words: Balk (an impediment; refuse to proceed or to do something)
More Info: As a military policy, deterrence is building military strength or ability to retaliate (especially by stockpiling nuclear weapons, as in the Cold War) sufficient to deter enemies from attacking.
Disingenuous -
Definition: Insincere, not genuine
Usage: Christine used the fact that her mother spoke limited English as an opportunity to be disingenuous. When her mother asked, “Will there be boys at this sleepover?” she replied “There won’t not be boys there!”
Related Words: Dissembling (misleading, concealing the truth, acting hypocritically), Prevaricating (misleading or lying)
More Info: Disingenuous appropriately describes misleading behavior that isn’t quite lying, like when you say “Let’s do the dishes!” when you really mean “Why don’t you do the dishes?” The opposite of disingenuous is ingenuous, or genuine.
Dissent(verb/noun) -
Definition: Disagree or take an opposing view, esp. in relation to a formal body such as a government, political party, or church; such a view
Usage: Judge Antonin Scalia cast the only dissenting vote, explaining in his written decision why he thought all the other justices had it wrong. / Not every country has a right to free speech (and thus to dissent), although nations that throw dissenters in jail are condemned by the international community at large.
Related Words: Gainsay (deny, refute, oppose), Sedition (incitement of dissent against a government; promoting rebellion by speech or writing)
More Info: The variant dissidence tends to be a strong, longstanding, determined practice of dissenting.
e.g. (abbreviation for Latin “exempli gratia”) -
Definition: For example, such as
Usage: He was positively traumatized by the romantic comedies his girlfriend made him watch (e.g., He’s Just Not That Into You).
Related Words: i.e. is an abbrevation of Latin “id est,” or “that is” and means “that is to say, in other words,” as in “He finally nailed the lutz—i.e., a toepick-assisted figure skating jump with an entrance from the back outside edge.”
More Info: Use e.g. to introduce examples and i.e. to add a definition or clarification.
Eloquent(adj) -
Definition: Marked by forceful, fluid, apt speech; expressive, emotionally moving
Usage: Wow, he’s such an eloquent speaker, he could sell snow to Antarcticans! / When Mom suggested that everyone might enjoy a museum instead of the beach, she was met with the children’s eloquent looks of disgust.
Related Words: Rhetorical and oratorical are words related to the art of public speaking. While a lawyer needs good rhetorical skills, sometimes rhetorical and oratorical mean only related to style and effect, and lacking substance. Eloquent, however, is always positive—even in the latter sentence above, the eloquent looks of disgust are very effective in expressing the children’s feelings.
More Info: The root “loq” means “speech” and also appears in loquacious (talkative) and interlocutor (participant in a dialogue; interrogator).
Ephemeral (adj) -
Definition: Lasting only a short time, fleeting
Usage: “Thank you for this jacket that says ‘Eugene’s Girl,’” said Marie, “but I fear that your love will prove to be ephemeral—over the last two years, I’ve seen four other girls in school with the same jacket. Do you buy them in six-packs?”
Related Words: Evanescent and Fugacious are synonyms. Transient can mean “lasting only a short time, temporary” or “staying only a short time,” or can be a noun referring to homeless people, temporary workers, or others who move often.
More Info: Ephemeral comes from a Greek word for “day.” It originally meant—and sometimes still means—lasting only one day.
Exacting(adj) -
Definition: Very severe in making demands; requiring precise attention
Usage: The boxing coach was exacting, analyzing Joey’s footwork down to the millimeter and forcing him to repeat movements hundreds of times until they were correct.
Related Words: Meticulous (taking extreme care with details; fussy), Fastidious (excessively particular, hard to please)
More Info: Exaction is a word for extortion, or demanding money under threat. To exact as a verb can mean to extort money, or simply to demand, as in “to exact obedience from the soldiers.”
Fanatical (adj) / fanatic (noun) -
Definition: Excessively devoted, enthusiastic, or zealous in an uncritical way
Usage: We avoid our neighbors—they’re fanatics who can’t go five minutes without trying to convert you to their beliefs. / Mrs. Becker was fanatical about grammar, once deducting fifteen points from a student’s paper for a misused semicolon—and it was a physics class!
Related Words: Ardent (very passionate), Zealous (full of fervor or dedicated enthusiasm for a cause, person, etc.). Also Fervent, Fervid, and Perfervid all mean “passionate, fiery, deeply enthusiastic.”
Foreshadow(verb) / foreshadowing (noun) -
Definition: Indicate or suggest beforehand, presage
Usage: You didn’t know this was a horror movie? I thought it was pretty clear that the children’s ghost story around the campfire was meant to foreshadow the horrible things that would happen to them years later as teenagers at a motel in the middle of the woods.
Related Words: Prefigure is a synonym. Forerun means run before or foreshadow. Harbinger and Herald mean a person or thing that indicates what is to come (Herald can also mean “messenger,” including about something in the past). Portentous and Ominous can mean “giving a bad sign about the future” (portentous can also mean “very significant, exciting wonder and awe”).
More Info: “Fore” means “before”—foreshadow literally comes from the idea that an object’s shadow sometimes arrives before the object does.
Germane(adj) -
Definition: Relevant and appropriate, on-topic
Usage: This is a business meeting, not a social club—let’s keep our comments germane to the issue of the new campaign.
Related Words: Pertinent (relevant), Akin (related by blood; analogous or similar)
Memory Trick: When four of the Jackson 5 would get off track, it was always Jermaine who would direct the conversation back to the topic at hand.
Hearken(verb) / hark (verb) -
Definition: Listen, pay attention to
Usage: The simple lifestyle and anachronistic dress of the Amish hearken back to an earlier era. / “Hearken, students!” said the old-fashioned music teacher. “We are going to practice ‘Hark, the Herald Angels Sing.”
More Info: Hark is a variant of hearken and has the same meaning. The expression hearken back or hark back is much more common in modern usage than hearken alone, and means to turn back to something earlier or return to a source.
Impartial(adj) -
Definition: Unbiased, fair
Usage: Judge Gonzales removed himself from the case because, having a personal connection to the school where the shooting took place, he did not think he could be appropriately impartial.
Related Words: Disinterested, Dispassionate, and Nonpartisan are all related to being fair and not having a bias or personal stake.
More Info: The root for “part” appears in partisan, partial, and party—just as a member of a political party is rooting for his own side, someone who is partial is on the side of only part of the group, not everyone equally.
Inconsequential(adj) -
Definition: Insignificant, unimportant; illogical
Usage: You wrote a bestselling book and got a stellar review in the New York Times—whatever your cousin has to say about it is simply inconsequential. / Given that your entire essay is about Hamlet’s relationship with his mother, your thesis that Hamlet’s relationship with Laertes drives the plot is inconsequential —that is, it does not follow as a consequence of the evidence you’ve provided.
Related Words: Negligible, Null, and Nil mean “nothing, or too insignificant to matter.”
Intractable(adj) -
Definition: Difficult to control, manage, or manipulate; hard to cure; stubborn
Usage: That student is positively intractable! Last week, we talked about the importance of staying in your seat during the lesson—this week, she not only got up mid-class, but she actually scrambled on top of a bookcase and refused to come down! / Back injuries often result in intractable pain; despite treatment, patients never feel fully cured.
Related Words: Intransigent, Obdurate, and Obstreperous are also used to describe people who are stubborn and hard to control.
More Info: The antonym of intractable is tractable, meaning “compliant.” The root “tract” means “manage or handle” (and originally “drag about”) and also appears in tractor, distract, retract, and, of course, tract (a stretch of land).
Laconic(adj) -
Definition: Using few words, concise
Usage: The boss was famously laconic; after allowing his employees to present their new plan for an entire hour, he finally responded, “Confirmed.”
Related Words: Reticent and Taciturn (not talking much) are often used to describe shy people and do not have the sense of “getting the point across efficiently” that laconic does. Pithy, however, takes this idea even further—it means getting the point across in just a few, cleverly-chosen words.
More Info: Laconic comes from the Greek place named Laconia, the region in which Sparta (which of course gives us spartan) was located. A famous story has an invading general threatening, “If I enter Laconia, I will raze Sparta to the ground.” The Spartans laconically replied, “If.”
levy(verb, noun) -
Definition: Collect tax from, wage war on, or enlist for military service; (verb); act of colleting tax or amount owed, or the drafting of troops into military service (noun)
Usage: When England levied yet another tax on the colonists, the colonists were pushed one further step towards levying war. Soon, the worried British began to levy troops.
Related Words: Do not confuse levy with levee (a slope or wall along a waterway, designed to stop flooding).
More Info: Levy has many definitions that seem somewhat unrelated; however, the root means “raise” or “lightness” (as in lever, elevate), so you can think of raising money through taxes, raising an army by drafting soldiers, or using that army to wage war.
maverick (noun) -
Definition: Rebel, individualist, dissenter
Usage: Most cop movies feature heroes who are maverick police officers, breaking all the rules, blowing things up, and getting their guns confiscated by the chief—but ultimately saving the day.
Related Words: “Lone wolf” and “loose cannon” are expressions with similar meanings (although “loose cannon” implies that the person might do something crazy or dangerous).
More Info: Samuel Maverick was an American pioneer who didn’t brand (that is, show ownership by marking with a hot iron) his calves. In ranching lingo, a maverick is still an unbranded animal. Just as a maverick calf doesn’t bear a mark of ownership, a political maverick doesn’t belong to any party.
mores(noun) -
Definition: Customs, manners, or morals of a particular group
Usage: An American in Saudi Arabia should study the culture beforehand so as to avoid violating deeply conservative cultural mores.
Related Words: Ethos (the character, personality, or moral values specific to a person, group, time period, etc.)
More Info: Pronounce this word as two syllables (rhymes with “more ways”).


Preparation time
30 mins to 1 hour
Cooking time
30 mins to 1 hour
Serves
Serves 8-10
Dietary
Armagnac is a special-occasion tipple, so it’s perfect at Christmas. Try it in this sensational dessert.
Grease a 23cm/9in loose-bottomed, deep-sided tart tin with butter and dust with flour.
For the pastry, sift the flour and icing sugar into a bowl, then rub in the butter with your fingertips until the mixture resembles breadcrumbs.
Make a well in the centre of the mixture. Crack in the eggs and stir using your fingertips until the mixture comes together as a sticky dough.
Turn out the dough onto a lightly floured work surface and knead lightly until smooth. Flatten to a thickness of 1cm/½in using the palms of your hands, then cover with cling film and chill in the fridge for at least 30 minutes.
Meanwhile, for the filling, add all of the prunes, 150ml/5fl oz of the Armagnac, 100g/3½oz of the caster sugar, and 100ml/3½fl oz of water to a saucepan. Bring the mixture to the boil, then turn off the heat and set aside for 5-10 minutes, or until the prunes have absorbed the liquid and plumped up and softened.
Roll out the pastry onto a lightly floured surface to a thickness of 3mm.
Carefully line the prepared tart tin with the pastry, pressing it into the edges of the tin. Take care not to stretch or break the pastry.
Blend half of the soaked prunes with 3 tablespoons of the soaking liquid in a food processor until smooth and puréed. Spread this mixture over the base of the pastry case.
Preheat the oven to 190C/170C Fan/Gas 5.
For the filling, beat the butter and the remaining caster sugar until pale and fluffy. Add the eggs and egg yolk, one at a time, beating well after each addition, until they have all been fully incorporated into the mixture. Fold in the flour and ground almonds carefully with the last of the Armagnac.
Spoon the mixture into the pastry case and smooth the top. Decorate the top of the filling with the remaining soaked prunes and the blanched whole almonds (reserve the remaining soaking liquid).
Bake the tart for 25-35 minutes, or until the filling is golden brown, puffed up slightly and darker brown around the edges.
Just before serving, heat the remaining soaking liquid in a small pan. Bring to the boil, then reduce and simmer for 5-10 minutes, or until sticky and syrupy.
When the tart comes out of the oven, trim the excess pastry from the edges to give a clean edge and brush the top with the Armagnac syrup.
Whisk the double cream in a bowl until soft peaks form when the whisk is removed. Gently whisk in the remaining Armagnac. Dust the tart with icing sugar.
Serve the tart hot or warm with the Armagnac cream.
You need JavaScript to view this clip.
Lining a tart tin with pastry
You need JavaScript to view this clip.
Rubbing in


{% load i18n %} {% load displayutils %}
{% trans "Sorry for the inconvenience,"%}
{% trans "but rest assured, we will be back as soon as possible !"%}


--- layout: page title: explore ---
Choose a type of record to explore.
National records are published by Governments and include national information relevant for the implementation of the Nagoya Protocol as well as information Parties are obliged to provide in accordance with the Protocol.
ABS National Focal Points are responsible to liaise with the Secretariat and make available information on procedures for accessing genetic resources and establishing mutually agreed terms, including information on competent national authorities, relevant indigenous and local communities and relevant stakeholders (Article 13, paragraph 1). The NFP must be designated or modified by completing an official designation form offline and sending it (by fax, email or post) to the CBD Secretariat.
Competent National Authorities are entities designated to, in accordance with applicable national legislative, administrative or policy measures, be responsible for granting access or, as applicable, issuing written evidence that access requirements have been met and be responsible for advising on applicable procedures and requirements for obtaining prior informed consent and entering into mutually agreed terms (Article 13, paragraph 2)
Measures adopted at the domestic level to implement the access and benefit-sharing obligations of the Convention or/and the Nagoya Protocol.
Reference records include a number of ABS relevant resources and information and can be submitted by any registered user of the ABSCH (Parties, Non-Parties, governments, international organizations, indigenous and local communities and relevant stakeholders).
ABS National Focal Points are responsible to liaise with the Secretariat and make available information on procedures for accessing genetic resources and establishing mutually agreed terms, including information on competent national authorities, relevant indigenous and local communities and relevant stakeholders (Article 13, paragraph 1). The NFP must be designated or modified by completing an official designation form offline and sending it (by fax, email or post) to the CBD Secretariat.
Competent National Authorities are entities designated to, in accordance with applicable national legislative, administrative or policy measures, be responsible for granting access or, as applicable, issuing written evidence that access requirements have been met and be responsible for advising on applicable procedures and requirements for obtaining prior informed consent and entering into mutually agreed terms (Article 13, paragraph 2)
Measures adopted at the domestic level to implement the access and benefit-sharing obligations of the Convention or/and the Nagoya Protocol.


protein SARS-CoV- gene SARS OpenUrl CrossRef Figure predicted ORF analysis clusters host SARS-like genes Gene Ontology SARS-CoV-, Supplementary available coronavirus coronaviruses features sequence used ORFa accessory core genomes structural &; ORF, based cluster localized sequences signal using Betacoronavirus Download ORF. annotation figure new proteins shows Open PBM Protein cell contributes data-hide-link-title=""> data-icon-position="" envelope including structure tab tree unique Abstract DeepGOPlus Graph acute bat clade conserved genomes, included related respiratory viral COVID- However, MERS SARS-CoV-. comparison detection extracellular functional membrane shown similar syndrome transmembrane FREE Text Virol alignment annotations coronaviruses. function highlighted novel pangenome response (MG Coronavirus GenBank KAUST KF). activity animal appear approach approved artifact binding cluster, clusters. data domain functions genome leading models molecular pangenomic peptide peptides phylogenetic prediction region regulates residues therapy virus ./JVI.- ;<;div ;DeepGOPlus Acute Clade Golgi Hence, Hexamethylene N-terminal NCBI’s Prediction Respiratory Severe absence amiloride antibodies appears biological cellular chains clusters, coronaviruses, cytoplasmic domains. endoplasmic genus groups hits includes inhibitors ion key known matches motif pan-genome panX periphery presence present processes protein, receptor regions, required severe spike suggests target trees use vacuoles, viruses,


yoob.Tape Demo
Your browser doesn't support displaying an HTML5 canvas.
Write 0
Write 1
Read
Move Left
Move Right


About me
01 Dec 2021Software designer and developer engineer for twenty years in large companies, with a focus this last decade on JVM (Java, Spring, Kotlin, Scala) and Web (Angular) technologies.
The spirit of the craftsman animates my daily work, quality is not an option, and technical excellence matters.
Since the beginning of my career, I have advocated the development of well-designed software as a medium and long-term investment to combine human and economic benefits by improving the developer’s experience and the company’s responsiveness to the market.
Collaborative work with domain experts, Event-storming, Specification by example, Domain-Driven Design, Test-Driven Development, SOLID principles, Design patterns, OO and Functional paradigms, Clean, Reactive, distributed architectures, the Actor model, are ingredients I like to use in order to tackle domain complexity, delight elegant code writing, and apprehend the non-functional aspects of demanding systems.
Coaching, presenting, and drawing activities allow me to satisfy my natural need to transmit knowledge and thus to contribute to the development of IT teams’ skills.


File
New Project
Save Project
Open Project
Project
Edit
Mode
Market Mode
Construction Mode
Time Dependent Mode
New Facility Type
Regions
United States
Country of Texas
Add New Region
Institutions
Constellation Energy
STP
Blah Blah
Add New Institution
Markets
Add New Market
Custom Facilities
Storage Facility
Add New Custom Facility
Facility
Add New Facility
Form Information
Alternate View
Fuel Cycle Diagram


Modules
Modules can be used to create other things like Controllers, Routes,..
Modules can have 'Config' function which can be used to defined Routes.
If you have different Views which needed to be loaded into Shell page,
we need to take control of what route we are on and what view is that associated with,
what controller goes with that view. There comes Routes.
When you define a Route, you can define View and Controller on that.
Instead of hard-coding Controller into View. Bind it using Route.
Controller will call out to Factories (/Services/Providers/*) for CRUD.
View will have Directives, Filters.


{% extends 'base2.html' %} {% load static %} {% block content %}
As adults we tend to leave the playing to the little ones. Yet, after studying and surveying helping professionals in the community it appears that we need to learn a thing or two from the kiddos!
Healing the Healers works to support the average helping professional in identifying, engaging in, and developing a practice of play!
Before founding Healing the Healers, I could still attest to the impact of play in my own life. I demanded time in my week to let loose and as a dancer, a movie enthusiast, and a performer arts supporter, I found ways to fill my weeks with fun and non-therapy speak.
{{ event.description }}
{{ event.event_date }}
{{ event.event_time }}
{{ event.address.street }}
{{ event.address.city }}, {{ event.address.state }} {{ event.address.zip_code }}


Hey there! I am Heer Ambavi, I recently graduated with Honours in Computer Science and Engineering from IIT Gandhinagar.
I worked on problems involving Machine Learning in Natural Language Processing,
Information Extraction and Information Retrieval there. I have joined Nutanix as a Member of Technical Staff.
Programming is love! I enjoy creating and debugging stuff in Python and GoLang as well.
During my time off my laptop, I also love playing ukulele, and creating art pieces on canvas!
Working as a member of Micro Services Platform (MSP) Team. Building Infrastructure. Kubernetes. Go.
Worked with Micro Services Platform (MSP) Team on moving monolith services to a containerized solution using Docker and Kubernetes.
Atharva Vyas, Heer Ambavi, Sayantan Adak, Shivam Patel, Pritam Kadasi, Mayank Singh and Animesh Mukherjee. Demo, JCDL 2020.
Heer Ambavi, Ayush Garg, Ayush Garg, Nitiksha, Mridul Sharma, Rohit Sharma, Jayesh Choudhari, Mayank Singh. JCDL 2019. [PDF]
Simple Plagiarism Detection Using NLP (3 min read) on Medium


Programming languages is the language of computer where it is the only way to set up software or any operation or order to the computer. This type of language helped in the modern technology and electronics which improved ways of communication and learning. It also helped employees in their jobs as it produced programs which is essential nowadays such AutoCAD which decreased the time consumed in drawing f or an engineer, also in the field of commerce Excel helped employees in their calculations and relations between income, outcome and taxes. Learning tis language is considered nowadays as a skill giving privilege in anyone's CV.


Queued Custom Type Example
Contents:
Overview
In the Custom Type Example, we showed how to integrate custom types with the meta-object system, enabling them to be stored in QVariant objects, written out in debugging information and used in signal-slot communication.
In this example, we create a new value class, Block
, and register it with the meta-object system to enable us to send instances of it between threads using queued signals and slots.
The Block Class
The Block
class is similar to the Message
class described in the Custom Type Example. It provides the default constructor, copy constructor and destructor in the public section of the class that the meta-object system requires. It describes a colored rectangle.
class Block { public: Block(); Block(const Block &other); ~Block(); Block(const QRect &rect, const QColor &color); QColor color() const; QRect rect() const; private: QRect m_rect; QColor m_color; }; Q_DECLARE_METATYPE(Block);
We will still need to register it with the meta-object system at run-time by calling the qRegisterMetaType() template function before we make any signal-slot connections that use this type. Even though we do not intend to use the type with QVariant in this example, it is good practice to also declare the new type with Q_DECLARE_METATYPE().
The implementation of the Block
class is trivial, so we avoid quoting it here.
The Window Class
We define a simple Window
class with a public slot that accepts a Block
object. The rest of the class is concerned with managing the user interface and handling images.
class Window : public QWidget { Q_OBJECT public: Window(); void loadImage(const QImage &image); public slots: void addBlock(const Block &block); private slots: void loadImage(); void resetUi(); private: QLabel *label; QPixmap pixmap; QPushButton *loadButton; QPushButton *resetButton; QString path; RenderThread *thread; };
The Window
class also contains a worker thread, provided by a RenderThread
object. This will emit signals to send Block
objects to the window's addBlock(Block)
slot.
The parts of the Window
class that are most relevant are the constructor and the addBlock(Block)
slot.
The constructor creates a thread for rendering images, sets up a user interface containing a label and two push buttons that are connected to slots in the same class.
Window::Window() { thread = new RenderThread(); label = new QLabel(); label->setAlignment(Qt::AlignCenter); loadButton = new QPushButton(tr("&Load image...")); resetButton = new QPushButton(tr("&Stop")); resetButton->setEnabled(false); connect(loadButton, SIGNAL(clicked()), this, SLOT(loadImage())); connect(resetButton, SIGNAL(clicked()), thread, SLOT(stopProcess())); connect(thread, SIGNAL(finished()), this, SLOT(resetUi())); connect(thread, SIGNAL(sendBlock(Block)), this, SLOT(addBlock(Block)));
In the last of these connections, we connect a signal in the RenderThread
object to the addBlock(Block)
slot in the window.
...
setWindowTitle(tr("Queued Custom Type"));
}
The rest of the constructor simply sets up the layout of the window.
The addBlock(Block)
slot receives blocks from the rendering thread via the signal-slot connection set up in the constructor:
void Window::addBlock(const Block &block) { QColor color = block.color(); color.setAlpha(64); QPainter painter; painter.begin(&pixmap); painter.fillRect(block.rect(), color); painter.end(); label->setPixmap(pixmap); }
We simply paint these onto the label as they arrive.
The RenderThread Class
The RenderThread
class processes an image, creating Block
objects and using the sendBlock(Block)
signal to send them to other components in the example.
class RenderThread : public QThread { Q_OBJECT public: RenderThread(QObject *parent = 0); ~RenderThread(); void processImage(const QImage &image); signals: void sendBlock(const Block &block); public slots: void stopProcess(); protected: void run(); private: bool m_abort; QImage m_image; QMutex mutex; };
The constructor and destructor are not quoted here. These take care of setting up the thread's internal state and cleaning up when it is destroyed.
Processing is started with the processImage()
function, which calls the RenderThread
class's reimplementation of the QThread::run() function:
void RenderThread::processImage(const QImage &image) { if (image.isNull()) return; m_image = image; m_abort = false; start(); } void RenderThread::run() { int size = qMax(m_image.width()/20, m_image.height()/20); for (int s = size; s > 0; --s) { for (int c = 0; c < 400; ++c) {
Ignoring the details of the way the image is processed, we see that the signal containing a block is emitted in the usual way:
... Block block(QRect(x1, y1, x2 - x1 + 1, y2 - y1 + 1), QColor(red/n, green/n, blue/n)); emit sendBlock(block); if (m_abort) return; msleep(10); } } }
Each signal that is emitted will be queued and delivered later to the window's addBlock(Block)
slot.
Registering the Type
In the example's main()
function, we perform the registration of the Block
class as a custom type with the meta-object system by calling the qRegisterMetaType() template function:
int main(int argc, char *argv[]) { QApplication app(argc, argv); qRegisterMetaType<Block>(); qsrand(QTime::currentTime().elapsed()); Window window; window.show(); window.loadImage(createImage(256, 256)); return app.exec(); }
This call is placed here to ensure that the type is registered before any signal-slot connections are made that use it.
The rest of the main()
function is concerned with setting a seed for the pseudo-random number generator, creating and showing the window, and setting a default image. See the source code for the implementation of the createImage()
function.
Further Reading
This example showed how a custom type can be registered with the meta-object system so that it can be used with signal-slot connections between threads. For ordinary communication involving direct signals and slots, it is enough to simply declare the type in the way described in the Custom Type Example.
In practice, both the Q_DECLARE_METATYPE() macro and the qRegisterMetaType() template function can be used to register custom types, but qRegisterMetaType() is only required if you need to perform signal-slot communication or need to create and destroy objects of the custom type at run-time.
More information on using custom types with Qt can be found in the Creating Custom Qt Types document.
Files:


Huawei Mate 30 series shipped over 7 million units globally in 60 days -
by Efe UdinRate this post
According to the latest market research report from Canalys, Huawei managed to ship 11.6 million smartphones in Europe for Q3 2019. This means that it was only 100,000 units short of what it got in Q3 2018. After the ban on Huawei, its latest flagship (Mate 30 series) comes without Google Mobile Services. Without GMS, Huawei smartphones are a NO for Europe. Nevertheless, the company seems to be doing better than expected in Europe. According to Huawei’s consumer business CEO, Yu Chengdong, the Mate 30 series has shipped more than 7 million units worldwide within two months of its release. This is a year-on-year increase of 75%. Yu Chengdong said at the official unveiling of Huawei MatePad Pro.
The Huawei Mate 30 series has Mate 30, Mate 30 Pro and there is also a Mate 30 5G series. The Huawei Mate 30 5G series is the world’s first second-generation 5G mobile phone. This series supports 5G SA/NSA dual networking mode. This series has 21 antennas, including 14 5G antennas. In terms of frequency band support, Huawei Mate 30 Pro 5G supports seven frequency bands of N79, N78, N77, N41, N28, N3, and N1.
It is interesting that in Europe, Huawei smartphone sales for Q3 2019 ranks second. Only Samsung has a better shipment and the likes of Apple, Xiaomi and HMD trail Huawei. This is a massive achievement for Huawei considering its current tussle with the US government.


Enter your email and we'll send you a reset link.
Please, click on the link in the verification email and finish the registration process.
You won't be able to login to your account until you verify your email!


Keep track of the people you recently interact with
Create a list to keep record of the people you had been in contact
We don't save your personal data


To My Beloved Friend I am writing you this mail after several internal battles in me, if i am doing the right thing, as i have gotten your email ever since but i have been hesitating to write you. I don't want you to feel sorry for me, because, I believe everyone will die someday. My name is K I Bakri , a widower and a former oil investor in Dubai, in the U.A.E.I have been diagnosed with Ideopathic Pulmonary Fibrosis. This is a terminal illness that affects the lungs, it has no cure and i am destined to leave this world any moment from now. I have not particularly lived my life so well, as I never really cared for anyone(not even myself) but my business. Though I am very rich, I was never generous, I was always hostile to people and only focused on my business as that was the only thing I cared for. But now I regret all this as I now know that there is more to life than just wanting to have or make all the money in the world. I believe when God gives me a second chance to come to this world I would live my life a different way from how I have lived it. Now that God has called me, I have willed and given most of my property and assets to my immediate and extended family members as well as a few close friends.  So far, I have distributed money to some charity organizations in the Sudan,Indonesia,Norway,Netherland. Now that my health has deteriorated so badly, I cannot do this myself anymore. I once asked members of my family to close one of my accounts and distribute the money which I have there to charity organization in United States of America, they refused and kept the money to themselves. Hence, I do not trust them anymore, as they seem not to be contended with what I have left for them. The last of my money which no one knows of is the huge cash deposit of Eight Million Five hundred Thousand Dollars($8,500,000) that I have with a Security Company abroad. What i want to do is to make you the next of Kin/Beneficiary of this diplomatic box kept with the security company and collect the money stashed in the diplomatic box , and thereafter distirbute the money to the less priviledged and hungry. MY health is failing and there is nothing much i can do towards achieving this last wish of mine,all by myself because of my bedridden state in the hospital. I have set aside 30% for your time,service and expenses. N.B:My beloved friend please if you can perform this task ,please do not hesitate to write me,telling me about your passion to help the less-fortunate. for a faster response God be with you K I Bakri bakrih10@dynamixmail.com


This page is for HIT compensation for workers who encountered an error in a previous HIT of ours and were not fairly compensated. Please do not accept this HIT unless you have been explicitly told to find this HIT and have received a code to enter on the next page.


Leafy greens
An absolute must for athletes, gym users or anyone who is serious about their health. This should be number one on your list. In terms of packing a nutrient punch, there is nothing better. Not only are these low in calories, low in fat, high in fibre and very rich in vitamins and minerals but they are the food highest in concentrations of phytonutrients – plant chemicals which have the most power in protecting health and killing disease. There is no combination of supplement which can give you the same benefit as eating a huge bowl of leafy greens. These include spinach, lambs’ lettuce, swiss chard, watercress, alfalfa, rocket and chicory. This is not a comprehensive list -if its leafy and green, it’s great!


Your guardian against all kinds
of microbes
and viruses.
UV-Sentinel is a range of customised UVGI(Ultraviolet Germicidal Irradiation)
equipment offered by Hound Electric,available in a wide range of custom sizes,
irradiation dosagenand cycle time manufactured according to the requirement.
UVGI is the technology used to dinsinfect materials and surfaces using short-wavelenth ultraviolet light.The Specific range of Ultra-Violet that
is used in the disinfection comes between 100nm-280nm wavelengths called the UV-C spectrum.The UV light kills or inactivates microorganisms by destroying nucleic
acids and disrupting their DNA,leaving them unable to perform vital cellular functions.It is highly effective between 200nm-300nm.UV disinfection
does not leave any residue in the service also.
Our UV-C lamps emit UV radiation at 253.7nm which is highly effective in deactivating microbes.We use advanced materials that ensure high reflection and
dispersion for an even spread of the light and provides consistent irradiation during its life time.
Model:UV-S-250
Specification:
Capacity:250ml
Overall Dim:120cm*60cm*40cm
No. of racks:10
Power consumption:150W
Peak UVC Wavelength:253.7nm
UVC @ 100hrs:46W
Lamp Life:10,000 hrs
Client : Rajagiri Hospital,Kochi,Kerala,IN
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Vero odio fugiat voluptatem dolor, provident officiis, id iusto! Obcaecati incidunt, qui nihil beatae magnam et repudiandae ipsa exercitationem, in, quo totam.


A community for the paleosciences¶
What is LinkedEarth?¶
LinkedEarth is a community of paleoscientists working to develop standards and software to enable paleoscience in the era of Big Data. This community produces data products and standards, software, cyberinfrastructure, and training opportunities.
LinkedEarth originated in 2016 through a grant from the National Science Foundation EarthCube program. The original goal of the project was to create a platform for the archival of paleoclimate dataset and to centralize the discussion about standardization of these datasets. Since then, the community has grown towards using these standards to build automated tools for the analysis of these datasets and other data products.
There is no formal registration for LinkedEarth. We hope that you will join this growing community because the tools we provide become part of your scientific workflow.
This website contains general information about LinkedEarth. For news and updates, please follow our Medium blog and our Twitter feed. To engage with the community, email us for a Slack invite and browse our GitHub repos.
People¶
Contributors¶
Feng Zhu, Department of Earth Sciences, University of Southern California
Alexander James, Department of Earth Sciences, University of Southern California
Cody Rouston, School of Earth and Sustainability, Northern Arizona University
Michael Erb, School of Earth and Sustainability, Northern Arizona University
Daniel Garijo, Ontology Engineering Group, Universidad Politécnica de Madrid
Yolanda Gil, Information Sciences Institute and Department of Computer Sciences, University of Southern California
Varun Ratnakar, Karya Limited
Getting involved¶
To engage with the community, email us for a Slack invite and browse our GitHub repos.
Activities¶
The LinkedEarth activities can be grouped under the following:
PRESTO: TO DO LMR: https://cpo.noaa.gov/News/News-Article/ArtMID/6226/ArticleID/1807/Last-Millennium-Reanalysis-now-at-NOAAs-National-Centers-for-Environmental-Information-marking-major-milestone Partners: PAGES is a trusted partner, there are several existing PAGES project that that have adopted LinkedEarth tools.
News¶
We use twitter to share announcements and retweet content of interest to our community.
Follow @Linked_Earth Tweets by LinkedEarth


I started this reply directly in Twitter, but then decided to post this here since I’m not really a fan of Tweetstorms. Still, I left it composed for numbered 140-character-or-less chunks. In the end, I didn’t want to over-compose my reply even though I have more room to do so here. <shrug />
Background: Eric is my friend, but we don’t see eye-to-eye on some things. :) I believe (hope!) he knows that I’m not trying to be belligerent. I enjoy having discussions with people who hold viewpoints different from my own. Of course, Twitter is simply not good for this.
Here’s the conversation so far. You’ll have to read his 12-part response to my own prior reply for the context of what follows.
My response:
/1 Everything is loaded on Twitter. :)
/2 Your response also uses loaded terms, such as the (mis-)use of ‘gender’ as if it was fully equivalent to biological/assigned ‘sex’.
/3 Or applying a moral judgement on ‘viability’ that is orthogonal to scientific (and other) aspects of the matters you reference.
/4 I lol’d at the characterization of evolution as atheist mythology (as if it is on the same footing as creationism).
/5 The ‘macro’ angle you specify tells me that you probably recognize at least some of the truth of it.
/6 To the original point, the resonance of this topic for me is around human tendency to damage the natural world (or, if you prefer, creation).
/7 Climate change-denial in general, and this administration (and so, too, its party) in particular, are forces for perpetuating this damage.
/8 Is climate change being used as a political tool? Surely. But the politicians should debate that, not deny the science (complex or not).


Before Change
// Kill an actor and wait until it is killed.
ray.kill(a)
with pytest.raises(ray.exceptions.RayActorError):
ray.get(a.ready.remote())
// Now create an actor, but do not capture the current tasks
a = Actor.options(
placement_group=pg,
placement_group_capture_child_tasks=False).remote()
ray.get(a.ready.remote())
After Change
// Kill an actor and wait until it is killed.
ray.kill(a)
try:
ray.get(a.ready.remote())
except ray.exceptions.RayActorError:
pass
// Now create an actor, but do not capture the current tasks
a = Actor.options(
placement_group=pg,
placement_group_capture_child_tasks=False).remote()
ray.get(a.ready.remote())


{% extends "layout.html" %} {% block page_title %} GOV.UK prototyping kit {% endblock %} {% block content %} BETAThis is a new service – your feedback will help us to improve it. Confirm your file The data returns file you’re going to send is about: File: {filename} Site name EA_ID {sitename} {EA_ID} {EA_ID} {sitename} {EA_ID} {EA_ID} {EA_ID} These details aren’t right Do you need to choose a different file? Start again so you can send the right file and details. {% endblock %}
BETAThis is a new service – your feedback will help us to improve it.
The data returns file you’re going to send is about:
File: {filename}
Do you need to choose a different file? Start again so you can send the right file and details.


An interesting feature of the XL language (found via Hans Nowak) is the idea of style-insensitive names. To quote the features:
To most non-programmers, JohnSmith, john_smith and JOHN_SMITH all denote the same person. As programmers, we unlearn this identity to make them different. When looking up a name, XL ignores case and separating underscore '_' characters (two consecutive underscores are not allowed).
// There is only one 'file' and one 'open_file' below function OpenFile(string Name, Mode) return file FILE F := open_file("foo.dat", "r")On the other hand, name overloading allows you to reuse the same name for different entities when the name will not be used in the same context.
type rectangle function Rectangle(integer X, Y, Width, Height) return rectangle rectangle Rectangle := Rectangle(10, 10, 20, 20)In addition, XL, like any Mozart-based language, requires a renderer, which can be used to present code to programmers with their preferred style.
Why? Style preferences cause religious reaction from many otherwise reasonable programmers. Style insensitivity allows reuse of libraries while maintaining a consistent style in your own code.
Cons: Entities that would be distinguished by case in the real world can no longer be distinguished this way. For instance, V for volume and v for speed in physics. This is common and reasonable practice.
An interesting idea, indeed. Python's lack of a naming style annoys me a great deal -- I'd be happy to use any naming style, if there were any reason to pick one over the other. Even the standard library has nothing approaching a standard naming style (there's even capitalized method names).
But there is no reason to pick one over the other. The only standard we have is CamelCase class names, and (except for the very occasional exception) method names start with lower case letters. After that all bets are off.
Anyway, style insensitivity seems like a cool way to deal with it. Maybe it would be annoying if there wasn't contextual names (like the in the rectangle example). But maybe not so bad either.
To me it seems consistent enough, if I look to PHP, but for inside project more consistency would be better.
I would like underscored_module_names for readability. No UpperCaseModuleNames becouse of different filesystems.
ClassNames are still CamelCase and functionsAndMethods start with lower case letter.
And probably it all makes more sense if we consider that in Python there are lots of C wraps, together with names and influences.
Do you see any major problem there?
Hmmm... yes, interacting with case sensitive code would be a problem. Many interfaces fix C naming weirdness (except for thin wrappers like expat -- but expat itself can be wrapped with a normal Python SAX interface). Anyway, it's easier to fix that naming in Python, but it would be hard if the system was case- and underscore-insignificant, because we couldn't even express the different naming schemes (and most insensitivity uses folding, not real insensitivity, and that's hard to calculate in an external interface).# Ian Bicking
There's somewhat of a style, or at least a style that's been growing in recent years. A lot of Python's standard library is old, and has been written by many individuals.
The style that I'm seeing, and is advocated in Guido's style guide, is to keep package and module names lower case, which I like. Zope 2 has the terrible example 'DateTime.DateTime.DateTime', and I think that in the __init__.py of the DateTime package, there is (or was) a 'from DateTime import DateTime'
Zope 3, Twisted, and Docutils all use the lowered path/module style, and I find that makes them a lot easier to navigate and to use as a developer, because it's much easier to follow an import statement to a source file.
As for underscored module names - I think it's better to structure packages and modules so that module names are short but still meaningful. 'zope.security' is better than 'zope_security'.
As for enforcing anything - I still like that Python doesn't enforce anything, or put any magic on inferring meaning from spelling/capitalization. Ruby, if I remember correctly, turns anything that's ALL_CAPS into a constant. I like to use that as a guide, but not a rule (some constants tent not to be so constant ;).
The guides used now for modules and packages to be accepted into Python are:
http://www.python.org/peps/pep-0007.html (C)
http://www.python.org/peps/pep-0008.html (Python)


You may Retrieve your Ez-AJAX License below by filling in the correct information.
This system allows you to retrieve your runtime licenses for versions prior to and including EzAJAX 0.99.
EzAJAX Versions 1.0 and later use a different Runtime License Management System and you will not be able to retrieve those Runtime Licenses here using this system.
EzAJAX 1.0 and later versions use a self-registration technique that eliminates the need for our end-users to bother with their Runtime Licenses.
Runtime Licensing will be handled entirely by our Online Runtime License Processing System for all version after and including EzAJAX 1.0.


This page uses ng-repeat
to fetch and list Superheros from a JSON source, while this is super,
being able to conduct a full text search upon the list for favorite superhero would be amazing!
The goal here is to use the default filter functions in AngularJS to search for your favorite Superheros. After that you will try to create your own filter.
Hint: Check out Angular's Filtering Repeaters demo for filters usage tips!


Robotic Arts Intro Fall 2018 (IA277.01)
- Instructor: Lucas Haroldsen<EMAIL_ADDRESS>- Class Site: yasunaga.work/raif18
- syllabus: syllabus.pdf
- Resources: links.html
11/16: [work and planning day]
Project 2 : Idea drawing and precedents
Today, I will be meeting with each of you individually throughout the class time to talk about your final project.
We will discuss:
- ideas and drawings of your project
- Precedents and inspirations
- a general schedule of progression
- materials and supplies for your project
- potential difficulties of your project
Troubleshooting Checklist
When we work with electronics, do not expect everything to work on a first try! There are times that things work on a first try but always expect a problem.
Troubleshooting is an important and an essential skill for working with electronics.
Here are some guidelines for troubleshooting projects. Ask few questions to yourself to start this process.
- Is this problem occurring for the first time? If so is there any difference?
- What was the last thing you change in your project?
- Are there a part that's working? If so what is working and what is not?
- Based on these questions, what do you think might be happening?
Now, when you get to troubleshooting with details of your project, I want you to pay attention to a couple of things.
- If anything is too hot to touch, smells burned, or if you see smoke, unplug everything and identify where in your project is it coming from.
- Test your components from one end or another so you can eliminate working part of circuit as you go
- Take a break! We make some mistake often when we are working on the same thing for too long. Fresh eye always helps to see a problem
Above is an example set up for a testing sequence.
We will start at the plug and work our way up to the sensors and outputs.
Use a multimeter to test the circuit! Here is a refresher on how to use a multimeter
1: Wall
- Test if the outlet you are using is working by plugging other electronics in like lamps
- Try another outlet
- If you are using power strips or surge protectors, make sure they are turned on
- Test any extension cords you are using
- Some outlet has "reset" button
2: Power Supply / Battery
- Make sure your power supply is plugged in firmly to wall and arduino
- Check the label and make sure it is meant to provide in between 9V and 12V if you are plugging into 2.1 mm center positive plug
- Use multimeter to check the output voltage
- Use another power supply
- Make sure battery is not dead
3: USB cord
- It is more common then we expect that bad USB cable causes issues.
- Swap out the USB cable to make sure cable is good. If not throw it away!
4: Computer / Code
- Make sure you have selected right board to upload in arduino software (Tools --> Board)
- Make sure you have selected the port you are connecting (Tools --> Serial Port)
- Try to load simple sketch like Blink.ino sketch from example and see if it uploads
- Restart arduino software
- Restart computer
- Come back to coding troubleshooting after you confirm that arduino is working with simple code
5: Arduino
- Make sure On LED is lighting up
- Make sure no conductive objects are touching on the bottom of the board
- Press "Reset" button
- Try to load simple sketch like Blink.ino sketch from example and make sure TX and RX LEDs are lighting up during upload
- Double check all connection and there is no short circuit
- Remove all connection except for USB and try to upload Blink sketch
- Try another arduino
6: Wires to the sensors
- Bad solder can cause connection issues. Make sure your soldering connections are attached well
- Check continuity from one end to soldered connection to the sensor using multimeter
- Discard any wire that fails continuity test
7: Sensors / Components
- Check if it's soldered well
- If you are using Digital input, upload the simplest sketch like Examples > Digital > Button
- If you are using Analog input, upload the simplest sketch like Examples > Analog > AnalogInput
- Use serial monotor and serial plotter
- Swap out for identical sensor
8: wire to the output
- Again, bad solder can cause connection issues. Make sure your soldering connections are attached well
- Check continuity
9: output
- Check if it's wired correctly
- Power it without arduino if you can
- swap it with another one
10: coding
- always start small. When you have multiples input and output, start with one input one outputs
- Make sure you have main structure down --- void setup() void loop()
- make sure there is no duplicate variables
- make multiple sketches in stages of your project
- comment your code!
- Use serial monitor
Arduino Review
Remember these?
- Basic Component
- Digital Input and Output
- variables
- if else --video
- Analog Input, Serial Print, Threshold --video
- Analog output and tone()
- Conditioning
- For loop video
- using millis instead of delay (multitasking) Adafruit tutorial
Range / Distance / Proximity sensors
Library for HC-SR04 written by Sam Sheffield
How to install a library
Stractural complexity
- How to merge or combine code
- Copy one sketch to another sketch or create new sketch
- Resolve any duplicating functions or global variables
- (Functions: void loop(), void setup()
- Variables: int, float)
- Resolve any duplicating pin use
- Delete any duplicate part that is doing the same thing
- Comment your code!
- Write out what you want your code to do
- State Change Detection
- SwitchCase
- Random_behavior
Interfacing with AC circuits
Where to get stuff!
Remember to ckeck out links at the resource page!
3D printing and modeling
3D printers
We have three 3D printers in house! Let me know if you have a file you want to print during the class. I can print them and go over how to use the printers.
3D modeling software
- OpenSCAD: Free code based 3D modeling software. Great if you are good at coding
Basic Tutorials - Rhinoceros 3D: Popular paid 3D modeling software that cost ~$200 for students. Installed on computers on the 4th floor computer LAB.
Tutorials at Lynda.com through your MICA portal - TINKERCAD :Free basic online 3D modeling software
- Netfabb: Free software for cleaning your 3D models
Tutorial on how to fix and repair 3D models using Netfabb or Meshlab
Contents
interfacing
Kelly Dobson's Blendie
Random User by Monobo
Exhibitions
HOMEWORK
Work on Project 2!
Next week is a Thanksgiving break so we won't have a class. On November 30th, come to class with studies and prototypes of your project.
It should be a simplified experiment that can get a sense of your project.
Remember, here is our schedule:
- 11/30 working prototypes and studies due
- 12/14 Project due / presentation
- 12/19 Documentation due
Watch Documentary:
All Watched Over by Machines of Loving Grace
Part 2. The Use and Abuse of Vegetational Concepts
Be prepared to share your views and relationships to the ideas that are adressed in the film.


--- sort_order: 335 tei_id: rdx_v7r31.p.idm140458211136864 annotation_count: 0 images: small-thumbnail: https://readux.ecds.emory.edu/books/readux:tpq2n/pages/readux:v7r31/mini-thumbnail/ json: https://readux.ecds.emory.edu/books/readux:tpq2n/pages/readux:v7r31/info/ full: https://readux.ecds.emory.edu/books/readux:tpq2n/pages/readux:v7r31/fs/ page: https://readux.ecds.emory.edu/books/readux:tpq2n/pages/readux:v7r31/single-page/ thumbnail: https://readux.ecds.emory.edu/books/readux:tpq2n/pages/readux:v7r31/thumbnail/ title: Page 335 number: 335 ---


Clickable element
Make element disappear
Disappearing element
Double-clickable element
3
4
Clickable invisible element