Name: David Killeffer
Bio: I work at Harvard Law School in the IT Department where I develop software to support the students, faculty, and staff. I have been in web development for about 14 years in various capacities, but the past several years I've been doing less and less pure "web" development, and more and more database and design/architecture work. I used to hack PHP back in the day (PHP3/4, 2001-2004 era) but I'm really rusty and haven't used it for a long time so I hope to refresh those skills through this course, as well as learn more about Git and more modern web dev techniques and practices.
Development Platform: MacBook Pro, Intel Core i7, 2.66Ghz, 8GB RAM, Mac OSX 10.6.8 Snow Leopard
Web Host: A Small Orange
Web Hosting Plan: Shared Plan, Medium
Git Repository: https://github.com/rayden7/neokobe.com
Fun CSS Tricks Used On This Page:


Please enter your information below:
Note: All required fields are marked with an *
$$LINKACCOUNTMESSAGE$$ $$CACELLINKEDACCOUNT$$


Try out our Premium Member services: Virtual Legal Assistant, Query Alert Service and an ad-free experience. Free for one month and pay only if you like it.
CASE NO.: Appeal (civil) 670 1997 PETITIONER: VST INDUSTRIES LTD. Vs. RESPONDENT: VST INDUSTRIES WORKERS UNION & ANR. DATE OF JUDGMENT: 07/12/2000 BENCH: S R Babu, S N Variava JUDGMENT:
L.....I.........T.......T.......T.......T.......T.......T..J RAJENDRA BABU, J. :
Civil Appeal No. 670 OF 1997 The appellant is a company incorporated under the Companies Act, 1956 with the object of manufacture and sale of cigarettes. Members of general public are the shareholders and the shares of the company are traded in through various stock exchanges in the country. A petition was filed under Article 226 of the Constitution by respondent No.1 seeking for a writ of mandamus to treat the members of the respondent- union who are employees working in the canteen of the appellants factory as employees of the appellant and for grant of monetary and other consequential benefits. The canteen is provided in the factory premises of the appellant pursuant to Section 46 of the Factories Act, 1948 [hereinafter referred to as the Act], which obliges a factory employing more than 250 workmen to provide such a canteen. On behalf of the respondents, it is contended that the appellant had been managing the canteen up to the year 1982 and thereafter introduced the contract system for maintaining the canteen so established; that though the management of the canteen had been entrusted to the contractors from time to time, the personnel employed in the canteen were retained by all the contractors and they have been paid salaries through contractors; that the workmen employed in the canteen have been provided with ESI benefits under the Code No. VST, the appellant, and benefits arising under the Employees Provident Funds Act are also provided similarly; that the appellant has also provided a building along with furniture, utensils, cutlery, gas, electricity, water supply and other facilities; that the contractor is engaged only to prepare the food and serve it to the employees and that the quality of the food and the rates are controlled by the management of the appellant.
On behalf of the appellant, contention was raised that no writ would lie against the appellant inasmuch as the appellant is a company, which is not an authority or a person against whom a writ would lie. It was submitted that they do not discharge any public duty and hence the writ cannot be issued. On the merits of the matter, the appellant disputed various questions of fact and urged that the decision of this Court in Parimal Chandra Raha vs. Life Insurance Corporation of India, 1995 Supp. (2) SCC 611, would not be applicable to the appellant in the facts and circumstances of the case. The learned Single Judge, who decided the matter in the first instance, held that a writ would lie against a company under a private management following the decision in T. Gattaiah vs. Commissioner of Labour, 1981 [II ] LLJ 54, in which it was held that establishment of a canteen and its maintenance is a statutory requirement; under Section 46 of the Act a public duty is imposed on the company to establish and maintain the canteen; inasmuch as members of the respondent-union are working in the canteen they are entitled to seek a mandamus. He, therefore, held that when a public duty is called upon to be discharged by a private management, a writ of mandamus would lie and could be issued under Article 226 of the Constitution. He thus rejected the contention.
On the merits of the matter, the learned Single Judge followed the decision in Parimal Chandra Rahas case holding that when the duty had been enjoined on the appellant to provide and maintain a canteen facility under the Factories Act it becomes the obligation of the appellant to establish a canteen and that is what the appellant had done. Therefore, when that work is got done through somebody else by providing the necessary infrastructure and other facilities, when the personnel did not change though the contractors changed from time to time, he held that they become employees of the appellant. On that basis the learned Single Judge granted reliefs sought for by the respondents, however, imposing certain restrictions with regard to the age, being medically fit, on the date of the writ petition, had put in a minimum of three years of continuous service and such service prior to the attainment of the minimum qualifying age under the company should be ignored.
On appeal, the Division Bench of the High Court affirmed the view taken by the learned Single Judge. The Division Bench referred to their decision in Rakesh Gupta vs. Hyderabad Stock Exchange Ltd. Hyderabad & Ors., AIR 1996 AP 430, that a writ in the nature of mandamus, certiorari and prohibition are recognised as public law remedies and are not available to enforce private law rights. However, noticing that the expression any person or authority used in Article 226 of the Constitution should not be confined only to statutory authorities and instrumentalities of State but would cover any other person or body performing public duty. The form of the body concerned is not very much relevant. What is relevant is the nature of the duty imposed on that body. The duty must be judged in the light of positive obligation owed by the person or authority to the affected party, no matter by what means the duty is imposed. On that basis, the Division Bench of the High Court dismissed the writ appeal. Hence this appeal.
On behalf of the appellant contention put forth at the forefront is that a writ would not lie against the appellant inasmuch as the appellant is engaged in the manufacture and sale of cigarettes and as an incident thereto has provided a canteen to its workmen pursuant to an obligation under Section 46 of the Act. Shri S. Ganesh, learned counsel for the appellant, pressed into service the decision of this Court in Anadi Mukta Sadguru Shree Muktajee Vandas Swami Survarna Jayanti Mahotsav Smarak Trust & Ors. vs. V.R.Rudani & Ors., 1989 (2) SCC 691, to contend that mere running of a factory to manufacture and sell of cigarettes can never be considered to be a public duty much less an incident thereto such as providing a canteen to its workmen. On behalf of the respondent, heavy reliance was placed on this decision and also the decision of the High Court in T. Gattaiahs case, to contend that in running a canteen under Section 46 of the Act, the appellant was discharging a public duty and, therefore, a writ of mandamus would lie against it.
In Anadi Muktas case, the contention, similar to the present case, had been raised. Writ petitioners were seeking for a writ of mandamus to put them back in the college and they were claiming only a terminal benefit or arrears of salary payable to them. In that background, it was observed that if the rights are purely of a private character no mandamus could be issued and also, if the management of the college were purely a private body with no public duty mandamus would not lie. In that case, the respondent was managing the affiliated college to which public money is paid as Government aid which played a major role in the control, maintenance and working of educational institutions. The aided institutions, it was noticed, like Government institutions discharge public function by way of imparting education to students. They were subject to the rules and regulations of the affiliating University and their activities were closely supervised by the University authorities. Employment in such institutions, therefore, is not devoid of any public character inasmuch as the service conditions of the academic staff were controlled by the University particularly in regard to their pay scales and the protection by University decisions creating a legal right or duty relationship between the staff and the management. When there is existence of such relationship mandamus could not be refused to such an aggrieved party. It was further explained in that decision that the term authority used in Article 226 of the Constitution should receive a liberal meaning unlike the term in Article 12, which is only for the purpose of enforcement of fundamental rights under Article 32. The words any person or authority used in Article 226 are, therefore, not be confined only to statutory authorities or instrumentalities of the State but would cover any other person or body performing public duty. The form of the body concerned is not very much relevant. What is relevant is the nature of the duty imposed on that body. The duty must be judged in the light of positive obligation owed by the person or authority to the affected party, no matter by what means the duty is imposed, if a positive obligation exists, mandamus cannot be denied.
In De Smith, Woolf and Jowells Judicial Review of Administrative Action, 5th Edn., it is noticed that not all the activities of the private bodies are subject to private law, e.g., the activities by private bodies may be governed by the standards of public law when its decisions are subject to duties conferred by statute or when, by virtue of the function it is performing or possibly its dominant position in the market, it is under an implied duty to act in the public interest. By way of illustration, it is noticed that a private company selected to run a prison although motivated by commercial profit should be regarded, at least in relation to some of its activities, as subject to public law because of the nature of the function it is performing. This is because the prisoners, for whose custody and care it is responsible, are in the prison in consequence of an order of the court, and the purpose and nature of their detention is a matter of public concern and interest. After detailed discussion, the learned authors have summarized the position with the following propositions:
(1) The test of whether a body is performing a public function, and is hence amenable to judicial review, may not depend upon the source of its power or whether the body is ostensibly a public or a private body. (2) The principles of judicial review prima facie govern the activities of bodies performing public functions. (3) However, not all decisions taken by bodies in the course of their public functions are the subject matter of judicial review. In the following two situations judicial review will not normally be appropriate even though the body may be performing a public function:
(a) Where some other branch of the law more appropriately governs the dispute between the parties. In such a case, that branch of the law and its remedies should and normally will be applied; and (b) Where there is a contract between the litigants. In such a case the express or implied terms of the agreement should normally govern the matter. This reflects the normal approach of English law, namely, that the terms of a contract will normally govern the transaction, or other relationship between the parties, rather than the general law. Thus, where a special method of resolving disputes (such as arbitration or resolution by private or domestic Tribunals) has been agreed by the parties (expressly or by necessary implication), that regime, and not judicial review, will normally govern the dispute.
The High Court has relied very strongly on the decision of a learned Single Judge in T. Gattaiahs case wherein it was stated that a writ may lie under Article 226 of the Constitution against a company incorporated under the Companies Act, 1956 as it is permissible to issue a writ against any person. Prima facie, therefore, a private person or an incorporated company cannot be taken out of the sweep and the contemplation of Article 226 of the Constitution. That decision does not take note of the fact as to the nature of the functions that a person or an incorporated company should be performing to attract judicial review under Article 226 of the Constitution. In Anadi Muktas case this Court examined the various aspects and the distinction between an authority and a person and after analysis of the decisions referred in that regard came to the conclusion that it is only in the circumstances when the authority or the person performs a public function or discharges a public duty Article 226 of the Constitution can be invoked. In the present case, the appellant is engaged in the manufacture and sale of cigarettes. Manufacture and sale of cigarettes will not involve any public function. Incidental to that activity there is an obligation under Section 46 of the Act to set up a canteen when the establishment has more than 250 workmen. That means, it is a condition of service in relation to a workman providing better facilities to workmen to discharge their duties properly and maintain their own health or welfare. In other words, it is only a labour welfare device for the benefit of its work force unlike a provision where Pollution Control Act makes it obligatory even on a private company not to discharge certain effluents. In such cases public duty is owed to the public in general and not specific to any person or group of persons. Further the damage that would be caused in not observing them is immense. If merely what can be considered a part of the conditions of service of a workman is violated then we do not think there is any justification to hold that such activity will amount to public duty. Thus, we are of the view that the High Court fell into error that appellant is amenable to writ jurisdiction.
This Court in Indian Petrochemicals Corporation Ltd. & Anr. vs. Shramik Sena & Ors., 1999(6) SCC 439, referred to the decisions in Parimal Chandra Rahas case, Reserve Bank of India vs. Workmen, 1996 (3) SCC 267, and M.M.R.Khan vs. Union of India, 1990 Supp. SCC 191, and held that the workmen of a statutory canteen, as in the present case, would be workmen of an establishment for the purposes of the Act only and not for other purposes. Thereafter, this Court further examined whether the material on record would show that the workmen are employees of the management for all purposes and adopted some of the tests as follows:
1. The canteen has been there since the inception of the appellants factory. 2. The workmen have been employed for long years and despite a change of contractors the workers have continued to be employed in the canteen. 3. The premises, furniture, fixture, fuel, electricity, utensils, etc. have been provided for by the appellant. 4. The wages of the canteen workers have to be reimbursed by the appellant. 5. The supervision and control on the canteen is exercised by the appellant through its authorised officer, as can be seen from the various clauses of the contract between the appellant and the contractor. 6. The contractor is nothing but an agent or a manager of the appellant, who works completely under the supervision, control and directions of the appellant. 7. The workmen have the protection of continuous employment in the establishment.
In the present case, the findings recorded by the learned Single Judge on examination of the facts available is that there had been a canteen within the premises of the appellant up to the year 1982 and it is only from 1982 onwards the management of the canteen has been entrusted to a private contractor; that even after change of the contractor, the canteen workers have continued to be the same irrespective of the change in the contractors from time to time; that wages were paid to the workmen in the canteen by the management through the contractor; that the appellant has provided the accommodation, furniture, fuel, electricity, utensils, etc.; that the management exercises control over the standard in quality, quantity and the rate of the food items supplied to the workmen for whose benefit the canteen is established. Thus, these circumstances clearly indicate that the appellant has a complete control over the activities in respect of the canteen and the contractor has absolutely no discretion either in regard to the menu, quality and quantity of the food items much less the rate at which the same are supplied to the workmen. When the management of the appellant exercises such a complete control, the canteen shall be deemed to be run by the management itself. The appellant in any manner cannot controvert these facts.
We do agree that the respondents have a strong case on merits. Since we have held that the High Court had no jurisdiction to entertain a petition under Article 226 of the Constitution, we would have set aside the order made by the High Court. However, in the special features of the case, although we do not agree with the High Court on the first question raised, we feel, after clarifying the legal position, that we should not disturb the decision given by the High Court.
The appeal, therefore, stands dismissed subject to what is stated in regard to writs to be issued by the High Court in respect of persons or authorities exercising public duty or otherwise. No costs.
Civil Appeal Nos. 6533/97 & 6534/97 In these appeals, on a reference made on the question whether certain persons employed in the canteen should be treated as employees of the appellant and, if so, in what category they are to be fitted in and to what wages they are entitled to, the Industrial Tribunal, Hyderabad, [hereinafter referred to as the Tribunal] inquired into the matter. The contesting respondents contended that the workmen in the canteen had been working right from its inception, that is, since 1967; that from 1976 onwards, after expiry of the contract with the Industrial Catering Services, they had been directly working with the appellant without any contractor; that they sought for regularization of their services by letter dated 28.2.1978; that the said letter was corrected and redrafted by the Personnel Manager to indicate the idea of floating an Association/Society to run the canteen; that this modified request contained in Ex.W-49 was stated to be contradictory to the stand taken by the workmen all through. The Tribunal concluded that there was no doubt that the Personnel Manager modified Ex.W-50 and obtained Ex.W-49 in the modified form. The Tribunal held against them, as there was no material to show that the management had discussed on each point and thereafter an agreement had been drafted. The Tribunal recorded the findings that the canteen had been working for the benefit of the workmen within the premises provided by and with the equipment supplied by the appellant; that the appellant supplies the provisions for the preparation of foodstuffs; that the appellant issues token to the employees, who on production of the same obtain foodstuffs from the canteen; that the Committee appointed by the appellant decides the menu and as per the directions and supervision of the Catering Officer, the canteen functions; that the quality and quantity of the foodstuffs is supervised by him, who functions under the Committee. The contributions like ESI, Provident Fund, etc. had also been categorically specified to be provided by the appellant and ESI code for the permanent establishment and for the present workmen was the same; that after the evidence was tendered by the workmen the appellant got the code changed and the appellant transferred the workmen from one place to another and that the amount to be surrendered by way of unpaid salaries had to be remitted back to the management. Thus the Tribunal held that these facts clearly indicated that the appellant exercised administrative, financial and disciplinary control over the workmen in question. The Tribunal held that no other material is required to hold them to be employees of the appellant. In those circumstances, the Tribunal passed an award that these workmen should be treated as employees of the appellant and they are entitled to payment of appropriate scales and designations in terms of Ex.W12 and W14 from 1.4.1979 with all consequential and attendant benefits of arrears of pay, etc. together with counting of entire service for the purpose of terminal benefits. Against this award, a writ petition was filed before the High Court. The High Court dismissed the same stating that it is covered by another matter. It is unnecessary to examine the contention whether the matter is covered by a subsequent decision or not as the facts of the present case stand on its own. The reference had been made to the Tribunal and adjudication had been made by the Tribunal as to the status of the workmen, the nature of employment, control exercised by the appellant, which leave no room for doubt that they are the employees of the appellant.
A contention is also sought to be made that it is not possible to run a canteen in the refinery area. It is contended that under the Petroleum Rules framed under the Petroleum Act, 1934, there are certain hazardous areas where there cannot be a canteen as no fire, furnace, source of heat or light capable of igniting inflammable vapours shall be allowed except in the firing spaces or stills and boilers. However, there is no material on record to show that the canteen is located in such an area where it would be hazardous to have a fire, furnace, source of heat or light to cook food. In the absence of such material, we find no substance in this contention. It is brought to our notice that a fire had taken place on a tank on 14.9.1997 and that it was extinguished after 14 days, which severely damaged all the building including the canteen and that food and beverages being provided to its employees by making an arrangement to obtain the same from outside the premises of the appellant. These facts are brought to our notice by an affidavit filed on 21.11.2000. But these factors do not come in the way of the award made by the Tribunal, as it is possible to locate the canteen in an appropriate place where there is no hazard of the kind envisaged under the Petroleum Rules. This contention is also rejected.
In the circumstances aforesaid, the contention vis-à-vis the findings recorded by the Tribunal, we find absolutely no merit in these appeals and the same shall stand dismissed. No costs.


