Wednesday 20 January 2016

Stoicism

https://en.wikipedia.org/wiki/Stoicism

You don't get frustrated because of events. You get frustrated because of your beliefs.

You don't get frustrated because of events. You get frustrated because of your beliefs.


http://www.businessinsider.com/the-secret-to-not-getting-frustrated-2016-1?utm_content=bufferbe588&utm_medium=social&utm_source=facebook.com&utm_campaign=buffer&IR=T


http://www.bakadesuyo.com/2014/09/be-more-successful/

Success Brings Happiness? No. Happiness Brings Success.

See Problems As Challenges, Not Threats
Twice As Much Work Means You Need Friends Twice As Much
Send A “Thank You” Email Every Morning

Monday 18 January 2016

Swagger Specification Importer for Paw

Swagger Specification Importer (Paw Extension)

1.Generate Swagger file from grape 

2. Install Swagger Specification Importer to Paw
3. Import Swagger Specification file into Paw.
Paw Extension to import Swagger Specification into Paw. (JSON/YAML supported




https://luckymarmot.com/paw/doc/Import_Swagger_Definitions

Saturday 9 January 2016

parsing text/ruby with javascript (opal)

Kubernetes

https://docs.google.com/presentation/d/1HYgyWNevPQHJJuJ2RZyzksK55s-nIEkeSK4RLbcgsYk/edit#slide=id.g54a23840c_0324

Concurrent Ruby

Modern concurrency tools for Ruby. Inspired by ErlangClojureScalaHaskellF#C#,Java, and classic concurrency patterns.
The design goals of this gem are:
  • Be an 'unopinionated' toolbox that provides useful utilities without debating which is better or why
  • Remain free of external gem dependencies
  • Stay true to the spirit of the languages providing inspiration
  • But implement in a way that makes sense for Ruby
  • Keep the semantics as idiomatic Ruby as possible
  • Support features that make sense in Ruby
  • Exclude features that don't make sense in Ruby
  • Be small, lean, and loosely coupled

https://github.com/ruby-concurrency/concurrent-ruby

Ruby Memory Model

https://docs.google.com/document/d/1pVzU8w_QF44YzUCCab990Q_WZOdhpKolCIHaiXG-sPw/edit#heading=h.gh0cw4u6nbi5


Ruby memory model


The Ruby memory model is a framework allowing to reason about programs in concurrent and parallel environment. It defines what variable writes can be observed by a particular variable read, which is essential to be able to determine if a program is correct. It is achieved by defining what subset of all possible program execution orders is allowed.


A memory model sources:
Concurrent behavior sources of Ruby implementations:
A similar document for MRI was not found. Key fact about MRI is GVL (Global VM lock) which ensures that only one thread can interpret a Ruby code at any given time. When the GVL is handed from one thread to another a mutex is released by first and acquired by the second thread implying that everything done by first thread is visible to second thread. See thread_pthread.c and thread_win32.c.

This memory model was created by: comparing MRI, JRuby, JRuby+Truffle, Rubinius; taking account limitations of the implementations or their platforms; inspiration drawn from other existing memory models (Java, C++11). This is not a formal model.