"Caltrops? What are you, a ninja? Coming up with such an unpleasant countermeasure..."
— Shoto Todoroki (to Aizawa), My Hero Academia
Caltrops are tetrahedral items used for making ground hard to cover. They always land with a pointy bit sticking up. Handy for preventing pursuers from catching you, whether they are on foot, on horseback, or, in more modern cases, in a vehicle.
See also Spikes of Doom and Spiked Wheels. Expect Agony of the Feet. Land Mine Goes "Click!" is for the modern explosive equivalent.
Examples:
open/close all folders
Anime & Manga
- The Iga ninja dogs use poisoned seeds shaped like caltrops as a trap in Ginga: Nagareboshi Gin. These are actually Truth in Television; the seeds of the water chestnut (also known as water caltrop) really are shaped vaguely like caltrops, though in real life they are used as food rather than Improvised Weapons.
- In one of the Mobile Suit Gundam OVAs, the one where the Gundams are samurai, and then they are suddenly doing a Wacky Races parody, the Ninja robots use these.
- In Strawberry Marshmallow, while demonstrating "real" ninja techniques, Miu dumps a snack food on the floor, calling them caltrops.
- Usopp from One Piece sometimes uses these, and in one of the Video Games, he throws them on the ground as an attack.
- Early in Naruto, Kakashi uses some of these to prevent Zabuza from running over to attack him while he was open.
- In Gintama, Gintoki and Kagura end up becoming ninjas in order to help rescue Elizabeth in a particular story arc, and are provided with these to shake off some pursuers. However, they have no clue as to how to use them properly and start throwing them directly at their pursuers, which does slow them down still, but not much.
- In Kemono Friends, Panther Chameleon has these as part of her general Ninja motif. However, rather than using them to injure her opponents she throws them to try and pop balloons on their heads. She succeeds...and then a stray caltrop pops her own balloon.
- In Dragon Ball, Ninja Murasaki spreads these on the ground to prevent Goku from chasing him. Goku tries to follow him anyway and hurts his feet. He looks around and finds some wooden sandals that he can use to walk over them safely.
- My Hero Academia: Aizawa uses these in during his fight against Todoroki and Yaoyorozu; to incapacitate Todoroki, Aizawa leaves him hanging in the air and drops caltrops on the ground below him to ensure he won't escape.
- In Tokyo Shinobi Squad, Jin throws a handful of these on the ground to pop the tires of the shinobi squad hounding En at the start the story.
Card Games
- Magic: The Gathering has two cards. Wall of Caltrops simply gains banding if it blocks with other walls. Caltrops deals damage to attacking creatures, including ones that can fly.
Comic Books
- In Robin #80, Steph uses caltrops to blow the tires on the van carrying the gun runners as they try to leave with guns blazing out every window after shooting Star.
Fan Works
- In this series of Jana of the Jungle fan comics, Jana has yet another Agony of the Feet moment when she steps on a caltrop.
Films — Live-Action
- Les Tontons flingueurs: After Theo tricks Fernand into driving a truck of bootleg alcohol to set a trap for him (and blame the Wolfonis), his goons first drop a box of caltrops over the road to make the truck crash, before trying to gun Fernand down.
- James Bond's Cool Car from Tomorrow Never Dies has the ability to drop a whole bunch of these to pop enemy tires and mess up pursuit. See Tropes Examined By The Myth Busters for a report on how well that would really work. Bond gets double points for driving over his own caltrops, and fixing and reinflating the tires with just the press of a button!
- The Batmobile in the The Dark Knight Trilogy can deploy these.
- Parodied in The Beatles' Help!!. The Kaili cult's disguised Harrods van has a front headlight which issues forth a stream of thumbtacks.
- Mad Max: Fury Road: The final Chase Scene commences with Slit trying to get ahead of Furiosa's War Rig and spike their wheels. Fortunately it's an eighteen-wheel rig, so this isn't easy.
- In The Aggression Scale, Owen uses jacks as improvised caltrops in his series of traps. He must have sharpened the tips, given how far they stick into Lloyd's flesh.
Literature
- Anti-horse caltrops are mentioned in one of the Brother Cadfael novels, which are set in the mid-12th century.
- Sharpe uses these in the book version of Sharpe's Rifle, as a defence against Colonel de l'Eclin's cavalry.
- Discworld:
- Conina in Sourcery uses these, though they're not explicitly referred to as such.
- Caltrops are among the ninja-esque equipment included in trainee Assassin Teppic's comically-extended Lock-and-Load Montage at the beginning of Pyramids. In his final examination, he also has to avoid caltrops he suspects are poisoned.
- Chinese farmers in Lords of the Bow scatter caltrops over their fields to slow the advancing Mongols.
- In The Saga of Yngvar the Traveller, the Vikings use them when fighting King Jolf.
- Early in The High Crusade, after the dust settles from foraying into a hostile alien spaceship, the invaders, who were quite caught by surprise, are mildly remarked to have not prepared any caltrops.
- Caltrops smeared with poison are one of the defenses improvised during the Siege of Chyrellos in The Elenium. This was particularly effective against the Rendorish mercenaries due to their footwear mostly consisting of thinsoled sandals.
Live-Action TV
- MythBusters: The crew tested and busted that road spikes could stop or slow down a pursuing car. A followup with hollow caltrops, however, confirmed the myth.
- Super Sentai:
- Ninja Sentai Kakuranger: Caltrops are one of the many tricks the rangers use.
- Shuriken Sentai Ninninger has mecha-sized explosive ones, with KiNinger's Otomonin Dumpmaru being the one responsible.
- Kamen Rider Fourze has secondary Rider Ryusei Sakuta using caltrops for laughs on a very clingy and amourous girl that has fallen for our primary hero Gentaro Kisaragi. And that's just was the beginning.
- In an episode of The Flash (1990), the second Nightshade uses them to stop the Flash from pursuing him.
- The X-Files: in "Darkness Falls", an environmental terrorist called Doug Spinney scatters caltrops on the logging trails. He gets Hoist by His Own Petard when everyone (including Spinney) is desperately trying to drive out before dark to escape the Monster of the Week, only for them to burst their last remaining tires on the caltrops.
Tabletop Games
- Dungeons & Dragons: Caltrops were in the rules as far back as 1st Edition. Some are even Clockwork Creatures.
- GURPS: High-Tech mentions that a cheap way to make them more dangerous was to cover them in dung.
- The standard pyramid-shaped four-sided die is sometimes jokingly referred to as such, especially if you've just trodden on one barefoot. Another popular name for them is the "Sonofabitch". Most modern d4s at least have flattened corners. Not so with the early boxed sets of Basic Dungeons & Dragons (the one that came out before what we now call "1st Edition"). The d4 that came with that set was easily sharp enough to put an eye out.
- When the players get angry in Knights of the Dinner Table and start throwing dice at one another, a common battlecry is "No 4-siders! No 4-siders!"
- Vriska from Homestuck has trouble with them as well.
- Car Wars has various types (including incendiary and explosive for extra damage) as one of the available weapon options.
- The Mad Meks 2 White Dwarf article for Gorkamorka introduces the Spike Droppa, a vehicle upgrade that scatters spiked balls behind a vehicle to puncture the tires of enemy vehicles and inconvenience warriors on foot.
Video Games
- The best line of defense in Deathtrack.
- Pokémon
- The moves Spikes and Toxic Spikes affect Pokemon when opposing trainer tries to switch Mons, unless they're of the Flying type, have the Levitate or Magic Guard abilities, or (in the case of Toxic Spikes), immune to poisoning. A double layer or Toxic Spikes will badly poison the target. Spikes was even called Caltrops in the Japanese version. Poison types that aren't also one of the above are able to neutralize Toxic Spikes.
- It's possible to think of Stealth Rock as floating caltrops, seeing as they can also hurt Flying-types (for massive damage, too, thanks to Elemental RockPaperScissors).
- In the 6th Bloons Tower Defense game, the Ninja Monkey can drop Caltrops which serve the same role as spikes.
- Caltrops are a hold item in Kongregate's online game Kongai where they do 14 damage if you or your oppponent switched out if a character holding that item is in play (it used to be 10 damage).
- Part of the Scout's arsenal in Team Fortress Classic. Apart from doing a little damage, they also greatly slow down the victim.
- Allegiance has caltrop mines. These look nothing like traditional caltrops, but are three-dimensional mine fields IN SPACE that are deployed at choke points, and cause more damage the faster an enemy ship travels through them, forcing it to slow down and become an easy target.
- In City of Heroes, caltrops are available to certain powersets and do minor damage and massively debuff speed. Among enemies, certain Tsoo and all Knives of Artemis use them. The KoA in particular are annoying because they can quickly stack caltrops, at which point your character may as well not be able to move at all.
- Their use is inverted in Thievery, a Game Mod for Unreal Tournament. The tough and armored guard team can set caltrops in order to damage and slow down members of the evasive thief team. Guards are immune to their own caltrops.
- Shadow Warrior features these as an useable item: Lo Wang can get a box with three charges that can be deployed at will. Certain traps also scatter oodles of these around when triggered. They don't tell friend from foe, though, and if necessary they can be destroyed with explosives.
"Who put these here? Ow!"
- One of the weapons available in Mini Ninjas.
- Used by Burglars in The Lord of the Rings Online.
- Izuna: Legend of the Unemployed Ninja: Izuna can scatter caltrops to damage whatever steps on the square next (possibly herself, if the player's not careful).
- In Drakensang 2: The River of Time, you can build these with a very low Forge lore. Of course, they can be placed as traps on the ground.
- A mainstay of the Tenchu series, caltrops do a small amount of damage and stun anyone (including the player) who steps on them for a short time.
- Shinobido features makibishi as part of your Ninja equipment along with shuriken, grappling hooks, five-colored rice and various explosive stuff. Those caltrops though can actually kill enemies, but it takes some time...
- Assassin's Creed: Revelations: caltrop bombs
- Batman: Arkham City: one of tools Catwoman can use.
- Caltrops are one of the trap types you can craft and deploy in Dragon Age: Origins. If standard caltrops aren't good enough, you can also create and use poisoned caltrops for extra damage.
- If your ninja in Shogun: Total War and Total War: Shogun 2 are detected, they will scatter a handful of caltrops behind them in an attempt to slow down the pursuers. It is often highly effective. Fun to watch, too.
- The Chill Spike from Mega Man 10 works like a spike strip (see Real Life below), damaging enemies that move onto it. Not surprisingly, it is effective against the robot/motorbike transformer Nitro Man, in the sense that it hurts his tires.
- While he did not have access to them in Mega Man 3, noted ninja Shadow Man gains the ability to throw caltrops in Mega Man 2: The Power Fighters.
- In Guild Wars 2, the thief profession has two caltrop abilities: a utility skill to drop caltrops around the thief which cause bleeding damage and reduced movement for enemies, and a unlockable trait that causes this to happen automatically when the thief dodges. In neither case is the thief or allies affected.
- An absolutely essential tool in the arsenal of "Grey morality" Avatars in Ultima VII. Placed properly, you could use them to knock out mages for ease of stealing the potions they somehow managed to produce from nothing. Also a good way to knock out dragons for one-hit KO experience grinding. In the sequel, it was a way to get easy victories(and thus quicker/better training) in the arena of Monitor.
- The La-Mulana remake adds caltrops as a subweapon.
- Some of the black-clad ninja in Bad Dudes toss makibishi. If you don't have a weapon, you can low-kick them out of the way. (If you've got the nunchucks, you can possibly fire upwards at them from a lower level. If you've got the knife, you suck.)
- One of the standard wall defenses in Kingdoms of Camelot on Facebook. Best against mounted troops.
- Caltrops are one of the many traps that are scattered around the grounds in Dungeons of Dredmor. The ones that do higher damage tend to be made of magical elements, such as Aetheral energy or Dragonsbreath.
- In Mortal Kombat X, one of Erron Black's special moves sees him drop caltrops on the floor. They stop running opponents cold and do small but steady damage when they're on top of them.
- Fire Emblem Fates has caltrops appear as a type of terrain hazard, slowing down units trying to walk through them and dealing damage to everyone who stands on them at the beginning of turn.
- In Shovel Knight, this is Donovan's standard subweapon when you play as him. At least, before he became Specter Knight. He regains access to them if he collects every red skull in the game.
- In Diablo III, Demon Hunters can drop caltrops that damage and slow down enemies who step close to them.
- Available as a catalog item in Roblox.
- In Gamer 2, the police enemies have laid out caltrops in their sector. If Hailey steps on them, she'll lose her deflector plate.
- Darkest Dungeon: A little while after release, the Bounty Hunter's "Hook and Slice" attack got replaced by tossing a handful of caltrops directly at the target. The victim takes minor base damage, bleeding damage, and gets a big speed debuff; the main downside is that it can only target the very back of a formation.
- The Kishu enemy units in Marvel Puzzle Quest uses the Caltrops ability to deploy trap tiles, that once matched, hurt the whole player team.
Western Animation
- In Batman: The Animated Series, Catwoman has them... in the shape of cats, naturally. She uses them in "The Cat and the Claw" to stop Red Claw's men from pursuing her through a ventilation duct.
- Batman uses bat-shaped ones in Batman: Under the Red Hood.
- Phineas and Ferb: Doofenshmirtz tries to use this trick during a race. It backfires because the caltrops come from the front of his car.
- In the Mickey Mouse (2013) short "Three Legged Race", Huey, Dewey and Louie use jacks as caltrops to sabotage the other racers. They puncture Horace and Clarabelle's feet, causing them to deflate.
Real Life
- Giant versions of these called "Czech hedgehogs" were used as anti-tank defences in World War II. These giant versions were usually made of steel girders welded together to resemble giant jacks. They're still used today, as their size and weight make them an effective vehicular deterrent — the weight makes it impossible for a vehicle to ram them out of the way, and even if they are knocked around by something like an explosion, they'll just assume the same position when they stop. The only ways to deal with a Czech hedgehog are to deliberately roll them out of the way or cut them down, and both of those take a lot of time and effort. Variants of this with different shapes have been also used on beachheads to deter landing boats.
- The Roman Empire
- In Julius Caesar's circumvallation of Alesia, he planted a "garden" of these on both sides of his encircling walls: to keep the Gaulish chieftains in, and the relieving army out. It included hidden caltrops made of iron, followed up by spiked pits, and then upward-pointing branching stakes designed to take a horse in the chest. Followed by two trenches, one filled with water and one not, and a stockade built from the top of the far back of the second trench, which was pointed at the bottom, making it much more difficult to cross while under fire. Oh, and ballistae and scorpions were aimed into the trench as well. Have fun and stay safe, boys.
- The Romans also used them to definitively murder chariot warfare, twice:
- The first time happened when the Romans faced the Celtic chariots used by the Gauls, small vehicles from which a warrior could lob javelins at the enemy while staying mobile or close in to jump on them. While the Romans could deal with the javelins by simply placing their trademark tower shields overhead, a charge of chariots was still a problem until they started to throw caltrops big enough to wound horses hooves but small enough that the standard-issue caligae (the heavy-soled boot-sandals of the Roman legionaries) could protect them, wait for the Gaulish charge to break down, and then calmly walk to the toppled vehicles and downed enemies to slaughter them and their horses. It was so effective that by Caesar's time the only Celts who still used them were the Bretons, who had never met the Romans (and when Caesar brought with him the caltrops in his second expedition only Vercingetorix' sudden rebellion in the Gauls saved them from conquest);
- The second time happened when they met the more traditional scythed chariots in their wars against the Hellenistic kingdoms. While already declining on its own due to the creation of effective cavalry and infantry formations to resist their charges, the scythed chariots could occasionally pose a danger to an unprepared force (in fact a Roman army was nearly routed by a sudden charge that caught them with their pants down. That very army had inflicted the worst humiliation to scythed chariots in the history of warfare just a few weeks before, until the Romans brought back their caltrops. Once they did, the chariot charge would always stop abruptly and the Romans would calmly walk to the enemy to slaughter both the horses and the charioteers.
- Ninja, who swore by just about everything sneaky, were fond of dropping these, which they called makibishi. They were called tetsubishi when made of iron and tennenbishi when made out of sun-dried water caltrops (a type of seed pod). And not only did they work as caltrops, they could also be thrown as an alternative to shuriken.
- It should be noted that, unlike their common depiction in media, tetsubishi were most definitely not weapons. While they could be used for several purposes (like all ninja tools), they were primarily used exactly like western caltrops: spread out across an area to make it harder to traverse quickly.
- It's believed caltrops saw at least some use at Jamestown, Virginia, to defend against hostile natives.
- Cops use a variant of these known as "spike strips" to disable the tires of those they're pursuing. Preferred since it is also desirable to remove the spikes as quickly as possible, otherwise the cop cars in pursuit would get their tires popped as well. A one-way version of a spike strip is sometimes used to prevent drivers from avoiding parking-lot fees by driving out through the entrance.
- During The Korean War, American Air Force bombers would drop these over North Korean and Chinese supply routes at night, returning at daybreak to attack supply convoys that had become immobilized in the night by the obstacles.
- Any Tabletop Games player who has stepped on a d4 understands acutely how these things are supposed to work. As has any kid, or parent whose kids didn't put away their toys, who's stepped on a Lego piece.
 The fact that they grow fast, grow almost everywhere in the world and prefer dry climates where bikers not only flock to but people are also likely to go barefoot does not help matters.
- In the U.S. labor movement, they're typically called "jackrocks". During some particularly bitter strikes, picketers or their sympathizers would spread them along roads, intending to destroy the tires of management or replacement workers (but obviously causing danger to innocent travelers as well). Several states have banned possession of such devices.
- One thing to note about modern Anti-Vehicle caltrops is that they're most efficient when hollow to let air out. The variety with solid spikes will also work, but won't empty tubeless tires as quickly, because they also act as plugs.
- Improvised mini-"caltrops" can be made from a pair of staples twisted together. This was created by some extremely bored students to serve as a booby trap or a wicked prank, often scattered on the seat of an unsuspecting schmuck who would soon get a sharp reminder why their neighboring classmate was not fun to be around.


title = "About" url = "/" layout = "default" ==
I am a freelancer from Arizona. I like to build websites for my day job and I like to entertain myself with music during the day. I studied at Glendale Commuinty College where I was introduced to web development.
Weather I am applying everyday things to life or learning new things in advancing technology I am always advancing in web development some how. I plan to further my studies to the extent.


Choose your own insurance plan
We never want our family to suffer at our expense and always pray for their well being. But praying alone won't protect them against all sorts of uncertainties. The onus of giving our family, financial security and protection would always rely on us; the sole earner/breadwinner. Being the breadwinner, it is therefore, amply important to insure ourselves against the unavoidable and undoable act called death.None of us ever anticipates death but there has to be a backup plan, just in case the unexpected happens. We have to look out for ways that secure the future of our loved ones. Good news is that an inexpensive and beneficial tool is widely available everywhere and is called ‘Term Plan’. A simple form of insurance that provides death benefit in the form of a sum assured to the family of the deceased. Very nominal yearly premiums have to be paid out by the policyholder to sustain the policy.
Benefits
- Insurance Policy for life
- Insurance Policy for car
- Insurance Policy for health
- Insurance Policy for bike
- TInsurance Policy for home
- Insurance Policy for travel
Praecent posuere
- Insurance Policy for life
- Insurance Policy for car
- Insurance Policy for health
- Insurance Policy for bike
- TInsurance Policy for home
- Insurance Policy for travel
Praecent posuere
- Insurance Policy for life
- Insurance Policy for car
- Insurance Policy for health
- Insurance Policy for bike
- TInsurance Policy for home
- Insurance Policy for travel
Praecent posuere
- Insurance Policy for life
- Insurance Policy for car
- Insurance Policy for health
- Insurance Policy for bike
- TInsurance Policy for home
- Insurance Policy for travel
Praecent posuere
- Insurance Policy for life
- Insurance Policy for car
- Insurance Policy for health
- Insurance Policy for bike
- TInsurance Policy for home
- Insurance Policy for travel
Praecent posuere
- Insurance Policy for life
- Insurance Policy for car
- Insurance Policy for health
- Insurance Policy for bike
- TInsurance Policy for home
- Insurance Policy for travel
Praecent posuere
- Insurance Policy for life
- Insurance Policy for car
- Insurance Policy for health
- Insurance Policy for bike
- TInsurance Policy for home
- Insurance Policy for travel
Praecent posuere
- Insurance Policy for life
- Insurance Policy for car
- Insurance Policy for health
- Insurance Policy for bike
- TInsurance Policy for home
- Insurance Policy for travel
Client form download
Praesent posuere porta dignissim phasellus viverra convallis
Alert download
Praesent posuere porta dignissim phasellus viverra convallis
Statistics download
Praesent posuere porta dignissim phasellus viverra convallis
Briefs download
Praesent posuere porta dignissim phasellus viverra convallis


Summer Reads is a collection of 8 new novels, poetry collections and short story anthologies, specially chosen to get you out of your comfort zone and reading different literature and authors. Ideal for book groups and readers looking for a new challenge.
We’re also running events and workshops at Bury and Haverhill Libraries where you can meet the authors and other readers.
Strange weather in Tokyo by Hiromi Kawakami
Tsukiko is in her late thirties and living alone when one night she happens to meet one of her former high school teachers, Sensei, in a bar. After their initial encounter, the pair continue to meet occasionally to share food and drink sake and come to develop a hesitant intimacy which tilts awkwardly into love.
Bevel by William Letford
A vivid, funny and moving first collection of poems by a critically acclaimed contributor to New Poetries V. Letford’s wry humour and carefully constructed poems make this an absolute must for both newcomers and regular readers of poetry. His work as a manual labourer gives his poems a welcoming, grounded feel, yet the writing is wildly emotive and playful. Page after page, Letford’s beguiling voice takes you through a collection of gems. This poetry collection has that rare quality; it’s a page turner. Available from our Overdrive service.
The colour of milk by Nell Leyshon
Set in a rural landscape in 1831, Leyshon introduces us to Mary, a quick–witted, straight–talking farm girl who has a story to tell. By no means will she find it easy, but her sharp voice and stripped back prose will leave you gripped from beginning to end. Best served in one exhilarating sitting, this brutal story demands that you take Mary’s hand and follow her all the way to its brutal conclusion.
Hawthorn and Child by Keith Ridgway
Detectives Hawthorn and Child take us through a series of vignettes where no promises over narrative can be made. Characters and events slip and slide between the pages, but are held up by strong, compelling prose. This book demands your involvement – are you ready to pick up the pieces? Unnerving scenes of real, confused London life, the lives of functioning–but–marginal Londoners revealed in all their vulnerabilities and misapprehensions. Brilliantly observed.
Tenth of December by George Saunders
George Saunders’ collection shifts seamlessly from the mundane to the surreal. From a downtrodden father struggling to afford human ornaments to a young boy watching his beloved struggle with a kidnapper, these stories blend satire with warm-hearted affection. Often darkly humorous, Tenth of December explores the human experience through familiar and surprising worlds, and is sure to stay with you long after you’ve finished the book. Available from our Overdrive service.
Raptors by Toon Tellegen
With tragicomic bravado and psychological insight, Raptors, like a novel, tells the turbulent story of a father and his family. A very accessible collection about the ups and downs of a family held hostage by the looming moods of ‘Father’. The language of Raptors is deceptively childlike, in stark contrast to the relationships it describes, the ‘rusty, conniving father / who creaks, crunches and opens’. But there are no simple rights and wrongs in this world where ‘terrible moonlight’ tenderly illuminates a family pulling itself apart. Available from our Overdrive service.
Double negative by Ivan Vladislavic
A triptych capturing the ordinary life of Neville Lister during South Africa’s extraordinary revolution. Vladislavic lays moments side by side like photographs on a table. He lucidly portrays a city and its many lives through reflections on memory, art and what we should really be seeking. Available from our Overdrive service.
All the birds, singing by Evie Wyld
Jake Whyte is running from something. But what? Living alone on a British island, her only companion is Dog, who helps her tend her sheep. Dog’s whimpering and scared though; something is coming. Something that’s picking off the sheep one by one, creeping through the evening as a stranger lurks by the trees over the field… Flashing through it all there’s Jake’s former life in the heat and rough of Australian sheep farms, the life she ran away from overseas.


Data Science Projects
nSpectr: Predicting Restaurant Health Violations in Boston
Can machine learning make us healthier?
As a fellow in Insight Data Science, I built an app that predicts severe health violations in Boston restaurants. Using a unique data set from Yelp and the city of Boston, I used natural language processing (NLP) techniques to encode the textual data. I implemented several models, including a random forest and gradient boosted trees. I also visualized the model's predictions with an interactive map of the city. You can view the code for the models on Github. I have taken down the website.
Tools: Python, R.
Skills: Implemented tf-idf in Python and cleaned up all the text data before building several machine learning models to predict severe violations.
The Tipping Point
When do products and norms take off?
The search for a tipping point has vexed marketers and social movements alike. This project examines several simulations to show how the number of initial adherents to a product or cause influences its adoption rate. It represents some early theoretical thinking that eventually led to our paper in
Science on
"Experimental evidence for tipping points in social convention."
Code for these simulations is available on
Github.
Tools: Python
Can a social media site help you go to the gym?
Marketers wonder if online clicks can lead to offline behavior. To answer this question, we built a social media site as part of a fitness program that enrolled more than 1,000 graduate and professional students at UPenn. We found that social influence from peers in an online social media site was more effective at getting people to show up to fitness classes than traditional online advertisement messages. In a follow-up study, we examined which aspects of social influence were most effective on the social media site. The results have implications for the design of online web platforms to promote offline behavior change.
Tools: SQL, R
Using data science to inform our moving decision
When we were deciding where to relocate to, we wanted to make an informed decision. The weather is really important to me (Seasonal Affective Disorder is a real thing!). But we also wanted information about commuting times, the price of housing, and taxes. I built a web scraper to gather information about our locations, and then made some charts in R to help our decision.
Tools: Python, R.
Skills: Implements a complete data pipeline from gathering information on the web with Python, to storing it, and then processing it in R, and generating plots and an html output document
available here.
Code is available on
Github.
Kaggle Competitions
Teaching machines to learn
I have competed in several Kaggle competitions, including classifying purchase decisions for insurance in the
Homesite Quote Conversion Challenge, quantifying property hazards in the
Liberty Mutual Group Challenge, and classifying products in the
Otto Group Classification Challenge, placing in the top 13%, 15%, and 18%, respectively, out of thousands of competitors.
Tools: R (xgboost, h2o, caret)


WIND UP THE GEAR
We are Team NanoGear NTU, a group of undergraduates from National Taiwan University in the annual biomolecular nanotechnology design competition, BIOMOD.
Project
Introduction
In 1769, James Watt improved the steam engine, which brought a new source of power to human beings, as well as making a dramatically change in people's lives. Since the great invention was equipped with gears in diverse shape and function, it ushered in the age of machine and triggered the first industrial revolution. During the 1870s, the invention of alternating current fostering the rapid growth of industries in most developed countries. It is known as the second industrial revolution that machines were driven by stable and efficient source of energy and became more widely used than before. After the World War II, the rapid development and popularization of electronics and Internet technology started off the third industrial revolution-the digital revolution. Quantum theory, aerospace technology, and genetic engineering all quickly took off, altering nearly every industry. The first and second industrial revolutions belong to the engineer; the third industrial revolution belongs to the programmer. We know each of these first three industrial revolutions represented profound change, and now we are at the beginning of the forth Industrial Revolution. It will belong to the scientist. The improvement of machine and the discovery of new source of power lead to the advancement of technology. Nano-opto-machine (NOM), a light driven gear device, will bring a completely new vision to the science world. In the past, scientists have attempted to use electric or magnetic fields as a source of energy at the nanoscale, but this time, we aim to utilize the light as a new source of energy with the benefit of accurate and precise to our subject. Our strategy is to cast light on the asymmetric DNA origami made gear causing it to spin. In succeeding (If it works out,) the outcome will provide an efficient way to design and control the nanomachine!
Problem
Solution
Design
First column
Fusce at accumsan elit. Sed ut urna pulvinar, ultricies orci eu, pretium lectus. Integer vulputate lorem ac nisi eleifend, at egestas mauris eleifend.
Second column
Vivamus aliquam lectus non tortor pellentesque, sit amet ultricies ex rutrum. Nunc ut neque sem. Proin fermentum libero ac vestibulum sollicitudin.
Third column
In tellus ipsum, ullamcorper vitae justo sit amet, mattis consequat tortor. Suspendisse risus urna, posuere id orci ut, facilisis accumsan ipsum.
Motivation
Structure
Our standard synthesis protocol involves a 50ul reaction volume with 20nM m13 plasmid, 200nM of the appropriate staples, 20mM MgCl, 1mM EDTA and 5mM Tris buffer. The samples are annealed using the following temperature cycle:
- Denature at 65C for 15 minutes
- Slow ramp to 45C at 0.1C per 7 minutes
- Hold at 20C
To purify the samples they are mixed with PEG precipitation buffer (15% w/v PEG 8000, 5mM Tris, 1mM EDTA, 505mM NaCl) in 1:1 ratio. The mixture is then spun hard for 25 minutes at room temperature and the supernatant is discarded. The DNA origami pellet is then left to resuspend at room temperature for 24 hours at 20nM in DNA origami buffer 20mM MgCl, 1mM EDTA and 5mM Tris.)
Experiment
Materials and Methods
brick monomer
PCR Protocol
紀蓉
In 1769, James Watt improved the steam engine, which brought a new source of power to human beings, as well as making a dramatically change in people's lives. Since the great invention was equipped with gears in diverse shape and function, it ushered in the age of machine and triggered the first industrial revolution. In 1769, James Watt improved the steam engine, which brought a new source of power to human beings, as well as making a dramatically change in people's lives. Since the great invention was equipped with gears in diverse shape and function, it ushered in the age of machine and triggered the first industrial revolution. In 1769, James Watt improved the steam engine, which brought a new source of power to human beings, as well as making a dramatically change in people's lives. Since the great invention was equipped with gears in diverse shape and function, it ushered in the age of machine and triggered the first industrial revolution.
| # | First | Last | Handle |
|---|---|---|---|
| 1 | Mark | Otto | @mdo |
| 2 | Jacob | Thornton | @fat |
| 3 | Larry | the Bird |
Purification
紀蓉
Back to top
brick dimer
Assembling Method
alwin
In 1769, James Watt improved the steam engine, which brought a new source of power to human beings, as well as making a dramatically change in people's lives. Since the great invention was equipped with gears in diverse shape and function, it ushered in the age of machine and triggered the first industrial revolution.
Back to top
Gear
Assembling Method
alwin
In 1769, James Watt improved the steam engine, which brought a new source of power to human beings, as well as making a dramatically change in people's lives. Since the great invention was equipped with gears in diverse shape and function, it ushered in the age of machine and triggered the first industrial revolution.
Back to top
Lab Book
Results
Results and Discussion
brick monomer
PCR Results
紀蓉
In 1769, James Watt improved the steam engine, which brought a new source of power to human beings, as well as making a dramatically change in people's lives. Since the great invention was equipped with gears in diverse shape and function, it ushered in the age of machine and triggered the first industrial revolution. In 1769, James Watt improved the steam engine, which brought a new source of power to human beings, as well as making a dramatically change in people's lives. Since the great invention was equipped with gears in diverse shape and function, it ushered in the age of machine and triggered the first industrial revolution. In 1769, James Watt improved the steam engine, which brought a new source of power to human beings, as well as making a dramatically change in people's lives. Since the great invention was equipped with gears in diverse shape and function, it ushered in the age of machine and triggered the first industrial revolution.
Purification Results
紀蓉
In 1769, James Watt improved the steam engine, which brought a new source of power to human beings, as well as making a dramatically change in people's lives. Since the great invention was equipped with gears in diverse shape and function, it ushered in the age of machine and triggered the first industrial revolution. In 1769, James Watt improved the steam engine, which brought a new source of power to human beings, as well as making a dramatically change in people's lives. Since the great invention was equipped with gears in diverse shape and function, it ushered in the age of machine and triggered the first industrial revolution. In 1769, James Watt improved the steam engine, which brought a new source of power to human beings, as well as making a dramatically change in people's lives. Since the great invention was equipped with gears in diverse shape and function, it ushered in the age of machine and triggered the first industrial revolution.
Back to top
brick dimer
Assembling Results
Alwin
In 1769, James Watt improved the steam engine, which brought a new source of power to human beings, as well as making a dramatically change in people's lives. Since the great invention was equipped with gears in diverse shape and function, it ushered in the age of machine and triggered the first industrial revolution.
Back to top
Gear
Assembling Results
Alwin
In 1769, James Watt improved the steam engine, which brought a new source of power to human beings, as well as making a dramatically change in people's lives. Since the great invention was equipped with gears in diverse shape and function, it ushered in the age of machine and triggered the first industrial revolution.
Back to top
Future works
Alwin
Team
NanoGearChan
Role: DNA ORIGAMI
Background: PCR
Fun Fact: Just a tiny tiny gear only!
Light Bro, Older Brother
Role: PHOTON
Background: Sun?
Fun Fact: You cannot know when he smiles at you.
Light Bro, Younger Brother
Role: POLARIZED LIGHT!!!
Background: Polarizer?
Fun Fact: Polarization makes him very dizzy.
Edward Chern
Role: Big Boss
Background: Assistant Professor of BST
Short description: Has a gentle and charming voice
Hong-Ren, Jiang
Role: Big Boss No. 2
Background: Assistant Professor of institute of Applied Mechanics, NTU
Short description: "Let's cast light on the gear"
Hsing-Yi, Yu
Role: PhD Student, Biochemical Science and Technology
Short description: You can always find him after 12 a.m. in the lab
Yang-Zhe, Huang
Role: Master Student, Biochemical Science and Technology
Short description: Had once been an representative
Contact
No. 1, Sec. 4, Roosevelt Rd., Taipei 10617, Taiwan (R.O.C.)