Intro to Git Commands
Git is a version control software system designed for facilitating GitHub activities. Version control is important for tracking changes and preventing loss of data. This cheat sheet provides common git commands for reference.
Making Changes
These commands are used to review edits and changes to be made to the repository.
git status
Shows files to be commited.
git add
Stages the changes to be committed.
git commit -m [description]
Records changes permanently to version history.
git push
Uploads all local branch commits to GitHub.
git diff
Shows changes not currently staged to be committed.
git reset [file]
Unstages a file from being committed, but preserves its content.
Group Changes
These commands are for accessing and changing branches.
git branch
Lists all branches in the current repository.
git checkout [branch name]
Switches to specified branch and updates working directory.
git merge [branch]
Combines specified branch's history into current branch.
git branch -d [branch name]
Deletes specified branch.
git branch [branch name]
Creates a new branch.
Create Repositories
These commands are for creating and changing repositories.
git init [project name]
Creates new local repository with specified name.
git clone [URL]
Downloads a project and its entire history from the specified URL.
Refactored Filenames
These commands are for changing and removing files.
git rm [file]
Deletes file from working directory and stages file for deletion.
git rm --cached [file]
Removes file from version control but keeps file locally.
git mv [file original] [file renamed]
Changes file name and prepares for commit.
Review History
These commands are for inspecting the evolution of project files.
git log
List history for current branch.
git log --follow [file]
Lists version history for specified file including renames.
git diff [first branch]...[second branch]
Shows content differences between two branches.
git show [commit]
Shows meta deta and content changes of a specific commit.
Redo Commits
These commands are for erasing mistakes and changing history.
git reset [commit]
Undo all commits after specified commit.
git reset --hard [commit]
Discards all history and reverts back to specified commit.
Additional Resources
Here are some links to helpful resources.


