发表文章目录
Chan SP, Chen G, Gong XG, Liu ZF, "Chemisorption of hydrogen molecules on carbon nanotubes under high pressure", Phy. Rev. Lett., accepted.
Chen G, Liu ZF, Gong XG, "Sturcture and its evolution of Ban (n=2~14) clusters", Eur. J. Physics D, accepted.
Shu DJ, Gong XG, " Curvature effect on surface diffusion: The nanotube", J CHEM PHYS 114 (24): 10922-10926 JUN 22 2001
Duan HM, Gong XG, Zheng QQ, et al., " Electronic structure and magnetic properties of Ni clusters", J APPL PHYS 89 (11): 7308-7310 Part 2 JUN 1 2001
Sun DY, Gong XG, Wang XQ, "Soft and hard shells in metallic nanocrystals - art. no. 193412", PHYS REV B 6319 (19): 3412-+ MAY 15 2001
Duan XM, Sun DY, Gong XG, " Hypermolecular dynamics simulations of monovacancy diffusion", COMP MATER SCI 20 (2): 151-156 FEB 2001
Gong XG, Kumar V, "Metallic coverings of calcium on C-60", CHEM PHYS LETT 334, 238-244 FEB 9 2001
X. G. Gong, D. Y. Sun and X. Q. Wang, “The shell structure of Al77”, Phys. Rev. B, 62, 15413(2000).
S.H. Wei, Z. Zeng, J.Q. You and X. G. Gong, “The atomic and electronic structure of Ti clusters”, J. Chem. Phys, 113, 11127(2000).
H. J. Quan and X. G. Gong , " Electronic structure of the cluster assembled solid Al12C(Si), Acta Physica Sinica, 9, 656(2000)
Y. Xiang, D. Y. Sun and X. G. Gong, " Generalized simulated annealing studies on Ni clusters",J. Phys. Chem., 104 2746(2000).
X. M. Duan X. G. Gong, "Deposition of small clusters on surface: A molecular dynamics simulation", Chineses Phys. Lett. 17, 416(2000).
Y. Xiang and X.G. Gong, " The efficiency of generalized simulated annealing",Phys. Rev. E, 61, (2000)
M. Duan and X. G. Gong, "Surface trapping of hyperthermal particles", Phys. Stat. Solidi B, 220, (2000)
D.Y. Sun, X. G. Gong, "Cluster on the fcc(111) surface: structure, stability and diffusion", Surf Sci, 42, 445 41(2000).
H. Wu, Q.Q. Zheng, X. G. Gong, "Electronic structure study of the magnetoresistance material CaCu3Mn4O12 by LSDA and LSDA+U", Phys. Rev. B, 61, 1223(2000).
Q. Sun, Q. Wang, K. Parlinski, J. Z. Yu, Y. Hashi, X.G. Gong, Y. Kawazoe First-principles studies on the intrinsic stability of the magic Fe13O8 , Phys. Rev. B, 61, 5781(2000).
W. Fan, X.G. Gong, and L. W. Lau, "Rolling: a diffusion mechanism for small clusters on a solid surface", Phys. Rev. B, 60 10727(1999).
D.J. Shu , D.Y. Sun , X. G. Gong, "A molecular-dynamics study of the anisotropic surface-melting properties of Al(110)" Surf Sci 441 206(1999).
X.G. Gong and J.W. Wilkins, "Hyper molecular dynamics with a local bias potential", Phys. Rev. B, 59, 54(1999).
Wu H, Zheng QQ, Gong XG "The electronic structure of CaCuO2 and SrCuO2 ", J PHYS-CONDENS MAT, 11 4637(1999)
D.Y. Sun, Y. Xiang and X.G. Gong, "Interatomic potential fitted for lead", Phil. Mag. A, 79 1953(1999).
W. Fan and Y.Z. He and X.G. Gong, "Molecular-dynamics study on the structural changes of grain boundary", Phil. Mag. A, 1321(1999).
D.Y. Sun, D.J. Shu and X.G. Gong, " Melting properties of low index surfaces of Lead", Solid State Commu., 108, 383(1998).
D.Y. Sun and X.G. Gong, "Structural properties and glass transition in Aln clusters", Phys. Rev. B, 57, 4730(1998).
S. Y. Wang, L. J. Zou, X.G. Gong and Q.Q. Zheng, "Ground state properies of a high-spin Mn12O12 molecule in an organic compound", J. App. Phys., 83, 7100(1998).
X.G. Gong, "Structure and stability of cluster-assembled solid Al12C(Si): A first-principles study", Phys. Rev. B, 56, 1091(1997).
X.G. Gong, D. Guenzburger and E. B. Saitovitch, " Structure and dynamic properties of neutral and ionized SiH5 and Si2H3, Chem. Phys. Lett., 275, 392(1997).
Xiang D. Y. Sun, W. Fan, X. G. Gong "Generalized simulated annealing and its application to Thmoson model", Phy. Lett. A, 233, 216(1997).
Zou, Q.Q. Zheng, X.G. Gong, "Local magnetism in nanoscale metallic grains", Chinese Phys. Lett., 14, 383(1997).
D.Y. Sun, X. G. Gong, " The Structure and stability of cluster on Surface", J. Physics: Condensed matter physics, 9, 10555(1997).
Sun, X.G. Gong, Q.Q. Zheng and G.H. Wang, " The magnetic properties of 4d impurities in Agn clusters" , Solid State Communication, 97, 429(1996).
Q. Sun, X.G. Gong, Q.Q. Zheng and G.H. Wang, " The structures and magnetic properties of small of Fe3TMB clusters", J. Physics: Condensed matter physics, 8, 1805(1996).
Q. Sun, X.G. Gong, Q.Q. Zheng and G.H. Wang, " First-principle studies for the magnetic properties of 4d impurities in small Cun clusters", Phys. Lett. A, 209, 249(1996).
Q. Sun, X.G. Gong, Q.Q. Zheng, D.Y Sun and G.H Wang," The local magnetic properties and electronic structures of 3d and 4d impurities in Cu clusters", Phys. Rev. B, 54， 10896(1996).
Q. Sun, X. G. Gong, Q.Q. Zheng, G.H. Wang, " The formation of local magnetism in clusters", Science in China (series A), 26, 1032 (1996).
D.Y. Sun and X.G. Gong, " Molecular dynamics simulation on the structure and stability of cluster dimer", Phys. Rev. B, 54 17051(1996).
Zou Liang-Jian, X. G. Gong, Zheng Qing-Qi, C.Y.Pan, " Giant magnetoresistance in ferromagnetically semiconductive thin films and other compounds ", J. Appl. Phys., 79, 5162(1996).
Q. Sun, X.G. Gong, Q. Q. Zheng, "The first-principle study of the structure and magnetic properties of Fe-B clusters", Acta Physica Sinica, 45, 1146(1996).
X.G. Gong, " On the stability of nano-sized silicon cluster", Phys. Rev. B, 52, 14677(1995).
X.G. Gong and Q.Q.Zheng, " The electronic structure and stability of C60@Si60 cluster", Phys. Rev. B 52, 4756(1995).
X.G. Gong, Q.Q. Zheng, He Yizhen, "Structure and dynamical properties of large silicon clusters: A empirical potential study", J. Physics: Condensed Matter. 7, 577(1995).
X.G. Gong, Q.Q. Zheng, " Structure and magnetic properties of small iron clusters", J. Physics: Condensed Matter. 7, 2421(1995).
X.G. Gong, Q.Q. Zheng, " ab-initio Molecular-Dynamices study on Ga13 cluster", Solid State Commu. 94, 735(1995).
X.G. Gong, " Structure and properties of liquid gallium at high pressure", Acta Physica Silica 44, 885(1995).
X.G. Gong and V.Kumar, "Electronic structure and relative stability of icosahedral clusters in aluminum-transition metal quasicrystal and approximates", Quasicrystals, Proc. Int. Conf., 5th (1995), 484-487. Editor(s): Janot, Christian; Mosseri, Remy. Publisher: World Scientific, Singapore.
Zou Liang-Jian, X.G. Gong and Q.Q. Zheng, " The Size effect of the local magnetic moment in small systems", IEEE, Trans. on Magn., 31, 4151(1995).
X.G. Gong and V. Kumar, "Electronic structure and relative stability of icosahedral superatoms in Al-transition-metal alloys", Phys. Rev. B 50, 17701(1994).
G.W. Zhang, X.G. Gong, Q.Q. Zheng and J.G. Zhao " A cluster model studies on the electronic and magnetic properties of LaCo13 and La(Fex Al1-x)13 alloys", J. Appl. Phys. 76, 7037(1994).
X.G. Gong, Vijay Kumar, "Enhanced of stability: A case study of Al12X, X=B, Al, Ga, C, Si, Ge, Ti, As", Phys. Rev. Letts. 70, 2078(1993).
X.G. Gong, "Empirical-potential studies on the structural properties of small silicon clusters", Phys. Rev. B, 47 2329(1993).
X.G. Gong, G. Chirarotti, M. Parrinello. E. Tosatti, "Coexistence of monatmoic and diatomic molecular fluid character in Liquid Gallium" , Europhysics Lett. 21, 469(1993).
X.G. Gong, Q.Q. Zheng, He Yizhen, "Electronic structure of magnesium clusters". Phys. Lett. A, 181, 459(1993).
X.G. Gong, W. Pan, Q.Q. Zheng, " Hole distribution in YBCO superconductor: ionic model studies" Physica Status Solidi, 175, 197(1993).
Pan Wei, X.G. Gong and Q.Q. Zheng, " A theoretical study of Si chemisorption on Ru(001) surface", Physica Status Solidi 180, 127(1993).
X.G. Gong, "Electronic structure of solid gallium", Acta Physica Sinica, 42, No.4, 617(1993).
X.G. Gong, Q.Q. Zheng, " ab initio molecular-dynamics studies on the gallium clusters", Acta Physica Sinica 42, 244(1993).
X.G. Gong, W. Pan, Q.Q. Zheng, " Pressure induced hole redistribution in YBCO", Chinese Journal of Low temperature Physics 15, 419(1993).
X.G. Gong, E. Tosatti, " Structures of small gallium clusters", Phys. Lett. A 166, 369(1992).
X.G. Gong Q.Q. Zheng, He Yi Zhen, " Molecular-dynamics study on small silicon clusters", Chinese Journal of Computational Physics, 9, 721(1992).
X.G. Gong, Q.Q. Zheng, W. Pan, " Calculation of symmetry coefficients in complex cluster", Chinese Journal of Computational Physics 9, 512(1992).
X.G. Gong, G. Chirarotti, M. Parrinello. E. Tosatti, "α-Ga: Ametallic molecular crystal", Phys. Rev. B(Rapid Communication) 44, 14277(1991).
X.G Gong, Q.Q. Zheng, "The electronic structure of the surface of the superconductor YBa2Cu3O7", J. Phys: Condens. Matter, 1, 593(1989).
X.G. Gong, Z. Zeng, Q.Q. Zheng, "Electronic structure of light impurities in α-Fe and V", J. Phys: Condens. Matter, 1, 7577(1989).
X.G. Gong, Q.Q. Zheng, R.S. Han, " A theoretical study of electronic structure for twin stacking faults in silicon", Solid State Commu, 62, 65(1987).
X.G. Gong, Z. Zeng and Q.Q. Zheng, "Self-consistent cluster calculation of electronic structure and energy for hydrogen and carbon impurities in bcc iron", Statistical Physics and Condensed Matter Theory, p.73, ed: Xie Xide, World scientific, 1986.
D.Y. Sun and X.G. Gong, " Can the cluster liquid exist?", Progress in liquid Physics}, ed.: K.Q. Lu and X. W. Zou, p. 29-33
D.Y. Sun and X.G. Gong, " Molecular Dynamics on the liquid Silicon",Progress in liquid Physics, ed.: K.Q. Lu and X. W. Zou, p. 33-38.


