Skip to main content

Posts

More Principles - Clean Architecture: A Craftsman's Guide to Software Structure and Design, First Edition

REP: Reuse/Release Equivalence Principle, the granule of reuse is the granule of release CCP: Common Closure Principle CRP: Common Reuse Principle, don't force to depend on things they don't need ADP: Acyclic Dependencies Principle, no cycles in the dependency graph SDP: Stable Dependencies Principle, depend in the direction of stability SAP: Stable Abstractions Principle, as abstract as stable

S.O.L.I.D

SRP: Single Responsibility Principle, a module should be responsible to one and only one actor OCP: Open-Closed Principle, a software artifact should be open for extension but closed for modification LSP: Liskov Substitution Principle, interchangeable parts adhere to a contract ISP: Interface Segregation Principle, avoid depending on things not use DIP: Dependency Inversion Principle, details should depend on policies

start the ethereum private net on windows

download/install geth from  https://github.com/ethereum/go-ethereum/wiki/Installation-instructions-for-Windows setup private net jason file under ~/.privether, an example of privategenesis.json {   "nonce": "0x00006d6f7264656e",   "difficulty": "0x000002",   "mixhash": "0x00000000000000000000000000000000000000647572616c65787365646c6578",   "coinbase": "0x0000000000000000000000000000000000000000",   "timestamp": "0x00",   "parentHash": "0x0000000000000000000000000000000000000000000000000000000000000000",   "extraData": "0x",   "gasLimit": "0x2FEFD8",   "config": {         "chainId": 15,         "homesteadBlock": 0,         "eip155Block": 0,         "eip158Block": 0   },   "alloc": {     "cd2a3d9f938e13cd947ec05abc7fe734df8dd826": { "b

install dc/os on centos 7

first install and start docker sudo yum -y install docker docker-registry [osboxes@osboxes ~]$ sudo systemctl enable docker.service [osboxes@osboxes ~]$ sudo systemctl start docker.service [osboxes@osboxes ~]$ sudo systemctl status docker.service install based on  https://dcos.io/docs/1.8/administration/installing/custom/gui/ if you meet permission issue, you need disable selinux [osboxes@osboxes ~]$ cat /etc/sysconfig/selinux # This file controls the state of SELinux on the system. # SELINUX= can take one of these three values: #     enforcing - SELinux security policy is enforced. #     permissive - SELinux prints warnings instead of enforcing. #     disabled - No SELinux policy is loaded. SELINUX=disabled # SELINUXTYPE= can take one of three two values: #     targeted - Targeted processes are protected, #     minimum - Modification of targeted policy. Only selected processes are protected. #     mls - Multi Level Security protection. SELIN

setup mesos 1.0.1 on centos 7

following the guide at  https://mesos.apache.org/gettingstarted/ if you met the following issue, need hack it to change the Version: 2012d to 2012 in file pytz-2012d-py2.7.egg-info pkg_resources.VersionConflict: (pytz 2012d (/usr/lib/python2.7/site-packages), Requirement.parse('pytz>=2010')) python examples runs ok with mesos 1.0.1 /home/osboxes/mesos/build/3rdparty/setuptools-20.9.0/pkg_resources/__init__.py:1268: UserWarning: /home/osboxes/.python-eggs is writable by group/others and vulnerable to attack when used with get_resource_filename. Consider a more secure location (set with .set_extraction_path or the PYTHON_EGG_CACHE environment variable).   warnings.warn(msg, UserWarning) I1031 02:04:19.299875 13734 sched.cpp:226] Version: 1.0.1 I1031 02:04:19.312309 13773 sched.cpp:330] New master detected at master@10.88.48.57:5050 I1031 02:04:19.313021 13773 sched.cpp:341] No credentials provided. Attempting to register without authentication I1031 02:04:19.3222

setup mesos 0.28.2 on centos 7

following the guide at  https://mesos.apache.org/gettingstarted/ , it seems mesos-slave.sh need creating folder with root permission to allow examples to run, and needs start with sudo otherwise the c++/java examples will fail. output from failed c++/java examples I1027 09:53:10.901875  6181 sched.cpp:222] Version: 0.28.2 I1027 09:53:10.935006  6190 sched.cpp:326] New master detected at master@10.88.48.57:5050 I1027 09:53:10.936367  6190 sched.cpp:336] No credentials provided. Attempting to register without authentication I1027 09:53:10.948501  6190 sched.cpp:703] Framework registered with 8cab08a7-fac7-440b-8933-0d329da29d7c-0001 Registered! ID = 8cab08a7-fac7-440b-8933-0d329da29d7c-0001 Received offer 8cab08a7-fac7-440b-8933-0d329da29d7c-O1 with cpus: 1.0 and mem: 6609.0 Launching task 0 using offer 8cab08a7-fac7-440b-8933-0d329da29d7c-O1 Status update: task 0 is in state TASK_FAILED Aborting because task 0 is in unexpected state TASK_FAILED with reason 'REASON_CONTA