| binned_residuals | Binned residuals for binomial logistic regression |
| check_autocorrelation | Check model for independence of residuals. |
| check_autocorrelation.default | Check model for independence of residuals. |
| check_collinearity | Check for multicollinearity of model terms |
| check_collinearity.default | Check for multicollinearity of model terms |
| check_collinearity.glmmTMB | Check for multicollinearity of model terms |
| check_convergence | Convergence test for mixed effects models |
| check_distribution | Classify the distribution of a model-family using machine learning |
| check_heteroscedasticity | Check model for (non-)constant error variance |
| check_heteroskedasticity | Check model for (non-)constant error variance |
| check_homogeneity | Check model for homogeneity of variances |
| check_homogeneity.afex_aov | Check model for homogeneity of variances |
| check_itemscale | Describe Properties of Item Scales |
| check_model | Visual check of model assumptions |
| check_model.default | Visual check of model assumptions |
| check_normality | Check model for (non-)normality of residuals. |
| check_normality.merMod | Check model for (non-)normality of residuals. |
| check_outliers | Outliers detection (check for influential observations) |
| check_outliers.data.frame | Outliers detection (check for influential observations) |
| check_outliers.default | Outliers detection (check for influential observations) |
| check_outliers.numeric | Outliers detection (check for influential observations) |
| check_overdispersion | Check overdispersion of GL(M)M's |
| check_posterior_predictions | Posterior predictive checks for frequentist models |
| check_singularity | Check mixed models for boundary fits |
| check_sphericity | Check model for violation of sphericity |
| check_zeroinflation | Check for zero-inflation in count models |
| classify_distribution | Classify the distribution of a model-family using machine learning |
| compare_performance | Compare performance of different models |
| cronbachs_alpha | Cronbach's Alpha for Items or Scales |
| display.performance_model | Print tables in different output formats |
| icc | Intraclass Correlation Coefficient (ICC) |
| item_difficulty | Difficulty of Questionnaire Items |
| item_intercor | Mean Inter-Item-Correlation |
| item_reliability | Reliability Test for Items or Scales |
| item_split_half | Split-Half Reliability |
| looic | LOO-related Indices for Bayesian regressions. |
| mae | Mean Absolute Error of Models |
| model_performance | Model Performance |
| model_performance.BFBayesFactor | Performance of Bayesian Models |
| model_performance.ivreg | Performance of instrumental variable regression models |
| model_performance.kmeans | Model summary for k-means clustering |
| model_performance.lavaan | Performance of lavaan SEM / CFA Models |
| model_performance.lm | Performance of Regression Models |
| model_performance.merMod | Performance of Mixed Models |
| model_performance.rma | Performance of Meta-Analysis Models |
| model_performance.stanreg | Performance of Bayesian Models |
| mse | Mean Square Error of Linear Models |
| multicollinearity | Check for multicollinearity of model terms |
| performance | Model Performance |
| performance_accuracy | Accuracy of predictions from model fit |
| performance_aic | Compute the AIC or second-order AIC |
| performance_aicc | Compute the AIC or second-order AIC |
| performance_hosmer | Hosmer-Lemeshow goodness-of-fit test |
| performance_logloss | Log Loss |
| performance_lrt | Test if Models are Different |
| performance_mae | Mean Absolute Error of Models |
| performance_mse | Mean Square Error of Linear Models |
| performance_pcp | Percentage of Correct Predictions |
| performance_rmse | Root Mean Squared Error |
| performance_roc | Simple ROC curve |
| performance_rse | Residual Standard Error for Linear Models |
| performance_score | Proper Scoring Rules |
| posterior_predictive_check | Posterior predictive checks for frequentist models |
| pp_check | Posterior predictive checks for frequentist models |
| pp_check.lm | Posterior predictive checks for frequentist models |
| print_md.performance_model | Print tables in different output formats |
| r2 | Compute the model's R2 |
| r2.merMod | Compute the model's R2 |
| r2_bayes | Bayesian R2 |
| r2_coxsnell | Cox & Snell's R2 |
| r2_efron | Efron's R2 |
| r2_kullback | Kullback-Leibler R2 |
| r2_loo | LOO-adjusted R2 |
| r2_mcfadden | McFadden's R2 |
| r2_mckelvey | McKelvey & Zavoinas R2 |
| r2_nagelkerke | Nagelkerke's R2 |
| r2_nakagawa | Nakagawa's R2 for mixed models |
| r2_posterior | Bayesian R2 |
| r2_posterior.BFBayesFactor | Bayesian R2 |
| r2_posterior.brmsfit | Bayesian R2 |
| r2_posterior.stanreg | Bayesian R2 |
| r2_somers | Somers' Dxy rank correlation for binary outcomes |
| r2_tjur | Tjur's R2 - coefficient of determination (D) |
| r2_xu | Xu' R2 (Omega-squared) |
| r2_zeroinflated | R2 for models with zero-inflation |
| rmse | Root Mean Squared Error |
| test_bf | Test if Models are Different |
| test_bf.default | Test if Models are Different |
| test_likelihoodratio | Test if Models are Different |
| test_lrt | Test if Models are Different |
| test_performance | Test if Models are Different |
| test_vuong | Test if Models are Different |
| test_wald | Test if Models are Different |
| variance_decomposition | Intraclass Correlation Coefficient (ICC) |


Seedwater Consulting Expertise and Staff
Rigorous, intelligent, and reliable.
Seedwater offers tailored development consulting services to government agencies, international NGOs, local agencies, universities, and on an individual project basis.
Our Core Capacities Include:
Our Core Team Members Are:
VALERIE STULL, PhD, MPH
co-founder and CEO
PhD in Environment and Resources, UW Madison
Environmental Health Specialist
MPH, Kansas State University
BS, Colorado State University
Fulbright Scholar
TOBIAS LUNT, MS
co-founder and President
Joint MS in Agroecology and Plant Pathology, UW Madison
BS, Dartmouth College
Agriculture and Climate Specialist
Fulbright Scholar
JESSICA JONES-HUGHES, MPH
co-founder and Chairwoman
MPH, Tufts University
BS, Miami University of Ohio
Fair Trade, Supply Chains, and Equity Specialist


#dearLondon for TfL
keywords
: TfL, Johnston Typeface, Twitter, Social engagement
To celebrate the 100th anniversary of the Johnston typeface, Transport for London and KK Outlet have commissioned to create a bespoke twitter machine to include as many Londoners in the exhibition as possible. Using the Johnston typeface the specially designed and created Twitter Machine will print all tweets featuring #dearlondon live in the KK Outlet gallery.
This Twitter Machine will function as a low-fi printing press which is linked direct to the #dearlondon hashtag on twitter. The audience are encouraged to tweet their 70 character love letter to London in their own language and join in the conversation.
---------------
Commisioned by Transport for London, KK Outlet
In Collaboration with: Florian Dussopt, Laurence Symonds
took part in as a software coder
Year: 2016-


grewalsatinder
07-Dec-19 01:19 PM
Anybody compiled latest build of Komodo on Mac?
I'm getting 'configure: error: Cannot enable RELRO'
quick google search says about error relating to ld
I have ld version ld64-450.3
I tried jl777 komodo's beta branch and KomodoPlatform Komodo's beta branch
using ./zcbuild/build.sh -j6
assuming using correct mac build file


Use TODID to define goals, create tasks to help you achieve those goals, and track what you have accomplished.


Jonathan Everett was born in small town Tullahoma, Tennessee. Seemingly from birth, he had the heart of an entertainer and storyteller. Lost (or very well-hidden...) home videos depict him dancing to Tina Turner and trying way too hard to be funny. Something he described as having "jokes in my mouth." Read more!
Still, it wasn't until post-college adult life that he found an outlet in film acting. Dedicating himself to the craft, he landed his first film role as the villain in a local production. Since then, Jonathan has performed in dozens of projects in television, feature films, short films, music videos, and web series.
Flexibility and range are the defining characteristics of Jonathan's acting style. Prominent projects include indie flick, "What's the Matter With Gerald?", televsion's "Murder Comes to Town," and the award-winning web series, "Johnny Dynamo." His writing, producing, and directorial debut, "The Heart Heist," also took 3rd place in the 54 Film Fest.
2017 will see a lot of expansion in Jonathan's career. His latest starring role in comedy is aiming for an April premiere, and he's set to play the ruthless and lethal villain of Omega Pictures' upcoming "Day: 7." And, to top it all off, production for "The Last Laugh," is expected to begin in the summer. The film will be Jonathan's first solo-writing project, in which he will co-direct, co-produce, and star.
If you'd like to keep up to date on Jonathan's career or reach him for booking, head on over to the Contact page!