The [PageTitle] attribute can only be attached to a class that defines a page to specify the page title. When your page is displayed in a browser, the title will be displayed on the browser tab.
If you want your page title to be dynamic, because your page handles multiple Urls, then you should inherit from the built-in Page class and set the [PageTitle] property in the constructor as illustrated below:
[IsPage()] [Description("This is an example of how to add page with a dynamic page title
")] internal class DynamicTitlePage : Page { public DynamicTitlePage(IPageDependenciesFactory dependencies) : base(dependencies) { TitleFunc = context => "Page at " + DateTime.Now; } }
The [PageTitle()] attribute has the following properties you can set.
Defines the title for the page. To calculate the page title dynamically, see the Page element documentation.


Over 175 milion proffessionals use LinkedIn to exchange information, ideas and opportunities
- Stay informed about your contacts and industry
- Find the people & knowledge you need to achieve your goals
- Control your professional identity online
Join LinkedIn Today
Sign Up
Already on LinkedIn? Sign In


Preface
This is a cheat sheet relating ruby syntax to JavaScript syntax
What is a prototype?
A prototype in Javascript is essentially a Class in Ruby. All objects in Javascript have prototypes. It provides a way to access methods / properties saved in objects that previously defined.
Defining prototypes (Defining Classes)
JavaScript
function Greeting() {
this.message = "Greetings!";
}
Ruby
class Greeting
attr_accessor :message
def initialize
@message = "Greetings!"
end
end
Creating An Object
JavaScript
var hello = new Greeting();
Ruby
puts hello.message
Changing properties(attributes)
JavaScript
hello.message = "Hello!";
Ruby
hello.message = "Hello!"
Adding properties(attributes) to the protoype (class)
JavaScript
Greeting.prototype.alternative = "Hi!"
Ruby
There isn't a practical way to add attributes
to a class after it has been defined.


Rapper Brisco Admits He Tried To Sell $150,000 In Fake Money To Undercover Cop
by AllHipHop StaffBrisco was once a promising rapper coming out of Florida, but now he's heading to prison for being involved in a crime ring.
(AllHipHop News) Florida rapper Brisco will be cooling his heels behind bars for the next few years, after getting busted with hundreds-of-thousands of dollars in fake cash.
Brisco, real name British Mitchell, pleaded guilty to charges related to his attempt to sell counterfeit money to an undercover agent back in 2016.
The Feds caught the rapper in a string after he tried to sell $150,000 in counterfeit money.
Brisco was also involved in a credit-card/identity theft ring, which operated in Miami and specialized in selling stoves and refrigerators, which were then sold to various contractors at steep discounts.
The rapper also led Broward County cops on a high-speed chase in August of 2006 when the cops were closing in on him.
Authorities finally caught up with Brisco when they learned he would be making an appearance at a Hallandale Beach strip club.
According to reports, Brisco is facing at least four years in prison when he is sentenced for his felonious schemes this May.


Isolation
The voltage and current sensors detailed above give us voltage outputs that are in a safe range but there is always danger with things that are connected directly to the mains wiring from the effect of power surges, shorts, miswiring or other unexpected effects, without isolation a surge could travel through to the computer causing some severe damage!
So we protect the electronics, computer and ourselves from the dangers of mains electricity with some clever chips called optoisolators. I have used the Avago Technologies HCPL-7520 linear optoisolator chips recommended by the Cornell PowerBox guys. There are two of these one for the current signal and one for the voltage signal:
An optoisolator transfers a signal optically from one electronic circuit to another. The circuits are therefore isolated electricaly. The HCPL-7520 allows us to isolate the sensor electronics from the Arduino electronics, but it also does a host of other useful things.
The next stage in the circuit is the Ardunio microcontroller board. The main requirment that is of concern here is that it requires an input signal voltage of between 0 and 5V. We want to use this whole range for reasons that I will outline below, we want our maximum voltage and current values to correspond to 5V.
Our input voltage to the HCPL-7520 alternates between max values of -0.256 and +0.256 Volts, the Ardunio detailed below however requires a voltage that is always positive. A useful feature of the HCPL-7520 is that it allows us to bias the output signal of the chip. This bias value is determined by Vref / 2, our Vref is 5V and therefore we will be biasing the output voltage by 2.5V. 2.5V is now effectively the 0V of the input voltage. The HCPL-7520 also allows us to amplify the input signal, this is called gain and is given by the Vref / 0.512. With the biasing and amplification our output signal will now be 0V when the input signal is -0.256V and 5V when our input signal is +0.256V.
Important: The HCPL-7520 opto isolators require two separate power supplies one for the HIGH side (the side connected to the mains wiring) and the other for the LOW side (the Arduino side). I used the Arduino for power on the LOW side and a 5V DC adaptor I had spare on the HIGH side. Note that both grounds are also separate.
The picture above doesnt make this very clear, have a look on the circuit schematic to see it more clearly.
Datasheet from farnell: HCPL-7520


--- layout: default title: Home ---
👋 Hustlers,
After spending 30+ years combined in the industry and working for multiple startups in different roles,
Vishwesh
and
Akshay decided to come together and start Sifar Ventures. Why are we calling it Sifar? Read it here
At Sifar Ventures, we are on a mission to help startup founders, hustlers, from day 0 (Sifar). We want to become part of their journey right from discovery, validation, technology choices, building initial MVP, raising funds, hiring the right people to help them find the right product-market fit, and scaling further. We would get involved at every stage with the founders, stay hands-on, and if we cannot do it ourselves, we will make the right connections to enable founders to find the answers.
At Sifar Ventures, our goal is to practice thematic early-stage investing with a focus on solving global problems and providing highly active, hands-on support to founders. We have been investing in startups in an individual capacity and via various syndicates on angel.co. And now, we are setting on a journey to build our team of like-minded investors. We are not just focusing on the “deal-flow” but concentrating on the domain, problem, technology, and, most notably, people/founders. So we would like to invest in what we understand and believe in: SaaS, fintech, edtech, deeptech, consumer tech, e-commerce, m-commerce, fitness, electric vehicles, etc. We are okay to miss out on some significant opportunities in sectors which we are not experts in like FMCG, crypto, etc. Our goal is to add “value” beyond investment. Value for us means Empathy to understand founders and listen to them and be present for them. Value for us means help founders fill the knowledge gaps. Value for us means making those right connections. Value for us means building trust, and trust means quality delivered consistently. Here is a peak in our current portfolio.
In our career and life, we have always invested in people more than products. We are what we are because of
the
people who trusted us, worked with us, and invested in us. Industry leaders like Satish Dharmaraj (investor in
Acompli, Astro), Kevin Henrikson (Founder Acompli),
As lead investors of Sifar Ventures, we promise to always work from the realm of trust and integrity.


Community
Experiential Education
I believe in experiential education and fostering an appreciation for the natural world in and outside of the classroom. I help organize and lead wilderness trips for disadvantaged children in Sacramento through Inner City Outings. I used to guide rock climbing, snow camping, and backpacking trips for college students and the general public through Davis Outdoor Adventures and Shasta Mountain Guides. I was introduced to outdoor leadership and education through Princeton's orientation program, Outdoor Action, where I lead trips and trained leaders in both technical skills and group dynamics (see my Outdoor Guide C.V.). See my Teaching page for more on my teaching inside the classroom.
Nonprofit Leadership
I believe in local community engagement and outreach. Or maybe I just like meetings too much. From 2008-2012 I volunteered on the board of directors of the nonprofit Solar Community Housing Association (SCHA), which is dedicated to sustainable cooperative living. During this time I helped the all-volunteer nonprofit bid for and execute the renovation of two historic Davis homes into a LEED certified cooperative providing affordable housing. The effort involved over 200 volunteers and student interns and over $500,000 investment over two years. In the following year we took over management of the on campus Domes cooperative through an agreement with UC Davis, performing the estimated $1 million in renovations through a community build involving nearly 500 volunteers over 4 days and a $30,000 fund raising campaign. I have also served as treasurer, webmaster, and a community mediator, and have attended and run workshops on conflict resolution, consensus decision making and meeting facilitation.
Open Science
I believe more open science makes large-scale, collaborative efforts possible, increases the chances that results are reproducible and improves the access of educators, policy-makers and taxpayers to the products of publicly funded research. I am a founding member of the Davis Open Science group, which promotes awareness, tools, and community around open science issues. I strive to make my research process transparent and reproducible through the practice of Open Notebook Science I am particularly interested in the role of technology in hampering or facilitating these goals. In this spirit, I am a founding member of the rOpenSci Project, a software developer collective with the goals of providing tools and building community to promote open science by providing programmatic access to scientific databases.


Visualizing the Differences In L1-norm and L2-norm Loss Function
In an earlier post about the differences between L1 and L2 as loss function and regularization, one of the graph about L1-norm and L2-norm loss function is rather confusing to many readers, as I have seen from the comments. Reviewing it after a year, it wasn’t very clear as well, so today I generated some data and run a model over them. Here is how it looks like:
The base model here used is a GradientBoostingRegressor, which can take in L1-norm and L2-norm loss functions. The green and red lines represent a model using L1-norm and L2-norm loss function respectively. A solid line represents the fitted model trained also with the outlier point (orange), and the dotted line represents the fitted model trained without the outlier point (orange).
I gradually move the outlier point from left to right, which it will be less “outlier” in the middle and more “outlier” at the left and right side. When the outlier point is less “outlier” (in the middle), L2-norm has less changes while the fitted line using L1-norm has more changes.
In the case of a more “outlier” point (upper left, lower right, where points are to the far left and far right), both norms still have big change, but again the L1-norm has more changes in general.
By visualizing data, we can get a better idea what stability is with respective to these two loss functions.
The code that generates this plot can be found here, and online iPython Notebook link here.


Python - The stranger things
Edit: This is also going to be a live post and a work-in-progress, updated whenever I run into / remember things I find strange about the python programming language.
Although I consider myself an expert at the python programming language, I wasn’t one of those people who started writing code while still in the crib. In fact, I started programming while in university. I was taught the C programming language to start. Thinking back, the best analogy I can come up with is one about ‘being thrown in the deep end of the pool’.
Learning Python changed all that. I taught myself Python after I graduated college. Python was a revelation. Coding programs became a breeze, there is a distinct lack of boilerplate code, with the finished product reading like pseudocode. Easy to debug, with a rich suite of libraries that make you feel like you have superpowers.  I scrape webpages with urllib and requests, rename and rearrange files with shutil and os.
Now, after many years of programming, I find some things strange with the language. What follows is a list of those stranger things.
1. The Strange Case of the Hanging Comma
Here’s how you define a tuple in python, by wrapping stuff in round brackets () . Let’s call the tuple t
>>> t = (1,2,3)
>>> print(f"t = {t}; Type of t = {type(t)}")
# t = 1; Type of t = <class 'int'>
Let’s put a single number inside the brackets to make a tuple
>>> t = (1)
>>> print(f"t = {t}; Type of t = {type(t)}")
# t = 1; Type of t = <class 'int'>
Huh.? Now t
is an int, instead of a tuple.
Let’s add a hanging comma after the single number
>>> t = (1,)
>>> print(f"t = {t}; Type of t = {type(t)}")
# t = 1; Type of t = <class 'tuple'>
So, adding a comma after the single number changes it back into a tuple. Strange.
Edit: For a more polished list of strange python, check this out


Module zklua
Lua binding of Apache Zookeeper.
Functions
| wather_fn (zh, type, state, path, watcherctx) | signature of a watcher function. |
| void_completion (rc, data) | signature of a void completion function. |
| stat_completion (rc, stat, data) | signature of a stat completion function. |
| data_completion (rc, value, stat, data) | signature of a data completion function. |
| strings_completion (rc, strings, data) | signature of a strings completion function. |
| strings_stat_completion (rc, strings, stat, data) | signature of a strings and stat completion function. |
| string_completion (rc, value, data) | signature of a string completion function. |
| acl_completion (rc, acl, stat, data) | signature of a ACL completion function. |
| init (host, watcher_fn, recv_timeout, clientid, context, flags) | create a zookeeper handle. |
| close (zh) | close the zookeeper handle. |
| client_id (zh) | return the client session id. |
| recv_timeout (zh) | return the timeout for this session. |
| get_context (zh) | return the context for this handle. |
| set_context (zh, context) | set the context for this handle. |
| set_watcher (zh, newfn) | set a watcher function. |
| get_connected_host (zh) | return the socket address. |
| adelete (zh, path, version, void_completion, data) | delete a node in zookeeper. |
| aexists (zh, path, watch, stat_completion, data) | checks the existence of a node in zookeeper. |
| awexists (zh, path, watcher_fn, watcherctx, stat_completion, data) | checks the existence of a node in zookeeper. |
| aget (zh, path, watch, data_completion, data) | gets the data associated with a node. |
| awget (zh, path, watcher_fn, watcherctx, data_completion, data) | gets the data associated with a node. |
| aset (zh, path, buffer, version, stat_completion, data) | sets the data associated with a node. |
| aget_children (zh, path, watch, strings_completion, data) | lists the children of a node. |
| awget_children (zh, path, watcher_fn, watcherctx, strings_completion, data) | lists the children of a node. |
| awget_children2 (zh, path, watcher_fn, watcherctx, strings_stat_completion, data) | lists the children of a node, and get the parent stat. |
| async (zh, path, string_completion, data) | Flush leader channel. |
| aget_acl (zh, path, acl_completion, data) | gets the acl associated with a node. |
| aset_acl (zh, path, version, acl, void_completion, data) | sets the acl associated with a node. |
| zerror (c) | return an error string. |
| add_auth (zh, scheme, cert, void_completion, data) | specify application credentials. |
| is_unrecoverable (zh) | checks if the current zookeeper connection state can't be recovered. |
| set_debug_level (loglevel) | sets the debugging level for the library. |
| set_log_stream (stream) | sets the stream to be used by the library for logging
The zookeeper library uses stderr as its default log stream. |
| deterministic_conn_order (yesorno) | enable/disable quorum endpoint order randomization. |
| create (zh, path, acl, flags) | create a node synchronously. |
| delete (zh, path, version) | delete a node in zookeeper synchronously. |
| exists (zh, path, watch) | checks the existence of a node in zookeeper synchronously. |
| wexists (zh, path, watcher_fn, watcherctx) | checks the existence of a node in zookeeper synchronously. |
| get (zh, path, watch) | gets the data associated with a node synchronously. |
| wget (zh, path, watcher_fn, watcherctx) | gets the data associated with a node synchronously. |
| set (zh, path, buffer, version) | sets the data associated with a node. |
| set2 (zh, path, buffer, buflen, version) | sets the data associated with a node. |
| get_children (zh, path, watch, strings) | lists the children of a node synchronously. |
| wget_children (zh, path, watcher_fn, watcherctx) | lists the children of a node synchronously. |
| get_children2 (zh, path, watch) | lists the children of a node and get its stat synchronously. |
| wget_children2 (zh, path, watcher_fn, watcherctx) | lists the children of a node and get its stat synchronously. |
| get_acl (zh, path) | gets the acl associated with a node synchronously. |
| set_acl (zh, path, version, acl) | sets the acl associated with a node synchronously. |
Functions
- wather_fn (zh, type, state, path, watcherctx)
-
signature of a watcher function.
There are two ways to receive watch notifications: legacy and watcher object. The legacy style, an application wishing to receive events from ZooKeeper must first implement a function with this signature and pass a pointer to the function to init.
Next, the application sets a watch by calling one of the getter API that accept the watch integer flag (for example, aexists, get, etc).
The watcher object style uses an instance of a "watcher object" which in the C world is represented by a pair: a pointer to a function implementing this signature and a pointer to watcher context -- handback user-specific data. When a watch is triggered this function will be called along with the watcher context. An application wishing to use this style must use the getter API functions with the "w" prefix in their names ( for example, awexists, wget, etc).
Parameters:
- zh zookeeper handle.
- type event type. This is one of the *_EVENT constants.
- state connection state. The state value will be one of the *_STATE constants.
- path znode path for which the watcher is triggered. NULL if the event type is ZOOSESSIONEVENT.
- watcherctx watcher context.
- void_completion (rc, data)
-
signature of a void completion function.
This method will be invoked at the end of a asynchronous call and also as a result of connection loss or timeout.
Parameters:
- rc the error code of the call. Connection loss/timeout triggers the completion with one of the following error codes: ZCONNECTIONLOSS -- lost connection to the server ZOPERATIONTIMEOUT -- connection timed out Data related events trigger the completion with error codes listed the Exceptions section of the documentation of the function that initiated the call. (Zero indicates call was successful.)
- data the pointer that was passed by the caller when the function that this completion corresponds to was invoked. The programmer is responsible for any memory freeing associated with the data pointer.
- stat_completion (rc, stat, data)
-
signature of a stat completion function.
This method will be invoked at the end of a asynchronous call and also as a result of connection loss or timeout.
Parameters:
- rc the error code of the call. Connection loss/timeout triggers the completion with one of the following error codes: ZCONNECTIONLOSS -- lost connection to the server ZOPERATIONTIMEOUT -- connection timed out Data related events trigger the completion with error codes listed the Exceptions section of the documentation of the function that initiated the call. (Zero indicates call was successful.)
- stat a pointer to the stat information for the node involved in this function. If a non zero error code is returned, the content of stat is undefined. The programmer is NOT responsible for freeing stat.
- data the pointer that was passed by the caller when the function that this completion corresponds to was invoked. The programmer is responsible for any memory freeing associated with the data pointer.
- data_completion (rc, value, stat, data)
-
signature of a data completion function.
This method will be invoked at the end of a asynchronous call and also as a result of connection loss or timeout.
Parameters:
- rc the error code of the call. Connection loss/timeout triggers the completion with one of the following error codes: ZCONNECTIONLOSS -- lost connection to the server ZOPERATIONTIMEOUT -- connection timed out Data related events trigger the completion with error codes listed the Exceptions section of the documentation of the function that initiated the call. (Zero indicates call was successful.)
- value the value of the information returned by the asynchronous call. If a non zero error code is returned, the content of value is undefined. The programmer is NOT responsible for freeing value.
- stat a pointer to the stat information for the node involved in this function. If a non zero error code is returned, the content of stat is undefined. The programmer is NOT responsible for freeing stat.
- data the pointer that was passed by the caller when the function that this completion corresponds to was invoked. The programmer is responsible for any memory freeing associated with the data pointer.
- strings_completion (rc, strings, data)
-
signature of a strings completion function.
This method will be invoked at the end of a asynchronous call and also as a result of connection loss or timeout.
Parameters:
- rc the error code of the call. Connection loss/timeout triggers the completion with one of the following error codes: ZCONNECTIONLOSS -- lost connection to the server ZOPERATIONTIMEOUT -- connection timed out Data related events trigger the completion with error codes listed the Exceptions section of the documentation of the function that initiated the call. (Zero indicates call was successful.)
- strings a pointer to the structure containng the list of strings of the names of the children of a node. If a non zero error code is returned, the content of strings is undefined. The programmer is NOT responsible for freeing strings.
- data the pointer that was passed by the caller when the function that this completion corresponds to was invoked. The programmer is responsible for any memory freeing associated with the data pointer.
- strings_stat_completion (rc, strings, stat, data)
-
signature of a strings and stat completion function.
This method will be invoked at the end of a asynchronous call and also as a result of connection loss or timeout.
Parameters:
- rc the error code of the call. Connection loss/timeout triggers the completion with one of the following error codes: ZCONNECTIONLOSS -- lost connection to the server ZOPERATIONTIMEOUT -- connection timed out Data related events trigger the completion with error codes listed the Exceptions section of the documentation of the function that initiated the call. (Zero indicates call was successful.)
- strings a pointer to the structure containng the list of strings of the names of the children of a node. If a non zero error code is returned, the content of strings is undefined. The programmer is NOT responsible for freeing strings.
- stat a pointer to the stat information for the node involved in this function. If a non zero error code is returned, the content of stat is undefined. The programmer is NOT responsible for freeing stat.
- data the pointer that was passed by the caller when the function that this completion corresponds to was invoked. The programmer is responsible for any memory freeing associated with the data pointer.
- string_completion (rc, value, data)
-
signature of a string completion function.
This method will be invoked at the end of a asynchronous call and also as a result of connection loss or timeout.
Parameters:
- rc the error code of the call. Connection loss/timeout triggers the completion with one of the following error codes: ZCONNECTIONLOSS -- lost connection to the server ZOPERATIONTIMEOUT -- connection timed out Data related events trigger the completion with error codes listed the Exceptions section of the documentation of the function that initiated the call. (Zero indicates call was successful.)
- value the value of the string returned.
- data the pointer that was passed by the caller when the function that this completion corresponds to was invoked. The programmer is responsible for any memory freeing associated with the data pointer.
- acl_completion (rc, acl, stat, data)
-
signature of a ACL completion function.
This method will be invoked at the end of a asynchronous call and also as a result of connection loss or timeout.
Parameters:
- rc the error code of the call. Connection loss/timeout triggers the completion with one of the following error codes: ZCONNECTIONLOSS -- lost connection to the server ZOPERATIONTIMEOUT -- connection timed out Data related events trigger the completion with error codes listed the Exceptions section of the documentation of the function that initiated the call. (Zero indicates call was successful.)
- acl a pointer to the structure containng the ACL of a node. If a non zero error code is returned, the content of strings is undefined. The programmer is NOT responsible for freeing acl.
- stat a pointer to the stat information for the node involved in this function. If a non zero error code is returned, the content of stat is undefined. The programmer is NOT responsible for freeing stat.
- data the pointer that was passed by the caller when the function that this completion corresponds to was invoked. The programmer is responsible for any memory freeing associated with the data pointer.
- init (host, watcher_fn, recv_timeout, clientid, context, flags)
-
create a zookeeper handle.
The handle is used to communicate with zookeeper.
This method creates a new handle and a zookeeper session that corresponds
to that handle. Session establishment is asynchronous, meaning that the
session should not be considered established until (and unless) an
event of state ZOOCONNECTEDSTATE is received.
Parameters:
- host comma separated host:port pairs, each corresponding to a zk server. e.g. "<IP_ADDRESS>:3000,<IP_ADDRESS>:3001,<IP_ADDRESS>:3002".
- watcher_fn the global watcher callback function. When notifications are triggered this function will be invoked.
- recv_timeout the recv timeout.
- clientid the id of a previously established session that this client will be reconnecting to. Pass 0 if not reconnecting to a previous session. Clients can access the session id of an established, valid, connection by calling clientid. If the session corresponding to the specified clientid has expired, or if the clientid is invalid for any reason, the returned zhandlet will be invalid -- the zhandlet state will indicate the reason for failure (typically ZOOEXPIREDSESSIONSTATE).
- context the handback object that will be associated with this instance of zhandlet. Application can access it (for example, in the watcher callback) using getcontext. The object is not used by zookeeper internally and can be null.
- flags reserved for future use. Should be set to zero.
Returns:
-
a pointer to the opaque zhandle structure. If it fails to create a new zhandle the function returns NULL and the errno variable indicates the reason.
- close (zh)
-
close the zookeeper handle.
After this call, the client session will no longer be valid. The function will flush any outstanding send requests before return. As a result it may block.
This method should only be called only once on a zookeeper handle. Calling twice will cause undefined (and probably undesirable behavior). Calling any other zookeeper method after calling close is undefined behaviour and should be avoided.
Parameters:
- zh the zookeeper handle obtained by a call to init
Returns:
-
a result code, regardless of the error code returned, the zhandle will be destroyed and all resources freed.
ZOK - success ZBADARGUMENTS - invalid input parameters ZMARSHALLINGERROR - failed to marshall a request; possibly, out of memory. ZOPERATIONTIMEOUT - failed to flush the buffers within the specified timeout. ZCONNECTIONLOSS - a network error occured while attempting to send request to server. ZSYSTEMERROR -- a system (OS) error occured; it's worth checking errno to get details.
- client_id (zh)
-
return the client session id.
only valid if the connections is currently connected (ie. last watcher state is ZOOCONNECTEDSTATE).
Parameters:
- zh
- recv_timeout (zh)
-
return the timeout for this session.
only valid if the connections is currently connected (ie. last watcher state is ZOOCONNECTEDSTATE).
This value may change after a server re-connect.
Parameters:
- zh
- get_context (zh)
-
return the context for this handle.
Parameters:
- zh
- set_context (zh, context)
-
set the context for this handle.
Parameters:
- zh
- context
- set_watcher (zh, newfn)
-
set a watcher function.
Parameters:
- zh
- newfn
Returns:
-
previous watcher function.
- get_connected_host (zh)
-
return the socket address.
only valid if the current connection is alive.
Parameters:
- zh
Returns:
-
socket address of the connected host or NULL on failure, only valid if the connection is current connected.
- adelete (zh, path, version, void_completion, data)
-
delete a node in zookeeper.
Parameters:
- zh the zookeeper handle obtained by a call to init
- path the name of the node. Expressed as a file name with slashes separating ancestors of the node.
- version the expected version of the node. The function will fail if the actual version of the node does not match the expected version. If -1 is used the version check will not take place.
- void_completion the routine to invoke when the request completes. The completion will be triggered with one of the following codes passed in as the rc argument: ZOK operation completed successfully ZNONODE the node does not exist. ZNOAUTH the client does not have permission. ZBADVERSION expected version does not match actual version. ZNOTEMPTY children are present; node cannot be deleted.
- data the data that will be passed to the completion routine when the function completes.
Returns:
-
ZOK on success or one of the following errcodes on failure:
ZBADARGUMENTS - invalid input parameters
ZINVALIDSTATE - zhandle state is either ZOOSESSIONEXPIREDSTATE or ZOOAUTHFAILEDSTATE
ZMARSHALLINGERROR - failed to marshall a request; possibly, out of memory
- aexists (zh, path, watch, stat_completion, data)
-
checks the existence of a node in zookeeper.
Parameters:
- zh the zookeeper handle obtained by a call to init
- path the name of the node. Expressed as a file name with slashes separating ancestors of the node.
- watch if nonzero, a watch will be set at the server to notify the client if the node changes. The watch will be set even if the node does not exist. This allows clients to watch for nodes to appear.
- stat_completion the routine to invoke when the request completes. The completion will be triggered with one of the following codes passed in as the rc argument: ZOK operation completed successfully ZNONODE the node does not exist. ZNOAUTH the client does not have permission.
- data the data that will be passed to the completion routine when the function completes.
Returns:
-
ZOK on success or one of the following errcodes on failure:
ZBADARGUMENTS - invalid input parameters
ZINVALIDSTATE - zhandle state is either ZOOSESSIONEXPIREDSTATE or ZOOAUTHFAILEDSTATE
ZMARSHALLINGERROR - failed to marshall a request; possibly, out of memory
- awexists (zh, path, watcher_fn, watcherctx, stat_completion, data)
-
checks the existence of a node in zookeeper.
This function is similar to axists except it allows one specify a watcher object - a function pointer and associated context. The function will be called once the watch has fired. The associated context data will be passed to the function as the watcher context parameter.
Parameters:
- zh the zookeeper handle obtained by a call to init
- path the name of the node. Expressed as a file name with slashes separating ancestors of the node.
- watcher_fn if non-null a watch will set on the specified znode on the server. The watch will be set even if the node does not exist. This allows clients to watch for nodes to appear.
- watcherctx user specific data, will be passed to the watcher callback. Unlike the global context set by init, this watcher context is associated with the given instance of the watcher only.
- stat_completion the routine to invoke when the request completes. The completion will be triggered with one of the following codes passed in as the rc argument: ZOK operation completed successfully ZNONODE the node does not exist. ZNOAUTH the client does not have permission.
- data the data that will be passed to the completion routine when the function completes.
Returns:
-
ZOK on success or one of the following errcodes on failure:
ZBADARGUMENTS - invalid input parameters
ZINVALIDSTATE - zhandle state is either ZOOSESSIONEXPIREDSTATE or ZOOAUTHFAILEDSTATE
ZMARSHALLINGERROR - failed to marshall a request; possibly, out of memory
- aget (zh, path, watch, data_completion, data)
-
gets the data associated with a node.
Parameters:
- zh the zookeeper handle obtained by a call to init
- path the name of the node. Expressed as a file name with slashes separating ancestors of the node.
- watch if nonzero, a watch will be set at the server to notify the client if the node changes.
- data_completion the routine to invoke when the request completes. The completion will be triggered with one of the following codes passed in as the rc argument: ZOK operation completed successfully ZNONODE the node does not exist. ZNOAUTH the client does not have permission.
- data the data that will be passed to the completion routine when the function completes.
Returns:
-
ZOK on success or one of the following errcodes on failure:
ZBADARGUMENTS - invalid input parameters
ZINVALIDSTATE - zhandle state is either in ZOOSESSIONEXPIREDSTATE or ZOOAUTHFAILEDSTATE
ZMARSHALLINGERROR - failed to marshall a request; possibly, out of memory
- awget (zh, path, watcher_fn, watcherctx, data_completion, data)
-
gets the data associated with a node.
This function is similar to aget except it allows one specify a watcher object rather than a boolean watch flag.
Parameters:
- zh the zookeeper handle obtained by a call to init
- path the name of the node. Expressed as a file name with slashes separating ancestors of the node.
- watcher_fn if non-null, a watch will be set at the server to notify the client if the node changes.
- watcherctx user specific data, will be passed to the watcher callback. Unlike the global context set by init, this watcher context is associated with the given instance of the watcher only.
- data_completion the routine to invoke when the request completes. The completion will be triggered with one of the following codes passed in as the rc argument: ZOK operation completed successfully ZNONODE the node does not exist. ZNOAUTH the client does not have permission.
- data the data that will be passed to the completion routine when the function completes.
Returns:
-
ZOK on success or one of the following errcodes on failure:
ZBADARGUMENTS - invalid input parameters
ZINVALIDSTATE - zhandle state is either in ZOOSESSIONEXPIREDSTATE or ZOOAUTHFAILEDSTATE
ZMARSHALLINGERROR - failed to marshall a request; possibly, out of memory
- aset (zh, path, buffer, version, stat_completion, data)
-
sets the data associated with a node.
Parameters:
- zh the zookeeper handle obtained by a call to init
- path the name of the node. Expressed as a file name with slashes separating ancestors of the node.
- buffer the buffer holding data to be written to the node.
- version the expected version of the node. The function will fail if the actual version of the node does not match the expected version. If -1 is used the version check will not take place. * completion: If null, the function will execute synchronously. Otherwise, the function will return immediately and invoke the completion routine when the request completes.
- stat_completion the routine to invoke when the request completes. The completion will be triggered with one of the following codes passed in as the rc argument: ZOK operation completed successfully ZNONODE the node does not exist. ZNOAUTH the client does not have permission. ZBADVERSION expected version does not match actual version.
- data the data that will be passed to the completion routine when the function completes.
Returns:
-
ZOK on success or one of the following errcodes on failure:
ZBADARGUMENTS - invalid input parameters
ZINVALIDSTATE - zhandle state is either ZOOSESSIONEXPIREDSTATE or ZOOAUTHFAILEDSTATE
ZMARSHALLINGERROR - failed to marshall a request; possibly, out of memory
- aget_children (zh, path, watch, strings_completion, data)
-
lists the children of a node.
Parameters:
- zh the zookeeper handle obtained by a call to init
- path the name of the node. Expressed as a file name with slashes separating ancestors of the node.
- watch if nonzero, a watch will be set at the server to notify the client if the node changes.
- strings_completion the routine to invoke when the request completes. The completion will be triggered with one of the following codes passed in as the rc argument: ZOK operation completed successfully ZNONODE the node does not exist. ZNOAUTH the client does not have permission.
- data the data that will be passed to the completion routine when the function completes.
Returns:
-
ZOK on success or one of the following errcodes on failure:
ZBADARGUMENTS - invalid input parameters
ZINVALIDSTATE - zhandle state is either ZOOSESSIONEXPIREDSTATE or ZOOAUTHFAILEDSTATE
ZMARSHALLINGERROR - failed to marshall a request; possibly, out of memory
- awget_children (zh, path, watcher_fn, watcherctx, strings_completion, data)
-
lists the children of a node.
This function is similar to aget_children except it allows one specify a watcher object rather than a boolean watch flag.
Parameters:
- zh the zookeeper handle obtained by a call to init
- path the name of the node. Expressed as a file name with slashes separating ancestors of the node.
- watcher_fn if non-null, a watch will be set at the server to notify the client if the node changes.
- watcherctx user specific data, will be passed to the watcher callback. Unlike the global context set by init, this watcher context is associated with the given instance of the watcher only.
- strings_completion the routine to invoke when the request completes. The completion will be triggered with one of the following codes passed in as the rc argument: ZOK operation completed successfully ZNONODE the node does not exist. ZNOAUTH the client does not have permission.
- data the data that will be passed to the completion routine when the function completes.
Returns:
-
ZOK on success or one of the following errcodes on failure:
ZBADARGUMENTS - invalid input parameters
ZINVALIDSTATE - zhandle state is either ZOOSESSIONEXPIREDSTATE or ZOOAUTHFAILEDSTATE
ZMARSHALLINGERROR - failed to marshall a request; possibly, out of memory
- awget_children2 (zh, path, watcher_fn, watcherctx, strings_stat_completion, data)
-
lists the children of a node, and get the parent stat.
This function is similar to aget_children2 except it allows one specify a watcher object rather than a boolean watch flag.
This function is new in version 3.3.0
Parameters:
- zh the zookeeper handle obtained by a call to init
- path the name of the node. Expressed as a file name with slashes separating ancestors of the node.
- watcher_fn if non-null, a watch will be set at the server to notify the client if the node changes.
- watcherctx user specific data, will be passed to the watcher callback. Unlike the global context set by init, this watcher context is associated with the given instance of the watcher only.
- strings_stat_completion the routine to invoke when the request completes. The completion will be triggered with one of the following codes passed in as the rc argument: ZOK operation completed successfully ZNONODE the node does not exist. ZNOAUTH the client does not have permission.
- data the data that will be passed to the completion routine when the function completes.
Returns:
-
ZOK on success or one of the following errcodes on failure:
ZBADARGUMENTS - invalid input parameters
ZINVALIDSTATE - zhandle state is either ZOOSESSIONEXPIREDSTATE or ZOOAUTHFAILEDSTATE
ZMARSHALLINGERROR - failed to marshall a request; possibly, out of memory
- async (zh, path, string_completion, data)
-
Flush leader channel.
Parameters:
- zh the zookeeper handle obtained by a call to init
- path the name of the node. Expressed as a file name with slashes separating ancestors of the node.
- string_completion the routine to invoke when the request completes. The completion will be triggered with one of the following codes passed in as the rc argument: ZOK operation completed successfully ZNONODE the node does not exist. ZNOAUTH the client does not have permission.
- data the data that will be passed to the completion routine when the function completes.
Returns:
-
ZOK on success or one of the following errcodes on failure:
ZBADARGUMENTS - invalid input parameters
ZINVALIDSTATE - zhandle state is either ZOOSESSIONEXPIREDSTATE or ZOOAUTHFAILEDSTATE
ZMARSHALLINGERROR - failed to marshall a request; possibly, out of memory
- aget_acl (zh, path, acl_completion, data)
-
gets the acl associated with a node.
Parameters:
- zh the zookeeper handle obtained by a call to init
- path the name of the node. Expressed as a file name with slashes separating ancestors of the node.
- acl_completion the routine to invoke when the request completes. The completion will be triggered with one of the following codes passed in as the rc argument: ZOK operation completed successfully ZNONODE the node does not exist. ZNOAUTH the client does not have permission.
- data the data that will be passed to the completion routine when the function completes.
Returns:
-
ZOK on success or one of the following errcodes on failure:
ZBADARGUMENTS - invalid input parameters
ZINVALIDSTATE - zhandle state is either ZOOSESSIONEXPIREDSTATE or ZOOAUTHFAILEDSTATE
ZMARSHALLINGERROR - failed to marshall a request; possibly, out of memory
- aset_acl (zh, path, version, acl, void_completion, data)
-
sets the acl associated with a node.
Parameters:
- zh the zookeeper handle obtained by a call to init
- path the name of the node. Expressed as a file name with slashes separating ancestors of the node.
- version the expected version of the path.
- acl the acl to be set on the path.
- void_completion the routine to invoke when the request completes. The completion will be triggered with one of the following codes passed in as the rc argument: ZOK operation completed successfully ZNONODE the node does not exist. ZNOAUTH the client does not have permission. ZINVALIDACL invalid ACL specified ZBADVERSION expected version does not match actual version.
- data the data that will be passed to the completion routine when the function completes.
Returns:
-
ZOK on success or one of the following errcodes on failure:
ZBADARGUMENTS - invalid input parameters
ZINVALIDSTATE - zhandle state is either ZOOSESSIONEXPIREDSTATE or ZOOAUTHFAILEDSTATE
ZMARSHALLINGERROR - failed to marshall a request; possibly, out of memory
- zerror (c)
-
return an error string.
Parameters:
- c return code
Returns:
-
string corresponding to the return code
- add_auth (zh, scheme, cert, void_completion, data)
-
specify application credentials.
The application calls this function to specify its credentials for purposes of authentication. The server will use the security provider specified by the scheme parameter to authenticate the client connection. If the authentication request has failed: the server connection is dropped the watcher is called with the ZOOAUTHFAILED_STATE value as the state parameter.
Parameters:
- zh the zookeeper handle obtained by a call to init
- scheme the id of authentication scheme. Natively supported: "digest" password-based authentication
- cert application credentials. The actual value depends on the scheme.
- void_completion the routine to invoke when the request completes. One of the following result codes may be passed into the completion callback: ZOK operation completed successfully. ZAUTHFAILED authentication failed.
- data the data that will be passed to the completion routine when the function completes.
Returns:
-
ZOK on success or one of the following errcodes on failure:
ZBADARGUMENTS - invalid input parameters.
ZINVALIDSTATE - zhandle state is either ZOOSESSIONEXPIREDSTATE or ZOOAUTHFAILEDSTATE.
ZMARSHALLINGERROR - failed to marshall a request; possibly, out of memory.
ZSYSTEMERROR - a system error occured.
- is_unrecoverable (zh)
-
checks if the current zookeeper connection state can't be recovered.
The application must close the zhandle and try to reconnect.
Parameters:
- zh the zookeeper handle ( init)
Returns:
-
ZINVALIDSTATE if connection is unrecoverable
- set_debug_level (loglevel)
-
sets the debugging level for the library.
Parameters:
- loglevel
- set_log_stream (stream)
-
sets the stream to be used by the library for logging
The zookeeper library uses stderr as its default log stream. Application must make sure the stream is writable. Passing in NULL resets the stream to its default value (stderr).
Parameters:
- stream
- deterministic_conn_order (yesorno)
-
enable/disable quorum endpoint order randomization.
Note: typically this method should NOT be used outside of testing.
If passed a non-zero value, will make the client connect to quorum peers in the order as specified in the init() call. A zero value causes init() to permute the peer endpoints which is good for more even client connection distribution among the quorum peers.
Parameters:
- yesorno
- create (zh, path, acl, flags)
-
create a node synchronously.
This method will create a node in ZooKeeper. A node can only be created if it does not already exists. The Create Flags affect the creation of nodes. If ZOOEPHEMERAL flag is set, the node will automatically get removed if the client session goes away. If the ZOOSEQUENCE flag is set, a unique monotonically increasing sequence number is appended to the path name.
Parameters:
- zh the zookeeper handle obtained by a call to init
- path The name of the node. Expressed as a file name with slashes separating ancestors of the node.
- acl The initial ACL of the node. The ACL must not be null or empty.
- flags this parameter can be set to 0 for normal create or an OR of the Create Flags
Returns:
-
1).one of the following codes are returned, 2) path buffer of the node:
ZOK operation completed successfully.
ZNONODE the parent node does not exist.
ZNODEEXISTS the node already exists.
ZNOAUTH the client does not have permission.
ZNOCHILDRENFOREPHEMERALS cannot create children of ephemeral nodes.
ZBADARGUMENTS - invalid input parameters.
ZINVALIDSTATE - zhandle state is either ZOOSESSIONEXPIREDSTATE or ZOOAUTHFAILEDSTATE.
ZMARSHALLINGERROR - failed to marshall a request; possibly, out of memory.
- delete (zh, path, version)
-
delete a node in zookeeper synchronously.
Parameters:
- zh the zookeeper handle obtained by a call to init
- path the name of the node. Expressed as a file name with slashes separating ancestors of the node.
- version the expected version of the node. The function will fail if the actual version of the node does not match the expected version. If -1 is used the version check will not take place.
Returns:
-
one of the following values is returned.
ZOK operation completed successfully.
ZNONODE the node does not exist.
ZNOAUTH the client does not have permission.
ZBADVERSION expected version does not match actual version.
ZNOTEMPTY children are present; node cannot be deleted.
ZBADARGUMENTS - invalid input parameters
ZINVALIDSTATE - zhandle state is either ZOOSESSIONEXPIREDSTATE or ZOOAUTHFAILEDSTATE.
ZMARSHALLINGERROR - failed to marshall a request; possibly, out of memory.
- exists (zh, path, watch)
-
checks the existence of a node in zookeeper synchronously.
Parameters:
- zh the zookeeper handle obtained by a call to init
- path the name of the node. Expressed as a file name with slashes separating ancestors of the node.
- watch if nonzero, a watch will be set at the server to notify the client if the node changes. The watch will be set even if the node does not exist. This allows clients to watch for nodes to appear.
Returns:
-
1): return code of the function call, 2): stat struct fo the ZNode.
ZOK operation completed successfully.
ZNONODE the node does not exist.
ZNOAUTH the client does not have permission.
ZBADARGUMENTS - invalid input parameters.
ZINVALIDSTATE - zhandle state is either ZOOSESSIONEXPIREDSTATE or ZOOAUTHFAILEDSTATE.
ZMARSHALLINGERROR - failed to marshall a request; possibly, out of memory.
- wexists (zh, path, watcher_fn, watcherctx)
-
checks the existence of a node in zookeeper synchronously.
This function is similar to exists except it allows one specify a watcher object rather than a boolean watch flag.
Parameters:
- zh the zookeeper handle obtained by a call to init
- path the name of the node. Expressed as a file name with slashes separating ancestors of the node.
- watcher_fn if non-null a watch will set on the specified znode on the server. The watch will be set even if the node does not exist. This allows clients to watch for nodes to appear.
- watcherctx user specific data, will be passed to the watcher callback. Unlike the global context set by init, this watcher context is associated with the given instance of the watcher only.
Returns:
-
1): return code of the function call, 2): stat struc of the ZNode.
ZOK operation completed successfully.
ZNONODE the node does not exist.
ZNOAUTH the client does not have permission.
ZBADARGUMENTS - invalid input parameters.
ZINVALIDSTATE - zhandle state is either ZOOSESSIONEXPIREDSTATE or ZOOAUTHFAILEDSTATE.
ZMARSHALLINGERROR - failed to marshall a request; possibly, out of memory.
- get (zh, path, watch)
-
gets the data associated with a node synchronously.
Parameters:
- zh the zookeeper handle obtained by a call to init
- path the name of the node. Expressed as a file name with slashes separating ancestors of the node.
- watch if nonzero, a watch will be set at the server to notify the client if the node changes. It'll be set to the actual data length upon return. If the data is NULL, length is -1.
Returns:
-
1): return value of the function call, 2): value buffer containing the node data, 3): stat struct of the ZNode.
ZOK operation completed successfully.
ZNONODE the node does not exist.
ZNOAUTH the client does not have permission.
ZBADARGUMENTS - invalid input parameters
ZINVALIDSTATE - zhandle state is either in ZOOSESSIONEXPIREDSTATE or ZOOAUTHFAILEDSTATE.
ZMARSHALLINGERROR - failed to marshall a request; possibly, out of memory.
- wget (zh, path, watcher_fn, watcherctx)
-
gets the data associated with a node synchronously.
This function is similar to get except it allows one specify a watcher object rather than a boolean watch flag.
Parameters:
- zh the zookeeper handle obtained by a call to init
- path the name of the node. Expressed as a file name with slashes separating ancestors of the node.
- watcher_fn if non-null, a watch will be set at the server to notify the client if the node changes.
- watcherctx user specific data, will be passed to the watcher callback. Unlike the global context set by init, this watcher context is associated with the given instance of the watcher only. It'll be set to the actual data length upon return. If the data is NULL, length is -1.
Returns:
-
1): return value of the function call, 2): buffer holding the node data, 3): stat struct of the ZNode.
ZOK operation completed successfully.
ZNONODE the node does not exist.
ZNOAUTH the client does not have permission.
ZBADARGUMENTS - invalid input parameters.
ZINVALIDSTATE - zhandle state is either in ZOOSESSIONEXPIREDSTATE or ZOOAUTHFAILEDSTATE.
ZMARSHALLINGERROR - failed to marshall a request; possibly, out of memory.
- set (zh, path, buffer, version)
-
sets the data associated with a node.
See set2 function if you require access to the stat information associated with the znode.
Parameters:
- zh the zookeeper handle obtained by a call to init
- path the name of the node. Expressed as a file name with slashes separating ancestors of the node.
- buffer the buffer holding data to be written to the node.
- version the expected version of the node. The function will fail if the actual version of the node does not match the expected version. If -1 is used the version check will not take place.
Returns:
-
the return code for the function call.
ZOK operation completed successfully.
ZNONODE the node does not exist.
ZNOAUTH the client does not have permission.
ZBADVERSION expected version does not match actual version.
ZBADARGUMENTS - invalid input parameters.
ZINVALIDSTATE - zhandle state is either ZOOSESSIONEXPIREDSTATE or ZOOAUTHFAILEDSTATE.
ZMARSHALLINGERROR - failed to marshall a request; possibly, out of memory.
- set2 (zh, path, buffer, buflen, version)
-
sets the data associated with a node.
This function is the same as set except that it also provides access to stat information associated with the znode.
Parameters:
- zh the zookeeper handle obtained by a call to init
- path the name of the node. Expressed as a file name with slashes separating ancestors of the node.
- buffer the buffer holding data to be written to the node.
- buflen the number of bytes from buffer to write. To set NULL as data use buffer as NULL and buflen as -1.
- version the expected version of the node. The function will fail if the actual version of the node does not match the expected version. If -1 is used the version check will not take place.
Returns:
-
1): the return code for the function call, 2): stat struct of the ZNode.
ZOK operation completed successfully.
ZNONODE the node does not exist.
ZNOAUTH the client does not have permission.
ZBADVERSION expected version does not match actual version.
ZBADARGUMENTS - invalid input parameters.
ZINVALIDSTATE - zhandle state is either ZOOSESSIONEXPIREDSTATE or ZOOAUTHFAILEDSTATE.
ZMARSHALLINGERROR - failed to marshall a request; possibly, out of memory.
- get_children (zh, path, watch, strings)
-
lists the children of a node synchronously.
Parameters:
- zh the zookeeper handle obtained by a call to init.
- path the name of the node. Expressed as a file name with slashes. separating ancestors of the node.
- watch if nonzero, a watch will be set at the server to notify. the client if the node changes.
- strings return value of children paths.
Returns:
-
the return code of the function.
ZOK operation completed successfully.
ZNONODE the node does not exist.
ZNOAUTH the client does not have permission.
ZBADARGUMENTS - invalid input parameters.
ZINVALIDSTATE - zhandle state is either ZOOSESSIONEXPIREDSTATE or ZOOAUTHFAILEDSTATE.
ZMARSHALLINGERROR - failed to marshall a request; possibly, out of memory.
- wget_children (zh, path, watcher_fn, watcherctx)
-
lists the children of a node synchronously.
This function is similar to get_children except it allows one specify a watcher object rather than a boolean watch flag.
Parameters:
- zh the zookeeper handle obtained by a call to init
- path the name of the node. Expressed as a file name with slashes separating ancestors of the node.
- watcher_fn if non-null, a watch will be set at the server to notify the client if the node changes.
- watcherctx user specific data, will be passed to the watcher callback. Unlike the global context set by init, this watcher context is associated with the given instance of the watcher only.
Returns:
-
1): the return code of the function, 2): value of children paths.
ZOK operation completed successfully.
ZNONODE the node does not exist.
ZNOAUTH the client does not have permission.
ZBADARGUMENTS - invalid input parameters.
ZINVALIDSTATE - zhandle state is either ZOOSESSIONEXPIREDSTATE or ZOOAUTHFAILEDSTATE.
ZMARSHALLINGERROR - failed to marshall a request; possibly, out of memory.
- get_children2 (zh, path, watch)
-
lists the children of a node and get its stat synchronously.
This function is new in version 3.3.0
Parameters:
- zh the zookeeper handle obtained by a call to init
- path the name of the node. Expressed as a file name with slashes separating ancestors of the node.
- watch if nonzero, a watch will be set at the server to notify the client if the node changes.
Returns:
-
1): the return code of the function, 2): value of children paths, 3): value of node stat.
ZOK operation completed successfully.
ZNONODE the node does not exist.
ZNOAUTH the client does not have permission.
ZBADARGUMENTS - invalid input parameters.
ZINVALIDSTATE - zhandle state is either ZOOSESSIONEXPIREDSTATE or ZOOAUTHFAILEDSTATE.
ZMARSHALLINGERROR - failed to marshall a request; possibly, out of memory.
- wget_children2 (zh, path, watcher_fn, watcherctx)
-
lists the children of a node and get its stat synchronously.
This function is similar to get_children except it allows one specify a watcher object rather than a boolean watch flag.
This function is new in version 3.3.0
Parameters:
- zh the zookeeper handle obtained by a call to init
- path the name of the node. Expressed as a file name with slashes separating ancestors of the node.
- watcher_fn if non-null, a watch will be set at the server to notify the client if the node changes.
- watcherctx user specific data, will be passed to the watcher callback. Unlike the global context set by init, this watcher context is associated with the given instance of the watcher only.
Returns:
-
1): the return code of the function, 2): value of children paths, 3): value of node stat.
ZOK operation completed successfully.
ZNONODE the node does not exist.
ZNOAUTH the client does not have permission.
ZBADARGUMENTS - invalid input parameters.
ZINVALIDSTATE - zhandle state is either ZOOSESSIONEXPIREDSTATE or ZOOAUTHFAILEDSTATE.
ZMARSHALLINGERROR - failed to marshall a request; possibly, out of memory.
- get_acl (zh, path)
-
gets the acl associated with a node synchronously.
Parameters:
- zh the zookeeper handle obtained by a call to init
- path the name of the node. Expressed as a file name with slashes separating ancestors of the node.
Returns:
-
1): the return code for the function call, 2): value of ACLs on the path, 3): stat of the path specified.
ZOK operation completed successfully.
ZNONODE the node does not exist.
ZNOAUTH the client does not have permission.
ZBADARGUMENTS - invalid input parameters.
ZINVALIDSTATE - zhandle state is either ZOOSESSIONEXPIREDSTATE or ZOOAUTHFAILEDSTATE.
ZMARSHALLINGERROR - failed to marshall a request; possibly, out of memory.
- set_acl (zh, path, version, acl)
-
sets the acl associated with a node synchronously.
Parameters:
- zh the zookeeper handle obtained by a call to init
- path the name of the node. Expressed as a file name with slashes separating ancestors of the node.
- version the expected version of the path.
- acl the acl to be set on the path.
Returns:
-
the return code for the function call.
ZOK operation completed successfully.
ZNONODE the node does not exist.
ZNOAUTH the client does not have permission.
ZINVALIDACL invalid ACL specified.
ZBADVERSION expected version does not match actual version.
ZBADARGUMENTS - invalid input parameters.
ZINVALIDSTATE - zhandle state is either ZOOSESSIONEXPIREDSTATE or ZOOAUTHFAILEDSTATE.
ZMARSHALLINGERROR - failed to marshall a request; possibly, out of memory.