U.S. Envoy: We Are Working To Help Iranians Bypass Internet Shutdown
by RFE/RL's Radio FardaBrian Hook, Washington's special envoy for Iran, said the United States is working to help Iranians bypass a near total Internet shutdown amid violent protests over a sharp hike in gasoline prices. Speaking to RFE/RL's Radio Farda on November 18, Hook said the United States is trying to put in place "workarounds" to help Iranians access the global Internet. Hook accused the Iranian leaders of "hypocrisy" for using social media while depriving millions of Iranians access to the Internet.


[ ]
HNG Internship
Changing the world one intern at a time
Who are you sending to?
Select from existing beneficiaries
Select Beneficiary
Add a beneficiary
Transfer Airtime
Enter Amount
Select Network
Send
Add beneficiary


# Licensed under a 3-clause BSD style license - see LICENSE.rst
from __future__ import (absolute_import, division, print_function,
unicode_literals)
import copy
from ...extern.six.moves import xmlrpc_client as xmlrpc
from .errors import SAMPHubError
from .utils import ServerProxyPool
from .lockfile_helpers import get_main_running_hub
from .constants import SSL_SUPPORT
if SSL_SUPPORT:
import ssl
from .ssl_utils import SafeTransport
__all__ = ['SAMPHubProxy']
[docs]class SAMPHubProxy(object):
"""
Proxy class to simplify the client interaction with a SAMP hub (via the
standard profile).
"""
def __init__(self):
self.proxy = None
self._connected = False
@property
def is_connected(self):
"""
Whether the hub proxy is currently connected to a hub.
"""
return self._connected
[docs] def connect(self, hub=None, hub_params=None,
key_file=None, cert_file=None, cert_reqs=0,
ca_certs=None, ssl_version=None, pool_size=20):
"""
Connect to the current SAMP Hub.
Parameters
----------
hub : `~astropy.vo.samp.SAMPHubServer`, optional
The hub to connect to.
hub_params : dict, optional
Optional dictionary containing the lock-file content of the Hub
with which to connect. This dictionary has the form
``{<token-name>: <token-string>, ...}``.
key_file : str, optional
The path to a file containing the private key for SSL connections.
If the certificate file (``cert_file``) contains the private key,
then ``key_file`` can be omitted.
cert_file : str, optional
The path to a file which contains a certificate to be used to
identify the local side of the secure connection.
cert_reqs : int, optional
Whether a certificate is required from the server side of the
connection, and whether it will be validated if provided. It must
be one of the three values `ssl.CERT_NONE` (certificates ignored),
`ssl.CERT_OPTIONAL` (not required, but validated if provided), or
`ssl.CERT_REQUIRED` (required and validated). If the value of this
parameter is not `ssl.CERT_NONE`, then the ``ca_certs`` parameter
must point to a file of CA certificates.
ca_certs : str, optional
The path to a file containing a set of concatenated "Certification
Authority" certificates, which are used to validate the
certificate passed from the Hub end of the connection.
ssl_version : int, optional
Which version of the SSL protocol to use. Typically, the
server chooses a particular protocol version, and the
client must adapt to the server's choice. Most of the
versions are not interoperable with the other versions. If
not specified, the default SSL version is taken from the
default in the installed version of the Python standard
`ssl` library. See the `ssl` documentation for more
information.
pool_size : int, optional
The number of socket connections opened to communicate with the
Hub.
"""
self._connected = False
self.lockfile = {}
if hub is not None and hub_params is not None:
raise ValueError("Cannot specify both hub and hub_params")
if hub_params is None:
if hub is not None:
if not hub.is_running:
raise SAMPHubError("Hub is not running")
else:
hub_params = hub.params
else:
hub_params = get_main_running_hub()
try:
url = hub_params["samp.hub.xmlrpc.url"].replace("\\", "")
if SSL_SUPPORT and url[0:5] == "https":
transport = SafeTransport(key_file, cert_file, cert_reqs,
ca_certs, ssl_version)
self.proxy = ServerProxyPool(pool_size, xmlrpc.ServerProxy,
url, transport=transport,
allow_none=1)
else:
self.proxy = ServerProxyPool(pool_size, xmlrpc.ServerProxy,
url, allow_none=1)
self.ping()
self.lockfile = copy.deepcopy(hub_params)
self._connected = True
except xmlrpc.ProtocolError as p:
# 401 Unauthorized
if p.errcode == 401:
raise SAMPHubError("Unauthorized access. Basic Authentication "
"required or failed.")
else:
raise SAMPHubError("Protocol Error %d: %s" % (p.errcode,
p.errmsg))
[docs] def disconnect(self):
"""
Disconnect from the current SAMP Hub.
"""
self.proxy = None
self._connected = False
self.lockfile = {}
@property
def _samp_hub(self):
"""
Property to abstract away the path to the hub, which allows this class
to be used for other profiles.
"""
return self.proxy.samp.hub
[docs] def ping(self):
"""
Proxy to ``ping`` SAMP Hub method (Standard Profile only).
"""
return self._samp_hub.ping()
[docs] def set_xmlrpc_callback(self, private_key, xmlrpc_addr):
"""
Proxy to ``setXmlrpcCallback`` SAMP Hub method (Standard Profile only).
"""
return self._samp_hub.setXmlrpcCallback(private_key, xmlrpc_addr)
[docs] def register(self, secret):
"""
Proxy to ``register`` SAMP Hub method.
"""
return self._samp_hub.register(secret)
[docs] def unregister(self, private_key):
"""
Proxy to ``unregister`` SAMP Hub method.
"""
return self._samp_hub.unregister(private_key)
[docs] def declare_subscriptions(self, private_key, subscriptions):
"""
Proxy to ``declareSubscriptions`` SAMP Hub method.
"""
return self._samp_hub.declareSubscriptions(private_key, subscriptions)
[docs] def get_subscriptions(self, private_key, client_id):
"""
Proxy to ``getSubscriptions`` SAMP Hub method.
"""
return self._samp_hub.getSubscriptions(private_key, client_id)
[docs] def get_registered_clients(self, private_key):
"""
Proxy to ``getRegisteredClients`` SAMP Hub method.
"""
return self._samp_hub.getRegisteredClients(private_key)
[docs] def get_subscribed_clients(self, private_key, mtype):
"""
Proxy to ``getSubscribedClients`` SAMP Hub method.
"""
return self._samp_hub.getSubscribedClients(private_key, mtype)
[docs] def notify(self, private_key, recipient_id, message):
"""
Proxy to ``notify`` SAMP Hub method.
"""
return self._samp_hub.notify(private_key, recipient_id, message)
[docs] def notify_all(self, private_key, message):
"""
Proxy to ``notifyAll`` SAMP Hub method.
"""
return self._samp_hub.notifyAll(private_key, message)
[docs] def call(self, private_key, recipient_id, msg_tag, message):
"""
Proxy to ``call`` SAMP Hub method.
"""
return self._samp_hub.call(private_key, recipient_id, msg_tag, message)
[docs] def call_all(self, private_key, msg_tag, message):
"""
Proxy to ``callAll`` SAMP Hub method.
"""
return self._samp_hub.callAll(private_key, msg_tag, message)
[docs] def call_and_wait(self, private_key, recipient_id, message, timeout):
"""
Proxy to ``callAndWait`` SAMP Hub method.
"""
return self._samp_hub.callAndWait(private_key, recipient_id, message,
timeout)
[docs] def reply(self, private_key, msg_id, response):
"""
Proxy to ``reply`` SAMP Hub method.
"""
return self._samp_hub.reply(private_key, msg_id, response)