ROOM BOOKING
NAME:
ADDRESS:
EMAIL ID:
STATE:
PASSWORD:
EMAIL ID:
MOBILE NUMBER:
COUNTRY NAME:
no of person:
no of nights:
NO OF ROOMS:
NO OF NIGHTS:
maritual status
select
single
married
unmarried
other
state
uttar pradesh
bihar
rajesthan
west bengal
jammu kashmir
himachal pradesh
punjab
hariyana
madhhya pradesh
gujrat
jharkhand
chhatisgarh
maharashtra
kerala
karantaka
andhra pradesh
new delhi
orissa
ROOM TYPE
AC
NON AC
CHECK IN DATE:
1
2
3
4
5
Month
January
February
March
April
May
Year
1947
1948
1949
1950
1951
CHECK OUT DATE:
1
2
3
4
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
Month
January
February
March
April
May
Year
1947
1948
1949
1950
1951
OTHER SRVICES
transport
cab
others
total tables:
no of person :
hbtu


Flashing the Creality Ender 3 with a Raspberry Pi
Most of the guides on the internet only had instructions for Arduino which I did not have lying around. Instead I had a Raspberry Pi and knew it’s GPIO pinouts could be used but couldn’t really find much on until I found: Flash Bootloader and Install Firmware With Raspberry PI. PLEASE SEE THIS GUIDE FOR ANY TROUBLESHOOTING I have re-written it to succinctly summarize the instructions for flashing the Ender 3 using a Raspberry Pi.
NOTE: This guide was written for macOS so you may have to make some substitutions on instructions for your OS.
Things you will need
- Raspberry Pi
- Should be physically close to the Ender 3
- Should be removed from any case with access to the GPIO pins
- Should be able to get an SSH prompt (you can use my guide on Setting up Kubernetes and OpenFaaS on a Raspberry Pi cluster using Hypriot if you do not already have this leaving off the steps after Setting up the cluster)
- Six female-to-female jumper wires (Amazon Prime)
- A macOS computer with homebrew installed
Setup
Before we get started we need to install a few things on both your machine and the Raspberry Pi.
On your machine
-
Install Arduino IDE
1 2
brew cask install --appdir="/Applications" arduino
-
Download the TH3D firmware
1 2 3 4
cd ~/Desktop git clone https://github.com/houseofbugs/TH3D-Unified-U1.R2.git cd TH3D-Unified-U1.R2/TH3DUF_R2/
-
Open the Arduino IDE
- Go to Arduino > Preferences and paste https://raw.githubusercontent.com/Lauszus/Sanguino/master/package_lauszus_sanguino_index.json into Additional Board Manager URLs and click OK
- Go to Tools > Board and select Sanguino
- Go to Tools > Processor and select ATmega1284 or ATmega1284P (16 MHz)
- Go to Tools > Manage Libraries… and type
U8glib
and click Install - Go to File > Open… and select
TH3DUF_R2.ino
- Go to the tab labeled Configuration.h find the line
#define ENDER3
and remove the two leading//
- In the same tab file the line
#define DISABLE_BOOT
and remove the two leading//
- Go to Sketch > Export compiled Binary
You should now see two files: TH3DUF_R2.ino.sanguino.hex
and
TH3DUF_R2.ino.with_bootloader.sanguino.hex
- Copy the files to the Raspberry Pi machine
1 2
scp -i ~/.ssh/YOUR_PRIVATE_KEY.rsa TH3DUF_R2.ino.sanguino.hex TH3DUF_R2.ino.with_bootloader.sanguino.hex pi@YOUR_RASPBERRY_PI_IP:~/
Change pi
to the Raspberry Pi username and YOUR_RASPBERRY_PI_IP
to the IP of
the Raspberry Pi machine you are using on your home network
Connect the Ender 3 board and the Raspberry Pi
UNPLUG THE ENDER 3 POWER AND RASPBERRY PI POWER
Here is the Ender 3 Board with the pins you will be connecting labeled:
And here is the Raspberry Pi 3 board with the pins you will be connecting:
Given these diagrams you can connect your jumper cables in the following way
| Ender3 | RaspberryPi |
|---|---|
| 5V | PIN 2 |
| MISO | PIN 12 |
| MOSI | PIN 16 |
| SCK | PIN 18 |
| GND | PIN 6 |
| RESET | PIN 11 |
On the Raspberry Pi
-
Plug back in the Raspberry Pi and wait some time for it to boot
-
SSH to the Raspberry Pi emachine on your network which you have just copied the
.hex
files to above in the Arduino IDE section above1 2
ssh -i ~/.ssh/YOUR_PRIVATE_KEY.rsa pi@YOUR_RASPBERRY_PI_IP:~/
-
Install the avrdude packages necessary
1 2
sudo apt-get install avrdude
-
Copy the
/etc/avrdude.conf
to the home directory1 2
cp /etc/avrdude.conf ~/
-
Find the
linuxspi
line and change the baud rate to115200
1 2 3 4 5 6 7 8
programmer id = "linuxspi"; desc = "Use Linux SPI device in /dev/spidev*"; type = "linuxspi"; reset = 25; baudrate=115200; ;
-
Add the following to the bottom of the file
1 2 3 4 5 6 7 8 9 10 11
# NOTE: THE LAST COMMA IS *NOT* A TYPO AND REQUIRED programmer id = "pi_1"; desc = "Use the Linux sysfs interface to bitbang GPIO lines"; type = "linuxgpio"; reset = 17; sck = 24; mosi = 23; miso = 18; ;
-
Test to see if the board is recognized
1 2 3 4 5 6
sudo avrdude \ -p atmega1284p \ -C ~/avrdude.conf \ -c pi_1 \ –v
You should see output similar to the following:
1 2 3 4 5 6
avrdude: AVR device initialized and ready to accept instructions Reading | ################################################## | 100% 0.00s avrdude: Device signature = 0x1e9705 (probably m1284p) avrdude: safemode: Fuses OK (E:FD, H:DC, L:D6) avrdude done. Thank you.
If you do NOT see the following DO NOT PROCEED and check your PIN connections.
-
ACTION STEP Now you can flash the board
1 2 3 4 5 6 7
sudo avrdude \ -p atmega1284p \ -C ~/avrdude.conf \ -c pi_1 \ -v \ -U flash:w:TH3DUF_R2.ino.with_bootloader.sanguino.hex:i
You should see the following output:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
avrdude: Version 6.3-20171130 ... System wide configuration file is "/home/pi/avrdude.conf" User configuration file is "/root/.avrduderc" User configuration file does not exist or is not a regular file, skipping ... Programmer Type : linuxgpio Description : Use the Linux sysfs interface to bitbang GPIO lines Pin assignment : /sys/class/gpio/gpio{n} RESET = 17 SCK = 24 MOSI = 23 MISO = 18 avrdude: AVR device initialized and ready to accept instructions Reading | ################################################## | 100% 0.00s ... avrdude: reading input file "TH3DUF_R2.ino.with_bootloader.sanguino.hex" avrdude: writing flash (131072 bytes): Writing | ################################################## | 100% 30.48s avrdude: 131072 bytes of flash written ... avrdude: reading on-chip flash data: Reading | ################################################## | 100% 28.04s avrdude: verifying ... avrdude: 131072 bytes of flash verified ... avrdude done. Thank you.
-
You should now run the following
1 2
sudo shutdown -h now
-
Wait one solid minute and now unplug the micro USB POWER to the Raspberry Pi
-
Unplug all of the jumper cables from the Raspberry Pi
You are now done flashing the board. You can now plug back in the Ender 3 and power it on. You may see a blank screen for a moment and then it should show the usual screen you see when there is no print in progress.
Extra
If you are like me you would like to:
- Install a BLTouch
- Install the Microswiss hotend
- Install stepper motor dampers
- Install the Petsfang to work with the dual blower 5015 fan mod and Microswiss hotend
The trick to both the BLTouch with the Petsfang dual 5015 blowers are some modifications to the firmware. The 5015 fans whine and there is a fix in the TH3D firmware for this as well as some tuning and enabling of the BLTouch.
Also, my Ender 3 came with pressed fit pulleys, and it wasn’t until I discovered this YouTube video that I knew I was hitting an obstacle that was not readily mentioned elsewhere. For this I had to print out modifications (mentioned and linked by the video) that I could then install the stepper motor dampers with the press fit pulleys. This required inverting the X-axis motor.
All of my modifications to the TH3D firmware are checked in under my fork of the repository and you can view those exact differences in the diff of my fork branch from the TH3D upstream master.