direct
download stalker
D
DS
file type
Videos
Images
Books
Music
Software
Other
search engines
Google
Startpage
Lukol
Find


Review: Gattaca (1997)
Reviewer: M.P<EMAIL_ADDRESS>In a world where being conceived the natural way is looked down upon, and being genetically altered is the only way to get a real job. A story is born, a story that shows us a brief glimpse of what could be and of what is mere fantasy. Gattaca is about the struggle to survive against the impossible odds. Vincent(Ethan Hawke), is an invalid who has a dream of flying into the stars because he doesn't feel like he belongs. He is bared from decent jobs because he is an invalid, a child who's conception was left to chance, he wasn't genetically altered. Vincent goes against all the odds that a genetic heart condition will kill him in his early 30's finds a way to get past the system. Everything goes great until there is a murder at his place of work, 'Gattaca'. The ensuing investigation brings him closer to Irene(Uma Thurman) a co-worker assigned to help the police investigation of the murder. The murder threatens his survival more than seemingly possible since he had nothing to do with the crime in question.
This story is build up very well and the pacing of it builds up very well. The story is set in a very sterile environment... something similar to our earth today, albeit a bit further in the future. And the director lets the audience know what the circumstances are and how the protagonist finds himself in his situation. Although this portion of the movie is a bit slower than the rest of the movie, it is required and well balanced to the rest of the movie. Unlike many other Sci-Fi movies of late, this one gives you the background to its complex setting and brings the audience further into the story. The setting is marvelously created, and everything seems fairly accurate with at the very least current technology. Although some things can be questioned, the movie does not leave gaping holes about the setting, or situation, what holes are there can be overlooked. This movie shows details that many other movies have intentionally avoided, so if the sight of urine in a jar or bag bothers you, you may be advised not to watch this movie. BUT don't get me wrong, these are merely props and aren't the focus of the movie although they are seen from time to time. That had to be mentioned unfortunately because not all people react the same way to seeing bodily fluids. A few small things didn't make much sense, and in my opinion seemed a bit predictable. But these things although predictable to some extent are well placed and for the most part not blatantly obvious. Aside from Vincent's real brother just happening to be assigned to the murder case(must use willing suspension of disbelief). Then again no story can be perfect and without flaws, but that one point is a tad bit big... things like that don't happen very often.
The acting in this movie is spectacular! The casting for this movie in my opinion is perfect. Although Ethan Hawke does look a bit on the clumsy side in some places, and there is at the very least one mistake in the script(wrong word used in dialogue). Ethan, plays the role of Vincent almost perfectly. His mild clumsiness, shows that the real Vincent is flawed and human, and at the same time shows a certain grace that gives credit to the role. Although the acting by Ethan is very good in my opinion, it wont be getting him an Oscar nomination. Uma Thurman, who plays the role of Irene, is just stunning. The role couldn't have been cast better. She plays the role very well, although the role is a bit stiff at times. Uma, seems to glow in this movie(I could be wrong here simply because I am male and find her very attractive). Jude Law (Jerome, the person whose identity Vincent borrows), also puts in a spectacular performance and plays the part of Vincent's accomplice in duping the system really well. He seems like he belongs in the role. And the conditions of the role demanded a fair amount of patience, and the demands were more than met. All the acting in this movie is of exceptional caliber, Ethan and Uma shine through marvelously and are in themselves good reason to see this movie.
Despite its flaws, and in some cases style oddities, this movie is well worth the money you pay to watch it. Although I am partial to Science Fiction movies in general, this one is in my humble opinion one of the better ones that have been made in a rather long time. And to top it all off, there are some subtle messages and ideas in this movie.. it will leave you thinking, and if it doesn't you should at least find the story entertaining. I rate this movie 3.5/4.
ęBootsector 1997
www.imactive.com/bootsector/
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