Overview
Package
Class
Use
Tree
Deprecated
Index
Help
PREV LETTER
NEXT LETTER
FRAMES
NO FRAMES
All Classes
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
F
factory
- Variable in class test.model.pieces.
FlawedKingTest
factory
- Variable in class test.model.pieces.
GenericPieceTest
file()
- Method in class model.board.
IntSquare
file
- Variable in class model.board.
PairSquare
file()
- Method in class model.board.
PairSquare
file()
- Method in interface model.board.
Square
The file (column) coordinate of this square
fileRankToPosition(int, int)
- Static method in class model.board.
IntSquare
Returns the integer the given square would be stored as internally.
FLAG_CAPTURE
- Static variable in class model.board.
DetailedMove
Indicates that there was a capture in the move.
FLAG_CASTLE_KINGSIDE
- Static variable in class model.board.
DetailedMove
Indicates that the move consisted of kingside castling.
FLAG_CASTLE_QUEENSIDE
- Static variable in class model.board.
DetailedMove
Indicates that the move consisted of queenside castling.
FLAG_CHECK
- Static variable in class model.board.
DetailedMove
Indicates that the move brought the other player into check.
FLAG_CHECKMATE
- Static variable in class model.board.
DetailedMove
Indicates that the move brought the other player into check mate.
FlawedKing
- Class in
model.pieces
An implementation of a king in simplified chess.
FlawedKing(PieceColor, Square)
- Constructor for class model.pieces.
FlawedKing
FlawedKingTest
- Class in
test.model.pieces
Determines the flaw in the FlawedKing.
FlawedKingTest()
- Constructor for class test.model.pieces.
FlawedKingTest
from
- Variable in class control.
ChessGUIController
from
- Variable in class model.board.
Move
Overview
Package
Class
Use
Tree
Deprecated
Index
Help
PREV LETTER
NEXT LETTER
FRAMES
NO FRAMES
All Classes
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W


 Cars are sexy. We've been told for decades by Madison Avenue (at least, those of us who are male have been told) that a hot car is a "chick magnet", and there's not a complete absence of truth in that. I used to have a white 1976 Camaro, and it was gorgeous. I washed it almost every day. A female friend once told me it was "an extension of my penis", and there wasn't a complete absence of truth in that statement, either.