Sylvie and Bruno Concluded
by Lewis Carroll
Chapter 5: “Matilda Jane”
Additional Information
- Year Published: 1893
- Language: English
- Country of Origin: England
- Source: Carroll, L. (1893). Sylvie and Bruno Concluded. London: Macmillan and Co.
-
Readability:
- Flesch–Kincaid Level: 6.5
- Word Count: 2,936
- Genre: Fantasy
- Keywords: 19th century literature, british literature, lewis carroll
- ✎ Cite This
Downloads
“Come to me, my little gentleman,” said our hostess, lifting Bruno into her lap,” and tell me everything.”
“I ca’n’t,” said Bruno. “There wouldn’t be time. Besides, I don’t know everything.”
The good woman looked a little puzzled, and turned to Sylvie for help. “Does he like riding?” she asked.
“Yes, I think so,” Sylvie gently replied. “He’s just had a ride on Nero.”
“Ah, Nero’s a grand dog, isn’t he? Were you ever outside a horse, my little man?”
“Always!” Bruno said with great decision. “Never was inside one. Was oo?”
Here I thought it well to interpose, and to mention the business on which we had come, and so relieved her, for a few minutes, from Bruno’s perplexing questions.
“And those dear children will like a bit of cake, I’ll warrant!” said the farmer’s hospitable wife, when the business was concluded, as she opened her cupboard, and brought out a cake. “And don’t you waste the crust, little gentleman!” she added, as she handed a good slice of it to Bruno. “You know what the poetry-book says about wilful waste?”
“No, I don’t,” said Bruno. “What doos he say about it,”
“Tell him, Bessie!”  “What’s that your poetry-book says about wilful waste?”
“For wilful waste makes woeful want,” Bessie recited, in an almost inaudible whisper: “and you may live to say ‘How much I wish I had the crust that then I threw away!’”
“Now try if you can say it, my dear! For wilful—”
“For wifful—sumfinoruvver ” Bruno began, readily enough; and then there came a dead pause. “Ca’n’t remember no more!”
“Well, what do you learn from it, then? You can tell us that, at any rate?”
Bruno ate a little more cake, and considered: but the moral did not seem to him to be a very obvious one.
“Always to—” Sylvie prompted him in a whisper.
“Always to—” Bruno softly repeated: and then, with sudden inspiration, “always to look where it goes to!”
“Where what goes to, darling?”
“Why the crust, a course!” said Bruno. “Then, if I lived to say ‘How much I wiss I had the crust ‘ (and all that), I’d know where I frew it to!”
This new interpretation quite puzzled the good woman. She returned to the subject of “Bessie”. “Wouldn’t you like to see Bessie’s doll, my dears! Bessie, take the little lady and gentleman to see Matilda Jane!”
Bessie’s shyness thawed away in a moment. “Matilda Jane has just woke up,” she stated, confidentially, to Sylvie. “Won’t you help me on with her frock? Them strings is such a bother to tie!”
“I can tie strings,” we heard, in Sylvie’s gentle voice, as the two little girls left the room together. Bruno ignored the whole proceeding, and strolled to the window, quite with the air of a fashionable gentleman. Little girls, and dolls, were not at all in his line.
And forthwith the fond mother proceeded to tell me (as what mother is not ready to do?) of all Bessie’s virtues (and vices too, for the matter of that) and of the many fearful maladies which, notwithstanding those ruddy cheeks and that plump little figure, had nearly, time and again, swept her from the face of the earth.
When the full stream of loving memories had nearly run itself out, I began to question her about the working men of that neighbourhood, and specially the “Willie”‘ whom we had heard of at his cottage. “He was a good fellow once,” said my kind hostess: “but it’s the drink has ruined him! Not that I’d rob them of the drink—it’s good for the most of them—but there’s some as is too weak to stand agin’ temptations: it’s a thousand pities, for them, as they ever built the Golden Lion at the corner there!”
“The Golden Lion?” I repeated.
“It’s the new Public,” my hostess explained. “And it stands right in the way, and handy for the workmen, as they come back from the brickfields, as it might be to-day, with their week’s wages. A deal of money gets wasted that way. And some of ‘em gets drunk.”
“If only they could have it in their own houses—” I mused, hardly knowing I had said the words out loud.
“That’s it!” she eagerly exclaimed. It was evidently a solution, of the problem, that she had already thought out. “If only you could manage, so’s each man to have his own little barrel in his own house—there’d hardly be a drunken man in the length and breadth of the land!”
And then I told her the old story—about a certain cottager who bought himself a little barrel of beer, and installed his wife as bar-keeper: and how, every time he wanted his mug of beer, he regularly paid her over the counter for it: and how she never would let him go on “tick”, and was a perfectly inflexible bar-keeper in never letting him have more than his proper allowance: and how, every time the barrel needed refilling, she had plenty to do it with, and something over for her money-box: and how, at the end of the year, he not only found himself in first-rate health and spirits, with that undefinable but quite unmistakable air which always distinguishes the sober man from the one who takes “a drop too much”, but had quite a box full of money, all saved out of his own pence!
“If only they’d all do like that!” said the good woman, wiping her eyes, which were overflowing with kindly sympathy. “Drink hadn’t need to be the curse it is to some—”
“Only a curse”, I said, “when it is used wrongly. Any of God’s gifts may be turned into a curse, unless we use it wisely. But we must be getting home. Would you call the little girls? Matilda Jane has seen enough of company, for one day, I’m sure!”
“I’ll find ‘em in a minute,” said my hostess, as she rose to leave the room. “Maybe that young gentleman saw which way they went?”
“Where are they, Bruno?” I said.
“They ain’t in the field,” was Bruno’s rather evasive reply, “ ‘cause there’s nothing but pigs there, and Sylvie isn’t a pig. Now don’t interrupt me any more, ‘cause I’m telling a story to this fly; and it wo’n’t attend!”
“They’re among the apples, I’ll warrant ‘em!” said the Farmer’s wife. So we left Bruno to finish his story, and went out into the orchard, where we soon came upon the children, walking sedately side by side, Sylvie carrying the doll, while little Bess carefully shaded its face, with a large cabbage-leaf for a parasol.
As soon as they caught sight of us, little Bess dropped her cabbage-leaf and came running to meet us, Sylvie following more slowly, as her precious charge evidently needed great care and attention.
“I’m its Mamma, and Sylvie’s the Head-Nurse,” Bessie explained: “and Sylvie’s taught me ever such a pretty song, for me to sing to Matilda Jane!”
“Let’s hear it once more, Sylvie,” I said, delighted at getting the chance I had long wished for, of hearing her sing. But Sylvie turned shy and frightened in a moment.
“No, please not!” she said, in an earnest “aside” to me. “Bessie knows it quite perfect now. Bessie can sing it!”
“Aye, aye! Let Bessie sing it!” said the proud mother. “Bessie has a bonny voice of her own,” (this again was an “aside” to me) “though I say it as shouldn’t!”
Bessie was only too happy to accept the “encore”. So the plump little Mamma sat down at our feet, with her hideous daughter reclining stiffly across her lap (it was one of a kind that wo’n’t sit down, under any amount of persuasion), and, with a face simply beaming with delight, began the lullaby, in a shout that ought to have frightened the poor baby into fits. The Head-Nurse crouched down behind her, keeping herself respectfully in the background, with her hands on the shoulders of her little mistress, so as to be ready to act as Prompter, if required, and to supply “each gap in faithless memory void”.
The shout, with which she began, proved to be only a momentary effort. After a very few notes, Bessie toned down, and sang on in a small but very sweet voice. At first her great black eyes were fixed on her mother, but soon her gaze wandered upwards, among the apples, and she seemed to have quite forgotten that she had any other audience than her Baby, and her Head-Nurse, who once or twice supplied, almost inaudibly, the right note, when the singer was getting a little “flat”.
“Matilda Jane, you never look
At any toy or picture-book:
I show you pretty things in vain—
You must be blind, Matilda Jane
“I ask you riddles, tell you tales,
But all our conversation fails:
You never answer me again—
I fear you’re dumb, Matilda Jane!
“Matilda, darling, when I call,
You never seem to hear at all:
I shout with all my might and main—
but you’re so deaf, Matilda Jane!