Hyper-Economy Development Group: software model and project plan
Why banner exchange as the first implementation
While the model itself remains generic, we have chosen banner exchange as
the first prototype implementation for our developing hypereconomic
system for several reasons:
- I have experience with similar systems (ACF)
- this is a good example of already existing multi-agent system
with data practically available, and with very complex
considerations (user preferences) producing numerous points
of simple formal data (page views and banner clicks)
- the system can be expected to be practically useful in this
domain as soon as it's ready.
- TrafficX developer Joel Shellman is willing to implement it
I also hope to further develop the system and see it implemented
in other domains.
Project plan
The first stages of the project will be implemented in Java on Win'95
For development and testing, a model of the domain will be used.
Why a model? - because it allows multiple runs of the system
without bothering real users, until things are ready.
Parts of the system
(more detailed descriptions to follow soon)
- domain model:
data representing agents of different kinds and their
environment. In the first implementation, that will
be pages, banners, their categories and other parameters.
- Event model
Simulates "natural events" in the system, i.e. things that
happen regardless of the agents' actions. In a banner
exchange system, these events are represented by page views
by Web users. The event model will generate these events
with frequencies and fluctuations similar to those in the
real system.
- System decision model
This is the brain of the system, representing collective actions of
agents it will read the state of the environment and generate certain
actions. In a banner exchange, it will decide what banners to show
where and when. The current implementation has five models:
- "Random" - a banner is selected randomly out of banners with maximal inventory
- "Schedule" (utility) - every site agent chooses the [generally] best banner
out of currently available.
- "Economy", with sites and banners bargaining with each other for the opportunity
of banner views, based on their individual experiences.
- "Intermediate" - The economic decisions are made with some general knowledge on
resource utility
- "hyper-economy", with sites and banners sharing their situational
experience with each other, to find the best matches without testing
every banner on every page.
At this point the models work in a simple environment with stochastic events;
the distribution patterns of events do not change in time. The next stage
should involve fluctuating environment.
- Environment response model
The displayed banners will be "clicked" on or not, depending on a set
of realistic parameters (not known to the decision- making module)
- assessment of decision quality
a set of routines showing the system's performance statistics,
such as average click rate [per category], speeds of adaptation
under different conditions, etc. This will allow us to see what
works better - a centralized system, an economy, knowledge
exchange, or their combinations.
After the models are tested, the real-world implementation will
use TrafficX instead of the event model and system response model.
The other parts will stay.
Last updated January 10, 1999.
Back to hypereconomy page


