---
title: "Resolve Your Process Risks at Their Initiation Stage"
layout: splash
excerpt: "Dynamic Risk Analyzer™ is transforming the way industrial operations identify and reduce their risks – by providing early indicators of developing risks and allowing for preventive actions.
✔ Trusted by Dyno Nobel, Petronas, Covestro, OCI, Chandra Asri, and more
"
header:
overlay_image: splash-01.jpg
overlay_filter: 0.4
cta_label: "Learn More"
cta_url: "#benefits"
read_time: true
feature_row:
- image_path: nmm-benefit_01.png
title: "Reduces Unexpected Shutdowns and Process Failures"
excerpt: "DRA is designed to uncover *hidden* problems, so you can stay focused on finding solutions, not hunting for problems."
- image_path: nmm-benefit_02.png
title: "Increases On-Stream Efficiency and Capacity Utilization"
excerpt: "DRA provides *peripheral vision* on issues developing on the sidelines, enabling you to address new risks and their drivers."
- image_path: nmm-benefit_03.png
title: "Improves Process Safety and Reliability"
excerpt: "What makes DRA unique is its ability to rip through the entire spectrum of process data, uncovering problems, long before humans or alarms can."
---
{% include base_path %}
Developed uniquely for the Process and Energy Industries, Dynamic Risk Analyzer™ (DRA) is a software platform that delivers advanced warnings on hidden process issues, typically days or weeks before the alarms. DRA users report the following benefits within a few days of usage.


I come from Sao Paulo city, Brazil, a city with nearly 20 million people. In a place like that, you have to prove you are worth the job you have every day, you can be replaced very easily. This has influenced me a lot and I still have some f that in me. My friends and my wife always considered me the most hard worker, determinate and ambitious of the group. In my wedding, both of my best mates mentioned in their speech that my determination influenced their lives and carrier. I have been described many times by family and friends as the “hard worker”. This is very fulfilling for me because I believe “the harder I work, the luckier I get”. I came to New Zealand alone, with little money and poor English. I worked hard to get my first Visa and worked harder to get my Residency. Soon after that, withing 5 years I had 2 companies going, and I was working day and night. The market I was in turned upside down and I lost everything I had, plus I created a massive debt with the bank. It was the worst time of my life, I had to start from zero again….actually had to start from -$40,000. I could have walked away from everything and not pay suppliers and all the people I owed money to, but I made the decision that if I was brave enough to create the debt, I should be brave and embrace the consequences. Now I look back, and I am proud of what I have done. I had to work in two jobs for two years to pay everything I owed. My family always had businesses and my grandfather was well known as a honest man. He has always been my hero, so my decision were always based on his principles. I wanted to keep the family name intact. I struggled with depression and panic attacks many times, since I was a teenager, so learning how to deal with it and getting over it a few times throughout my life, made me reflect a lot about what is important and what is that I really want for my future. Before I was looking for happiness, now I know it is not out there, it is inside me. All these events in my life shaped the person I am now, so I am glad I had those experiences.
I have done some personality tests and the results came different in different times of my life. I don’t like putting a label on my personality because it makes me over thing about it. I am always working on being a better person. I know what type of person I want to be, I am always looking for improvements.
I believe my biggest strengths are determination and focus. I am very committed to become a full stack developer. I can’t see any limitations at the moment apart of my job, but that I am finishing in a week.
When I started my current job as Operations Manager, I had a lot of resistance from the staff because of my age and lack of knowledge on how the product was processed. I was younger than most staff, so they didn’t want to get orders from an immigrant younger than them. I had to earn their respect, so for the first 2 months I spent most of my time working with them, wearing overalls and getting dirty. learned a lot from them and slowly they started respecting me and following my decisions. I had to do that with the truck drivers and the outcome was also the same. This strategy was great and I wouldn’t have done any different now.