2.  If not intercourse, then at least heavy petting or hand-holding or just riding around with somebody you're really hot for. Vehicle interiors are very cozy, intimate places, and being in one with an attractive person is undeniably erotic.
Now: considering the above, and considering the increasingly bizarre practices people engage in nowadays to achieve sexual gratification, is it really that big a jump from the idea of cars being sexy to that of car crashes being sexy? Is it really that hard to imagine that out there, somewhere, is a group of people who have married that notion to the darker realm of sado-masochism, and who are irrepressiby aroused by not just viewing car wrecks, but actually participating in them?
Certainly not in the imaginative netherworld of Canadian filmmaker David Cronenberg, who for twenty years has explored the transformation of the human body into things mystical and/or horrific with movies like "Videodrom", "Scanners", "Dead Ringers", "The Fly" and "The Dead Zone." Only Cronenberg could possibly take on J.G. Ballard's 1973 cult novel about a clique of car-crash fetishists. Remember, this is the man who filmed the "unfilmable" novel "Naked Lunch", adding his own shadowy vision to William S. Burroughs' vaulting hallucinations. Cronenberg's "Crash" evokes utterly alien feelings. This film is a careening drive down a road you've never traveled (and may not want to again.) It's as bold a film as American audiences have ever seen; a film that won a special prize from the Cannes festival "for daring and audacity"; that has inspired controversy since even before its debut, and that fully deserves its NC17 rating.
The protagonist of "Crash" is James Ballard (James Spader), an adult-film producer who is married to the icily beautiful and bored Catherine (Deborah Unger.) The Ballards' sex life is already unusual; they each engage in affairs and report back to one another while in their own bed. One day, James loses control of his car near the Toronto airport, and rams head-on into a vehicle carrying Dr. Helen Remington (Holly Hunter) and her husband, who is killed. James and Helen formally meet each other in the hospital, and James is introduced to Helen's new friend Vaughan (Elias Koteas.) Vaughan's face is scarred and he walks with a limp - all the result of his frightening hobby of staging car crashes for his own pleasure and that of his fellow fetishists (including his girlfriend, played by Rosanna Arquette in one of the more disturbing combinations of costume and makeup that we've seen in recent memory.)
James and Helen soon begin an affair, centered around their newly discovered, twisted passion for automobiles. Catherine, in turn, is fascinated by Vaughan, and her desire turns toward the dark places he explores. All four become totally obsessed, and are led into increasingly reckless and dangerous behavior in search of the ultimate experience. A warning to more "sensitive" viewers: if you are the slightest bit timid about onscreen sex, then "Crash" is not for you. The sex in this film is explicit and almost constant throughout, and features the principal characters in almost every possible combination. To show anything less would be to fail to do the story justice, for sex is what these people are about. It's what drives (no pun intended) them, and what makes them who they are.
Like most of Cronenberg's films, "Crash" is far more than the sum of its parts. The performances are uniformly restrained, even Koteas' turn as the squirrelly Vaughan. The tone is grayish and the lighting dim; there's not a ray of sunshine in the whole thing (nor should there be.) It's an astounding piece of work, in more ways than one, and, like it or not, probably Cronenberg's best. At the screening I attended, "Crash" generated as noticeable an audience response as anything I've recently seen, ranging from nervous chatter and tittering to uneasy laughter, groans and outright shock. It's more than just a mind-blowing story of people pushing the limits of human experience: it's itself an experience, that seriously stretches the boundaries to (and beyond) which the film medium is willing to go. If you feel like stretching your own limits, then get behind the wheel and head out to see "Crash." Drive carefully, if that's what turns you on.
 From Fine Line Features. Directed by David Cronenberg. Starring James Spader, Holly Hunter, Deborah Unger, Elias Koteas, Rosanna Arquette. Written by David Cronenberg, based on the novel by J.G. Ballard. Running time: 100 minutes. Rated NC17 for language, car-crash violence and numerous explicit sex scenes.