Actor Director
Home
Login
Register
Home
Login
Register
Registration
Actor
Director
Actor or Director
Full Name
Email id
phone
Phone
About You
Register
Login
Email ID
Actor
Director
Actor or Director


fishing vessels entropy vessel performance data exploration using EETO choice strategies time model {border-style information locations use disturbance period px;} #ffffff;} grounds fleet \beta likely location portfolio trips undisturbed (Fig. Fig. PRT foraging longline more-exploratory study closure trip activity mean continue disturbance, human revenue agents exploratory mobility number performance, pre-disturbance social trade-off window Science Supplementary \documentclass[pt]{minimal} \setlength{\oddsidemargin}{-pt} \usepackage{amsbsy} \usepackage{amsfonts} \usepackage{amsmath} \usepackage{amssymb} \usepackage{mathrsfs} \usepackage{upgreek} \usepackage{wasysym} changes explorers investigate linear revenues scores used values vs. (Supplementary GoM Gulf Sci. behavior dataset effect given higher metrics px; random spatial {font-family Data Nature [], and/or commercial displacement disturbance. disturbed fisheries font-size natural options prt respectively, systems vessel’s -it Eq. Fisheries analysis available average benefit calculate calculated choices closure, days distribution double; evenly example, exploitation fishery fishing. greater grid impacts intermediate length maximized movement payoff predict prior strategy variables Higher However, Mexico NOAA Table VMS [] = .; allowing ask balance benefits border-color border-width business-as-usual certain closed consistent contrasting deviance expected fact fish fished fitted fitting increase increasing indicate learning lower measure modeling models networks new optimal payoffs performance. period, period. pings positive quantify records regression remains residence result resulting results shown significant significantly solid; subject subset test value {font-style {font-weight (). (broad (e.g., -year Barack Behav. Commons Creative Given Proc. Quantifying Vessel adaptive agreement assumed b). bandit bold bottom-longline buffering calculating capture caused change closure. consequences consists controlling correlation costs courier; create created current decision different em; emergency environmental exploiting exploration. expressed forest framework grounds, history however, immediately including indicates level logbook lost maintain mediation negative observed positions probability proportion providing pt;} quadratic range reef resource score selection setting shared slow strategy. terms that: theoretical theory times trip-level vessel,


