Blue Brain Project December 2, 2013Posted by anywhereinfo in Brain.
add a comment
I came across this interesting effort to create a brain model called Blue Brain Project.
The ultimate goal of the Blue Brain Project is to reverse engineer the mammalian brain. To achieve this goal the project has set itself four key objectives:
- Create a Brain Simulation Facility with the ability to build models of the healthy and diseased brain, at different scales, with different levels of detail in different species
- Demonstrate the feasibility and value of this strategy by creating and validating a biologically detailed model of the neocortical column in the somatosensory cortex of young rats
- Use this model to discover basic principles governing the structure and function of the brain
- Exploit these principles to create larger more detailed brain models, and to develop strategies to model the complete human brain
Rhizome effect December 2, 2013Posted by anywhereinfo in Networks.
add a comment
It seems like our daily Rhizome has spawned many theories across multiple fields such as
- Internet (also)
- Networks (my fav)
- Complexity theory
- Creative learning
- Learning Style
- Learning networks ( also)
- Classification (Tree Vs Rhizome)
- Social theory etc.
IMO, it can be summed into a concept where things are not hierarchical and specialism in more than one field is encouraged.
Rhizome VS. Tree:
- “Any point of a rhizome can be connected to anything other, and must be. This is very different from the tree or root, which plots a point, fixes an order” (7).
- “A rhizome may be broken, shattered at any given spot, but it will start up again on one of its old lines, or on new lines” (9).
- “Perhaps one of the most important characteristics of the rhizome is that it always has multiple entryways” (12).
- “Thought is not arborescent … Many people have a tree growing in their heads, but the brain itself is much more a grass than a tree” (15).
- “Arborescent systems are hierarchical systems with centers of significance and subjectification, central automata like organized memories. In corresponding models, an element only receives information from a higher unit, and only receives a subjective affection along pre-established paths” (16).
- “Such is the principle of roots-trees, or their outcome: the radicle solution, the structure of Power” (17)
- “The tree is filiation, but the rhizome is alliance, uniquely alliance. The tree imposes the verb ‘to be,’ but the fabric of the rhizome is the conjunction, ‘and … and … and …’ This conjunction carries enough force to shake and uproot the verb ‘to be’” (25).
• Unlike a tree …
- A rhizome’s “traits are not necessarily linked to traits of the same nature; it brings into play very different regimes of signs, and even nonsign states.”
- “It is composed not of units but of dimensions, or rather directions in motion. It has neither beginning nor end, but always a middle.”
- “Unlike a structure, which is defined by a set of points and positions, with binary relations between the points and bi-uni-vocal relationships between the positions, the rhizome is made only of lines.”
- “The rhizome is not the object of reproduction: neither external reproduction as image-tree nor internal reproduction as tree-structure.”
- “The rhizome is acentered, non-hierarchical, non-signifying system without a General and without an organizing memory or central automaton, defined solely by a circulation of states.”
Josh Kaufman December 1, 2013Posted by anywhereinfo in Brain.
add a comment
I accidentally came across his video in How to learn anything. Further exploration lead to his blog. He has given a speech at google. It looks like he is a kind of person who likes to experiment and learn from his experiments.
Although he has a technical background, he teaches marketing. His book sounds like something i would like to read.
SOA, REST and EDA November 9, 2013Posted by anywhereinfo in SOA.
Tags: SOA, REST
add a comment
1. Use both “Entities” and the process, responsibility and actions these entities can perform as “Resources” in REST. For example, in a banking domain, a customer can be a resource and the transactions it can perform such as intrabank-account transfers as resources. This allows a single URL, such as “www.domain.com/customer/123/intrabank-account-transfer” to encapsulate a transactional process. Imagine, if only customer was a resource, then a client application would involve retrieving the “from” account for customer, “to” account for customer, starting transaction, debiting one account, crediting another, committing transaction, none of which is supported by REST as opposed to simply calling one URL ”www.domain.com/customer/123/intrabank-account-transfer”
Disable Nagle in Low Latency High Frequency network applications February 10, 2012Posted by anywhereinfo in Linux, TCP.
Tags: nagle algorithm
add a comment
Most of the low latency, high frequency network applications that i work with, disable Nagle Algorithm. The reason is that “Nagle Algo”,”Delayed ACKs” and “Application ACKs” do not work together nicely.
The concept behind delayed ACKs is to bet, when receiving some data from the net, that the local application will send a reply very soon. So there’s no need to send an ACK immediately; the ACK can be piggybacked on the next data going the other way. If that doesn’t happen, after a 500ms delay, an ACK is sent anyway.
The concept behind the Nagle algorithm is that if the sender is doing very tiny writes (like single bytes, from Telnet), there’s no reason to have more than one unacknowledged packet outstanding on the connection. This prevents slow links from choking with huge numbers of outstanding tinygrams.
With both enabled, you begin to see a fixed latency as below.
Application A gives the first packet to TCP. TCP Sends it, because there is no outstanding packet.The packet size does not matter
Application A gives the second packet to TCP. Here 2 possibilities are
1. Packet Size = MSS :- TCP Sends Packet.
2. Packet Size < MSS :- Nagle prevents TCP from sending packet
If Application A continues to pump data, then once Packet Size >= MSS, TCP will send the packet.
If Application A expects an application level ACK before handing more data after the second packet, the second packet is queued.
Receiver does not acknowledge the first packet, due to delayed ACK.
Finally, Delayed ACK timer indicates timeout and the receiver sends an ACK after 500 ms.
So from this we can conclude that
1. As long as Application Acknowledgments don’t impose additional constraints
2. The sender always has pending data to send
3. Receives has not set un-usual delayed ACK Settings, which causes sender TCP to execute re-transmissions
4. Network behaves normally
Nagle should have no impact.
In low latecny, high frequency, network applications pt 2 is normally not an issue. Pt3 is also a rare case. Pt4 impacts network applications and it requires its own blog. Pt1, is typically the main issue.
Sooner or later when your code runs into the scenario where sender despite having data to send, will not hand any data to sender TCP because of Application level Receiver acknowledgment, and the Receiver is waiting on sender to send data before it can send an ACK, you will experience the full delay from Delayed ACK timeout settings.
How big is your byte? January 23, 2012Posted by anywhereinfo in C++, Memory.
Tags: addressable unit
add a comment
The size of the byte is hardware dependent and no standards exist that dictate it’s size. In C/C++ programming languages, byte is an “addressable unit of data storage large enough to hold any member of the basic character set of the execution environment” (3.6 of the C standard).
Here is an interesting C++ FAQ on Byte
This ambiguity is the main reason as to why IP Networks use “Octet” and not a “Byte” to describe their internal data such as IP Address.
Extract RPM without installing it January 23, 2012Posted by anywhereinfo in Linux, rpm.
add a comment
While doing C++ development on RHEL Platform, i came across the need to extract code out of custom RPM. A single liner solution is
rpm2cpio custom_code.rpm | cpio -idmv
At time of writing this post, both the tools (rpm2cpio and cpio) are available via yum install.
The above command will typically produce 2 types of files
You can extract the code in the point 2 by
tar -zxvf custom_code.tar.gz