She sang three of the verses in a rather perfunctory style, but the last stanza evidently excited the little maiden. Her voice rose, ever clearer and louder: she had a rapt look on her face, as if suddenly inspired, and, as she sang the last few words, she clasped to her heart the inattentive Matilda Jane.
“Kiss it now!” prompted the Head-Nurse. And in a moment the simpering meaningless face of the Baby was covered with a shower of passionate kisses.
“What a bonny song!” cried the Farmer’s wife. “Who made the words, dearie?”
“I—I think I’ll look for Bruno,” Sylvie said demurely, and left us hastily. The curious child seemed always afraid of being praised, or even noticed.
“Sylvie planned the words,” Bessie informed us, proud of her superior information: “and Bruno planned the music—and I sang it!” (this last circumstance, by the way, we did not need to be told).
So we followed Sylvie, and all entered the parlour together. Bruno was still standing at the window, with his elbows on the sill. He had, apparently, finished the story that he was telling to the fly, and had found a new occupation. “Don’t imperrupt!” he said as we came in. “I’m counting the Pigs in the field!”
“How many are there?” I enquired.
“About a thousand and four,” said Bruno.
“You mean ‘about a thousand’,” Sylvie corrected him. “There’s no good saying ’and four: you ca’n’t be sure about the four!”
“And you’re as wrong as ever!” Bruno exclaimed triumphantly. “It’s just the four I can be sure about; ‘cause they’re here, grubbling under the window! It’s the thousand I isn’t pruffickly sure about!”
“But some of them have gone into the sty,” Sylvie said, leaning over him to look out of the window.
“Yes,” said Bruno; “but they went so slowly and so fewly, I didn’t care to count them.”
“We must be going, children,” I said. “Wish Bessie good-bye.” Sylvie flung her arms round the little maiden’s neck, and kissed her: but Bruno stood aloof, looking unusually shy. (”I never kiss nobody but Sylvie!” he explained to me afterwards.) The Farmer’s wife showed us out: and we were soon on our way back to Elveston.
“And that’s the new public-house that we were talking about, I suppose?” I said, as we came in sight of a long low building, with the words “THE GOLDEN LION” over the door.
“Yes, that’s it,” said Sylvie. “I wonder if her Willie’s inside? Run in, Bruno, and see if he’s there.”
I interposed, feeling that Bruno was, in a sort of way, in my care.  For already the revellers were getting noisy: and a wild discord of singing, shouting, and meaningless laughter came to us through the open windows.
“They wo’n’t see him, you know,” Sylvie explained. “Wait a minute, Bruno!” She clasped the jewel, that always hung round her neck, between the palms of her hands, and muttered a few words to herself. What they were I could not at all make out, but some mysterious change seemed instantly to pass over us. My feet seemed to me no longer to press the ground, and the dream-like feeling came upon me, that I was suddenly endowed with the power of floating in the air. I could still just see the children: but their forms were shadowy and unsubstantial, and their voices sounded as if they came from some distant place and time, they were so unreal. However, I offered no further opposition to Bruno’s going into the house. He was back again in a few moments. “No, he isn’t come yet, ” he said. “They’re talking about him inside, and saying how drunk he was last week. ”
While he was speaking, one of the men lounged out through the door, a pipe in one hand and a mug of beer in the other, and crossed to where we were standing, so as to get a better view along the road. Two or three others leaned out through the open window, each holding his mug of beer, with red faces and sleepy eyes. “Canst see him, lad?” one of them asked.
“I dunnot know,” the man said, taking a step forwards, which brought us nearly face to face. Sylvie hastily pulled me out of his way. “Thanks, child,” I said. “I had forgotten he couldn’t see us. What would have happened if I had stayed in his way?”
“I don’t know,” Sylvie said gravely. “It wouldn’t matter to us; but you may be different.”
“He’s coming now!” cried Bruno, pointing down the road.
“He be a-coomin noo!” echoed the man, stretching out his arm exactly over Bruno’s head, and pointing with his pipe.
“Then chorus agin!” was shouted out by one of the red-faced men in the window: and forthwith a dozen voices yelled, to a harsh discordant melody, the refrain:
“There’s him, an’ yo’, an’ me,
Roarin’ laddies!
We loves a bit o’ spree,
Roarin’ laddies we,
Roarin’ laddies
Roarin’ laddies!”
Theman lounged back again to the house, joining lustily in the chorus as he went: so that only the children and I were in the road when “Willie” came up.


CONTACT US
ABOUT RECYCLING
OUR SERVICES
ABOUT US
HOME
Drag and drop items to where you think they should go!
Plastic
Organic
Paper
×


The bottom of the dataset listing page shows reviews published by QuantConnect members. You can sort, filter, and write dataset reviews.
Open a dataset listing page, click the Most Recent field, and then select a metric from the drop-down menu to sort the reviews by that metric.
Open a dataset listing page, click the All field, and then select a number of stars from the drop-down menu to only display the reviews with that rating.
Follow these steps to write a review:


This page will likely not work as expected for you. Please download and use a more capable browser. My two suggestions are:
Firefox | Chrome
(Click this message to dismiss it.)


Gravity and Balance
19 Aug 2014Had this idea of a plate, and on the plate is a ball. The plate has to continually tilt in order to keep the ball from rolling off the edge. I wondered how effective I could make an AI-driven plate. Ended up with something like this:
platePos = transform.position;
ballPos = ball.transform.position;
float xdiff = platePos.x - ballPos.x;
float zdiff = platePos.z - ballPos.z;
dist = Vector3.Distance (ballPos, platePos);
float xrot = transform.rotation.eulerAngles.x;
float zrot = transform.rotation.eulerAngles.z;
//if ball is left or right of center, tilt
//toward center
if (xdiff < 0) {
transform.RotateAround (transform.position,
Vector3.forward,
Time.deltaTime * dist);
} else {
transform.RotateAround (transform.position,
Vector3.back,
Time.deltaTime * dist);
}
//if ball is above or below center, tilt
//toward center
if (zdiff < 0) {
transform.RotateAround (transform.position,
Vector3.left,
Time.deltaTime * dist);
} else {
transform.RotateAround (transform.position,
Vector3.right,
Time.deltaTime * dist);
}
This method is a bit stupid. I'm just testing the ball's position relative to the center of the plate. If it's off to one side, the plate tilts. How quickly it tilts depends on the ball's distance from the center. As the ball nears the edge, the plate will begin tilting faster. The downside of this method is that the plate gets jittery at extreme tilts, most likely because I'm tilting on two axes at once, and they end up fighting with each other. I tried the pro method of determining the needed axis of tiltage by calculating a vector off of the ball. When I tried that, the vector worked, but the tilt didn't. I blame quaternions, and my refusal to understand what a quaternion is.
I also added to a project I didn't think would go anywhere. It started out as an attempt to make a game where you leap from planet to planet, coming under the effect of their gravitational fields as you neared them. As I worked on it, I moved away from that and just ended up wanting to make an orbit simulation. I was interested in how some of the planetary systems I was making were tending toward equilibrium. So I decided to work on a solar system type thing, where each planet was subject to the gravitational pull of every other planet. I went balls out and decided to do minimal work with Unity's interface, opting instead to generate as much as I could within the code. I ended up with some pretty sick loops. Check em:
//array of planets
public Planet[] planets;
void Start () {
planets = new Planet[numPlanets];
//inital planet we make clones from
planets[0] =
GameObject.Find ("Planet1").GetComponent ("Planet") as Planet;
//the sun
planets[1] =
GameObject.Find ("Planet3").GetComponent ("Planet") as Planet;
planets [1].renderer.material.color = Color.yellow;
float maxrange = 200f;
for(int i = 2; i < planets.Length; i++){
//spawn planet in a random location
Vector3 randLoc =
new Vector3(Random.Range (-maxrange,maxrange),
Random.Range (-maxrange,maxrange),
Random.Range (-maxrange,maxrange));
//make a clone
Planet newplanet =
Instantiate (planets[0],
randLoc,
transform.rotation) as Planet;
//add it to the array
planets[i] = newplanet;
//give it a random mass
planets[i].rigidbody.mass =
Random.Range (PlayerPrefs.GetFloat ("massMin"),
PlayerPrefs.GetFloat ("massMax"));
massMax = PlayerPrefs.GetFloat ("massMax");
massMin = PlayerPrefs.GetFloat ("massMin");
//give it a random color
planets[i].renderer.material.color =
new Color(Random.Range (0f,1f),
Random.Range (0f,1f),
Random.Range (0f,1f));
//give it a random size
float randScale = Random.Range (1f, 6f);
planets[i].transform.localScale +=
new Vector3(randScale,randScale,randScale);
//give it a random starting direction
float rand = Random.Range (0f,1f);
Vector3 dir;
if(rand > 0f && rand < 0.25f)
dir = Vector3.left;
else if(rand > 0.25f && rand < 0.5f)
dir = Vector3.right;
else if(rand > 0.5f && rand < 0.75f)
dir = Vector3.forward;
else if(rand > 0.75f && rand < 1f)
dir = Vector3.back;
else
dir = Vector3.back;
planets[i].rigidbody.AddForce (dir * 900);
}
}
void FixedUpdate () {
//make every planet influenced by the gravity of every other planet.
//the strength of gravitational pull is proportional to its mass
for(int i = 0; i < planets.Length; i++){
for(int j = 0; j < planets.Length; j++){
if (i != j)
planets[i].rigidbody.AddForce(
(planets[j].transform.position
- planets[i].transform.position)
/ (planets[j].rigidbody.mass / 18));
}
}
}
}
Pretty beastly nested loop I have there. Don't act like you're not impressed. This is just a summary of the code. I left out all the butt-ugly GUI and PlayerPref junk. I didn't realize passing data from one scene to another was so easy in Unity. For a long time I thought Application.LoadLevelAdditive was the only way to preserve anything.  PlayerPrefs allowed me to keep user inputs across level reloads. Hence, a brand new GUI to streamline the solar system creation process.
This build is still buggy, but can generate some alright results if you mess with the settings enough. Not sure where I'm going to take this one. I may not find the orbital equlibrium I was seeking, but I think some cooler stuff might spawn from it.


Hi guys, has anyone registered for CS 596 with Professor Pranjal Awasthi?
Hi guys, has anyone registered for CS 596 with Professor Pranjal Awasthi? Pranjal Awasthi? Pranjal Awasthi? Pranjal Awasthi? Pranjal Awasthi? Pranjal Awasthi? Pranjal Awasthi? Pranjal Awasthi? Pranjal Awasthi? Pranjal Awasthi? Pranjal Awasthi? Pranjal Awasthi? Pranjal Awasthi? Pranjal Awasthi? Pranjal Awasthi? Pranjal Awasthi? Pranjal Awasthi? Pranjal Awasthi? Pranjal Awasthi?
Pranjal Awasthi? Pranjal Awasthi?