{{welcomeMsg}}
{{email}}
This profile server is a micro-service example provides service-items sharing and individual info update


RM 230 [ RM 300 inc. printing ]
Code: EFC
Size: Printing - (W) 160cm x (H) 90cm
Weight: 8 KG
RM 300 [ RM 360 inc. printing ]
Code: PT-H
Size: Printing - (W) 180.5cm x (H) 90cm
Weight: 14.1 KG
RM 240 [ RM 300 inc. printing ]
Code: APT
Size 1: Printing - Top - (W) 60.5cm x (H) 25.5cm
Size 2: Printing - Center - (W) 50.5cm x (H) 86.5cm
Size 3: Printing - Side - (W) 23cm x (H) 86.5cm
Weight: 10.2 KG
RM 240 [ RM 300 inc. printing ]
Code: APT W/O WHEEL
Size 1: Printing - Top - (W) 60cm x (H) 25cm
Size 2: Printing - Center - (W) 50.5cm x (H) 85.5cm
Size 3: Printing - Side - (W) 23cm x (H) 85.5cm
Weight: 10.2 KG
RM 100 [ RM 150 inc. printing ]
Code: IPT
Size 1: Printing - Top - (W) 80cm x (H) 20cm
Size 2: Printing - Center - (W) 70cm x (H) 70cm
Size 3: Printing - Side - (W) 30cm x (H) 70cm
Weight: 7.3 KG
RM 140 [ RM 180 inc. printing ]
Code: PT
Size 1: Printing - Top - (W) 80.1cm x (H) 29.21cm
Size 2: Printing - Bottom - (W) 182cm x (H) 81cm
Weight: 7 KG
RM 200
Code: IBT
Size: Printing - A3 size
Weight: 5 KG
RM 550 [ RM 600 inc. printing ]
Code: DC
Size: Printing - (W) 16cm x (H) 47cm - 6pcs
Weight: 10.1 KG