This review copyright 1997 by Marty Cassady. Mat redistribute freely in cyberspace if not altered.
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


marcinbor85@microshell.pl:~$ cd microshell/website
marcinbor85@microshell.pl:~$ cat description.txt
Microshell
This is not yet another simple Command Line Interface.
It's quite complex and powerfull compared to other available bare-metal CLI.
At the same time it is very light, flexible and powerfull.
It's ready to be embedded in any commercial product.
What are the advantages?
- names autocompletation (do You like a TAB-functionality on You favorite bash shell?)
- no dynamic allocations (no memory leaks - no problem)
- hardware independent (works just as well on AVR, PIC, STM32, ESP32 as it on x86 or RPI)
- rich set of examples (available in the Arduino Library Manager)
- pure C source code (works on rich set of compilers)
- backspace key feature (simply works)
- compatible vith VT100 standard (works out of the box with default putty configuration)
- easy to extend (adding more "weird" features it has never been easier)
- buildin commands (must-have, basic support of LS, CAT, PWD, HELP, XXD, ECHO)
- scalable (configuration allows You to exclude unnecessary modules from building)
- translation-ready (do You want Hindi translation? no problem!)
- no internal buffers (support unlimited data stream lengths)
- no static variables (possibility to use multiple independent shells in single system)
- object oriented architecture (pointers attack!)
- support root tree with static virtual files with callbacks (full customization)
- extremely simple to integrate (only 1 simple interface with IO operations)
- asynchronous architecture (static callbacks is not a problem)
- non-blocking api (You just need to call one non-blocking function on main loop)
- unit and functional tests (for greater certainty that nothing will break down)
Want to try it?
You can do it in Your favorite PC web browser. Demo does not support mobile browsers yet.
There is a live >> DEMO << presenting the possibilities of the Microshell library.
Have fun and enjoy! There are some hidden-features, let's find a rabbit!
Free source code is available on my Github profile.
What next?
There are some ideas for future development:
- session management with authorization
- support dynamic file systems
- memory security improvements
- lookup global paths
- scripts support
If You want to contribute this project - excellent! Fork it, make bugs, and send a PR :)
If You want to support me in developing this project - please donate.
In case of any question, feel free to send my an email.
Cheers!


Data Fields | |
| u32 | status |
| u32 | read_address |
| u32 | write_address |
| u32 | length |
| u32 | reserved_1 |
| u32 | reserved_2 |
| u32 | control |
| u32 | reserved_3 |
reserved (padding)
The writeaddress register specifies the first location to be written in a DMA
The status register consists of individual bits that indicate conditions inside the DMA
Specifies the number of bytes to transfer from the read port to the write port. The length register is specified in bytes.
reserved (padding)
The control register is composed of individual bits that control the DMA internal operation. The control register value can be read at any time.
Specifies the address of data to be read. This address is set to 0 if the input interface is an Avalon-ST interface.
Referenced by AltSpecsV2_isr().
The readaddress register specifies the first location to be read in a DMA transaction


Hey there!
My name is Sean McPherson, and I am a software engineer in Pittsburgh, PA.
This is just a landing page. Find me on one of the sites below:
My name is Sean McPherson, and I am a software engineer in Pittsburgh, PA.
This is just a landing page. Find me on one of the sites below:


Specialized Services
- Free access to changing rooms and bathroom facilities for temple patrons who have traveled far and need to change to and from church clothes
- A playroom and low-cost, short-term babysitting services for the children of patrons
- Long-term stay accommodations in kitchenette suites for full-time temple missionaries
- Temple history themed reception and sitting area
- A wedding reception hall that can be easily customized with a simple catering menu and kitchen access for food preparation and serving
- A family search center that supports family search and ordinance work
Ammenities
- Breakfast
- Exercise/workout room
- Indoor pool
- WiFi high-speed internet access and smart TVs
- Parking
- Temple shuttle
- Family history consultation and family ordinance card service


Across: 1. “Delay dismantling carports,” I state (15) 9. The woman will get back the old poet (7) 10. Arrange start in the process of moving (7) 11. Bird left after drink (4) 12. Stuff found in ravine (5) 13. I left Verdi sorting out fuel (4) 16. 50 (fifty) get blue, upset and talkative (7) 17. Stone smashed toaster! (7) 18. Cats stole up to CO’s back (7) 21. Politician named Butler in wishy-washy story (7) 23. Fixed unusual diet (4) 24. Duck jumps into bamboo boat (5) 25. Soldiers’ show? (4) 28. Open about skinned bear found in 12 (7) 29. Nan now has a place in Spain (7) 30. Places of opportunity for Kirk and Co? (10 5) Down: 1. I’m so up! Coe, Ovett and I combine to get good result! (8 7) 2. Duck and drake in film got two pounds in total (7) 3. Job held by Jacques Delors on return (4) 4. Ploy she devised for door security (7) 5. Number force entire rewrite! (7) 6. One backward movement of boat may be off (4) 7. Have a good look at six-footer holding Penny (7) 8. Inexperienced colonials take time to find original inhabitants (6 9) 14. Father returns to second-class scholar (5) 15. American right gets in backup for take over (5) 19. First lady and others found on mountain (7) 20. Treats redhead — orders first course (7) 21. Quiet ghouls smashed farm implements (7) 22. Skip around girl in the country (7) 26. River Don? (4) 27. In Rioja, Z Z Top discover musical genre (4)


{% extends "base.html" %} {% block content %} {% if challenge and challenge != none %}
| Daily limit | $0.00 / —— | |
| Monthly limit | $0.00 / —— | |
| Current balance | ₿0.00000 |
| Withheld | ₿0.00000 |
| Withheld (converted) | $0.00 |
| Maximum deposit | No limit | |
Deposit Bitcoins by sending to a deposit wallet shown below.


Toggle navigation
kidouchi
OpenSpace
My Reservations
Sign Out
Create New Reservation
{% for title, date, start, end, room, description, id in events %}
{{title}}
{{date}}
from
{{start}} to {{end}}
in
{{room}}
{{description}}
{% endfor %}


---
title: ComplexCity Lab - Studies
Author: Fabien Pfaender
Keywords: Studies, Social Science, Humanities, Visualization, Data Science, Geography
Description:
---
{% include header.html %}
Homemade Tools
- JSon Explorer is a visual summary for your large json files
- More to come soon
Libraries
- Requests is a python library to query API and download HTML pages
- lxml is a python library to mount and query HTML and XMl pages
- d3.js is a reference library to create online interactive visualization
- Mapbox & Leaflet to create interactive beautiful online maps
- we also use libraries like sigma.js, unfolding, polymaps or stamen
AWESOME CASE STUDIES
{% include footer.html %}