+++
title = "NanoHub Summer Program"
linkTitle = "NanoHub Summer Program"
+++
{{< blocks/cover
title="NanoHub Summer Program GitHub"
image_anchor="top" height="full" color="orange" >}}
{{< /blocks/cover >}}
{{% blocks/lead color="primary" %}}
Thos Page provides an efficient way on gathering and disseminating information
via GitHub as pioneered by the
NSF Cybertraining-DSC project.
{{% /blocks/lead %}}
{{< blocks/section color="dark" >}}
{{% blocks/feature icon="fa-lightbulb" title="Do collaborate through GitHub!" %}}
Leverage the power of GitHub and even learn how to use it
{{% /blocks/feature %}}
{{% blocks/feature icon="fab fa-github"
title="Contributions welcome!"
url="https://github.com/cybertraining-dsc/nanohub" %}}
We do a [Pull Request](https://github.com/cybertraining-dsc/nanohub/pulls) contributions workflow on **GitHub**.
New users are always welcome!
{{% /blocks/feature %}}
{{% blocks/feature icon="fab fa-twitter" title="Follow us on Twitter!"
url="https://twitter.com/nanoHUBnews" %}}
For announcement of latest features etc.
{{% /blocks/feature %}}
{{< /blocks/section >}}
{{< blocks/section >}}
This is the second Section
{{< /blocks/section >}}
{{< blocks/section >}}
{{% blocks/feature
icon="fab fa-app-store-ios"
url="https://nanohub.org/"
title="Explore **NanoHub**" %}}
Get much more information through NanoHub!
{{% /blocks/feature %}}
{{% blocks/feature icon="fab fa-github"
title="Contributions welcome!"
url="https://github.com/google/docsy-example" %}}
We do a [Pull Request](hhttps://github.com/cybertraining-dsc/nanohub/pulls)
contributions workflow on **GitHub**. New users are always welcome!
{{% /blocks/feature %}}
{{% blocks/feature icon="fab fa-twitter"
title="Follow us on Twitter!"
url="https://twitter.com/nanoHUBnews" %}}
For announcement of latest features etc.
{{% /blocks/feature %}}
{{< /blocks/section >}}
{{< blocks/section >}}
This is another Section
{{< /blocks/section >}}


|
Project Information
Featured
Links
|
The MyBatis.NET data mapper framework makes it easier to use a relational database with object-oriented applications. MyBatis.NET couples objects with stored procedures or SQL statements using a XML descriptor or annotations. Simplicity is the biggest advantage of the MyBatis.NET data mapper over object relational mapping tools. To use the MyBatis.NET data mapper, you rely on your own objects, XML, and SQL. There is little to learn that you don't already know. With the MyBatis.NET data mapper, you have the full power of both SQL and stored procedures at your fingertips. The MyBatis.NET project is developed and maintained by a team that includes the maintainers of the "iBATIS.net" data mapper. |


Shipping Address
Products will be delivered to the address above on Monday of third week each month.
*Actual time to to reach the customers may vary depending on locations, ranging from 1-7 business days.
Your Card
{% include card.html %}
Select your choice of product
{% for product in site.data.products %}
-
{{product.name}}
{% for desc in product.descriptions %}
• {{desc.text}} •
{% endfor %}
{% endfor %}
{% include billing.html %}
You can only edit your subscription between 1st - 7th day of the month


Manchester United receive blow in hunt for top target, German giant interested in Haaland, and more
by Rhys ThomasThe Premier League is back this weekend, and there are some top games to look forward to. Manchester United will make their way to Bramall Lane to face Sheffield United, whilst Liverpool will travel to London to face Crystal Palace.
Manchester United have recently seemed confident that they will be able to land Leicester City star and recent England debutant James Maddison in January.
However, according to The Sun, Maddison may dash their hopes by signing a new contract at Leicester City.
Maddison has been in fantastic form this season, already scoring decisive winners against both Arsenal and Tottenham Hotspur.
Manchester United will apparently suffer another blow in the January window as RB Leipzig are reportedly going to rival them in a bid to sign Erling Haaland.
The young Norwegian is one of the hottest strikers in the world right now and Manchester United have repeatedly been linked with a move for him.
The rest of today's headlines:
Jose Mourinho is keen to bring Gareth Bale back to Tottenham Hotspur, having tried to sign him when at Manchester United. (AS)
Barcelona and Bayern Munich want to appoint Mauricio Pochettino. (The Sun)
Reports suggest that Amazon Prime were allowed behind the scenes access to the sacking of Pochettino and the hiring of Mourinho as part of their upcoming documentary series. (Various)
Aston Villa are keen on Rangers striker Alfredo Morelos (Birmingham Mail)
Christian Eriksen, Toby Alderweireld, and Jan Vertonghen could now sign new deals at Spurs after the departure of Pochettino. (Daily Mirror)
Inter and AC Milan are fighting to sign Arsenal outcast Granit Xhaka. (The Sun)


Some quick example text to build on the card title and make up the bulk of the card's content.
Go somewhereSome quick example text to build on the card title and make up the bulk of the card's content.
Card link Another linkSome quick example text to build on the card title and make up the bulk of the card's content.
by djibe.
(thx to BS4)Dependencies : standard BS4
Enjoy the magic of flexboxes and leave the useless card-decks.


Undocumented
Undocumented
- (void)onTransportConnected;
func onTransportConnected()
Undocumented
- (void)onTransportDisconnected;
func onTransportDisconnected()
Undocumented
- (void)onDataReceived:(NSData *)receivedData;
func onDataReceived(_ receivedData: Any!)


#include <InputAttachmentSet.h>
The global attachments are also formed as a special attachment set.
Definition at line 23 of file InputAttachmentSet.h.
Public Member Functions | |
| void | attachJoystickXMove (int eventNumber, long factor) |
| Sets, that x movements of the joystick shall increase or decrease certain event quantities. | |
| void | attachJoystickXPosition (int eventNumber, long factor) |
| Sets, that the x position of the joystick shall set certain event quantities. | |
| void | attachJoystickYMove (int eventNumber, long factor) |
| Sets, that y movements of the joystick shall increase or decrease certain event quantities. | |
| void | attachJoystickYPosition (int eventNumber, long factor) |
| Sets, that the y position of the joystick shall set certain event quantities. | |
| void | attachKey (int eventNumber, int keyCode, int type, long factor) |
| Sets, that a keyboard key shall raise a certain event if pressed, released or held. | |
| void | attachMouseWheel (int eventNumber, long factor) |
| Sets, that the mouse wheel movement shall increase a certain event quantity. | |
| void | attachMouseXMove (int eventNumber, long factor) |
| Sets, that the X movement of the mouse shall increase certain event quantities. | |
| void | attachMouseYMove (int eventNumber, long factor) |
| Sets, that the Y movement of the mouse shall increase certain event quantities. | |
| void | detach (int eventNumber) |
| Removes all attachments of an event. | |
| void | detachAll () |
| Removes all event attachments. | |
| void | detachJoystickXAxis () |
| Removes any attachment of the joystick X axis to an event. | |
| void | detachJoystickYAxis () |
| Removes any attachment of the joystick Y axis to an event. | |
| void | detachKey (int keyCode) |
| Removes any attachment of a key to an event. | |
| void | detachMouseWheel () |
| Removes any attachments of the mouse wheel to an event. | |
| void | detachMouseXMove () |
| Removes any attachment of the mouse X axis to an event. | |
| void | detachMouseYMove () |
| Removes any attachment of the mouse Y axis to an event. | |
| int | getAttachmentKey (int eventNumber, bool positive=true, bool negative=true) |
| Returns the key code of the attachment of a given event number. | |
Public Attributes | |
| InputAttachment | joystickXAxisAttachment |
| The event attachment for the x axis of the joystick. | |
| InputAttachment | joystickYAxisAttachment |
| The event attachment for the y axis of the joystick. | |
| InputAttachment | keyAttachments [GL_KEYCODECOUNT] |
| The event attachments for the keys (keyboard, mouse and joystick). | |
| InputAttachment | mouseWheelAttachment |
| The event attachment for the mouse wheel. | |
| InputAttachment | mouseXAxisAttachment |
| The event attachment for x axis of the mouse. | |
| InputAttachment | mouseYAxisAttachment |
| The event attachment for y axis of the mouse. |
|
|
Sets, that x movements of the joystick shall increase or decrease certain event quantities.
|
|
|
Sets, that the x position of the joystick shall set certain event quantities.
|
|
|
Sets, that y movements of the joystick shall increase or decrease certain event quantities.
|
|
|
Sets, that the y position of the joystick shall set certain event quantities.
|
|
|
Sets, that a keyboard key shall raise a certain event if pressed, released or held. To raise an event means to increase its quantity by a certain amount.
|
|
|
Sets, that the mouse wheel movement shall increase a certain event quantity.
|
|
|
Sets, that the X movement of the mouse shall increase certain event quantities.
|
|
|
Sets, that the Y movement of the mouse shall increase certain event quantities.
|
|
|
Removes all attachments of an event.
|
|
|
Removes all event attachments.
|
|
|
Removes any attachment of the joystick X axis to an event.
|
|
|
Removes any attachment of the joystick Y axis to an event.
|
|
|
Removes any attachment of a key to an event.
|
|
|
Removes any attachments of the mouse wheel to an event.
|
|
|
Removes any attachment of the mouse X axis to an event.
|
|
|
Removes any attachment of the mouse Y axis to an event.
|
|
|
Returns the key code of the attachment of a given event number.
|
|
|
The event attachment for the x axis of the joystick.
Definition at line 38 of file InputAttachmentSet.h. |
|
|
The event attachment for the y axis of the joystick.
Definition at line 43 of file InputAttachmentSet.h. |
|
|
The event attachments for the keys (keyboard, mouse and joystick).
Definition at line 48 of file InputAttachmentSet.h. |
|
|
The event attachment for the mouse wheel.
Definition at line 53 of file InputAttachmentSet.h. |
|
|
The event attachment for x axis of the mouse.
Definition at line 58 of file InputAttachmentSet.h. |
|
|
The event attachment for y axis of the mouse.
Definition at line 63 of file InputAttachmentSet.h. |


--- layout: post status: publish published: true title: Speaking Blessings - Podcast Episode 5.49 author: display_name: Corey Fineran login: Corey email<EMAIL_ADDRESS>url: '' author_login: Corey author_email<EMAIL_ADDRESS>wordpress_id: 8891 wordpress_url: http://ivyenvy.com/?p=8891 date: '2014-02-16 23:34:14 +0000' date_gmt: '2014-02-17 05:34:14 +0000' categories: - Podcast tags: - Matt Veto - Rick Renteria - Jake Arrieta - Jose Veras - Randy Hundley's Fantasy Camp - Cubs Fantasy Camp - Emilio Bonafacio - Pedro Strop comments: - id: 10403 author: For the Love of the Cubs and Family at Randy Hundley's Fantasy Camp - Ivy Envy author_email: '' author_url: http://ivyenvy.com/love-cubs-family/ date: '2014-03-19 07:01:05 +0000' date_gmt: '2014-03-19 12:01:05 +0000' content: "[…] invited me to talk about my experience on a recent Ivy Envy podcast. Shortly afterward, I put together a video from the footage I shot and shared it on Facebook. He […]" ---
Andy and Corey hold down the fort while Kurt is out sick. We start things off by welcoming Matt Veto back on the podcast. We reminisce on the beginnings of Ivy Envy and our time of podcasting during the worst stretch in the history of the Chicago Cubs. Veto recently participated in Randy Hundley's Cubs Fantasy Camp and shared his experiences with us.
Now that the pitchers and catchers, as well as many of the position players are reporting to Mesa, we have news to discuss. On the first day of camp, we learned that Jake Arrieta may not be ready to start the season. We look at this situation and speculate who may fill in his spot as the #4 starter.
Rick Renteria named the Cubs closer for the start of the season. Newly acquired Jose Veras will fill this role and we talk about what this means for Pedro Strop and how we see this situation playing out. The Cubs signed infielder/outfielder Emilio Bonafacio, to provide some speed, versatility and perhaps an alternative for Darwin Barney if the Gold Glove 2nd baseman can't get on base.
We read a few internet muscle flexes and get through about 50 captions for this week's photo caption contest.


MicroPython libraries¶
Warning
Important summary of this section
MicroPython provides built-in modules that mirror the functionality of the Python standard library (e.g.
os
,time
), as well as MicroPython-specific modules (e.g.bluetooth
,machine
).Most standard library modules implement a subset of the functionality of the equivalent Python module, and in a few cases provide some MicroPython-specific extensions (e.g.
array
,os
)Due to resource constraints or other limitations, some ports or firmware versions may not include all the functionality documented here.
To allow for extensibility, the built-in modules can be extended from Python code loaded onto the device.
This chapter describes modules (function and class libraries) which are built into MicroPython. This documentation in general aspires to describe all modules and functions/classes which are implemented in the MicroPython project. However, MicroPython is highly configurable, and each port to a particular board/embedded system may include only a subset of the available MicroPython libraries.
With that in mind, please be warned that some functions/classes in a module (or even the entire module) described in this documentation may be unavailable in a particular build of MicroPython on a particular system. The best place to find general information of the availability/non-availability of a particular feature is the “General Information” section which contains information pertaining to a specific MicroPython port.
On some ports you are able to discover the available, built-in libraries that can be imported by entering the following at the REPL:
help('modules')
Beyond the built-in libraries described in this documentation, many more modules from the Python standard library, as well as further MicroPython extensions to it, can be found in micropython-lib.
Python standard libraries and micro-libraries¶
The following standard Python libraries have been “micro-ified” to fit in with the philosophy of MicroPython. They provide the core functionality of that module and are intended to be a drop-in replacement for the standard Python library.
array
– arrays of numeric databinascii
– binary/ASCII conversionsbuiltins
– builtin functions and exceptionscmath
– mathematical functions for complex numberscollections
– collection and container typeserrno
– system error codesgc
– control the garbage collectorhashlib
– hashing algorithmsheapq
– heap queue algorithmio
– input/output streamsjson
– JSON encoding and decodingmath
– mathematical functionsos
– basic “operating system” servicesre
– simple regular expressionsselect
– wait for events on a set of streamssocket
– socket modulessl
– SSL/TLS modulestruct
– pack and unpack primitive data typessys
– system specific functionstime
– time related functionsuasyncio
— asynchronous I/O schedulerzlib
– zlib decompression_thread
– multithreading support
MicroPython-specific libraries¶
Functionality specific to the MicroPython implementation is available in the following libraries.
bluetooth
— low-level Bluetoothbtree
– simple BTree databasecryptolib
– cryptographic ciphersframebuf
— frame buffer manipulationmachine
— functions related to the hardwaremicropython
– access and control MicroPython internalsneopixel
— control of WS2812 / NeoPixel LEDsnetwork
— network configurationuctypes
– access binary data in a structured way
Port-specific libraries¶
In some cases the following port/board-specific libraries have functions or
classes similar to those in the machine
library. Where this occurs, the
entry in the port specific library exposes hardware functionality unique to
that platform.
To write portable code use functions and classes from the machine
module.
To access platform-specific hardware use the appropriate library, e.g.
pyb
in the case of the Pyboard.
Libraries specific to the pyboard¶
The following libraries are specific to the pyboard.
Libraries specific to the WiPy¶
The following libraries and classes are specific to the WiPy.
Libraries specific to the ESP8266 and ESP32¶
The following libraries are specific to the ESP8266 and ESP32.
Libraries specific to the RP2040¶
The following libraries are specific to the RP2040, as used in the Raspberry Pi Pico.
Libraries specific to Zephyr¶
The following libraries are specific to the Zephyr port.
Extending built-in libraries from Python¶
In most cases, the above modules are actually named umodule
rather than
module
, but MicroPython will alias any module prefixed with a u
to the
non-u
version. However a file (or :term:frozen module
) named
module.py
will take precedence over this alias.
This allows the user to provide an extended implementation of a built-in library
(perhaps to provide additional CPython compatibility). The user-provided module
(in module.py
) can still use the built-in functionality by importing
umodule
directly. This is used extensively in micropython-lib. See
Distribution packages, package management, and deploying applications for more information.
This applies to both the Python standard libraries (e.g. os
, time
, etc),
but also the MicroPython libraries too (e.g. machine
, bluetooth
, etc).
The main exception is the port-specific libraries (pyb
, esp
, etc).
Other than when you specifically want to force the use of the built-in module, we recommend always using ``import module`` rather than ``import umodule``.


--- title: 2018 Practice layout: default permalink: seasons/2018/practice ---
Tuesdays 6:00PM to Sunset
First practice May 22nd, 2018
Last practice Sept 4th, 2018
Location: Zilker Park
Saturdays 9:00AM to 12:00PM
First practice May 26th, 2018
Last practice Sept 1st, 2018
Location: Zilker Park


| Class | GData::GoogleAuthSub |
| In: |
lib/googleauthsub.rb
spec/spec_helper.rb |
| Parent: | Object |
GoogleAuthSub This class handles the Google Authentication for Web Applications API
| next_url | [RW] | |
| scope | [RW] | |
| secure | [RW] | |
| session | [RW] | |
| sigalg | [RW] | |
| target | [RW] | |
| token | [RW] |
Create a new GoogleAuthsub object Options specified in opts consist of:
key can be a File, String or OpenSSL::Pkey::RSA Sets the private key to use for secure sessions. This should correspond to the public key sent to Google in the registration process. For registration details see:
http://code.google.com/apis/accounts/docs/RegistrationForWebAppsAuto.html
This sets the class variable @@pkey to an OpenSSL::Pkey::RSA object
auth_header Check what authorization header we are sending. method is Net::HTTP::Get or Net::HTTP::Post
delete url Does a HTTP DELETE request to Google using the AuthSub token. This returns a Net::HTTPResponse object.
get url Does a HTTP GET request to Google using the AuthSub token. This returns a Net::HTTPResponse object.
post url Does a HTTP POST request to Google using the AuthSub token. This returns a Net::HTTPResponse object.
put url Does a HTTP PUT request to Google using the AuthSub token. This returns a Net::HTTPResponse object.
url :the URL received from Google once the user has signed in.
This method extracts the token from the request url that Google sends the user back to. This url will be like: www.example.com/next?Token=CMDshfjfkeodf In Rails applications you don‘t need this method, just use +GoogleAuthsub#token=params[:token]+
revoke_token This revokes either a single use or session token The token will not be able to be used again if this call is successful. It returns true on sucess, false on failure.
session_token This method exchanges a previously received single use token with a session token. Raises error if an invalid response is received.
token_info Returns the information for the session token from Google. Returns a map {:target, :scope, :secure}


--- layout: minimal title: "About me" permalink: /about/index.html description: "Some description about me..." ---
Love to type codes. Cook for lunch and sometimes late supper during weekend. Do backpack/cheap travelling to visit and enjoy sight seeing and culture around Indonesia. Loves coloring--just like old days when I was 5. Loves snapping scenery, food and any random things around her using her phone. Yes, she doesn't own any camera yet :p
First encounter to Ruby on Rails was in mid 2015 at Cookpad. Since then she loves to learn about RoR


I'm a lead research engineer at Samsung Research Institute Bangalore. I invent technologies for monitoring health and wellness at home using novel sensors and machine learning.
I was associated with Vision and Image Processing Lab, IIT Bombay as an integrated bachelor and master student.
My research interests include computer vision, optics and signal processing.
I enjoy playing music (guitar, drums and piano), mountaineering and photography.
|
"Estimation of Spherical Refractive Errors Using Virtual Reality Headset," 40th International Engineering in Medicine and Biology Conference 2018
|
|
|
"Hierarchical Deep Network for Group Discovery and Multi-level Activity Recognition," 11th Indian Conference on Computer Vision, Graphics and Image Processing 2018
|
|
|
"Real-Time robot tracking and following with neuromorphic vision sensor," 6th IEEE RAS/EMBS International Conference on Biomedical Robotics and Biomechatronics - BioRob 2016
|
|
|
"Method For Determining Refractory Power Of Eye Using Immersive System And Electronic Device Thereof" [SAMSUNG ELECTRONICS CO., LTD.] 07 February 2019 |
|
|
"Method And Apparatus For Measuring Body Temperature Using A Camera" WO2020171554 [SAMSUNG ELECTRONICS CO., LTD.] 18 February 2020 |
Email: goyal 26 at outlook dot com


Hi {{ user.firstname }},
Welcome!
Thanks for signing up. Please follow this link to activate your account: click here.
You can find several how-to videos on Flaski's YouTube channel.
For documentation please visit Flaski's GitHub page.
Continuous delivery. To ensure you get the latest updates as soon as possible we rollout changes between 04:00 and 05:00 CET. During this time you might experience glitches of a few seconds. Check our releases page if you want to know more about delivered updates.
Cheers!
Sincerely,
Flaski


--- layout: page title: Can't Find It, Mate special: true ---
In the meantime, I'm trying out how to better target medium sized businesses so that they can increase traffic to their websites. You can check it out here.
See my latest experiment


Thank you for reaching out.
NOTE: this is not yet a functional form. Please contact me via LinkedIn or Twitter for the time being.


This intention converts selected integer literal (written in either
hexadecimal
or
octal
or
binary
notation) into
decimal
notation.


Tourist tweets escape from NZ's White Island volcano
by ReutersTourist Michael Schade stood at the crater of New Zealand's White Island volcano minutes before it erupted on Monday and shared his terrifying experience in a series of messages and videos posted on social media.
"My God, White Island volcano in New Zealand erupted today for first time since 2001. My family and I had gotten off it 20 minutes before, were waiting at our boat about to leave when we saw it," he tweeted.
"Boat ride home tending to people our boat rescued was indescribable."
One person was killed, several were injured and others were reported missing when the volcano erupted apparently without warning off the east coast of New Zealand's North Island.
In video Schade posted on Twitter as he sped away from the island in a boat, a huge plume of white ash soars into the sky as a group of frightened tourists huddle close to the shore.
A helicopter parked nearby on the island looks crumpled and covered in ash.
"Those are some of the people (our) boat picked up. Praying for them and their recovery. Woman my mom tended to was in critical condition but seemed strong by the end," Schade tweeted to his 2,570 followers.
"The helicopters on the island looked destroyed."
Schade describes himself in his Twitter handle as someone who likes "helping people, photography, reading, gym, travelling, and learning new things". He says he lives in San Francisco.
"This is so hard to believe. Our whole tour group were literally standing at the edge of the main crater not 30 minutes before," he tweeted.
"My thoughts (are) with the families of those currently unaccounted for, the people recovering now, and especially the rescue workers."
He also praised tour operators who helped tend to people in the minutes after the eruption.
"Endless gratitude to that crew for stepping up as first responders," he wrote.


CME 193 - Introduction to Scientific PythonCourse descriptionThis short course runs for the first four and a half weeks of the quarter and is offered each quarter during the academic year. It is recommended for students who want to use Python in math, science, or engineering courses and for students who want to learn the basics of Python programming, and learn about relevant applications. The goal of the short course is to familiarize students with Python’s tools for scientific computing. Lectures will be interactive with a focus on learning by example, and assignments will be application-driven. Topics covered include control flow, basic data structures, File IO, and an introduction to NumPy and SciPy. Course informationCME 193 - Introduction to Scientific Python - Spring 2015
Instructor: Nolan Skochdopole (naskoch at stanford dot edu) Office hours: Wednesdays, 2 pm - 4 pm and by appointment. We will be using Canvas for course communication. Course prereqsThere are no formal prerequisites. However, past experience has shown that people with no programming experience will struggle with the pace and have to put in a lot of hours, as if it were a three unit course. Hence, some prior programming experience in some language is strongly encouraged. If you have no programming experience, and you still want to take to course, please consider completing an introduction of Python on Codeacademy and/or Udacity before class starts. This should get you up to speed! Course PolicyThe course consists of 8 lectures. Roughly the first half is a traditional lecture, and after a short minute break, we will spend the rest of the time working on exercises in class. Hence, please bring a laptop. Exercises will be assigned each class. Honor codeYou are strongly encouraged to work together and discuss both exercises and other homework. However, the portfolio and other homework should be your own work and all the code you submit should be written by yourself. Of course, you are free, and encouraged, to search online to solutions to problems you run into (though not full solutions to the exercises), and use those. A simple example would be to look up the syntax of a for loop. |


Basic Usage Details:
For additional information please refer to the FITS homepage.
- Conventions Used In Examples:
Below are the conventions we will be using within the examples given.
- /fits
- The context root is assumed to be /fits. Your context root may be different depending on installation
- HOST
- Refers to your server where fits has been installed.
- PORT
- Refers to the port on which fits is running.
- REMOTEFILE
- Refers to the filename with full path on the FITS server to examine
- LOCALFILE
- Refers to a file which you will upload to FITS with full path
- Endpoint:
/examine
Examining a file and returing the corresponding metadata containing both FITS output and standard schema output in XML
format. (See FITS for more information.)
- GET (using curl):
curl --get -k --data-binary file=REMOTEFILE http://HOST:PORT/fits/examine
- GET (using browser):
http://HOST:PORT/fits/examine?file=REMOTEFILE
- POST (using curl):
curl -k -F datafile=LOCALFILE http://HOST:PORT/fits/examine
- POST (using browser):
http://HOST:PORT/fits/index.html
Use the upload form.
- Endpoint:
/version
Obtaining the version information for FITS being used to examine the input files returned in plain text format. (GET request only)
- GET (using curl):
curl --get http://HOST:PORT/fits/version
- GET (using browser)
http://HOST:PORT/fits/version
- Information
The return of any fits call will be a structured XML. If the file is properly identified this will be the FITS output, if there is an issue with the uploaded file an XML error response.


Score¶
The next step is to examine the forecast skill. This is done by comparing the actual trajectories to the forecasted trajectories. We will see different patterns in the forecast skill depending on whether the system is dominated by deterministic or noisy dynamics.
Regression¶
For regression, there are two ways to measure the accuracy of the results. The default score
method is the coefficient of determination. This is the default for many of scikit-learn’s scoring functions as well. Additionally, the correlation coefficient can also be used to score a continuous variable.
These can be called by:
score1 = M.score(ytest, how='score') # Coefficient of determination
score2 = M.score(ytest, how='coeff') # Correlation coefficient
Coefficient is useful when you are interested in making precise forecasts and correlation coefficient is useful when you are interested in accurate forecasts. For example, consider the following plot where blue are the actual values and green are the predicted values.
The correlation coefficient for these predictions would be equal to one, while the coefficient of determination would be 0.19. Depending on on your interest, either statistic could be useful.
Classification¶
For classification, there are two ways to measure prediction skill. The first is by a simple percent accuracy. This calculates what percent were correctly predicted. The second way is by klecka’s tau which attempts to normalize by the distribution of classes.
score1 = M.score(ytest, how='compare') # Percent correct
score2 = M.score(ytest, how='tau') # Kleck's tau
Percent correct is useful when you have balanced classes, but not useful when the classes are skewed. For example, if there are two classes and class 1 makes up 95% of the data. Predicting a 1 everywhere would show you 95% accuracy while klecka’s tau would show an accuracy of about -8.8. Again, both stastics could be useful in the correct context.
Distinguishing Determinism¶
Here we analyze the logistic map with varying levels of noise as indicated by the title.
To begin, we follow the fit
, predict_individual
, and score
routine as usual for every time series. Interested readers can find the code in the jupyter notebook. Next we look at the correlation coefficient for each series for one prediction forward in time. The legend refers to the level of noise that was added to the time series.
Analyzing the plot above, we can see that as the amount of noise increases, the forecast skill decreases. This is to be expected as adding stochasticity to a system makes it inherently more difficult to forecast. The next thing to notice is that the forecast skill decreases more rapidly for the series with less noise. It is more important in deterministic systems to grab neighbors that are nearby in space.


Its the middle of winter down in New Zealand and I am planning ahead to summer and when I will have spare solar available. Can anyone suggest a way of getting a spare power is available and is not available message into IFTTT?
Later in the day once the HWC has reached its thermostat limit and the Spa is up to temperature I'd like to trigger a few appliances including the Bedroom Aircon to mop up any spare power rather than sell it back to the grid at the pittifull rate we get down here.
I have both MQTTWarn and OpenHAB running on the pi so it should be possible somehow.
Re: Can anyone suggest a way of getting a power is over x reading out to IFTTT
What or how do you control the air conditioner?
Re: Can anyone suggest a way of getting a power is over x reading out to IFTTT
Bedroom one via IFTTT and Sensibo which is an internet connected smart controller,
rest of house via IFTTT and Ecobee's which is another internet connected smart thermostat
Re: Can anyone suggest a way of getting a power is over x reading out to IFTTT
I had wondered if you were using WeMo as there is a Linux support system for that now.
Linux to IFTTT looks challenging though.
Re: Can anyone suggest a way of getting a power is over x reading out to IFTTT
Nope I'm not using that.
I haven't seen an obvious route yet between EMONCMS and IFTTT apart from publishing it to something like Twitter. I'm hoping someone will have an answer. I'm thinking a combination of adding feeds together in EMONCMS, then removing a calibration value followed by allow positive to create the spare power available signal, but I'm unsure where to go from there.
suggestions anyone?
Re: Can anyone suggest a way of getting a power is over x reading out to IFTTT
I'd say use Node-RED and IFTT's new "Maker" channel to cook up a recipe that integrates emoncms and IFTT.
Re: Can anyone suggest a way of getting a power is over x reading out to IFTTT
Thanks for the reply, do you know if it uses many resources? I've already got MQTTWarn running to translate MQTT topics into a form that EMONCMS can see and OPENHAB which is written in Java to talk to my ECOBEE thermostat. I'm guessing they'll all play nicely together but I'm concerned the pi2 may run out of power or memory.
Re: Can anyone suggest a way of getting a power is over x reading out to IFTTT
It can be demanding on memory especially that you have so many things running already. I believe the way to go is for a cloud VM, running all these things and then use the RPi as a dummy forwarder only. There are pretty darn cheap deals on digitalocean for example.
Re: Can anyone suggest a way of getting a power is over x reading out to IFTTT
Thanks, I did wonder. Maybe I can do something with MQTTWarn and a dummy twitter account. I'll experiment further. A cloud account could work however it does add an extra layer of complication into things that's not under my control.
Can anyone suggest any way other than through Node Red to get a EMONCMS feed into IFTTT?
Re: Can anyone suggest a way of getting a power is over x reading out to IFTTT
There is now IFTTT Maker which allows the sending of data or simply the on, off or toggle command.
I have a "working" system using php to send the on or off command. However today the system sent the command, IFTTT received and logged it, but the mode on the WeMo switch didn't change. There is also appears to be a significant delay between the command being sent and the switch changing.
The best option is to use the open source python code run on your local RPi to do the controlling, however I haven't yet integrated this into my project yet. I am using for a pool pump.
Re: Can anyone suggest a way of getting a power is over x reading out to IFTTT
Things have moved on a bit since I last posted in this thread. I now use Openhab on the pi taking MQTT inputs from Emonhub and controlling things including my pool pump which turns on when the sun is out and turns off when it goes in with the aim of completing my daily filtering cycle using spare solar power. It works well. Openhab talks direct to wimo I believe if you are interested in a non cloud solution.
Re: Can anyone suggest a way of getting a power is over x reading out to IFTTT
This OpenHab looks like it could be a good solution.
Have you had any experience integrating IR remote controls with it?
The only two I found listed that it supports are very expensive.
Are there any good threads on here or blogs else where on the integration of EMONCMS and Openhab?
Re: Can anyone suggest a way of getting a power is over x reading out to IFTTT
I use a 433mhz transceiver with it and a home easy (trust home automation, previously known as Coco in Australia / NZ) remote control as well as the iPhone app to switch things on and off. Can't comment on the IR kit as I've not tried any.
There is an EMONCMS binding but it didn't seem to work with my emonpi image so I used the raw MQTT messages from the Emonhub part of EMONCMS as inputs. It may work with the normal installation but I've never tried it.
For basic Openhab installation take a look at www.homeautomationforgeeks.com i modified the instructions by installing it into /home/pi/data/Openhab as Openhab likes to be able to write to its directory tree and by default the low write raspberry pi install only allows writing into a small number of locations. You'll also need to type rpi-rw before you install to allow writing to the rest of the file system.
Re: Can anyone suggest a way of getting a power is over x reading out to IFTTT
Thanks for this.
When you say you installed it to the /home/pi/data/Openhab folder, do you mean you copied all the contents of the distribution-1.7.0-runtime.zip into this folder?
I tried this, but I receive the command not found when I try to run the start.sh file.
Also if you could provide a copy of your default.sitemap and default.items files that would be very helpful.
Re: Can anyone suggest a way of getting a power is over x reading out to IFTTT
Simply copying the runtime should get you a working system, although you need to add in the demo sitemap and items files which are seperate downloads and a good place to start. My items and sitemap is very large and would make no real sense unless you know my setup and what I do with it.
To get the start.sh to run you need to change permissions and I'd strongly recommend following the info on the homeautomationforgeeks site, albeit with a different directory holding the openhab files.
Mine is started using "sudo /etc/init.d/openhab start" which is all documented on there. Basically you need to install the script in /etc/init.d, then make it executable, and from memory a couple of other things before it works.
Good luck!


Hi! My name is Laboni. Thank you for taking the time to visit my page! A little bit about myself, I grew up in a university environment as both of my parents were professors. So, I too was influenced by them and decided to get into education. I got my Bachelors in Education and an Associate in Computer Information Systems, as computers have always facinated me! I also have a love for sweets(but no chocolates, I'm weird like that!), traveling and learning about different cultures, and my crazy passion about visiting wildlife safaris whenever I can!
I have mostly been a stay at home mom, but started to substitute teach when my kids got a little older.


CameraStereoData(bpy_struct)¶
base class — bpy_struct
-
class
bpy.types.
CameraStereoData
(bpy_struct)¶ Stereoscopy settings for a Camera data-block
-
convergence_distance
¶ The converge point for the stereo cameras (often the distance between a projector and the projection screen)
Type: float in [1e-05, inf], default 1.95
-
convergence_mode
¶ OFFAXIS
Off-Axis, Off-axis frustums converging in a plane.PARALLEL
Parallel, Parallel cameras with no convergence.TOE
Toe-in, Rotated cameras, looking at the convergence distance.
Type: enum in [‘OFFAXIS’, ‘PARALLEL’, ‘TOE’], default ‘OFFAXIS’
-
interocular_distance
¶ Set the distance between the eyes - the stereo plane distance / 30 should be fine
Type: float in [0, inf], default 0.065
-
pivot
¶ Type: enum in [‘LEFT’, ‘RIGHT’, ‘CENTER’], default ‘LEFT’
-
pole_merge_angle_from
¶ Angle at which interocular distance starts to fade to 0
Type: float in [0, 1.5708], default 1.0472
-
pole_merge_angle_to
¶ Angle at which interocular distance is 0
Type: float in [0, 1.5708], default 1.309
-
use_pole_merge
¶ Fade interocular distance to 0 after the given cutoff angle
Type: boolean, default False
-
use_spherical_stereo
¶ Render every pixel rotating the camera around the middle of the interocular distance
Type: boolean, default False
-
classmethod
bl_rna_get_subclass
(id, default=None)¶ Parameters: id (string) – The RNA type identifier. Returns: The RNA type or default when not found. Return type: bpy.types.Struct
subclass
-
classmethod
bl_rna_get_subclass_py
(id, default=None)¶ Parameters: id (string) – The RNA type identifier. Returns: The class or default when not found. Return type: type
-
Inherited Properties
Inherited Functions
References


The Handy Time Stamp
Time Punch
Timesheet
Data
In
Out
You are currently clocked
out
.
Clock Out
Words Written:
Description:
Ok
Cancel


This post will eventually be about working with the #slice_when
method. But first a little rambling about why I chose this method. Our assignment was to teach an Enumberable method in Ruby to our readers. Picking a method was a challenges. Many methods are simple and self-explanatory (like #max
, #min
, #first
, #last
) and wouldn't take any time to explain. Others are already becoming familiar to our cohort (like #map/#collect
). Some are suggested in the assignment (#group_by
, #cycle
) so there will likely be a bunch of posts on them, and my post wouldn't be particularly interesting.
The obvious one we all need to learn more about is #grep
. But that is by definition (Globally search a Regular Expression and Print) used primarily with regular expressions, a topic we haven't covered and Regex clearly falls into "black magic", meaning I find it hard to understand how it works, much less explain it. Similarly #inject
and #reduce
are super powerful, but with a hint of black magic. Just think about all that work to build factorial(num)
when it's just (1..num).reduce(:*)
!!!
At this point you should be wondering, since it was in my title, "I'm here for golf! When do we tee off?" Well, I'm getting to it. Code Golf is a sometimes derogatory term for the exercise of writing the shortest possible code needed, even if it results in much less clear code. The wikipedia article is very interesting and sort of amazing/silly. In a way, using #reduce
to calculate factorials is a very mild version of Code Golf because at this point in DBC we're supposed to making sure we can build the logically structured code it take to generate the steps one at a time that #reduce
does internally all at one.
Another Code Golf behavior is stringing lots of methods together to accomplish on one line what might be done in a series of steps that would be easier to follow if they were spelled out. We're already accepting as proper using #each rather than an explicit loop to iterate through an array, so I think we're going to see method stringing become more acceptable as we go along. I don't find it nearly as objectionable as black magic methods, because all the steps are still there in the code. You just have to read the string carefully.
So for every "create a method" exercise we've had, I've tried to come up with a way to do it in a single expression. It was not too hard in week 4, but it got a lot harder here in week 5, especially when we were asked to come up with a method to calculate modes from arrays, which could be either a collection of numbers or a collection of words. I did get there, but I kindof had to cheat for the firs time by pushing my recursion onto the end of the expression when I think Ruby syntax would say it needed to be on the next line. I'll show that to you below. But the point here is that looking through the Enumberables methods carefully I realized that I could have used one of them to make my mode(array) method a somewhat better gold shot and avoid the need for recursion to make it work.
#slice_when
There is a HUGE, awful pun lurking here that I haven't the heart to figure out, related the notion that a slice can be a good thing in this kind of golf. But first the basics. #slice_when
allow you to iterate through an array (or ordered hash), breaking it into pieces, cutting at points where the condition is satisfied. Sure, you hear that, but it takes examples to understand it.
Imagine your input is a string of text that is a whole paragraph, much like what we write in our text processors (that then extend way to the right when that file is displayed at GitHub!). But I'll use a simple one:
"See Joe. See Jane. See them use array.split and then cry. Now they are sad."
You want to break it into sentences. Even if they were calling it for the wrong class, Joe and Jane reminded us about #split
, so let's try that.
Since we know sentences end with periods, let's try to #split
that way:
sentence= "See Joe. See Jane. See them use array.split and then cry. Now they are sad."
p sentences = paragraph.split(".")
irb>["See Joe", " See Jane", " See them use array", "split and then cry", " Now they are sad"]
That didn't work at all. The periods disappeared, there are stray spaces around, and the array.split got chopped into different sentences.
But there's something else we might use. Sentences have two spaces between them, right? So let's split when we find two spaces:
p sentences = paragraph.split(" ")
irb>["See Joe. See Jane.", "", "See them use array.split and then cry.", "Now they are sad."]
Hmmm....not so good. It was mean of me to have one of the sentences separated by three spaces, since that is wrong. But my friend Amy tells me it's correct to put only one space at the end of a sentence, so the first two sentences didn't get separated.
Let's try again. We do know that a space always comes between words, so let's split on any spaces we see:
p words = paragraph.split(" ")
irb>["See", "Joe.", "See", "Jane.", "See", "them", "use", "array.split", "and", "then", "cry.", "Now", "they", "are", "sad."]
You knew that was coming. It's not all bad. The extra spaces are all gone, array.split stayed in one piece, so no harm done. In fact, splitting on spaces is the default for #split because this is so handy. We just need to reassemble all these words into sentences.
Looking at this we'll see that the words at the end of sentences have periods following them. So if we can break up this array into Now we have words, and conveniently the words at the end of sentences all end with periods. Now we want to break our big array of words into a set of smaller arrays, and we want to have the breaks occur when we see a word with a period at the end. Time for #slice_when!!!
words = paragraph.split
p sentences = words.slice_when{|word| word[-1]=="."}
irb>#<Enumerator: #<Enumerator::Generator:0x00000001e9d2d8>:each>
Wait, what the heck is that! Disaster! Nonsense! I don't even understand. Settle down...this is a method on Enumerables, and it returns an Enumerator, which at this point to me is a black magic box that I can't start to explain. But I can do something with it--turn it into an array (or hash):
p sentences = words.slice_when{|word| word[-1]=="."}.to_a
irb>[["See", "Joe."], ["See", "Jane."], ["See", "them", "use", "array.split", "and", "then", "cry."], ["Now", "they", "are", "sad."]]
That looks really good indeed. The #slice_when
syntax is pretty easy too: array_to_be_sliced.slice_when{|name_you_choose_for_each_element| boolean_to_return_true_for_elements_after_which_you'd_slice}
Now we just need to turn each of these arrays within the bigger array back into sentences, and we've done that before:
p finished = sentences.map {|words| words.join(" ")}
irb>["See Joe.", "See Jane.", "See them use array.split and then cry.", "Now they are sad."]
Done. Now let's play some golf. If we add methods to the end of an expression, Ruby will perform that method on the result of what came before it. One thing to keep in mind is that in our multiline code above, we've either used destructive methods or had to set our variable equal to the result of the method to make that method destructive. When we combine them in expressions, that isn't an issue since the next method is performed on the result of the prior method.
so we can condense this:
paragraph= "See Joe. See Jane. See them use array.split and then cry. Now they are sad."
words = paragraph.split
sentences = words.slice_when{|word| word[-1]=="."}.to_a
p finished = sentences.map {|words| words.join(" ")}
irb>["See Joe.", "See Jane.", "See them use array.split and then cry.", "Now they are sad."]
into this:
paragraph= "See Joe. See Jane. See them use array.split and then cry. Now they are sad."
p paragraph.split().slice_when{|word| word[-1]=="."}.to_a.map {|words| words.join(" ")}
irb>["See Joe.", "See Jane.", "See them use array.split and then cry.", "Now they are sad."]
We could even get more silly:
p "See Joe. See Jane. See them use array.split and then cry. Now they are sad.".split().slice_when{|word| word[-1]=="."}.to_a.map {|words| words.join(" ")}
irb>["See Joe.", "See Jane.", "See them use array.split and then cry.", "Now they are sad."]
Alright, that's the end of the front nine on our golf course. Time for a beer and then we'll turn to an application of #slice_when that may not be real world, but definitely applies to the Island Foxes: finding the mean of an array of numbers. Obviously if you haven't completed Exercise 5.3 you should stay in the clubhouse and work on it rather than come with us to the back nine.
Here's an old friend! One of the arrays from 5.3:
array = [4, 4, 5, 5, 6, 6, 6, 7, 5]
The obvious/intended/conventional way to do Exercise 5.3 was to iterate through the items in the array, building a hash with item "name" keys and value equal to the number of times that item appeared. Then manipulate that hash to find the highest number of occurrences and get the associated keys into an array. But thanks to #slice_when we can do all that my manipulating the original array!
Sort the array
array = [4, 4, 5, 5, 6, 6, 6, 7, 5]
p array.sort!
irb>[4, 4, 5, 5, 5, 6, 6, 6, 7]
Slice the array between each cluster of the same item. But, you might ask, how can #slice_when
do that? We used it to decide when to cut based on whether an element had a period in it. How can we tell it which instance of a number to slice after. We can--I just didn't tell you that you actually have two arguments to use in #slice_when...the element before AND the element after the position of the slice. So you can use both of those in a boolean expression to decide whether to slice between them. And since we sorted the array, it's an even simpler boolean than we used on the sentences.
p array.slice_when{|before,after| before < after}.to_a
irb>[[4, 4], [5, 5, 5], [6, 6, 6], [7]]
Now we are cooking. The next step is to replace each of these rather repetitive arrays with something more useful: an array much like the hash we talked about above, with the item as the first element and the number of occurences as the second. #map does this very nicely for us:
array2 = array.slice_when{|before,after| before < after}.to_a #we do this because slice_when is not destructive
p array2.map! {|bucket| [bucket[0],bucket.size]}
irb>[[4, 2], [5, 3], [6, 3], [7, 1]]
Does the end feel close now? The easy way to get done from here would be to iterate through this array twice: first to find the highest number of occurences and then to find the items associated with that number:
max = 0
array2.each {|bucket| max=[bucket[1],max].max}
modes = []
array2.each {|bucket| modes << bucket[0] if bucket[1] == max}
p modes
irb>[5, 6]
We can even do it with one iteration through the array if we are a little inventive:
max = 0
modes = []
array2.each do |bucket|
if bucket[1] > max
max = bucket[1]
modes = []
end
modes << bucket[0] if max == bucket[1]
end
p modes
irb>[5, 6]
But there's a problem for the golfers among us. Neither of these approaches are useful for golfing. The first one sort of branches our tree by using the array in two different ways. We can make this a single expression but it involves building the whole tree twice.
But there is a path we can follow that conveniently enough for the purpose of this blog again uses a slice to get us onto the green. We sort the array to get all the modes at the front
p array2.sort!{|a,b|b[1]<=>a[1]}
irb>[[5, 3], [6, 3], [4, 2], [7, 1]]
and we #slice_when again (we use #slice_when, but if we didn't want to keep the all the information in the array it would be a bit simpler to use #take, which would discard the rest after the modes:
p array3 = array2.slice_when{|before,after| before[1] > after[1]}.to_a
irb>[[[5, 3], [6, 3]], [[4, 2]], [[7, 1]]]
We are putting for the win now, and it's not a hard putt. We #map the first element of the arrays that contain the modes into a new array, and to make sure all this slicing and sorting hasn't messed up the order, we'll do one last #sort.
p array3[0].map {|pair| pair[0]}
irb>[5, 6]
So we've made this work. Now we just want to see if we can get a hole-in-one in Code Golf. String together all the methods we've performed consecutively on the same array! As a reminder here's how we got here:
array = [4, 4, 5, 5, 6, 6, 6, 7, 5]
array.sort!
array2 = array.slice_when {|before,after| before < after}.to_a
array2.map! {|bucket|[bucket[0],bucket.size]}
array2.sort! {|a,b| b[1] <=> a[1]}
array3 = array2.slice_when {|before,after| before[1] > after[1]}.to_a
p array3[0].map {|pair| pair[0]}
irb>[5, 6]
Note that putting it all in one expression does allow us to do away with the array2 and array3 and the bangs(!) because we're always using the result of the methods and don't care whether or not they are destructive
array = [4, 4, 5, 5, 6, 6, 6, 7, 5]
p array.sort.slice_when {|before,after| before < after}.to_a.map {|bucket| [bucket[0],bucket.size]}.sort {|a,b| b[1] <=> a[1]}.slice_when {|before,after| before[1] > after[1]}.to_a[0].map {|pair| pair[0]}
irb>[5, 6]
Time for a little dance! And also a bit of a wry look, because although this is just one expression, it is very long and would be hard to parse if you hadn't walked through it step-by-step. So let's compare to what my first hole-in-one solution was:
Before I show you the one line method I had before I understood #slice_when, best for a bit of pseudocode because the logic is very different, and it does rely on a recursive method:
Input: an array of items, in no particular order, one or more of which recur so there are one or more modes (mode means it appears the most times, ties are possible)
Output: an array with the names of the modes, each appearing only once in the array.
Overall approach: reduce the contents of the array down to the modes by iterating through the array tone copy of each remaining in the array
Important new method: Array#uniq
, which returns an array containing one of each item that appears in the array. Essentially it is deleting all duplicates.
Details:
We know we are done when we get down to an array where every item in it appears only once
So WHILE array has duplicate elements
#uniq
version of the array#uniq
array, deleting from the primary array one occurrence of the element from the #uniq
arraySort the resulting array and report it.
Let's see this loop in action one step at a time:
until array == array.uniq do
array.uniq.each do |element|
array.delete_at(array.index(element))
end
end
p array.sort
irb>[5,6] # hello old friends!
Now you get the underlying logic. But you wonder how that works in one line. Two more tools at work: ternary expression and recursion. A ternary is really an IF-THEN-ELSE writen as
IF condition ? THEN action : ELSE action
So let's write out what's going to happen:
IF my array has no duplicate items
THEN sort and return it
ELSE delete one copy of each unique item AND do this IF-THEN-ELSE on the result
The recursion is really just that last bit....do it again on the result of what I just did. We call the method again on the result of running the method once, and keep doing that until we are done, whatever done means.
The IF is simple and we've already seen it:
array == array.uniq
As is the THEN, which is what the expression will return when we are done:
array.sort
Here's the first part of the ELSE is the one line version of the array.uniq.each
above:
array.uniq.each {|element| array.delete_at(array.index(element))}
And the recursion part of the else
mode(array)
put it all together into the ternary statement and you get:
array == array.uniq ? array.sort : array.uniq.each {|element| array.delete_at(array.index(element))} && mode(array)
As I said, I think the &&
glueing what is effectively another expression/action into the ternary probably means this is not a true "one expression solution." But its relative brevity and clarity make it a lot more attractive than the much longer and complex hole-in-one above.
And now, for those who have stuck this out because of the promise of a horror show at the end, the two treed solution that I mentioned above. I had to tweak the methods a bit: you'll see "inject" because that's what we need to get the number of occurrences of the mode to use to find the numbers that occur that often. That explanation may be wordy, but just wait...you might want to close your eyes.
array = [4, 4, 5, 5, 6, 6, 6, 7, 5]
p array.sort.slice_when {|before,after| before < after}.to_a.map {|bucket| [bucket[0],bucket.size]}.map {|bucket| bucket[1] == array.sort.slice_when {|before,after| before < after}.to_a.map {|bucket|[bucket[0],bucket.size]}.inject {|bucket| $max=[bucket[1],$max].max} ? bucket[0] : nil}.compact.sort
irb>[5,6]
This makes me impose another requirement on my efforts to write one line methods. They cannot be less DRY than the multiline version (which will always happen if the logic has a fork in it). But as long as the one line version uses the same logic, I think it is OK to write, helps you learn new methods, and is fun in a very geeky way.
If you actually got to this point, please send me an email. You deserve some sort of prize.......


Name: {{repo.name}}
Link: https://github.com/{{repo.full_name}}
Description: {{repo.description}}
Homepage: {{repo.homepage}}
Creation date: {{repo.created_at | date}}
Last update: {{repo.updated_at | date}}
Language: {{repo.language}}
Amount of forks: {{repo.forks_count}}
Open issues: {{repo.open_issues_count}}
Amount of watchers: {{repo.watchers}}


labyrinth toolkit
clear
find Way
guesses:
0
selectionArray:
--
Time:
--
https://github.com/braindef/labyrinth.js


Toggle navigation
Features
Documentation
Contact
<%= user.login %>
Sign out
×
Close
Warning!
There are no webhooks setup
click here to let us set them up automatically.
×
Close
Success!
The webhooks were successfully created for this repository.


Mark$\TeX$
Markdown Help
$\LaTeX$ help
Exit
Copy to clipboard
Preview
Print(Export to PDF)
Load File
Save File
×
Modal header


This is the lyrics of Saraswati Kavach in English and Devanagari script. You will also find the meaning of Saraswati Kavach in English. The Saraswati Kavach is read to please Goddess Saraswati.
Asya Sri Saravanthio Kavacha Stotra Maha Manthrasya, Samyogeshwara
Rishi,
Anushtup Chandha, Sri Saraswathi Devata, Sri Saraswathi Prasada
Sidhyarthe Jape Viniyoga.
|| Dhyan ||
Srimad Chandana Charcithojjwala Vapu, Shuklambara Mallika
Malaa Lalitha Kunthalaa Pravilasad Mukthavali Shobhitha. ||1||
Sarva Jnana Nidhana Pusthaka Dara, Rudraksha Malangitha,
Vagdevi Vadanambhuje Vasathu May, Trilokya Mathaa Shubhaa. ||2||
|| Kavach ||
Omkaro May Sira Pathu, Imkara Pathu May Mukham,
Sakara Pathu May Nethre, Rakara Srothra Yugmakam. ||3||
Swakaro Nasikaam Pathu Traikao Ganda Yugmagam,
Nakara Pathwoshta Yugmakam, Makao Dandha Panmkthim. ||4||
Jihwam Vidhyaakalaa Pathum, Vacham Vagdevatha Mama,
Kantam May Suswara Pathu, Vaksha Karunya Manasa. ||5||
Hasthou Pusthakahastha May, Kukshim Vatadalodhara,
Katim Kanaka Vasthradya, Ooru Ramborukaa Mama. ||6||
Guhyam Sugopya Bheejadyaa, Padhou Pathu Nathamaraa,
Sarvangam Sarvadhaa Pathu Sarva Poojya Saraswathi. ||7||
Bharathi Kavacham Punyam Padathaam Sarva Sidhidham,
Sarva Vidhyapradham Sreshtam Kumathi Dwandha Bhaskaram. ||8||
|| Saraswathi Kavacham Sampoornam. ||
अस्य श्री सर्वानतो कवच स्तोत्र मन्त्रस्य, सम्योगेश्वर ऋषि,
अनुष्टुप चन्ध श्री सरस्वती देवता, श्री सरस्वती प्रशाद शिथार्थे जपे
विनियोग |
|| ध्यान ||
श्रीमद चंदना चरितोज्वज्वल वपु, शुक्लाम्बरा मल्लिका,
माला ललिता, कुंथला प्रवीलासाद मुक्तावली शोभित ।।
सर्व ज्ञान निधान पूषा दारा, रुद्राक्ष मलंगित,
वाग्देवी वदनमभूजे वसु मे, त्रैलोक्य माथा शुभा ।।
|| कवच ||
ओमकारो सिरा पाथु, इमकारा पथु मूकम,
सकरा पथु मे निठरे, रकारे श्रोत्र युगमकम् ।।
स्वकारो नासिकाम् पथु त्रिकौ गन्दा युगमगम,
नाकरा पाथवोषा युगमकम, मकाओ दंड पद्मक्तिम ।।
जिह्वाम् विद्याकालं पथम्, वचम् योनिदेवता मम,
कण्ठम सुस्वरा पातु, वक्ष करुणा मनसा ।।
हस्थो पुष्पकस्थ, कुक्षिम वटदलधारा,
कटीम कनक विशारद्या, ऊरु रंबोरुका मामा ।।
गुह्यम सुपोय भजेद्य, पादहौ पथु नाथमारा,
सर्वंगम सर्वधा पथु सर्व पूजा सरस्वती ।।
भारती कवचम पुण्यम पाथम् सर्व सिद्धम्,
सर्व विद्याप्रदम् श्रीत्तम कुमति द्वंद्व भास्करम् ।।
।। सरस्वती कवचम् सम्पूर्णम् ।।
Asya Sri Saravanthio Kavacha Stotra Maha Manthrasya, Samyogeshwara
Rishi,
Anushtup Chandha, Sri Saraswathi Devata, Sri Saraswathi Prasada
Sidhyarthe Jape Viniyoga.
For the great prayer called 'the armour of Saraswathi', the saint is
Samyogeswara, the goddess addressed is Saraswathi and this is being
sung for obtaining the grace of Goddess Saraswathi.
|| Dhyan ||
Srimad Chandana Charcithojjwala Vapu, Shuklambara Mallika
Malaa Lalitha Kunthalaa Pravilasad Mukthavali Shobhitha. ||1||
Sarva Jnana Nidhana Pusthaka Dara, Rudraksha Malangitha,
Vagdevi Vadanambhuje Vasathu May, Trilokya Mathaa Shubhaa. ||2||
She who is the mother of the three worlds, with a shining body coated
with sandal paste.  Wearing a garland of Rudraksha is the
Goddess of speech and I live in her lotus like face.
|| Kavach ||
Omkaro May Sira Pathu, Imkara Pathu May Mukham,
Sakara Pathu May Nethre, Rakara Srothra Yugmakam. ||3||
Let “Om” protect my head, “Iym” protect my face, “sa” protect my eyes
and “ra” protect my two ears.
Swakaro Nasikaam Pathu Traikao Ganda Yugmagam,
Nakara Pathwoshta Yugmakam, Makao Dandha Panmkthim. ||4||
Let “Swa” protect my nose, “Trai” protect both my cheeks, “Na” protect
my lips, “Ma” protect my teeth.
Jihwam Vidhyaakalaa Pathum, Vacham Vagdevatha Mama,
Kantam May Suswara Pathu, Vaksha Karunya Manasa. ||5||
Let the crescent of knowledge protect my toungue, let the goddess of
word protect my words. Let she with a musical voice protect my neck,
and let her with a mind of mercy protect me.

 And let all my
limbs be always protected by her, who is the always worshipped Goddess
Saraswathi.
Bharathi Kavacham Punyam Padathaam Sarva Sidhidham,
Sarva Vidhyapradham Sreshtam Kumathi Dwandha Bhaskaram. ||8||
This armour of Goddess Saraswathi is holy and by reading it everything
can be achieved. And it blesses you will all knowledge and it is great
and like a sun which enlightens the bad ones.
|| Saraswathi Kavacham Sampoornam. ||
Thus ends the armour of Saraswathi.
Do you want to answer a question to help us serve you better? If so, please fill this form.


Well it doesn’t 'cut' it hurts and is too small/ don't they think at all? always getting down on us.


--- layout: post status: publish published: true title: Episode 5.13 - Dusty's Mercedes vs. Sveum's Chevy author: display_name: Corey Fineran login: Corey email<EMAIL_ADDRESS>url: '' author_login: Corey author_email<EMAIL_ADDRESS>wordpress_id: 8502 wordpress_url: http://ivyenvy.com/?p=8502 date: '2013-06-17 22:57:10 +0000' date_gmt: '2013-06-18 03:57:10 +0000' categories: - Podcast tags: [] comments: [] ---
Corey and Kurt handle this episode on their own as Andy has been suspended for a late-night Twitter tirade, claiming that Corey is letting him rot in a different studio.
We talk a little more about the 2013 MLB draft. Ian Stewart is suspended and we look at his intentions and what the future holds for him. Corey gives some scary stats by looking at the Cubs record vs the NL Central and the other divisions. Then we answer some listener questions, including one that asks if Sveum's management of the bullpen is worse than Dusty's management of the starts during his tenure with the Cubs.
We play an interview from The Minor League Report Podcast, which is part of SPNT Podcast Network. The guys at MLR interview Robbie Aaron, the Director of Broadcasting and Media Relations with the Daytona Cubs. In this interview, Robbie talks about Javier Baez, Jorge Soler, which player in the Cubs system deserves to be moved up from their current placement and Robbie answers the question, "When will the Cubs be competitive?" Thanks to MLR and SPNT for allowing us to use this interview.


Messaging, WebSocket, Async Processing
General org.springframework.messaging module
- core message and channel abstractions
- endpoints using generic messaging patterns
WebSocket endpoint model along the lines of Spring MVC
- JSR-356 and native server support, with SockJS fallback option
- STOMP for higher-level messaging on top of raw WebSocket
AsyncRestTemplate
- based on ListenableFuture return values


固件接口¶
-
GET
/users/
(int: user_id)/posts/
(tag)¶ The posts tagged with tag that the user (user_id) wrote.
Example request:
GET /users/123/posts/web HTTP/1.1 Host: example.com Accept: application/json, text/javascript
Example response:
HTTP/1.1 200 OK Vary: Accept Content-Type: text/javascript [ { "post_id": 12345, "author_id": 123, "tags": ["server", "web"], "subject": "I tried Nginx" }, { "post_id": 12346, "author_id": 123, "tags": ["html5", "standards", "web"], "subject": "We go to HTML 5" } ]
Query Parameters: - sort – one of
hit
,created-at
- offset – offset number. default is 0
- limit – limit number. default is 30
Request Headers: - Accept – the response content type depends on Accept header
- Authorization – optional OAuth token to authenticate
Response Headers: - Content-Type – this depends on Accept header of request
Status Codes: - 200 OK – no error
- 404 Not Found – there’s no user
- sort – one of


Tool Addiction and Life Lessons
I think I’m not the only one being sort of addicted to trying new shiny things, automating anything or having to use something just because it seems cool. Of course there are many things right about continuous integration but the benefits for my tiny blog with it’s very moderate post frequency? Maybe mainly educational (: I’m using the Jekyll-Scholar plugin, which isn’t one of the very few plugins supported by GitHub. So I had to build this blog locally. I used a small Rakefile to compile everything on a source branch and pushing the compiled site to GitHub. It worked perfectly fine. The only downside was, side I couldn’t just write some markdown file from every computer or handy and let GitHub build a blog post from it. But this is more hypothetically in my own use case (note to myself: should post more often). That it worked just fine didn’t keep me from switching to remotely building the blog using Travis CI. As long as everything works fine, it’s relatively straight forward. This article was really helpful, although it also employs Docker and uses a Flask App example.
However if things don’t go so smooth… In the end it took my a few hours till the first working build on Travis. Somehow my source branch didn’t find the master branch in its refspec, no matter what I tried to update the references. Furthermore my Rakefile refused to find the default environment variables from Travis CI as well as the variables read from my encrypted access token in the .travis.yml file.
Whatever I’m to new to this to share some clever details about getting your Jekyll builds to pass. But there are two tings:
- After a few hours fighting with Travis CI and Git I was so hacked off that I accidentally ended up leaving a decrypted access token in some code I copy pasted in a cry for help on stackoverflow. I realized it two minutes afters posting, quickly revoked the token on GitHub. Still not one of my proudest moments but a really humbling life lesson.
- I want to give credit, to Martin Fenner because I’m using his Rakefile, which I modified to include testing with html-proofer. I also want share this extremely clear Rake tutorial, which really was of great help to me.
Feeling Foxy
I’ve been an admirer of the Wes Anderson Palettes tumblr for a long time. Palettable made some of them available for scientific plotting with Python and this is also where I discovered the tumblr. I also really like foxes. So I just HAD to use this palette:
Besides the colors I’m still enjoying the type theme. Just changed a few minor things like using Fire Sans as first font if available and switching from KaTeX to MathJax because I was missing a lot of important font options even though KaTeX has much faster rendering.
Musical Crush for the Weekend
Last week I was as the PWR BTTM concert. They played with Spook School a queer band from Scotland and both were absolutely amazing. I not only love the music but also think bands like this are important, especially in the light of recent political developments. So here’s their Tiny Desk Concert, which I love so much:


{% extends "course-edit.html" %} {% block styles %} {% endblock %} {% block forms %}
The course consists of units, which are collections of lectures.


When you have a great story about how your product or service was built to change lives, share it.
The "About Us" page is a great place for it to live, too. Good stories humanize your brand, providing
context and meaning for your product. Whatâ€™s more, good stories are sticky -- which means people are
more likely to connect with them and pass them on.People tend to think that "About Us" pages have to
sound formal to gain credibility and trust. But most people find it easier to trust real human beings,
rather than a description that sounds like it came from an automaton. Trying to sound too professional
on your "About Us" page results in stiff, â€œsafeâ€� copy and design -- the perfect way to make sure your
company blends in with the masses.We know -- no industry jargon. If you think it makes you sound super
smart on your "About Us" page, think again. People want and appreciate straight talk about what your
business does. After all, if people can't figure out what you do, how will they know they need your
product or service?Instead of following the classic "About Us" script and writing a few paragraphs
about the company's mission and origins, try something different -- there are plenty of ways to make
it more visually compelling.Yes, this post is about, well, "About Us" pages. But sometimes, you don't
always need to wait for users to get there in order to make a statement. That's part of breaking the
mold to showcase your company's personality.Who would you trust more: A company talking about how
awesome it is, or a colleague raving about the company's work? I'd bet that you prefer the latter
that colleagueis more likely to be unbiased and give you a realistic understanding of what the company
is like. Including customer testimonials on your "About Us" page can give prospects and leads a more
down-to-earth view of your company.


User Sign Up
Full Name
Email Adderss
Create Password
Confirm Password
Sign Up
Already have an Account? Log In


Help people find your content!
Combo specific fields:
Keep your content relevant in the long run | {{selectedPatch}}
Fill out the content people will always see
Required to either have at least video url or text body
Todo: Summary details here
Save for later (at some point), or submit straight away!


--- layout: default title: Corporate Support group: support group-weight: 2 permalink: /support/corporate/ ---
OSM is dedicated to the success and vibrancy of the Santa Monica and West Side communities and their businesses. Similarly, corporate contributions, sponsorships, and partnerships are key to the success of OSM's mission to establish and maintain the vitality of classical music within the community. We welcome your interest and support of OSM, and we are prepared to tailor your corporate support to the needs of your organization.
For more information regarding corporate sponsorships and partnerships, please call us at<PHONE_NUMBER> or email office@orchestrasantamonica.org.


oContinuous integration is an essential part of the software development lifecycle, and performance monitoring is a key part of continuous integration. We will learn how to set up performance monitoring with the popular Jenkins automation server, and Apache JMeter load and performance tester.
Continuous integration (CI) systems orchestrate and automate software build, testing, and deployment processes. CI systems:
- Monitor source code repositories.
- Run builds whenever code changes are detected.
- Run tests against compiled software (unit, acceptance, automated, performance, integration).
- Generate artifacts (binaries, documentation, installation packages).
With these benefits, it's no wonder that CI systems are widely adopted by software development companies as vital parts of the modern software development life cycle.
By implementing CI into your workflow, you have already checked off the first three items ofJoel Spolsky's 12 Steps to Better Code. If you are not familiar with Joel Spolsky, he is a prominent developer and co-founder of Stack Overflow, and he has set the standard in modern software development workflows. His checklist includes:
- Do you use source control?
- Can you make a build in one step?
- Do you make daily builds?
Why performance testing is important in the CI process
Adding performance tests to your CI scope reduces the risk of performance degradations whenever a new feature is added, or a bug in the product is fixed.
For example, if the latest commit inadvertently causes response times to go above an acceptable threshold or service-level agreement (SLA), your CI system will automatically raise a red flag and mark the build as failed. This makes it easy to identify what caused this problem.
It is better to run performance tests in the early software development stages. If a major error is detected in the pre-release phase, it will be harder to identify and fix the issue.
JMeter and Jenkins are the leading tools for performance testing and CI. They are both open source, have great documentation, and large, active communities.
How to install the Jenkins and JMeter plugin
If you don't already have Jenkins installed, follow these steps to get up and running quickly.
- Download the latest Jenkins release (the .war file should be enough).
- Run Jenkins as java -jar jenkins.war and wait for the "Jenkins is fully up and running" message.
- Open http://localhost:8080 in your web browser.
- You should now be able to see the Jenkins dashboard.
To get JMeter support on Jenkins, you need to use the Performance Plugin. Here is how:
- Download the latest version of the plugin|../../../../../../../../../display/JENKINS/Performance+Plugin\.
- Copy the performance.hpi file to the plugins folder of your Jenkins installation. If you run Jenkins from the .war file, copy the plugin to the .jenkins/plugins path under your home folder.
- Restart Jenkins to detect and load the plugin.
- If the installation is correct you should see the Publish Performance Test Result Report option under Jenkins -> Your Project -> Configure -> Add post-build action dropdown.
How to run a JMeter test in Jenkins
Running a JMeter test in Jenkins isn't very complex. Just remember that the test has to be run in from the command line. For your first couple of runs, you should configure JMeter to store its results in an XML format:
- Add the jmeter.save.saveservice.output_format=xml line to the user.properties file in the /bin folder of your JMeter installation.
- Pass the property via the -J command-line argument, such as: C:\jmeter\bin\jmeter.bat -Jjmeter.save.saveservice.output_format=xml -n -t C:\jmeter\extras\Test.jmx -l Test.jtl
Here is how it looks when the Windows batch is configured to command to run a JMeter test:
To verify the execution was successful, or to get extra information regarding any problems, check the Console Output tab of the project.
You can find the JMeter log file and the .jtl results file under your project's Workspace.
How to use the Performance Plugin
The Performance Plugin displays statistics, trends and can be used to mark builds as failed based on results. Follow these steps to add it to your project:
- Open the Jenkins project.
- Click the Configure button.
- Click the Add post-build action button.
- Select JMeter to output results in XML format.
Now you have automated your performance testing, and can spend more time on improving your software instead of struggling with identifying performance problems.
Source: Opensource


{% load static i18n %}
Start Date: {{ project.start_date }}
End Date: {{ project.end_date }}
Client: {{ project.client }}
Name of phase: {{ phase.name_phase }}
Project: {{ phase.project }}
Start Date: {{ phase.start_date }}
End Date: {{ phase.end_date }}
Client: {{ phase.client }}
{% endfor %}


Index
All Classes|All Packages
S
- send() - Method in class actor.intermediate.ClientSide
- send() - Method in interface actor.intermediate.ClientSideApi
-
Try to get a response to the intermediate.
- send() - Method in class actor.intermediate.ServerSide
- send() - Method in interface actor.intermediate.ServerSideApi
-
Try to get a request to the intermediate.
- send() - Method in class stub.intermediate.ClientSide
- send() - Method in class stub.intermediate.ServerSide
- send(Request) - Method in class actor.intermediate.ClientSide
- send(Request) - Method in interface actor.intermediate.ClientSideApi
-
Send a request to the intermediate.
- send(Request) - Method in class stub.intermediate.ClientSide
- send(Response) - Method in class actor.intermediate.ServerSide
- send(Response) - Method in interface actor.intermediate.ServerSideApi
-
Send a response to the intermediate.
- send(Response) - Method in class stub.intermediate.ServerSide
- sendAndReceive(byte[], InetAddress, int) - Method in class stub.StubClient
-
sendAndReceive creates a socket, sends bytes on it, and wait for the response.
- sendAndReceive(int, Serializable, InetAddress, int) - Method in class stub.StubClient
-
sendAndReceive creates a StubRequestMessage then calls another version of sendAndReceive to send it and receive the response.
- sendAndReceive(int, InetAddress, int) - Method in class stub.StubClient
-
sendAndReceive creates a StubRequestMessage then calls another version of sendAndReceive to send it and receive the response.
- sendAndReceive(int, List<Serializable>, InetAddress, int) - Method in class stub.StubClient
-
sendAndReceive creates a StubRequestMessage then calls another version of sendAndReceive to send it and receive the response.
- sendAndReceive(DatagramSocket, byte[], InetAddress, int) - Method in class stub.StubClient
-
sendAndReceive sends bytes on a given socket and wait for the response.
- sendAndReceive(StubRequestMessage, InetAddress, int) - Method in class stub.StubClient
-
sendAndReceive creates a socket, sends a stubRequestMessage, wait for the response, and deserialize response.
- Server - Class in actor
-
Receives requests and responses to them.
- Server(ServerSideApi) - Constructor for class actor.Server
-
The default constructor for the server.
- serverSide - Variable in class actor.Server
-
The server side of the intermediate.
- ServerSide - Class in actor.intermediate
-
The server side thread In charge of listening for and responding to request from the server.
- ServerSide - Class in stub.intermediate
-
Stub for the server side of the intermediate.
- ServerSide(int, Intermediate) - Constructor for class actor.intermediate.ServerSide
-
The default intermediate server side constructor.
- ServerSide(Config, InetAddress, int) - Constructor for class stub.intermediate.ServerSide
-
The default server side stub constructor.
- ServerSideApi - Interface in actor.intermediate
-
Api for the server side of the intermediate.
- setFilename(String) - Method in class model.Request.Parser
-
Set the filename of the request.
- setMode(String) - Method in class model.Request.Parser
-
Set the mode of the request.
- setRead(boolean) - Method in class model.Request.Parser
-
Set the type of the request.
- setState(State) - Method in class model.Request.Parser
-
Set the state of the parser.
- socket - Variable in class actor.intermediate.ClientSide
-
The socket to receive with.
- socket - Variable in class actor.intermediate.ServerSide
-
The socket to receive with.
- state - Variable in class model.Request.Parser
-
The state of the request parser.
- State - Class in model
-
Abstract state class for a object orientated parser.
- State(Request.Parser) - Constructor for class model.State
-
The default state constructor.
- StringState - Class in model
-
Abstract class for parsing a string ending a 0 byte.
- StringState(Request.Parser) - Constructor for class model.StringState
- stub - package stub
-
Stubs for all the components to be use for rpc.
- stub.intermediate - package stub.intermediate
- StubClient - Class in stub
-
Abstract stub client for rpc.
- StubClient(Config) - Constructor for class stub.StubClient
-
The default stub client constructor.
- StubRequestMessage - Class in model
-
Representation of a function call to be use in stub.
- StubRequestMessage(int, List<Serializable>) - Constructor for class model.StubRequestMessage
-
The default StubRequestMessage constructor.
- StubServer - Class in stub
-
Abstract stub server for rpc.
- StubServer() - Constructor for class stub.StubServer
All Classes|All Packages


{% extends "base.html" %} {% load bootstrap %} {% block content %}
This form is to submit a request to claim a store/chain and assign it to your login. If you are a store or chain manager for {{ target_obj }} please fill in the following note with proof of your claim. Once you submit the request it'll be reviewed by {{ site.name }} staff who may need to contact you to confirm your request.
In the note please submit as many of the following details you can.


Limiting Code Damage
When choosing a character in any role-playing game there are only two archetypes. Strong and Slow or Fast and Weak. All other classes are iterations of these basic attributes. Rouges, wizards, thieves, and rangers are just variations of the Rouge and Barbarian.
 The stronger the player is the slower they are. The faster they are the weaker they are. You are unable to get the best of both worlds. You can't create a buffed out warrior who is lightning fast. Muscle is slow.
Software design has similar limitations with a similar sliding scale. Software can either be built fast and buggy or slow and strong. The more time you take to think through a problem, the stronger the solution.
Please don't misinterpret this as an excuse to take a long time building software. All software can be built faster than most developers think they can write it. You shouldn't pad your time or think about every possible edge case.Great code is built with iteration not with forethought.
Developing a feature or product should take as much time as much time that is reasonable. If you are working with the right people, they will give you an accurate answer. If the product or feature needs to be pushed as fast as possible, then management needs to understand the code will be buggy and wobbly. The more time given to developers, the better the code should be. However, a fast first version of the product or feature should be built as fast as possible and then iterate on that piece of code. Software systems are always better the second time around.
In Design Patterns in Ruby, Russ Olsen explains:
A key goal of software engineering is to build systems that allow us to contain the damage. In an ideal system, all changes are local: You should never have to comb through all of the code because A changed, which required you to change B, which triggered a change in C, which rippled all the way down to Z.
You need to separate things which have a higher probability of changing from those that don't. Stabilize that which can be stable.
If you work on startup systems, this philosophy is challenging. The business is changing so rapidly, knowing that which is immutable is tough. When other developers come into the fold, and the problem has developed further, the code can be in an awful place. Many design decisions that seemed like a good idea initially are no longer viable to the current business model. Management needs to give the new team time to refactor the code and make it better.
When building systems, remember to limit the damage the best you can. Another developer some time in the future will read every line of code you write. Help them out by making it readable, adding good tests, and perhaps having inline documentation. Doing this is giving the future developer a bonus to all future saving throws.


MindMap Tab
History
Copy
Copy as Plain Text
Copy as Markdown Text
Copy as HTML
Export
Export as PNG
Export as JPEG
New
Delete
Configuration
Layout
Focus on MindMap
Focus on Text
MindMap only
Text only
Color mode
Change Line Color Mode
Font size
10 pixels
12 pixels
14 pixels
16 pixels
18 pixels
24 pixels
36 pixels
×
Confirm
Login
Email address
Password
Create a new user
Email address
Password
Retype


Teenage
Radical slow-jam cartography. Night-
swimming in the wake of several broken
promises. This was a storm taking root
in alluvial cognition. Snow-blind
fingertips navigating aspen bark stood no
chance against the blizzard; gravitropism
is lost on havoc.
You can find Mike out in the woods or at the local indie theater. His work has appeared in Ampersand and Building 45 Literary, as well as on Ampersand's Summer 2016 'Best of the Season' list.


Bookable Group Study Room AC 251 - 253A
Drop-in Group Study Room AC 255 - 258
Instructional Lab & Study Space AC 286A
Reading Room
Nook
Info Commons
Bike Desks
Wellness Space
Study Carrels
Washrooms
Elevator
Self-Checkout Machine
Popular Collection
Course Reserves & Tech Lending
Compact Storage (journals before 1998)
Book Stacks (JQ-Z)
Info Desk
Printing/Copying/Scanning
Specialty Equipment
Data Lab AC 260
Makerspace
Journal Stacks (1998-current)
Cookbook Collection
Academic Skills Collection
Games Collection
Accessibility Equipment
Digital Scholarship Unit AC 270
Chief Librarian AC 264
Administrative Assistant AC 263
Business Officer AC 265
User Services AC 280
User Services Coordinator AC 281
User Services & Collections AC 275
Digital Scholarship Coordinator AC 278
Collection Development Coordinator AC 276
Liaison Librarian Coordinator AC 288
Data Librarian AC 287
Data Librarian AC 287
Silent Study Room AC 338
Silent Study Room AC 313
Study Carrels
Washrooms
Elevator
Book Stacks (A-JN)


YG Hops On Remix To Sean Paul's "When It Comes To You"
YG hops over Sean Paul's latest.
by Milca P.When It Comes To You (Remix)
Sean Paul
Editor Rating: VERY HOTTTTT
User Rating: very hottttt - 88% (2)
After unleashing his "When It Comes To You" earlier this year, garnering much success overseas, Sean Paul has returned with a remix to the track recruiting YG for a verse on the updated new selection.
The track, produced by Supa Dups, sits in a comfortable hybrid that Paul describes as "poppy dancehall," and finds him flirting with the boundaries of his beloved genre.
"Whether it's Justin Bieber or the most hardcore Jamaican artists, if the backbeat has a dancehall pattern, to me, it's dancehall," he once told Billboard. "In most of my songs, I like to be on the cutting edge of what's (considered) pop and what's (considered) dancehall."


Super Cakes
Home
Cake Receipe
Lessons
Learn More
Contact Us
Cake Receipe
Cake Ingredients
Flour
Sugar
Eggs
How to Make Cake
Go and buy cake ingredients
Make the cake
Eat the cake


For Developers
Content Automation
Parameterised Automation Chains and Other Productivity Improvements on Automation
Users can design automation chains with parameters, saving a great number of chains whose structure is repeated with only a few changes in operations parameters.
The readability of an automation chain is improved with a better visibility of arguments values.
Finally, we provide a text mode for automation chain edition, that will facilitate some refactoring, and also make it easy to transfer to support a chain definition, or to build new documentation samples.
New Operations for Collections Management
We have added new operations dedicated to collections management. You can now use AddToCollection, RemoveFromCollection, CreateACollection and GetAllDocumentsFromCollection. Their name speak for themselves.
Implement a YAML Converter for Automation Chains
YAML representation of chains is now visible in the platform. Here is an example for the validateDocument chain:
CMIS
CMIS Rendition
Renditions from the RenditionService are now exposed as CMIS renditions of kind "nuxeo:rendition", with a name that's based on Rendition name. For example "nuxeo:rendition:pdf" for the "pdf" rendition.
A <renditionDefinition> must now define a <contentType> element if it wants to be exposed to CMIS.
CMIS Content Streams
Nuxeo CMIS content streams support HTTP cache and last modified headers.
Mail Folder
If used extensively, the Mailbox Folder could present some performance issues. We have added some new system properties to help fine tune the IMAP configuration.
- Force IMAP lib to do a Copy of the message (default to false): org.nuxeo.mail.imap.copy = false
- Debug info (default to false): org.nuxeo.mail.imap.debug = false
We have also added locking at 2 levels:
- Inside the scheduled listener: avoids re-entrency
- Inside the MailCoreHelper: avoids 2 threads to fetch the same mailbox


| apropos |
find what manual page is appropriate |
| cat |
print the whole file |
| cd |
change directory |
| chmod |
change permission modifiers |
| chown |
change ownership |
| cp |
copy a file or directory |
| echo |
print some arguments |
| env |
look at your environment |
| exit |
exit the shell |
| export |
export/set a new environment variable |
| find |
find files |
| grep |
find things inside files |
| hostname |
my computer's network name |
| less |
page through a file |
| ls |
list directory |
| man |
read a manual page |
| mkdir |
make directory |
| mv |
move a file or directory |
| popd |
pop directory |
| pushd |
push directory |
| pwd |
print working directory |
| rmdir |
remove directory |
| sudo |
beome super user root |
| xargs |
execute arguments |
| * |
wild card matching |