| Elizabeth Warren | Kirsten Gillibrand | Kamala Harris | |
| Elizabeth Warren | Own Record | Compare | Compare |
| Kirsten Gillibrand | Own Record | Compare | |
| Kamala Harris | Own Record |
| Tulsi Gabbard | Joaquin Castro | Eric Swalwell | |
| Tulsi Gabbard | Own Record | Compare | Compare |
| Joaquin Castro | Own Record | Compare | |
| Eric Swalwell | Own Record |


Click to start a polyline at a point; shift + click to continue from that point. Press Z to remove the last point, and press enter to complete the polygon. Space will clear everything.
Middle click (or ctrl/command + click) to set the anchor position.


CopCAD is an out-of-the-box ready to use Engineering Drawing tool. The tool provides an easy-to-use and fast way to user to render any three dimensional object as wireframe and visualise its orthographic projections.
Also, given the three orthographic projections user can generate a wireframe to check the prototype of his/her model.
The tool also allows user to rotate the object with an easy to use slider, and view orthographic projections of the rotated object.
The software expects the projection drawing or the three dimensional model to be input in the form of its vertex set and edge set.
Known issues : Extra coplanar edges when given only two projection views which are insufficient to determine a unique wireframe.
For documentation related to source code look at doc.
For raising issues and code look at repo.