I was born here in City of Pines, Baguio City. I studied at Fort del Pilar Elementary School until when I was at my 6th grade. I am not that active in school activities but I think I had collected all the different ribbons or awards. But unfortunately I never had an honor or a medal at that time.
Then I finished my Secondary level at the same school which is an annex of Baguio City national High School. When I was in my first year in highschool I always help my teacher who also maintains our school computer laboratory and because of that I had learned a lot about computers which lead me on my course today.


 Otherwise the recipe is very easy - a bit of prep then the oven does the rest.
To prepare the squid, pull the tentacles away from the body. Feel inside the body for the quill (it resembles a shard of plastic). Pull it out of the squid and discard. Rinse inside the body of the squid in cold water. Pull the ears (wing-like flaps) from the body. Pull the purplish skin from the ears and body to leave only the white meat. Cut the tentacles away from the guts by slicing just below the eyes. Check the centre of the tentacles for the hard beak, which can be discarded. (Discard the guts of the squid or, if desired, retain the ink sack to use in seafood pasta or risotto.) Scrape away any traces of guts left inside the body. You should end up with four perfect sack-like calamari ready to fill. Roughly chop about half of the tentacles and set aside.
Preheat the oven to 180C/160C Fan/Gas 4. Lightly oil a large baking dish.
Heat the olive oil in a saucepan, add the garlic, anchovies and capers. Fry for a few minutes, stirring with a wooden spoon until the anchovies have dissolved. Add the chopped tentacles and stir-fry for about 5 minutes, then add the wine and allow it to evaporate. Season with salt and pepper, to taste. Remove from the heat and set aside to cool.
Stir in the bread, pine nuts, lemon zest and parsley. Fill each squid with this mixture and tuck the reserved tentacles into the ends. Place in the prepared baking dish, drizzle with extra virgin olive oil, cover with aluminium foil.
Bake in the oven for 45 minutes, then remove the foil and bake for a further 15 minutes, until lightly golden-brown.
For the salad, put the leaves and onion in a bowl. In a separate small bowl combine the oil, vinegar, salt and pepper to form a dressing.
Just before serving pour the dressing over the salad and mix. Serve alongside the squid.


Hello, my name is Adeel Bhatti and I'm finishing my CS Degree in the fall at SFSU. I'm originally from southern California and moved here in January 2017 to attend school here and explore the bay area for its CS opportunities and recreation. I'm primarily into mobile development using javascript/react native but am getting into other development as well. I currently work at the IT department on campus when I'm not in class. Outside of school/work I enjoy music, sports, and podcasts.


| User email: @[Email] |
| Requested funds: @[Amount] @[AssetId] |
| Beneficiary's Account number (IBAN): @[AccNumber] |
| Name of the accountholder: @[AccName] |
| SWIFT / ABA Routing: @[Bic] |
| Name of the bank: @[BankName] |
| Address of the accountholder: @[AccHolderAddress] |


For features such as SVN polling a default value is required. If job will only be started manually, this field is not
necessary.
There are 4 special default values which will be evaluated at runtime:
- FIRST - will evaluate to the first item in the drop-down that would have been presented had the build been executed
manually.
- LAST - will evaluate to the last item in the drop-down that would have been presented had the build been executed
manually.
- RELEASE - will evaluate to the version marked as RELEASE in the repository metadata for the configured artifact. The
versionFilter even if defined is ignored for this default value.
- LATEST - will evaluate to the version marked as LATEST in the repository metadata for the configured artifact. The
versionFilter even if defined is ignored for this default value.


Test results for: /Users/gwking/darcs/geohash/lift-local.config
4 Tests, 4 Errors.
Testing took: 1 seconds
Problem Summary:
Errors
smoketest
4 tests
4 errors
decode-2 [during testing]
error
encode-5 [during testing]
error
encode-2 [during testing]
error
encode-1 [during testing]
error
Tests Run:
smoketest
4 tests
4 errors
encode-1 [during testing]
error
encode-2 [during testing]
error
encode-5 [during testing]
error
decode-2 [during testing]
error


Configuring Permissions¶
Before you start using PetBlocks on your server, you should also configure the permissions for your players.
Please notice that the permissions changed at the beginning of 2018. Click here to update your permissions if these permissions do not match with your configuration.
Admin¶
These are the recommend permissions for administrators or moderators.
Description |
Permission |
|---|---|
Allows to use the /petblocks administration command |
petblocks.command.admin |
Allows to use the /petblockreload command |
petblocks.command.reload |
Users¶
There are many different ways how to setup your permissions. You can split it up in groups, ranks, etc. These 2 examples only show the most common setups:
Sample 1 for full access to all options the plugin offers.
Description |
Permission |
|---|---|
Allows to use the /petblock command |
petblocks.command.use |
Allows to rename your pet |
petblocks.action.rename |
Allows to use any skin what a player enters in chat |
petblocks.action.customskin |
Allows to ride your pet |
petblocks.action.ride |
Allows to wear your pet |
petblocks.action.wear |
Allows to shoot your pet |
petblocks.action.cannon |
Allows to use all pet engines |
petblocks.selection.engines.all |
Allows to use all simple block costumes |
petblocks.selection.simpleblockcostumes.all |
Allows to use all colored block costumes |
petblocks.selection.coloredblockcostumes.all |
Allows to use all player head costumes |
petblocks.selection.playerheadcostumes.all |
Allows to use all pet costumes |
petblocks.selection.petcostumes.all |
Allows to use all particles |
petblocks.selection.particles.all |
Sample 2 for restricted access to costumes.
Description |
Permission |
|---|---|
Allows to use the /petblock command |
petblocks.command.use |
Allows to rename your pet |
petblocks.action.rename |
Allows to use any skin what a player enters in chat |
petblocks.action.customskin |
Allows to ride your pet |
petblocks.action.ride |
Allows to wear your pet |
petblocks.action.wear |
Allows to shoot your pet |
petblocks.action.cannon |
Allows to use all pet engines |
petblocks.selection.engines.all |
Allows to use the simple block costume at slot 3 |
petblocks.selection.simpleblockcostumes.3 |
Allows to use the simple block costume at slot 5 |
petblocks.selection.simpleblockcostumes.5 |
Allows to use all colored block costumes |
petblocks.selection.coloredblockcostumes.all |
Allows to use all particles |
petblocks.selection.particles.all |
Permissionlist¶
Permissions for commands
Description |
Permission |
|---|---|
Allows to use the /petblock command |
petblocks.command.use |
Allows to use the /petblocks administration command |
petblocks.command.admin |
Allows to use the /petblockreload command |
petblocks.command.reload |
Permissions for actions
Description |
Permission |
|---|---|
Allows to rename your pet |
petblocks.action.rename |
Allows to use any skin what a player enters in chat |
petblocks.action.customskin |
Allows to ride your pet |
petblocks.action.ride |
Allows to wear your pet |
petblocks.action.wear |
Allows to shoot your pet |
petblocks.action.cannon |
Permissions for selections
Description |
Permission |
|---|---|
Allows to use all pet engines |
petblocks.selection.engines.all |
Allows to use a single pet engine |
petblocks.selection.engines.<number> |
Allows to use all simple block costumes |
petblocks.selection.simpleblockcostumes.all |
Allows to use a single simple block costume |
petblocks.selection.simpleblockcostumes.<number> |
Allows to use all colored block costumes |
petblocks.selection.coloredblockcostumes.all |
Allows to use a single colored block costume |
petblocks.selection.coloredblockcostumes.<number> |
Allows to use all player head costumes |
petblocks.selection.playerheadcostumes.all |
Allows to use a single player head costume |
petblocks.selection.playerheadcostumes.<number> |
Allows to use all pet costumes |
petblocks.selection.petcostumes.all |
Allows to use a single pet costume |
petblocks.selection.petcostumes.<number> |
Allows to use all vehicle costumes |
petblocks.selection.vehiclecostumes.all |
Allows to use a single vehicle costume |
petblocks.selection.vehiclecostumes.<number> |
Allows to use all puppet costumes |
petblocks.selection.puppetcostumes.all |
Allows to use a single puppets costume |
petblocks.selection.puppetcostumes.<number> |
Allows to use all particles |
petblocks.selection.particles.all |
Allows to use a single particle |
petblocks.pet.particles.<number |
Allows to use all head database costumes |
petblocks.selection.headdatabasecostumes.all |


 He wrote me out a prescription for ninety 10mg Adderall tablets. I remember kind of dancing and humming the Who's '5:15' as I waited for the local CVS to fill the script. I got the pills home, ground up four in my mortar/pestle, and dumped the powder in a cup of steaming coffee (the crushed pills dissolved completely).I sipped the hot java, smoked a cig, and watched Real World 10 on the MTV. A televised Coral was yelling at Mike about his insensitivity when the first wave of Amphetamine pleasure hit.
Suddenly, the Real World took on a deep significance. It really was the Real World, 7 strangers picked to live in a house, and wow Coral has a set! I sat rapt, coming up with deep sociological math problems to describe the cast's onscreen situation. I was so smart, these pills made me like Charlie in Flowers for Algernon.
Anyway, after the Real World was over, I had an urge to play my guitar. I inherited my Grandfather's Gretch Hollowbody Electric when he died, but although I'd had some rudimentary training with the guitar, I'd let the six-string gather dust in recent months.  An hour later, I had written three new songs, good songs. One song dealt with the Columbine tragedy through the eyes of the killers. Another was a slow blues, a tribute to the Amphetamine mania that created it. And then there was my favorite composition: Arizona Traintrack Sunset.
I played the guitar for a few more hours, forming blisters on my fingers but enjoying my speed freak virtuosity too much to stop Hendrixing. And believe me, to my Adderall ears I sounded like a cross between Jimi Hendrix and Jimmy Page. I later went and hung out with my buddies, handing out the Addies like candy. I didn't charge money for them, for I truly believed that they were like some sacred medicine that needed to be shared with the world. My friends all seemed to agree! We went to a couple parties (where I felt like Hugh Hefner), talked deep for hours, and cleaned my buddies trailer from top to bottom, and smoked a lot of pot. Pot goes great with Adderall! The sun was coming up when I decided to try to sleep.
I went home, hopped into bed, closed my eyes, but sleep eluded me. I was still way amped. So I did what many people without a lover would do in this situation--I started masturbating. Her name was Mindy. In my mind she was as real, sharing my bed, her dark hair brushing my face as she succumbed to multiple climaxes. We made love for hours.  I could almost hear it saying, 'Why bobby, why?'.
Over the next three days the initial pleasure morphed into a flying paranoia. As sleep deprivation set in, so did the hallucinations. Little Zelda men would run across the room, everything in my vision seemed to stretch out like taffy, and something happened in my front yard that was just plain weird, but indescribable. My heart raced and pounded beyond even my coke rate, and I thought that I had overdosed and would soon die of a heart attack or stroke. That was a very unpleasant feeling!  Those movie quotes were they best way my mind this extremely intense experience.
I lost 12 pounds over those four days, and for awhile I was scared that I had lost my mind like on a permanent basis. It was kind of scary. The depression following withdrawal was extremely harsh, even suicidal at times. I did not get my script renewed because I realized that Adderall is an extremely bad thing. It is like an angel that makes love to you, gives you all these powers, and than rips off its mask and says 'Hi, I'm Satan, welcome to hell!' Its been a month since that four day binge, and at times I'm still tempted to see that quack doctor 'one more time!'
Experience Reports are the writings and opinions of the individual authors who submit them.
Some of the activities described are dangerous and/or illegal and none are recommended by Erowid.