Right now, the car is headed silent down the highway. It's dark, and there is nobody driving. I snuggle up in my seat and listen to the hum of its parts. I have turned my set off. It shows nothing but reports of destruction and plagues. The world on fire. The world gone mad.
Most of the interstates have shut down. They want people to stay in one place. The car is moving along the back roads, switching from one lonely little highway to another. We are headed towards the answer, towards the key to defeating Q. I hope we get there fast.
Slowly, the sky pales, and the blue curves of the mountains emerge from the darkness beyond the guardrails. I heard once that the Appalachians used to be as high as the Himalayas. Looking at the sloping hills under the sky, I can sense the ancient shape of the world. A world that was here before us.
Man, I'm getting pretty philosophical.
In my mind, another shape appears. Massive. Continental. The slope of human decline. The awful descent of the human race into...
Christ. Let's just enjoy the pretty mountains.
Karen is lying in the back. She's doing another eye treatment with equipment we took from the hospital. Before we reach Plattsburgh, the car switches highways and heads west. The sun climbs higher. We are getting closer.
Eventually, the car turns onto an unpaved road. After few minutes, it slows to a stop. And here we are. I look around.  There is nothing here. Or whatever is here, is hidden.
Karen is still doing the eye treatment in the darkness of the van's rear. The light from the goggles seeps out in little flashes, sketching the shape of her face. Finally, the goggles turn green, and she pulls them off, blinking and squinting.
I go and help her sit up. "Can you see a little better?" I ask.
She looks down at her hands, moving the fingers slowly in the dark. "Yeah."
"Persistent shapes?"
She raises her hand into a shaft of sunlight shining in from the front of the van. Her fingers catch the glow. "My hands," she says softly, her voice quavering with disbelief. It's the first strong emotion I've ever heard from her.
"Good. That's great," I say. "Well... we're here. What do we do now?"
She looks at me and smiles maniacally. "We go into the forest," she says. Her smile is unnatural and stiff, more of a grimace than a smile, but for a brief moment, as it first spreads across her face, she looks like a giddy little kid. "The key is there," she says.
"What is it? Some kind of secret underground base? Hidden laboratory?"
She makes a groaning sound that I barely recognize as laughter. "You play too many narratives. It's much simpler than that."
I unfold a wheelchair that we "borrowed" from the hospital and help her into it. When I open the back doors of the van, she winces against the bright sunlight, and again her face looks like a little kid's for a moment. I give her a pair of huge black wraparound sunglasses that we took eye treatment center.
The van lowers to the ground, and I roll the wheelchair out onto the dusty road. She makes sure I take a bag of supplies with us -- snacks and drinks and other stuff. The sun is warm on my skin, but the breeze is fresh and cool. It's a perfect day. You would think that everything is right in the world.
"So where to?" I ask.
 "There was once a house here. Do you see it?"
I look around and spy a low, crumbled gray wall mostly hidden behind the high grass. "I think see an old foundation."
"That's it, she says. Her eyes are hidden, but there is something in her voice that wasn't there yesterday, a shivery excitement. It makes me excited too. I push the wheelchair down a weedy gravel driveway toward the foundation. There's nothing else left of the house.  Karen has me push her around it and go down a trail leading towards forest.
"What was that house?" I ask. "Anything important?"
"I used to live there."
I turn and give it another look, as if I would see some new detail in the crumbling concrete that I had missed.
"That was the old children's home?"
"Yep."
"Then where are we going?"
"We're almost there," she says. "It's close."
We follow the trail into the forest. The trees become thick and shadowy. The wheelchair has a little power assist, but it's still tough to push it over all the roots and rocks and that lie along the narrowing, twisting path.
"Oh, yes!" Karen whispers excitedly.
Up ahead, sunlight gleams through the branches of the crowding trees. A wave of excitement moves through me, and I push Karen faster. We come out into a clearing, a broad patch of wild grass that glows green and golden in the sunlight.
"Here," Karen says.
I stop the wheelchair and look around. At first glance, there doesn't seem to be anything here.
"So what's here?" I ask.
"I used to come here as a child... and play make-believe... before I was connected."
I take a walk around the clearing, looking for something. A hatch? A hole? An actual key lying in the grass? There is nothing.
 When her eyes appear, they startle me. They are wide and gleaming within utter fascination. I walk up to her. She is staring at something. Tears fill the rims of her eyes and spill over. What is she looking at? It seems to be something right in front of her, something I can't see.
I stand beside her and crouch so I can see what she is seeing. There is nothing there but a small cloud of gnats. "What are you looking at?" I ask.
She looks all around and takes a deep breath and shudders. "There's... more..." she whispers.
"More what?"
"They said the feeds were complete... but they were wrong."
I wait for her to say more, but she doesn't. "What do you mean?" I ask.
She looks at me and smiles, the most goofy, crazed smile I've ever seen, tears still flowing down her cheeks. "The designers of the feeds said that it provides a complete experience. Enough colors, enough frames, enough smell gradients, enough complexity to make it indistinguishable from reality... but they were wrong. Here! Look at them!" she says, raising her hand into the air.
"You mean... the gnats?"
"Yes."
The gnats are glowing specks dancing senselessly in the sunlight. I wonder if some pattern will emerge. Can Karen control them with their mind? Is that the secret? Are they forming shapes? But they just dance and dance, forming nothing, making no pattern that I can see. I feel silly for even thinking that they would. They're gnats.
I turn away. A flood of angry thoughts rushes through my mind. Gnats?  She's a nut. She's lost it. Yeah, she's powerful and impressive in the feedrealm, but now she is in the real world, and she has completely lost her shit, and this whole trip has been a waste. "Is there anything here?" I ask. "What's the key? Seriously.  Just tell me. What are we doing here. What is the plan?" I ask, almost shouting by the end.
The crazed look of joy fades from her face and is replaced by the look of a scolded child.
I feel a bad. I kneel by her chair and say, "I'm sorry. Please, just tell me what your plan is. I need to know now."
Karen begins speaking softly without looking up. "Q has base control of every major system in the world. Every drone, every rover, every defense robot, all orbital assets, all nuclear weaponry. She has control over most human political systems. She has destroyed or contained every existing countermeasure, including me. There is no scenario in which we could ever reacquire control. Not with a thousand times our current resources. Not with a thousand years of computation time."
"So then what's the plan?"
"What we need is a way for Q to be destroyed by just one or a few motivated individuals. I believe there were points in the past when this could have happened. Maybe one of the Germans overseeing the early research program could have stopped it. Maybe it could have been stopped around 2020, when the portals were shut down, and interface research was temporarily abandoned. But it didn't happen. Currently, at this point, there is no way for it to happen. Q has control of far, far too many assets. The war is already lost. Irrevocably."
"Then what do we do?"
"We must hope that there are alternate timelines and that somebody in one of these timelines foresees what is happening to us right now -- that somebody foresees this very moment in time and takes steps to prevent it."
I stare at her. She looks into my eyes. I grope for words. "Is that... Wait... Alternate timelines? Is that the plan? We have to send a message back into the past?"
"In a sense."
"Then the person who receives this message will destroy Q in the past, and that will save us?"
 "No. That clearly won't happen or everything would already be different. We are utterly doomed. We'll either be either incinerated in a nuclear strike or rounded up and incorporated into Q. There's no stopping that. The only hope to defeat Q is on some other timeline, if such a thing exists."
"There's no hope for us? At all? Then what are we doing here?
"Haven't you felt it?"
"Felt what?"
"The feeling that you're inside a narrative."
An eerie shiver comes over me. I look around at the clearing. "Like, I'm inside a feed?"
"No. Inside a narrative. A story in somebody's mind. Doesn't this all seem just like a story? Two people rushing off to save the world, to find some hidden key in the forest?"
"Yeah, it all seems pretty unbelievable."
"That's how I wanted it to feel. That's why we came out here. So that we can be inside a story. Now, hopefully, there is somebody out there in the past who will write the story."
"Write the story? What? So there's nothing here?"
"There's no magic key or secret underground base."
"Well this story sucks."
"Why?"

Karen makes a mild choking sound that might be a chuckle.
I slump down into the grass beside her wheel chair and hang my head. I'm out in the woods with a crazy person. She doesn't even make sense. She's spent too long in 5D. She's talking about alternate timelines. Finally, I ask her, "So we're just fucked, right?"
"If you look toward our future, if you look at the series of events which will happen to us, they are dark. They are very awful. We will suffer.  But that would be true in any timeline. On the other hand, if you look at the entire story, not as a series of events, not from beginning to end, but as a single continuous, connected shape, where every event is occurring simultaneously...
I snort.
Karen goes on. "Maybe that shape reaches back, back to some place where somebody can see it and change things."
I don't say anything. Karen reaches into our bag of supplies and pulls out one of the little paper notebooks she bought at the gas station.
"What are you doing?" I ask.
"I'm going to write a poem. Do you want a notebook?"
"What for?"

"Who would read it? Isn't everybody going to die?"
"Who knows," she says and drops the other notebook into my lap. "Maybe somebody would be interested."
I toss the notebook off into the grass.  I can barely write on paper anyways.
We sit in silence for a long time. When I look up, Karen is staring at that same little cloud of gnats, occasionally jotting stuff down. I find myself staring at them too. They look like nothing more than living specks of dust worked into a crazy, whirling frenzy. Is there any pattern in how they move? Would it matter if there was? I think about what Karen said about the shape of her life, what it would look like if everything happened simultaneously, if it could all be seen at once. I think about the shape of my own life. I stare at the gnats and imagine seeing every position of every gnat all at one time. What kind of shape would it make? Even if I could see it, would this shape have any meaning?
I pick up the notebook and begin to write.