Computer Engineer
//Click the icons below to learn more about me.
Graduating May of 2018 with a degree in Computer Systems Engineering.
Courses: Database Managment, Engineering Informatics, Wireless Sensor Networks
I first began programming in high school as a hobby and soon became consumed. Programming is more than just work, but something I am passionate about. I take pride in my code, always paying close attention to detail.
Languages: Java, C++, Javascript, Node.js, SQL, Verilog
Software: MATLAB, Visual Studio, RapidMiner, Git
A balanced and attractive design is something that I have a passion for. I believe everyone does whether they are aware of it or not. When something looks pleasing to the eye we are drawn to it, leading to further investigation. This process is human nature. Creating something that can both serve its purpose and offer simplistic beauty is a guiding principle in my work.
Inspiration: The Bauhaus, Frank Lloyd Wright, James Turrell
At the Athens Baldor Electric facility, chemicals and paints must be stored within a certain temperature and relative humidity range or they will become unusable, and could potentially cause warranty defects after the electric motors have left the plant. Working in a team of three, a system was produced capable of monitoring temperature and humidity data. The system actively notifies staff, via SMS and email, if any out of range data is detected. A database and user interface were also developed, enabling statistical analysis to be performed on the data collected.
During the school hackathon, another teammate and I developed “Rally”. Rally is a mobile application that allows a group of people to create an event and actively see other group members current location. Users may also send help notifications and messages. This application is ideal for a family visiting an amusement park or large public event.
The restaurant carryout system, designed as part of a database management project, allows for a restaurant manager to create multiple venues, menu items, and recipes. The web app also offers an inventory management system. Once a restaurant has been setup, a user can order menu items from any of the created restaurants.


Elder Balanki:
I've heard that you work for the Golden Wheel Guild ... Is this true?
Young friend, let me give you a piece of advice. Spiron is only taking advantage of you. That mean old man is only interested in generating profits for his guild!
If you should ever get hurt or run into trouble while carrying out guild business, don't expect Spiron to help you. He'll only argue that your demise wasn't in the original deal or contract.


Margin vs. Border vs. Padding
June 21, 2015
Try to imagine the image above as a castle. The contents of the castle, is the king. The padding that surrounds the content (king in our case),are the king's knights that basically form a protective barrier around him. The more guards he has protecting him, the thicker the padding. The border serves as the castle walls. The thicker you make the border, the thicker the walls. Lastly, the margin, being the area surrounding the border, could be thought of as a moat surrounding the castle itself.


| 1 |
Text (< 18pt or < 14pt if bold) |
Contrast ratio of background to text is >= 4.5:1. WCAG Criterion 1.4.3 |
| 2 |
Large text ( >=18 point or >= 14pt if bold) |
Contrast ratio of background to text is >= 3:1. WCAG Criterion 1.4.3 |
| 3 |
Links within text that are not underlined |
Link color to text color contrast is >= 3:1, and links have additional visual indication when hovered and focused. WCAG Criterion 1.4.1 |
| 4 |
Images or non-text content such as icons |
Images have text equivalents defined. For decorative images, indicate that they are presentational and should be ignored by screen readers. WCAG Criterion 1.1.1 |
| 5 |
Images or non-text content that invokes a function |
Images have text equivalents that communicate the function. WCAG Criterion 1.1.1 |
| 6 |
Color that conveys information |
Color is not the only means of communicating the information. WCAG Criterion 1.4.1 |
| 7 |
Motion or animations |
Flashing does not flash more than 3 times in any 1-second period. WCAG Criterion 2.3.1 |
| 8 |
Motion, blinking, or scrolling that starts automatically and lasts more than 5 seconds |
A mechanism exists for users to pause, stop, or hide the motion unless it is essential. WCAG Criterion 2.2.2 |
| 9 |
Auto-updating content that starts automatically |
A mechanism exists for users to pause, stop, or hide the motion unless it is essential. WCAG Criterion 2.2.2 |
| 10 |
Forms or input elements |
All input elements have text labels onscreen or specified off-screen. WCAG Criterion 3.3.2 |
| 11 |
Required form inputs and required input formats such as date formats |
Required elements and formats are communicated visually and textually. WCAG Criterion 3.3.2 and WCAG Criterion 1.4.1 |
| 12 |
Error states and messages |
When users are notified of errors and given instructions on how to fix them, a method exists to navigate directly to errors from error messages. WCAG Criterion 3.3.1, 3.3.3 |
| 13 |
Interactions that are mouse- or touch-only such as drag and drop |
Keyboard operation alternatives are noted in the design proposal. WCAG Criterion 2.1.1 |
| 14 |
Interactive elements such as links, buttons, and input elements |
- On focus, no unexpected or non-browser default behaviors are specified. WCAG Criterion 3.2.1
- On focus, additional visual indicators of the focus state are specified as necessary. WCAG Criterion 2.4.7
- On text entry or input selection, no unexpected behavior is invoked. If unexpected behavior is necessary, a warning is communicated to users ahead of time. WCAG Criterion 3.2.2
|
| 15 |
Page titles |
Titles are unique and describe the contents and/or purpose of the page. |
| 16 |
Non-native HTML components such as rich Internet application widgets |
Interactions are defined for keyboard use. (See WAI-ARIA Authoring Practices for common keyboard widget patterns and principles.) WCAG Criterion 2.1.1 |
| 17 |
Headings |
Heading levels are specified in hierarchical order (H1-H6) and are descriptive. WCAG Criterion 1.3.1 and WCAG Criterion 2.4.6 |


WELCOME
TO DELANI STUDIOSAMAZING PEOPLE ARE MAKING AMAZING DESIGNS IN A FUN ENVIRONMENT
When you work with us you are part of a team of committed collaborators. All aspects of our software development are integrated, interactive and agile.
Our approach unifies design, development and product management to create exceptional products.
We start each project by understanding business goals, the user's need and the product requirements.
Then we help translate them into effective and elegant solutions.
Before we sign a contract or write a line of code our team will spend the necessary time needed to understand your product visions.
The outcome of this scoping session is a proposal or high-level statement of work.
Based on your requirements we can provide a complete offering or just the pieces you need.
We create the best logo and website designs


{% extends "page.html" %} {% block content %}
This site is dedicated to making it easy to find and access your favorite quotes from that legendary TV sitcom about nothing. You can search for random quotes by topic or speaker, or if you don't know what you're looking for, just get a totally random quote altogether. Not that there's anything wrong with that.
The site began its life as an IRC bot plugin that would fetch random quotes from Seinfeld episodes based on a search term or phrase. The bot would query its database for any spoken sentence that matched the given subject, and pick a random quote to return to the user, with context. Its quote database is generated using scripts by Collin Pollock.
With the Flask web framework, Twitter Bootstrap, Font Awesome, and a bit of polish, the IRC plugin was reborn as SeinfeldQuote.com, and a new era of quotes from a show about nothing was born.
There are many planned features to expand the functionality of the site, including more options for exploring episodes and speakers, getting more context when viewing quotes, and sharing your favorite quotes with your friends who also like shows about nothing.
The source code is open source, and welcomes bug reports, contributers and feature requests. Documentation is extremely sparse at the moment, but should be relatively straightforward for those familiar with Flask and WSGI applications.


License Preserver v1.5 - Options
Change remote server
Address:
Validate and Set
Close Tabs
Update Tabs
Domain name
Closing timing
Minutes before tab will close:
Add this domain
Domain name
Update timing
Minutes before updating tab:
Add this domain


This is continuation of article about multi-threading. I previous post i described basics of multi-threading and how to use threads to perform operations of different cores of CPU.
I this part I’ll focus on Async and Await keyword that are combined to create easy to read asynchronic method. An async method typically contains one or more occurrences of an await operator, but the absence of await expressions doesn’t cause a compiler error.
Async methods are intended to be non-blocking operations. An await expression in an async method doesn’t block the current thread while the awaited task is running. Instead, the expression signs up the rest of the method as a continuation and returns control to the caller of the async method.
Using only main tread can cause the problem of unresponsive UI while complicated task is executed. With Async method we can assign this big task to different thread using Task.Run(), making main thread free to use what solve the problem of unresponsive UI.
Lets take a look at example of implementation. This keywords are part of System.Threading.Tasks namespace. In this example I’m using console application.
using System;
using System.Threading.Tasks;
class Program
{
static void Main()
{
//Here I create an instance of MyClass
MyClass a = new MyClass();
//This calls the async Method
Task task = a.DoWork();
//This line is execued after the task is done
Console.WriteLine("Done");
Console.ReadLine();
}
public class MyClass{
//This async method contains await method
public async Task DoWork()
{
int res = await Task.FromResult<int>(Iterate(4, 10));
//This line is executed after the iterations
Console.WriteLine(res);
}
private int Iterate(int initialValue, int numberOfTimes)
{
for (int i = 0; i < numberOfTimes; i++)
{
initialValue++;
}
return initialValue;
}
}
//Output
//14
//Done</pre>
Async class can have 3 different returns:
- Task
- Task<> //Task with generic return value
- void
The async and await keywords don't cause additional threads to be created. Async methods don't require multithreading because an async method doesn't run on its own thread. The method runs on the current synchronization context and uses time on the thread only when the method is active. You can use Task.Run to move CPU-bound work to a background thread, but a background thread doesn't help with a process that's just waiting for results to become available.
With these keywords, we run methods in an asynchronous way. Threads are optional. This style of code is more responsive. A network access can occur with no program freeze. This is just a brief introduction to Asynchronous Programming. In next session I’ll try to cover this topic in more details. Stay Awesome!


Welcome to your Hence.io Application!
Custom Application files not found.
Your web server is running correctly, but you need to mount your application to the /app directory.


The documentation for this struct was generated from the following file:


tip calculator
how much was your bill ?
how many people sharing the bill ?
how was your service
Choose...
tip amount
$
total amount
$
each person owns
$


Encoding Basics This lesson will familiarize the user with different encoding schemes. Enter a string: Enter a password (optional): Description Encoded Decoded Base64 encoding is a simple reversable encoding used to encode bytes into ASCII characters. Useful for making bytes into a printable string, but provides no security. Entity encoding uses special sequences like & for special characters. This prevents these characters from being interpreted by most interpreters. Password based encryption (PBE) is strong encryption with a text password. Cannot be decrypted without the password /MI6QLf8NMA= MD5 hash is a checksum that can be used to validate a string or byte array, but cannot be reversed to find the original string or bytes. For obscure cryptographic reasons, it is better to use SHA-256 if you have a choice. 1B2M2Y8AsgTpgAmY7PhCfg== Cannot reverse a hash SHA-256 hash is a checksum that can be used to validate a string or byte array, but cannot be reversed to find the original string or bytes. 47DEQpj8HBSa+/TImW+5JCeuQeRkm5NMpJWZG3hSuFU= N/A Unicode encoding is... Not Implemented Not Implemented URL encoding is... Hex encoding simply encodes bytes into %xx format. Rot13 encoding is a way to make text unreadable, but is easily reversed and provides no security. XOR with password encoding is a weak encryption scheme that mixes a password into data. Double unicode encoding is... Not Implemented Not Implemented Double URL encoding is...