After the previous lectures by Alex Lakatos, Jean-Yves Perrier and Dr. Karen Stepanyan you should be confident with:
Before we start this lecture, could you please ensure you aready have:
Before we start writing the code, we need to think about how the system will work and how it should look like to maximise consumer satisfaction. This involves considering User Interface (UI) and User Experience (UX), which you will learn later in the module.
We will use Moqups to put our thoughts down and wireframe the website. They will provide every UCL student with a basic account for free, just enter your email here for an upgrade (you must already have an account there).
Let's create a website wireframe about us! An example:
Now that we know exactly how the website should be structured, let's start writing HTML/CSS and make it a website. If you struggle (forgot what HTML or some elements mean - I_Forgot_Everything), don't know where to start or too lazy to begin, check this Github page, where I wrote templates of a website for people with different levels of knowledge.
Now that we have a website, we want it to be on the Internet, not only on our computers. For this, we want to setup a server, which is a very powerful computer or even multiple computers.
Let's create a VM (Virtual Machine) on Microsoft Azure and connect to it using Putty (if Windows user) or through the terminal for Mac and Linux:
ssh username@IPaddress
Now we want to install software on the server, which will host the website. The two main providers for Linux are Apache and Nginx. In this tutorial, we will be using Apache.
First, let's update our server's packages: (sudo means granting root access - like 'run as administrator')
sudo apt-get update
sudo apt-get upgrade
Install Apache:
sudo apt-get install apache2
Yes, now we have a running server! To access the default server website, go to http://IPaddress
Before we start uploading our own website we need to ensure that we have the right permissions for this. Remember, we used sudo to gain root access, however, for security reasons the default permissions of our account will not allow us to edit/delete the HTML folder. Hence, we use root to allow us to make changes:
chown -R www-data:www-data /var/www/html/
When this is done, we open Filezilla and at the top we enter our server IP (or the nameserver associated with it), username, password and port '22' (for SFTP). This will connect us to the server and more specifically - our accounts home directory, from which we will have to find our way to /var/www/html/ and upload our website files there (replacing the default ones).
sudo chmod -R 755 /var/www/html/
Yes, very much so and let's go back to our presentation to discuss why. The main differences are:
If you paid attention in class today and know HTML/CSS, congratulation! You can now start searching for junior front-end developer roles to work in startups.
By the end of today, we hope you know:
If for any reason you are struggling or have any questions - post them in the discussion forum on Moodle or contact me by email, Skype, Facebook


--- layout: simple title: Notes on Sankararaman & Mahadevan (2011) ---
Sankararaman, S., & Mahadevan, S. (2011). Model validation under epistemic uncertainty. Reliability Engineering & System Safety, 96(9), 1232-1241.
One of the cited issues with using Bayesian analysis for validation is given by Roy & Oberkampf (2011) is that it does not deal with epistemic uncertainty in the inputs. This paper, and the work of Sankararaman in general, seeks to address this issue. Note, however, that only poorly understood stochastic data is addressed, not poorly understood deterministic data, as we would find in certain inputs to wave models (like bathymetry, perhaps).
There is some disagreement about how epistemic uncertainty can be handled and I think this quote illuminates some of these issues and some solutions:
“of sparse and/or imprecise data. Some researchers argue against a probabilistic approach to handle interval data because information may be added to the problem. However, if the quantity is stochastic to begin with, it is only appropriate to represent it with a probability distribution. Regarding faithfulness to the available information, the proposed method addresses this concern either (1) by quantifying the uncertainty in the parameters of the probability distribution and using a family of distributions in the parametric approach or (2) by constructing non-parametric probability distributions that are more flexible than parametric distributions and more faithful to the available information.”
These “mixed” uncertain inputs are dealt with in two different ways in this paper. Either, they form families of parametric distributions to describe them and then integrate them together or they form a single non-parametric representation of the uncertainty. I don’t want to go into a great deal of detail due to time constraints but a Guassian Process appears in the non-paremetric case.
Note that, in this case, an emulator does not appear to be used. The paper also deals with uncertain model data in the form of interval data. This has not been considered in Bayesian validation before. It does this by using an error interval from the minimum and maximum errors.
An interesting admission in the conclusions:
“This integration is computationally efficient and meaningful for model validation by integrating the contribution of different types/sources of uncertainty into a single validation metric, which is helpful for decision-making purposes. However, it may not be suitable for sensitivity analysis where the quantification of individual contributions of aleatory and epistemic uncertainties to the model output uncertainty is of interest.”
Basically, there is this issue of differing focus again, from whether you want to determine where the uncertainty originates or simply whether the model is OK for use.


pyUnitPerf
Tutorial
Author: Grig Gheorghiu
If you are familiar with Mike Clark's JUnitPerf framework, then you may be interested in knowing that I have released a Python port: pyUnitPerf.
pyUnitPerf tests are meant to transparently add performance testing capabilities to existing pyUnit test suites. The pyUnitPerf framework introduces 2 new types of tests:
Let's
look at a simple example adapted from the samples provided with JUnitPerf.
Assume you have the following pyUnit test case in a file called
ExampleTestCase.py:
from unittest import TestCase, TestSuite, TextTestRunner, makeSuite
import time
class ExampleTestCase(TestCase):
��� def __init__(self, name):
������� TestCase.__init__(self, name)
��� def testOneSecondResponse(self):
������� time.sleep(1)
��� def suite(self):
������� return makeSuite(self.__class__)
if __name__ == "__main__":
��� example = ExampleTestCase("testOneSecondResponse")
��� runner = TextTestRunner()
Admitedly this is a contrived example, since the testOneSecondResponse method
simply sleeps for 1 second and does not actually test anything, but it serves
to illustrate the pyUnitPerf functionality.
Assume you want to create a timed test that waits for the completion of the
ExampleTestCase.testOneSecondResponse method and then fails if the elapsed time
exceeded 1 second. With pyUnitPerf, all you need to do is write the following
code in a file called ExampleTimedTest.py:
from unittest import TestSuite, TextTestRunner
from ExampleTestCase import ExampleTestCase
from LoadTest import LoadTest
from TimedTest import TimedTest
class ExampleTimedTest:
��� def __init__(self):
������� self.toleranceInSec = 0.05
��� def suite(self):
������� s = TestSuite()
������� s.addTest(self.make1SecondResponseTimedTest())
������� return s
��� def make1SecondResponseTimedTest(self):
������� """
������� Decorates a one second response time test as a
������� timed test with a maximum elapsed time of 1 second
������� """
������� maxElapsedTimeInSec = 1 + self.toleranceInSec
������� testCase = ExampleTestCase("testOneSecondResponse")
������� timedTest = TimedTest(testCase, maxElapsedTimeInSec)
������� return timedTest
if __name__ == "__main__":
��� TextTestRunner(verbosity=2).run(ExampleTimedTest().suite())
The suite() method constructs a TestSuite object and adds to it the test object
returned by the make1SecondResponseTimedTest method. This method instantiates
an ExampleTestCase object, passing it the method name to be tested:
testOneSecondResponse. We then pass the testCase object to a TimedTest object,
together with the desired maximum time to wait for the completion of the test
(to which we add a 50 msec. tolerance to account for time potentially spent
setting up and tearing down the test case). In the __main__ section of the
module, we simply call the pyUnit TextTestRunner, passing it the suite.
If you run: python ExampleTimedTest.py at a command prompt, you will get the
following output:
testOneSecondResponse (ExampleTestCase.ExampleTestCase) ... ok
TimedTest (WAITING): testOneSecondResponse (ExampleTestCase.ExampleTestCase): 1.0 sec.
----------------------------------------------------------------------
Ran 1 test in 1.000s
OK
Now let's make the test fail by requiring the timed test to finish in 0.9
seconds. To do this, simply change
maxElapsedTimeInSec = 1 + self.toleranceInSec
to
maxElapsedTimeInSec = 0.9 + self.toleranceInSec
Running python ExampleTimedTest.py now results in the following output:
testOneSecondResponse (ExampleTestCase.ExampleTestCase) ... ok
TimedTest (WAITING): testOneSecondResponse (ExampleTestCase.ExampleTestCase): 1.
0 sec.
FAIL
======================================================================
FAIL: testOneSecondResponse (ExampleTestCase.ExampleTestCase)
----------------------------------------------------------------------
AssertionFailedError: Maximum elapsed time exceeded! Expected 0.95 sec., but was
1.0 sec.
----------------------------------------------------------------------
Ran 1 test in 1.000s
FAILED (failures=1)
Note that the test result for the pyUnit test case (ExampleTestCase.testOneSecondResponse)
is still marked as OK, but the test result for the Timed Test is marked as
FAILED, since the time it took was longer than the specified maximum time of
0.96 sec.
Let's look at an example of a LoadTest. The following code can be saved in a
file called ExampleLoadTest.py:
from unittest import TestSuite, TextTestRunner
from ExampleTestCase import ExampleTestCase
from LoadTest import LoadTest
from TimedTest import TimedTest
class ExampleLoadTest:
��� def __init__(self):
������� self.toleranceInSec = 0.05
��� def suite(self):
������� s = TestSuite()
������� s.addTest(self.make1SecondResponseSingleUserLoadTest())
������� s.addTest(self.make1SecondResponseMultipleUserLoadTest())
������� s.addTest(self.make1SecondResponse1UserLoadIterationTest())
������� return s
��� def make1SecondResponseSingleUserLoadTest(self):
������� """
������� Decorates a one second response time test as a single user
������� load test with a maximum elapsed time of 1 second
������� and a 0 second delay between users.
������� """
������� users = 1
������� maxElapsedTimeInSec = 1 + self.toleranceInSec
������� testCase = ExampleTestCase("testOneSecondResponse")
������� loadTest = LoadTest(testCase, users)
������� timedTest = TimedTest(loadTest, maxElapsedTimeInSec)
������� return timedTest
��� def make1SecondResponseMultipleUserLoadTest(self):
������� """
������� Decorates a one second response time test as a multiple-user
������� load test with a maximum elapsed time of 1.5
������� seconds and a 0 second delay between users.
������� """
������� users = 10
������� maxElapsedTimeInSec = 1.5 + self.toleranceInSec
������� testCase = ExampleTestCase("testOneSecondResponse")
������� loadTest = LoadTest(testCase, users)
������� timedTest = TimedTest(loadTest, maxElapsedTimeInSec)
������� return timedTest
��� def make1SecondResponse1UserLoadIterationTest(self):
������� """
������� Decorates a one second response time test as a single user
������� load test with 10 iterations per user, a maximum
������� elapsed time of 10 seconds, and a 0 second delay
������� between users.
������� """
������� users = 1
������� iterations = 10
������� maxElapsedTimeInSec = 10 + self.toleranceInSec
������� testCase = ExampleTestCase("testOneSecondResponse");
������� loadTest = LoadTest(testCase, users, iterations)
������� timedTest = TimedTest(loadTest, maxElapsedTimeInSec)
������� return timedTest
if __name__ == "__main__":
��� TextTestRunner(verbosity=1).run(ExampleLoadTest().suite())
The 3 methods defined in ExampleLoadTest cover some of the most commonly used
load test scenarios. See the doc strings at the beginning of each method for
more details. Running python ExampleLoadTest.py generates this output:
.TimedTest (WAITING): LoadTest (NON-ATOMIC): ThreadedTest: testOneSecondResponse
(ExampleTestCase.ExampleTestCase): 1.03099989891 sec.
..........TimedTest (WAITING): LoadTest (NON-ATOMIC): ThreadedTest: testOneSecondResponse (ExampleTestCase.ExampleTestCase): 1.0150001049 sec.
..........TimedTest (WAITING): LoadTest (NON-ATOMIC): ThreadedTest: testOneSecondResponse (ExampleTestCase.ExampleTestCase)(repeated): 10.0 sec.
----------------------------------------------------------------------
Ran 21 tests in 12.046s
OK
This time all the tests passed. Note that the multiple user load test
(make1SecondResponseMultipleUserLoadTest) runs the individual test cases in
parallel, each test case in its own thread, and thus the overall time is only
slighly longer than 1 second. The multiple iteration test
(make1SecondResponse1UserLoadIterationTest) runs the 10 iterations of the test
case sequentially, and thus the overall time is 10 seconds.
We can make some of the tests fail by increasing the value of
maxElapsedTimeInSec, similar to what we did for the TimedTest.
Why should you use pyUnitPerf? Mike Clark makes a great case for using
JunitPerf on his Web site. To summarize, you use pyUnitPerf when you have an
existing suite of pyUnit tests that verify the correctness of your code, and
you want to isolate potential performance issues with your code.
The fact that the pyUnitPerf test suites are completely independent from the
pyUnit tests helps you in scheduling different run times for the 2 types of tests:


node-red-contrib-modbus
The all in one Modbus TCP and Serial contribution package for Node-RED.
Node-RED contribution package for Modbus
Based on modbus-serial with TCP, C701, Telnet, Serial, RTU buffered, and ASCII
- stress tested with Node-RED v1.0.4 and Node.js LTS
- works with queueing per unit and round robin scheduling
Node-RED v1.x versions:
- Node.JS 14.x is supported with v5.14.+
- Node.JS 12.x is supported with v5.x
- Node.JS 10.x is supported with v5.x
Node-RED v0.x versions:
- Node.JS 10.x is supported with v4.x
- Node.JS 8.x is supported with v3.x
- Node.JS 6.x is supported with v2.x
- Node.JS 4.x is supported with v1.x
If you like that contributor's package for Modbus, then please give us your star at GitHub !
Install
Run the following command in the root directory of your Node-RED install
npm install node-red-contrib-modbus
Run the following command for global install
npm install -g node-red-contrib-modbus
try these options on npm install to build, if you have problems to install
--unsafe-perm --build-from-source
modbus-serial, serialport and jsmodbus
The serialport optional dependency is just to list all ports on your system in the client configuration. It is not the serialport version to work with Modbus at runtime. For that check the modbus-serial or jsmodbus package.json, please! The modbus-serial supports and works for TCP connections in that package, too. The jsmodbus package is just to provide a simple Modbus Server node. All Modbus commands running on modbus-serial.
TCP or Serial testing
If you get in trouble with TCP connections, then check and test with just modbus-serial first, please!
If you get in trouble with Serial connections, then check with just serialport first, please!
Update/Upgrade/Downgrade
To update the dependencies or the whole package, you have just to install again.
npm show node-red-contrib-modbus@* version
To get a special version please set the version with @M.M.F:
npm install<EMAIL_ADDRESS>or global by
npm install -g<EMAIL_ADDRESS>How to use
- see Wiki pages
- use the Flow example to see how it works ...
- see YouTube Playlist
Debug
Debug will be activated by starting Node-RED with debug mode:
DEBUG=contribModbus*,modbus-serial node-red -v
or
DEBUG=contribModbus:{option},contribModbus:{option},...
see Wiki pages to get more options in detail
Contributing
Let's work together! Contributors are welcome. Please, for the repo and send your pull requests from your repo to our develop branch or open issues while you're testing!
For Developers
See the scripts of the package and the additional Shell scripts to clean, update, or upgrade this NPM package.
- dev-link (local testing with Node-RED)
- testing (unit, integration)
- coverage
- docs generation
- standard-version alpha, beta, release
- git-flow
For Testers
Report issues, share your experiences, record tutorials, write Wiki articles and Blogs to share more about this package, please!
Authors
since April 2016 by Klaus Landsdorf and Community Driven
History
- contribution since 2016 by Contributors
- license changed in 2016 by Jason D. Harper
- started in early 2015 by Mika Karaila
Contributors
Code Contributors
This project exists thanks to all the people who contribute. [Contribute].
Financial Contributors
Become a financial contributor and help us sustain our community. [Contribute]
Individuals
Organizations
Support this project with your organization.  [Contribute]


"May the odds be ever in your favor."
Book 1
Book 2
Book 3
Will You Survive the Reaping?
The Baker's Son
The Mockingjay
The Warrior


Add New Doctor
Doctor Details
Doctor Name
Contact Number
Address
Email
Qualification

Heart Specialist
Bones Specialist
Skin Specialist
Neurologist
Gynecologists
Child Specialist
Password


Kinetic modeling is playing an ever increasing role in helping our understanding
of biological processes. Many good tools for simulating and analyzing kinetic models are publicly
available [1]. However, developing good models that can be reliably used by the community at large
requires more than these tools. Namely, the following issues need to be addressed:
WikiModels seeks to address these concerns. The current prototype permits editing, browsing and documenting models. Each entity (reactions, parameters, etc.) of a model can root threaded comments (discussion lists) thus enabling an open peer-review of each aspect. A unique immutable URL is associated to each element and comment, allowing external cross-referencing. Models can either be imported as SBML files and then commented in WikiModels or set up in WikiModels from scratch. Ongoing developments include tagging, a Wiki-like history for models and a Role-Based Access Control system. Later-on we will add functionality for online simulation and analysis, for model assessment and for automated hypothesis generation.


For 10 KMD!!!
Rearrange this 3 x 3 set of digits so that every 3 digit row, column, and diagonal adds up to 15.
1 2 3
4 5 6
7 8 9
Only one (initial) answer will be accepted per user which must be posted right here in this channel. Please arrange your solution in a 3 x 3 layout just as the puzzle is presented.(edited)
Pinned a message.
Biz31-Dec-19 12:47 AM
9 2 3
5 6 4
1 7 8
Dr.Terminus31-Dec-19 12:47 AM
Incorrect
9 2 3 = 14
Biz31-Dec-19 12:48 AM
Crap, first try
smk76231-Dec-19 12:48 AM
5 5 5
5 5 5
5 5 5
Dr.Terminus31-Dec-19 12:48 AM
good effort.
 May find another puzzle / riddle to post after we get a correct answer... someone will crack it
Dr.Terminus31-Dec-19 01:04 AM
Keeping it fresh...
[SOLVED]
For 12 KMD!!!
Rearrange this 3 x 3 set of digits so that every 3 digit row, column, and diagonal adds up to 15.
1 2 3
4 5 6
7 8 9
Only one (initial) answer will be accepted per user which must be posted right here in this channel. Please arrange your solution in a 3 x 3 layout just as the puzzle is presented.(edited)
Pinned a message.

Bonus Rd.!!
There is another possible layout..  I'll provide reward
anyone got a solid puzzle they think will take longer than an hour to solve around here?
infotech-al31-Dec-19 01:14 AM
1 6 8
2 4 9
3 4 8
Dr.Terminus31-Dec-19 01:14 AM
Penny-Packer
infotech-al31-Dec-19 01:15 AM
haha
Dr.Terminus31-Dec-19 01:15 AM
Building a roller coaster
infotech-al31-Dec-19 01:15 AM
I am a industrialist, philanthropist, bicyclist... where is my kmd?
Dr.Terminus31-Dec-19 01:16 AM
your answer is way off lol
computer genie already got it right plus bonus
infotech-al31-Dec-19 01:16 AM
ok no kmd for being late, but answer is correct...

Dr.Terminus31-Dec-19 01:17 AM
puzzles over internet tough!
infotech-al31-Dec-19 01:17 AM
hence i am not a good coder!
Dr.Terminus31-Dec-19 01:17 AM
both to present well and to stump folks
well I'm about to try posting another easy puzzle
everyone can do this so its gonna be about speed
infotech-al31-Dec-19 01:28 AM
1 6 8
2 9 4
3 5 7
late but finally got it!
Dr.Terminus31-Dec-19 01:31 AM
heh, wrong.. look at third column.. 8 + 4 + 7
834
159
672
Works, and nobody put that yet
NEXT PUZZLE!
For 5 KMD!!!
A solid black cube (black to its core) is painted white on all six of the outer sides.
This black interior / white exterior cube explodes into 27 equally sized perfect smaller cubes.
How many of these smaller cubes have white paint on 3 sides?
Only one (initial) answer will be accepted per user which must be posted right here in this channel.(edited)
Pinned a message.
smk76231-Dec-19 02:23 AM
8
Dr.Terminus31-Dec-19 02:26 AM
!kmdtip @smk762 5
KMD TipBotBOT31-Dec-19 02:26 AM
TipBot
@Dr.Terminus (Dr.Terminus#3269)
You tipped @smk7625 KMD
1
Dr.Terminus31-Dec-19 02:26 AM
CORRECT!
BONUS!
for 2 KMD
How many smaller cubes have 2 sides painted white?
smk76231-Dec-19 02:26 AM
12
Dr.Terminus31-Dec-19 02:26 AM
!kmdtip @smk762 2
KMD TipBotBOT31-Dec-19 02:26 AM
TipBot
@Dr.Terminus (Dr.Terminus#3269)
You tipped @smk7622 KMD
Dr.Terminus31-Dec-19 02:27 AM
aaaaand for 1 KMD..
WELL DONE @smk762
smk76231-Dec-19 02:30 AM
figured it was time I answered seriously
Dr.Terminus31-Dec-19 02:30 AM
anyone could have jumped in for those bonuses and nobody attends tonight
will try to save up a few new decent puzzles.. tough gathering these. so many can be solved with a 2 second google
smk76231-Dec-19 02:32 AM
I have an idea for one but it will take time to prepare. Hord to make one that takes longer to solve than it does to create!
Dr.Terminus31-Dec-19 02:32 AM
true..
Ill pay the bounty for a puzzle you want to pin. just let me know prize you have in mind
smk76231-Dec-19 02:33 AM
thnx, I'm due to disperse some NN funds to community comps also