Npt documentation.
Reference: ANSI Common Lisp npt
Prev: 5. LISP ABORT
Next: 7. Start Up
This section describes the operation of the escape.
In the previous explanation, there were five reasons for escaping
tagbody
/go
block
/return-from
catch
/throw
handler-case
restart-case
The tagbody
/go
and block
/return-from
are intended for use in lexical environments and are not available in C.
The remaining three operations can be implemented in C.
The escape operation must be considered not only to generate and capture, but also to interrupt.
Escape interrupt is unwind-protect
.
In summary, this chapter describes the following features.
catch
/throw
handler-case
restart-case
unwind-protect
catch
/throw
The easiest escape operation is catch
/throw
.
The catch
registers a symbol
to a stack frame.
In other words, lisp_push_control
must be executed.
The following function is used for registration.
void lisp_catch(addr symbol);
The following function is used for throw
.
int lisp_throw_(addr symbol);
The throw
function goes backward from the current stack frame and escape if the corresponding catch
argument is present.
If there is no catch
for the argument, an error occurs.
In both cases, the return value is non-zero without judgment.
The following function is used to check if the current stack frame has reached the escape point.
int lisp_break_control(void);
True (non-zero) is returned if the current escape is in progress and the current stack frame is at the destination point.
In case of catch
/throw
, when the function is true, the function switches to non-escape and the throw
is completed.
The function to switch to non-escape is as follows.
void lisp_reset_control(void);
The summary of the procedure is as follows.
lisp_push_control
.symbol
by lisp_catch
.lisp_throw_
lisp_break_control
.lisp_reset_control
makes it a non-escapeThe following statement is an example.
catch 'hello
(throw 'hello 222)
(333)
Since throw
returns 222
, 333
is ignored and the total return value is 222
.
int throw_hello_222_(addr x)
{
(x, 222);
lisp_fixnum(x);
lisp_set_result_controlif (lisp_intern8_(x, NULL, "HELLO"))
return 1;
return lisp_throw_(x);
}
int main_call_(addr x)
{
;
addr control
(&control);
lisp_push_control/* (catch 'hello ...) */
if (lisp_intern8_(x, NULL, "HELLO"))
goto escape;
(x);
lisp_catch/* (throw 'hello 222) */
if (throw_hello_222_(x))
goto escape;
/* (values 333) */
(x, 333);
lisp_fixnum(x);
lisp_set_result_control:
escapeif (lisp_break_control())
();
lisp_reset_controlreturn lisp_pop_control_(control);
}
int main_lisp(void *ignore)
{
, x;
addr control
(&control);
lisp_push_control= Lisp_hold();
x if (main_call_(x))
goto escape;
(x);
lisp_result_controlif (lisp_format8_(NULL, "RESULT: ~A~%", x, NULL))
goto escape;
:
escapereturn lisp_pop_control_(control);
}
The result is RESULT: 222
.
handler-case
The basic construction is the same as catch
/throw
.
The following function is used to register the condition
.
int lisp_handler_case_(addr name, addr call);
And signal
or error
corresponds to throw
.
The following is an example.
int main_call_(addr x)
{
, y;
addr control
(&control);
lisp_push_control= Lisp_hold();
y /* handler-case */
if (lisp_intern8_(x, NULL, "AAA"))
goto escape;
if (lisp_eval8_(y, "(lambda (c) (declare (ignore c)) 222)"))
goto escape;
if (lisp_handler_case_(x, y))
goto escape;
/* (signal 'aaa) */
if (lisp_eval8_(NULL, "(signal 'aaa)"))
goto escape;
/* (values 333) */
(x, 333);
lisp_fixnum(x);
lisp_set_result_control:
escapeif (lisp_break_control())
();
lisp_reset_controlreturn lisp_pop_control_(control);
}
int main_lisp(void *ignore)
{
, x;
addr control
(&control);
lisp_push_control= Lisp_hold();
x if (lisp_eval8_(NULL, "(define-condition aaa () ())"))
goto escape;
if (main_call_(x))
goto escape;
(x);
lisp_result_controlif (lisp_format8_(NULL, "RESULT: ~A~%", x, NULL))
goto escape;
:
escapereturn lisp_pop_control_(control);
}
The result is RESULT: 222
.
restart-case
Same as handler-case
.
Create a restart
object and register it to the current stack frame.
The following functions are used to create the restart
object.
void lisp_restart_make(addr x, addr name, addr call, int casep);
The following function is used in order to register the restart
.
void lisp_restart_push(addr restart);
Examples of use are as follows.
int main_call_(addr x)
{
, y;
addr control
(&control);
lisp_push_control= Lisp_hold();
y /* restart-case */
if (lisp_intern8_(x, NULL, "HELLO"))
goto escape;
if (lisp_eval8_(y, "(lambda () 222)"))
goto escape;
(x, x, y, 1);
lisp_restart_make(x);
lisp_restart_push/* (invoke_restart 'hello) */
if (lisp_eval8_(NULL, "(invoke-restart 'hello)"))
goto escape;
/* (values 333) */
(x, 333);
lisp_fixnum(x);
lisp_set_result_control:
escapeif (lisp_break_control())
();
lisp_reset_controlreturn lisp_pop_control_(control);
}
int main_lisp(void *ignore)
{
, x;
addr control
(&control);
lisp_push_control= Lisp_hold();
x if (main_call_(x))
goto escape;
(x);
lisp_result_controlif (lisp_format8_(NULL, "RESULT: ~A~%", x, NULL))
goto escape;
:
escapereturn lisp_pop_control_(control);
}
The result is RESULT: 222
.
unwind-protect
unwind-protect
requires the following values to be saved after executing the expression of the first argument and before executing the cleanup form.
Escape information is the information of the current escape mode and the stack frame of the destination.
Returned value information is a value obtained by list_result_control
and is the value of values
itself. The value of values
is not one, but 0 or multiple values.
Before executing unwind-protect
, the current state is evacuated at once and the state is rolled back after the cleanup
form is executed.
The following functions are used to save the escape information and the return value at the same time.
void lisp_save_control(addr *ret);
The information is stored using a stack frame as well as the hold variable.
After saving the information, the following functions are used to transition to non-escape.
void lisp_reset_control(void);
This function can be executed even if it is a non-escape.
When the save is done, the cleanup
process is carried out.
If a new escape is created during the cleanup
process, the information saved by lisp_save_control
is ignored and the latest escape process takes precedence.
When the cleanup
process is successfully completed, the following function will be used to restore it.
void lisp_rollback_control(addr value);
Finally, the command lisp_pop_control_
is executed to discard the stored information.
Here is an example.
The following example shows that the returned values are saved and restored.
int main_lisp(void *ignore)
{
, save, x;
addr control
(&control);
lisp_push_control= Lisp_hold();
x /* 100 */
(x, 100);
lisp_fixnum(x);
lisp_set_result_control/* save */
(&save);
lisp_save_control();
lisp_reset_control/* 200 */
(x, 200);
lisp_fixnum(x);
lisp_set_result_control/* rollback */
(save);
lisp_rollback_control(x);
lisp_result_control(NULL, "RESULT: ~A~%", x, NULL);
lisp_format8_return lisp_pop_control_(control);
}
The result is RESULT: 100
.


Mikaela Springsteen is a PhD student at the MIT Sloan School of Management. Her work studies quantification, mathematization, and the social and cultural role of numbers across human social life, focusing especially on the ways in which numbers create realities.
Current research includes study of (1.) cultures of numeracy, (2.) the relationship between speculation and calculation, and (III.) the history of Roman numerals.
Education
- PhD Management, Economic Sociology (present)
The Massachusetts Institute of Technology Sloan School of Management - MA Sociology with Quantitative Methods (2019)
The University of Edinburgh
Contact Mikaela by email at msprings@mit.edu.


This show how to setup the cross-compiler, as an example:
~$
~$ cd ~/lfs/rpi2/min_img/buildroot-2015.11.1
~/lfs/rpi2/min_img/buildroot-2015.11.1$ svn export https://github.com/osingla/LinuxFromScratch/trunk/hello_world
~/lfs/rpi2/min_img/buildroot-2015.11.1$ cd hello_world/
~/lfs/rpi2/min_img/buildroot-2015.11.1/hello_world$ make
You will have a hello program
~/lfs/rpi2/min_img/buildroot-2015.11.1/hello_world$ file hello
hello: ELF 32-bit LSB executable, ARM, EABI5 version 1 (SYSV), dynamically linked, interpreter /lib/ld-uClibc.so.0, not stripped
~/lfs/rpi2/min_img/buildroot-2015.11.1/hello_world$
Just scp this hello program into the target to test it.


{{ post.description }} Read more →
--- layout: default title: "Blog" subtitle: "A blog about the experiences of a young female professional, making exciting movements in her career, and all the challenges she is facing along the way." author: "Aynes Bekir" description: "A blog about the experiences of a young female professional, making exciting movements in her career, and all the challenges she is facing along the way." permalink: /blog/ ---
{{ post.description }} Read more →