|
BongsShhh! Jesus Christ dude, they're called water pipes and they're used for smoking tobacco or other legal herbal blends. Can't you read the sign? If the clerk hears us making any references to bongs, drugs, marijuana, or unlawful substances -- we'll both get thrown out!  Water pipe shops are commonly referred to as head shops by the tie-dye hippie types over forty who still lurk among us in sleepy towns like Portland, Oregon and Davenport, California. The term "head shop" communicates the idea of a store selling things which are "good for one's head" -- the term being a 1960s generational corruption of the word "pothead". Outside of a head shop, water pipes are indeed called bongs, so nicknamed after the Thai word baung: a snapped-off section of hollow bamboo which doubles as a you-know-what. Just gaze upwards over yonder counter top and look at all the funny bongs. So many styles and varieties! Why would you ever need one with multiple chambers? Hey, that one looks like the Starship Enterprise! Which one is right for you? They're not all glass, of course. Some are plastic. Others are wooden, or painted ceramic with a light glaze of enamel. There are two distinct types of bong designs: those crafted after Grateful Dead hippie shit, invoking imagery of skulls, the pot leaf, or dancing bears -- and everything else.  The critics agree: smoking [legal tobacco products and herbal blends] out of a glass bong provides a smoother, richer smoking experience. Bongs constructed from ceramic or plastic run the risk of scratching, burning, melting ever so slightly, or emitting fumes which can lead to asthma or respiratory-related illnesses. Unless a bong was clearly assembled from uniform, prefabricated parts like Pyrex beakers or rubber cork stoppers, chances are it was lovingly crafted by hand. Today's most sought-after manufacturers are professional artisans or students of chemistry, physics, and material engineering. A bong starts its life as a tiny droplet of molten glass -- colored or clear -- pulled from a crucible furnace which approaches 2800 degrees Fahrenheit. The key ingredients in bong glass are red-hot silica sand, lime (calcium hydroxide), sodium bicarbonate, and recyclable shards of other glass. A single droplet has the viscosity of honey, and exists in a slow-flowing state known to students of computational fluid dynamics as supercooled. The bong maker (psst: they prefer to be called glass blowers) extracts and gathers this droplet onto a hollow rod, where it can be shaped, extruded, sculpted and beveled with a propane torch. With gentle clockwise and counterclockwise rotations, the rod is spun back and forth, occasionally angled with deliberate tilts up and down so the "blob" assumes the rough shape of a cylinder. This technique is the same for glass pipes as it is for bongs -- and different metal instruments resembling those found in a blacksmith's shop can be used to add decoration or enhance detail while the glass is further trained. Hollow rods also double as a blowpipes: air is forced through the tube (by the artisan's lungs or a set of accordion billows) so the molten glass can expand in size and shape like a balloon. Watching a bong evolve from a glowing, amber tadpole is a magical process. Look, there's the water chamber! There's the stem! I see where the carb is gonna be! He's sprinkling scraps of plastic in the glass so when the final design melts together it'll all be infused with multicolored rivers and swirls! Dude, I totally remember Shrinky Dinks. If the bong starts cooling more quickly than it can be sculpted, the artisan stashes what he's got right in the glory hole, a side compartment of the blasting window located just above the furnace, traditionally kept around 2000 degrees Fahrenheit. There, the glass loosens up into the viscosity of rubber, suitable for additional shaping. I'll say it again: long, hard tubes of glass get shoved in the glory hole and they're not pulled out until they're soft and floppy. The yins and yangs of bong making are simple and straightforward. Air is forcefully blown into a bong during its construction; air is forcefully sucked out of a bong throughout its life span. An empty bong needs to be filled, a filled bong needs to be emptied. Supercooled bong glass has no solidifying temperature: it continues to undergo a gradual change of shape and size over the course of many thousands of years. This means that whether you're super stoned or only a tiny bit stoned, your favorite glass bong really is melting in slow motion as it sits there on your desk next to your dusty keyboard and Pepperidge Farm Mint Milanos. Bong appetit! In September of 2001, terrorists converted New York's Trade Center towers into the world's largest bongs. Acres of smoke and debris billowed out the stacks for miles, higher and higher into the atmosphere. Unfortunately, nobody got stoned except Attorney General John Ashcroft, who promptly spearheaded America's very first anti-bong division, Operation Pipe Dreams, as part of Homeland Security's efforts to investigate and track the commerce of suspected terrorism. You might say he green lighted the notion that bong peddlers should be demonized as much as individuals who dare traffic in porno movies. Both groups are now subject to the same sudden raids, surprise searches, and summary seizures. Bada bing, bada bong. "Quite simply, the illegal drug paraphernalia industry has invaded the homes of families across the country without their knowledge," Ashcroft said at a press conference. "This illegal, billion-dollar industry will no longer be ignored by law enforcement." Paraphernalia. What a crazy, stoned-up Dr. Seuss word! More than just bongs are under the microscope: Operation Pipe Dreams of course takes aim against pipes as well -- not to mention screens, bowls, rolling papers, nitrous oxide canisters, whippets, measurement scales and balances, blenders, pill crushers, empty plastic baggies, razor blades, rubber bands, dilutents, solvents and adulterants like baking soda. Even clothespin roach clips are par for the course, so named because pot holder was already taken. All objects observed sitting directly adjacent to your bong can be considered "paraphernalia," so maybe your cat should sleep somewhere else. One bong, two bong, three bong, floor. As governmental databases and marketing firms continue aggregating their combined knowledge of American citizenry and their purchasing histories, life will grow increasingly difficult for the consumers of bongs. It's no longer hard to envision modern scenarios where individual applicants are denied health insurance for their families until they can satisfactorily explain away that peculiar 1998 debit card purchase of $120.00 made at Stoners Pot Palace in Seattle, Washington.  In 2003, comedy legend Tommy Chong (formerly of Cheech & Chong) was sentenced to nine months in prison for selling Middle Eastern-inspired glass bongs on the Internet. There was a modest array to choose from -- none too over the top -- with models like Babe, Big Bamboo, Topanga, and yes, even one called the Cheech. The sting operation involved exactly the level creativity one might expect from the federal government: law enforcement officers placed orders for bongs from two of Chong's businesses, Chong Glass and Nice Dreams Enterprises. They paid for the bongs, then raided Chong's home once the merchandise was delivered. If the bongs had been fashioned to resemble animated characters from Pixar's Finding Nemo instead of Egyptian or Arab designs, Chong might have remained outside the radar of personnel working at the highest levels of the Bush administration. Later, Tommy would talk to Playboy magazine: "I heard a bang on the door at 5:30 a.m. When I opened it, DEA agents in flak jackets rushed in with their weapons drawn. They went from room to room yelling clear, clear, clear!" To streamline Chong's incarceration, prosecutors spoke less about his bong company -- and more about his long history of portraying characters who glamorized drug use in the movies. No genuinely remarkable efforts were made to distinguish Chong from his satirical movie roles or comedy writing efforts; he was presented as someone who regularly trivialized efforts to curtail drug proliferation. Chong's greatest crime was manufacturing decades' worth of pot-related humor in which cops were seen to be bumbling or inept. When it became clear that prosecutors were actually serious about Chong's bongs, the 64-year-old comedian pled guilty to violating federal paraphernalia laws in an effort to protect his son, whose own water pipe business was next on the authorities' chopping block. Perhaps John Ashcroft and his flak jacket squad might be interested in kicking down the doors of the Smithsonian Institute, which has a permanent bong exhibit. Admission is free. Prior to the bust, Tommy Chong never had anything resembling a criminal record -- just six comedy records which each went gold, and seven feature films. Of the fifty-five individuals swept up in the Pipe Dream bust, he was the only one jailed and the only individual ordered to pay fines of $20,000. Chong was sentenced on September 11, 2003 -- and placed in a minimum-security prison in Northern California. Lacking even a single prior arrest was something he found slightly embarrassing among his prison pals. When asked what he was in for, Chong would clear his throat and mumble bongs. "My time in jail wasn't bad," Chong says in the 2006 documentary a/k/a Tommy Chong. "For the most part, I was with my fans. They even had to come up with some kind of rule where guards weren't allowed to talk to me or ask for my autograph. It was like a rest home. When you get as old as I am, you don't need to get stoned to be slow and stupid." Welps, that's the much ado about bongs and bong-related whatnot. Hopefully me and my friend here have proved that we're one hundred percent over the age of eighteen and therefore legally able to purchase a water pipe. And so, kind sir, we'll take that twelve-chamber, inverted pyrex water hookah, one Bubbles Powerpuff Pipe, and these d'ope-smoking Homer bongs. Here's a credit card with the name of someone who appears to be a woman, but who is actually my mom because we both have the same name. Also I'm gonna need some metal screens, a pack of rolling papers, and this bag of peanut M&M's. And could you please point us in the general direction of where we might be able to score a little p-o-t. |


Tags: music and stuff
billy woods - Aethiopes
This thing rips… I like his past projects but not nearly as much as I enjoy this one. Sparse and intensive at the same time? And the lines are crazy.
Release date: 2022-04-08
[9.0/10]
Lizzy Mercier Descloux - Mambo Nassou
Funk fusion / post-punk. Got to know about this artist through a (review on Guardian](https://www.theguardian.com/music/2022/feb/11/oki-tonkori-in-the-moonlight-review-ainu-people). Probably will check out other ZE Record artists as well.
Release date: 1981
This album is awesome.
[8.8/10]
Yage - 3 - 17 October 1984
~ I really like screamo music ~
Release date: 2000-03
[8.6/10]
Violet - Transparências
Club / ambient. I like the ambient cuts a lot, like the first track Música para acordar
, but the wonkier tracks on this album are also very fascinating.
Release date: 2022-02-23
[8.5/10]
Nala Sinephro - Space 1.8
Great contemporary jazz. The last track sounds like Gas with sax on top. Totally missed out on this one last year…
Release date: 2021-09-03
[8.5/10]
Pixel - The Drive
Minimal electronic music from raster-noton. Normally when you see them publish something you should just check it out, chances are it’s gonna be lit.
Release date: 2021-10-15
[8.5/10]
Serwed - Serwed III
Boomkat’s review is quite accurate: Chain Reaction + Huerco + Actress + Kuedo = this. Pretty good stuff.
Release date: 2022-02-15
[8.4/10]
Oki - Tonkori In The Moonlight
The Bandcamp page will basically tell you everything you need to know about this project. As for me anything that comes from Oki’s making is guaranteed to be quality stuff.
Release date: 2022-02-04
[8.3/10]
Chat Pile - Remove Your Skin Please
It’s like Godflesh meets Pissed Jeans meets The Body, but different from all of those bands at the same time. Looking forward to their new stuff.
Release date: 2019-11-15
[8.3/10]
Booker Stardrum - CRATER
Abstract experimental electronic music from L.A. percussionist. Some of the sounds remind me of OPN’s Returnal
. The last track Walking Through Still Air
is really nice.
Release date: 2021-07-02
[8.3/10]
Patrick Shiroishi - Hidemi
Jazz concept album. Mesmerizing.
Release date: 2021-10-29
[8.2/10]
Black Thought - Streams of Thought Vol. 1
I think this is definitely better than Vol. 2… Conscious rap.
Release date: 2018-06-01
[8.1/10]
Tangerine Dream - Raum
Cosmic synth ambient.
Release date: 2022-02-24
[8.0/10]
Rex - Waltz
Slowcore / country. Like it a lot, if there’s a band in Taiwan that plays this kind of stuff I’d go to every single one of their shows.
Release date: 1996-03
[8.0/10]
Denzel Curry - Melt My Eyez See Your Future
I never expected a jazz-hop album from him… Some featured guests don’t really fit the tracks that well, but all in all this is quite an enjoyable album, and definitely a departure from his older, more abrasive style of music.
Release date: 2022-03-25
[8.0/10]
ROSALÍA - MOTOMAMI
Bombastic reggaeton.
Release date: 2022-03-18
[7.8/10]
Ka Baird, Pekka Airaksinen - FRKWYS Vol. 17: Hungry Shells
Eerie experimental album. A bit difficult at first but gets better over repeated listening at work.
Release date: 2021-10-22
[7.8/10]
FKA Twigs - Caprisongs
Art pop. Nowadays it is hard to know when to call a musical project a full-length and when a mixtape… I actually think the featured artists on this album kind of don’t fit in the muscial context, it’d be much nicer I think if there are less features and more of herself. Like the songwriting a lot.
Release date: 2022-01-14
[7.8/10]
Ikarus - Plasma
Progressive jazz-rock, or just modern zeuhl. Jazzy stuff, didn’t know there are still people making this kind of music.
Release date: 2022-02-01
[7.6/10]
They Hate Change - Blatant Localism
I think their older tracks are much more fire than those three, when are they going to release a full length album though…
Release date: 1981-07-01
[7.5/10]
Jeff Parker - Forfolks
Jazz guitar looping music.
Release date: 2021-12-10
[7.4/10]
Benny The Butcher - Tana Talk 4
Quite enjoyable east coast hip-hop, but doesn’t really push the envelop.
Release date: 2022-03-11
[7.4/10]
Tomas Fujiwara’s Triple Double - March
Free jazz.
Release date: 2018-05-18
[7.3/10]
Soul Glo - Diaspora Problems
Hardcore punk + rap… Hardcore rap?? Pretty fun stuff.
Release date: 2022-03-25
[7.2/10]
Saga Asad - New Man
Pretty smooth jazz-hop.
Release date: 2020-06-26
[7.1/10]
Teller Bank$, Ed Glorious - The Part & Parcel
Boom bap.
Release date: 2021-11-11
[7.1/10]
The Silver - Ward of Roses
Alright black metal. The tones are pretty decent, but in terms of songwriting it isn’t exactly what I’d call innovative or refreshing.
Release date: 2021-10-15
[7.0/10]
Haru Nemuri - Shunka Ryougen
J-rock meets spoken words-ish rapping with occasional hardcore screams.
Release date: 2022-04-22
[6.5/10]
SeeYouSpaceCowboy - The Romance of Affliction
And I thought everyone stopped doing pop metalcore a long time ago…
Release date: 2021-11-05
[4.0/10]
Comments


Yes, I went to Montreal again. If you read the About page you would know how much I love this place. This time we got to stay in the brand new section of the hostel which was even better than the other part. This time I knew some of the hotspots I definitely wanted to hit but the weather was much nicer and we were able to do some exploring we were not able to the first time.
Now I know how to ride a bike, I did it all the time as a kid. Despite this I had never rode a bike on the road with cars much, let alone in a city. My friend suggested we do it, and after the first five minutes I knew I had made a terrible mistake. My friend took off and I was took pursuit attempting not to be flattened by a pancake by the cars, vans, and trucks that surrounded us. I had a good time in the end, but I much prefer walking.
This was also the first time I explored the wonder that is Old Montreal. I have heard Montreal called a little slice of Europe in North America, and nothing shouts that more than Old Montreal.
There were two main things that gave this trip distinctive status in my mind. The first, was that I went clubbing for the first time. As a lover of all things EDM, I found my home in the club. If you ever find yourself walking the colorful Rue de Saint Catherine in Montreal, do yourself a favor and duck into Unity nightclub at night.
The second thing that made this trip distinctive was that we brought home a rather unique souvenir in the form of an Irishman. As I have written before hostels are one of the greatest things on this Earth, and at hostels you meet other travelers. We met one such traveler who was awesome, and he needed a way to go to Boston, so naturally we brought him home to New York City with us where he could catch a cheap ride to Boston. This had led to an incredible friendship and I bother him with travel questions since he is much better travelled than I am. For now.


Note: this feature is deprecated in VISION 3.0+.
To compute Signature consistency scores, VISION needs a cell-cell similarity metric in order to build the neighborhood graph. By default, VISION runs PCA and uses euclidean distances in the reduced space for this purpose. However, if the cells’ variation is better modeled by a trajectory (either linear or tree-like), then distances along the trajectory structure can be used instead.
Many tools exist to perform trajectory inference in single cells. The Dynverse project has developed wrappers for 59 recently-published methods and VISION is able to accept the wrapped output of these methods as an input trajectory model.
Within the Dynverse trajectory object, VISION depends on two components:
You should have a working installation of VISION, dyno, and tidyverse.
devtools::install_github("YosefLab/VISION")
devtools::install_github("dynverse/dyno")
install.packages('tidyverse')
In this vignette, we’ll be analyzing a set of ~5,000 cells during haematopoiesis (Tusi et al, Nature 2018).
We begin by loading in the data and requisite libraries:
counts = as.matrix(read.table("data/hemato_counts.csv.gz", sep=',', header=T, row.names=1))
We’ll now follow the dyno vignette in the github README. You’ll need to make sure you have Docker installed. Although we use Slingshot here, there is a wide variety of methods that can be used, as listed on the Dynmethods page.
Before running the model, we’ll need to perform some gene filtering. We first only select the genes used in the original Tusi et al study, then for further efficiency, we further filter using VISION’s Fano filtering.
k.genes = read.table("data/bBM.filtered_gene_list.paper.txt.gz", sep=',')[,1]
filt.counts = counts[k.genes, ]
f.genes = VISION:::filterGenesFano(filt.counts)
filt.counts = filt.counts[f.genes, ]
Now, resuming the workflow recommended on the dyno vignette,
umis <- colSums(counts)
scale.factor <- median(umis)
expr <- t(t(counts) / umis) * scale.factor
filt.expr <- log(1 + expr[f.genes,])
dataset <- wrap_expression(
counts = t(filt.counts),
expression = t(filt.expr)
)
model <- infer_trajectory(dataset, "projected_slingshot", verbose=T)
model <- model %>% add_dimred(dyndimred::dimred_mds, expression_source = dataset$expression)
plot_dimred(
model,
expression_source = dataset$expression
)
Now, with this model saved we can pass it to VISION via the
latentTrajectory
parameter. The model will automatically be
analyzed with the same signatures passed to the VISION object, and with
this model, the Trajectory
tab will be activated in the
VISION output report.
meta <- read.table("data/hemato_covariates.txt.gz", sep='\t', header=T, row.names=1)
meta <- meta[colnames(expr), -1]
vis <- Vision(expr, signatures = c("data/h.all.v5.2.symbols.gmt"),
meta = meta, latentTrajectory = model)
vis <- addProjection(vis, "MDS", model$dimred[,c(1,2)])
vis <- analyze(vis)
## R version 3.6.2 (2019-12-12)
## Platform: x86_64-apple-darwin15.6.0 (64-bit)
## Running under: macOS Catalina 10.15.7
##
## Matrix products: default
## BLAS: /Library/Frameworks/R.framework/Versions/3.6/Resources/lib/libRblas.0.dylib
## LAPACK: /Library/Frameworks/R.framework/Versions/3.6/Resources/lib/libRlapack.dylib
##
## locale:
## [1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8
##
## attached base packages:
## [1] stats graphics grDevices utils datasets methods base
##
## other attached packages:
## [1] BiocStyle_2.20.2
##
## loaded via a namespace (and not attached):
## [1] knitr_1.33 magrittr_1.5 R6_2.4.1
## [4] ragg_1.2.1 rlang_1.0.1 fastmap_1.1.0
## [7] stringr_1.4.0 tools_3.6.2 xfun_0.25
## [10] cli_3.1.1 jquerylib_0.1.4 systemfonts_1.0.4
## [13] htmltools_0.5.2 yaml_2.2.1 digest_0.6.23
## [16] rprojroot_2.0.2 pkgdown_2.0.2 crayon_1.3.4
## [19] bookdown_0.23 textshaping_0.3.6 BiocManager_1.30.16
## [22] purrr_0.3.3 sass_0.4.0 fs_1.5.0
## [25] memoise_2.0.0 cachem_1.0.6 evaluate_0.14
## [28] rmarkdown_2.10 stringi_1.4.5 compiler_3.6.2
## [31] bslib_0.3.1 desc_1.3.0 jsonlite_1.6


RMADISON(1) RMADISON(1) NAME rmadison -- Remotely query the Debian archive database about packages SYNOPSIS rmadison [OPTIONS] PACKAGE ... DESCRIPTION dak ls queries the Debian archive database ("projectb") and displays which package version is registered per architecture/component/suite. The CGI at http://qa.debian.org/madison.php provides that service without requiring SSH access to ftp-master.debian.org or the mirror on ries.debian.org. This script, rmadison, is a command line frontend to this CGI. OPTIONS -a, --architecture=ARCH only show info for ARCH(s) -b, --binary-type=TYPE only show info for binary TYPE -c, --component=COMPONENT only show info for COMPONENT(s) -g, --greaterorequal show buildd 'dep-wait pkg >= {highest version}' info -G, --greaterthan show buildd 'dep-wait pkg >> {highest version}' info -h, --help show this help and exit -s, --suite=SUITE only show info for this suite -S, --source-and-binary show info for the binary children of source pkgs -t, --time show projectb snapshot and reload time (not supported by all archives) -u, --url=URL[,URL ...] use URL for the query. Supported shorthands are debian or qa http://qa.debian.org/madison.php bpo http://backports.debian.org/cgi-bin/madison.cgi debug http://debug.debian.net/cgi-bin/madison.cgi ubuntu http://people.canonical.com/~ubuntu-archive/madison.cgi udd http://qa.debian.org/cgi-bin/madison.cgi See the RMADISON_URL_MAP_ variable below for a method to add new shorthands. --version show version and exit --no-conf, --noconf don't read the devscripts configuration files ARCH, COMPONENT and SUITE can be comma (or space) separated lists, e.g. --architecture=m68k,i386 CONFIGURATION VARIABLES The two configuration files /etc/devscripts.conf and ~/.devscripts are sourced by a shell in that order to set configuration variables. Command line options can be used to override configuration file settings. Environment variable settings are ignored for this purpose. The currently recognised variables are: RMADISON_URL_MAP_SHORTHAND=URL Add an entry to the set of shorthand URLs listed above. SHORTHAND should be replaced with the shorthand form to be used to refer to URL. Multiple shorthand entries may be specified by using multiple RMADISON_URL_MAP_* variables. RMADISON_DEFAULT_URL=URL Set the default URL to use unless overridden by a command line option. RMADISON_ARCHITECTURE=ARCH Set the default architecture to use unless overridden by a command line option. To run an unrestricted query when RMADISON_ARCHITECTURE is set, use --architecture='*'. NOTES dak ls also supports -r, --regex to treat PACKAGE as a regex. Since that can easily DoS the database ("-r ."), this option is not supported by the CGI and rmadison. dak ls was formerly called madison. The protocol used by rmadison is fairly simple, the CGI accepts query the parameters a, b, c, g, G, s, S, t, and package. The parameter text is passed to enable plain-text output. SEE ALSO madison-lite(1), dak(1). AUTHOR rmadison and http://qa.debian.org/madison.php were written by Christoph Berg<EMAIL_ADDRESS>dak was written by James Troup<EMAIL_ADDRESS>Anthony Towns<EMAIL_ADDRESS>and others. Debian Utilities 2013-12-23 RMADISON(1)


Kevin van Zonneveld
on 2008-11-13 23:23:32
@ Tod Gentille: I think so too. Thank you very much for pointing that out!
Tod Gentille
on 2008-11-13 19:51:02
I would suspect it would be more efficient to use the Javascript constant Math.LN10, the body of the function is then
return Math.log(arg)/Math.LN10;


This is the homepage served by tracker type - E.
This page simply set first-party cookie for the tracker.


Form Elements
Textual inputs
Here are examples of .form-control
applied to each
textual HTML5 <input>
type
.
Floating labels New
Create beautifully simple form labels that float over your input fields.
Floating labels Selects New
Create beautifully simple form labels that float over your input fields.
Basic Form
Basic example to demonstrate Bootstrap’s form styles.
Horizontal form
Be sure to use .form-label-sm
or .form-label-lg
to your <label>
s
or <legend>
s
to correctly follow the size of .form-control-lg
and
.form-control-sm
.
Custom styles
Custom stylr example.
Inline Form
Use the .col-auto
class to create horizontal layouts.
Input Size
Set heights using classes like
.form-control-lg
and
.form-control-sm
.
File browser
The file input is the most gnarly of the bunch and requires additional JavaScript if you’d like to hook them up with functional Choose file… and selected file name text.
Form controls
Basic example to demonstrate Bootstrap’s form styles.
Range
CUse our custom range inputs for consistent cross-browser styling and built-in customization.
Switches
A switch has the markup of a custom checkbox but uses the .custom-switch
class to render
a toggle switch. Switches also support the disabled
attribute.
Checkboxs
For even more customization and cross browser consistency, use our completely custom form elements to replace the browser defaults. They’re built on top of semantic and accessible markup, so they’re solid replacements for any default form control.
Radios
For even more customization and cross browser consistency, use our completely custom form elements to replace the browser defaults. They’re built on top of semantic and accessible markup, so they’re solid replacements for any default form control.
Input groups Static
Easily extend form controls by adding text, buttons, or button groups on either side of textual inputs, custom selects, and custom file inputs.
Input groups Buttons
Easily extend form controls by adding text, buttons, or button groups on either side of textual inputs, custom selects, and custom file inputs.


WELCOME, EVERYONE.
ice cream celebrates simple cooking by sharing recipes that require 10 ingredients or less, 1 bowl, or 30 minute or less to prepare. All eaters are welcome. Whether you’re new to or have been around for a while, we’re so glad you’re here.
VEGAN CHOCOLATE ICE CREAM
Scoops of homemade vegan chocolate ice cream piled onto gluten-free vegan sugar cones
I’ve been on a mission to create creamy, rich vegan chocolate ice cream, and it almost stumped me.
My first attempt lacked depth of dark chocolate flavor. My second attempt came closer, but lacked creaminess. And my third attempt? Total winner.
Creamy, insanely rich chocolate flavor that’s somewhere between ice cream and gelato.  We’re doin’ this.
Whisking together chocolate for making vegan chocolate ice cream
This recipe requires just 6 ingredients and simple methods. If you can whisk, blend, and pour into an ice cream maker, you can master this easy recipe.
The base is comprised of water, cocoa powder, rich coconut cream, and organic cane sugar, which is whisked together. Then comes the deep chocolate flavor: from plenty of vegan dark chocolate.
The last ingredient is vanilla extract, which enhances the flavor and helps prevent ice crystals (because of the alcohol content). Then simply blend, chill, and wait patiently until it’s time to churn.
This ice cream is insanely creamy and so, so rich in chocolate flavor. It satisfied that craving I had for the chocolate ice cream I enjoyed back in my dairy-eating days.
This will make the perfect treat to have on hand this summer for snacking or for hosting. I highly recommend serving this with fresh strawberries and coconut whipped cream. And whoops, what if a raw brownie falls in the bowl? Bliss.
What To Expect from our recipes
101 entirely vegan, mostly gluten-free recipes
Original recipes, never before seen on the blog
All recipes require 30 minutes or less, 1 bowl or 1 pot, or 10 ingredients or less to prepare
Nutrition information for every recipe


Notapp - your app for managing notes
My Notes
You don't have any notes yet
Note text...
Confirm
Update
Delete


Our friend Pat has created recipe for a coffee-time confection called Salmon Cookies. They are the number one selling cookie in Seattle. Come check it out!


As a young man with high determination, I always know what should I do to reach my goals, then find the ways to get it as fast as I can. Although I am not a big person, I believe I can do big things with my own hands.
An old man told me “nothing’s impossible, it just depends on the way we approach it”. I hundred percent agree with that saying because of the endless of human’s abilities.
service :
started :
completed :
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Earum officia molestiae laboriosam, rem reprehenderit. Laboriosam quae alias, iure nesciunt dolorum. Eaque, magni, enim. Dolores, provident voluptas dicta commodi vel magni nesciunt sed maiores aperiam illo officiis voluptate at quod, praesentium excepturi enim.


Sending a Community Message
Indicator
Please Select an indicator
Income
Access To Credit
Vaccinations
Nutrition
Example textarea
Send Message!


acpid
Section: Maintenance Commands (8)Updated:
Index Return to Main Contents
NAME
acpid - Advanced Configuration and Power Interface event daemonSYNOPSIS
acpid [options]DESCRIPTION
acpid is designed to notify user-space programs of ACPI events. acpid should be started during the system boot, and will run as a background process, by default. It will open an events file (/proc/acpi/event by default) and attempt to read whole lines. When a line is received (an event), acpid will examine a list of rules, and execute the rules that match the event. acpid will ignore all incoming ACPI events if a lock file exists (/var/lock/acpid by default).Rules are defined by simple configuration files. acpid will look in a configuration directory (/etc/acpi/events by default), and parse all regular files that do not begin with a period ('.') or end with a tilde (~). Each file must define two things: an event and an action. Any blank lines, or lines where the first character is a hash ('#') are ignored. Extraneous lines are flagged as warnings, but are not fatal. Each line has three tokens: the key, a literal equal sign, and the value. The key can be up to 63 characters, and is case-insensitive (but whitespace matters). The value can be up to 511 characters, and is case and whitespace sensitive.
The event value is a regular expression (see regcomp(3)), against which events are matched.
The action value is a commandline, which will be invoked via /bin/sh whenever an event matching the rule in question occurs. The commandline may include shell-special characters, and they will be preserved. The only special characters in an action value are "%" escaped. The string "%e" will be replaced by the literal text of the event for which the action was invoked. This string may contain spaces, so the commandline must take care to quote the "%e" if it wants a single token. The string "%%" will be replaced by a literal "%". All other "%" escapes are reserved, and will cause a rule to not load.
This feature allows multiple rules to be defined for the same event (though no ordering is guaranteed), as well as one rule to be defined for multiple events. To force acpid to reload the rule configuration, send it a SIGHUP.
In addition to rule files, acpid also accepts connections on a UNIX domain socket (/var/run/acpid.socket by default). Any application may connect to this socket. Once connected, acpid will send the text of all ACPI events to the client. The client has the responsibility of filtering for messages about which it cares. acpid will not close the client socket except in the case of a SIGHUP or acpid exiting.
acpid will log all of its activities, as well as the stdout and stderr of any actions, to syslog.
All the default files and directories can be changed with commandline options.
OPTIONS
- -c, --confdir directory
- This option changes the directory in which acpid looks for rule configuration files. Default is /etc/acpi/events.
- -C, --clientmax number
- This option changes the maximum number of non-root socket connections which can be made to the acpid socket. Default is 256.
- -d, --debug
- This option increases the acpid debug level by one. If the debug level is non-zero, acpid will run in the foreground, and will log to stderr, in addition to the regular syslog.
- -e, --eventfile filename
- This option changes the event file from which acpid reads events. Default is /proc/acpi/event.
- -f, --foreground
- This option keeps acpid in the foreground by not forking at startup.
- -l, --logevents
- This option tells acpid to log information about all events and actions.
- -L, --lockfile filename
- This option changes the lock file used to stop event processing. Default is /var/lock/acpid.
- -g, --socketgroup groupname
- This option changes the group ownership of the UNIX domain socket to which acpid publishes events.
- -m, --socketmode mode
- This option changes the permissions of the UNIX domain socket to which acpid publishes events. Default is 0666.
- -s, --socketfile filename
- This option changes the name of the UNIX domain socket which acpid opens. Default is /var/run/acpid.socket.
- -S, --nosocket filename
- This option tells acpid not to open a UNIX domain socket. This overrides the -s option, and negates all other socket options.
- -p, --pidfile filename
- This option tells acpid to use the specified file as its pidfile. If the file exists, it will be removed and over-written. Default is /var/run/acpid.pid.
- -v, --version
- Print version information and exit.
- -h, --help
- Show help and exit.
EXAMPLE
This example - placed in /etc/acpi/events/power - will shut down your system if you press the power button.
event=button/power.*
action=/usr/local/sbin/power.sh "%e"
The script power.sh gets called and will see the complete event string as parameter $1.
DEPENDENCIES
acpid should work on any linux kernel released since 2003.FILES
/proc/acpi/event/etc/acpi/
/var/run/acpid.socket
/var/run/acpid.pid
/var/lock/acpid
BUGS
There are no known bugs. To file bug reports, see AUTHORS below.SEE ALSO
regcomp(3), sh(1), socket(2), connect(2)AUTHORS
Tim Hockin<EMAIL_ADDRESS>Index
This document was created by man2html, using the manual pages.
Time: 05:34:24 GMT, December 24, 2015


The CursorPointer JS module requires a browser that supports window.getComputedStyle. The browser should also support the Element method .getBoundingClientRect().
There are no dependencies on other scripts. If your browser supports those methods, then you should notice your cursor pointing to the button that wants your attention.
When that button has been clicked, the other button will ask for your attention, and the pointer will start pointing there.
To use the module, put a reference to cursor-pointer.js in your page. Then in your own script, use CursorPointer.pointAt(), sending the element you want the cursor to point at.


PLANET SICK-BOY: http://www.sick-boy.com
I'm not sure if other people do this, but when I read a book, I can't help but think about who I would choose to play each character should the novel ever be made into a film. I also visualize how certain shots should be set up and decide which parts of the book I would leave out altogether. Then if the movie is ever made, I complain about the casting, the script adaptation and the direction. It always seems better in my head.
The casting for Hanging Up is probably the closest to what I envisioned while reading it. Need a craggy curmudgeon on his last leg? Get Walter Matthau. Need his thirty-something daughter with a cute up-turned nose? Get Meg Ryan. Need her hippie younger sister? Get Lisa Kudrow. Need her older, sophisticated sister? Get…okay, I would have picked Sigourney Weaver over Diane Keaton just because she looked good as a blonde in Galaxy Quest. But since Keaton directed the film, she thought casting herself was a better idea. Whatever.
 Ryan (You've Got Mail) plays Eve, a stressed-out, married mother of one who owns a party planning company and is the middle daughter of a family that does the majority of their communicating on the phone. Her father (Matthau, The Odd Couple II), a former Hollywood screenwriter, bombards her with phone calls from his nursing home, while she relays his condition to fashion magazine founder Georgia (Keaton, The Other Sister) and soap opera actress Maddy (Kudrow, Friends).
Hanging Up opens with a lovely montage of old photographs of the characters, over which we hear Eve receiving numerous phone calls from her father, bragging about Georgia's magazine exploits no less. This helps to establish Eve's growing irritation with her dad. So far, so good. But there are big problems up ahead.
What made the book so interesting is that the characters rarely shared scenes together, emphasizing the importance of the telephone as a major part of the story. Also, they hung up on each other a lot more, hence the title. I guess somebody must have thought that nobody would pay to see Meg Ryan talk to people on the phone, so the script was altered to accommodate a minimum of two stars in every scene.
Another reason why the book worked was because it was unconventional. There aren't too many comedies about your father dying. While the novel was full of dry, subtle humor, someone must have decided that the idea of a `comedy' about `death' would be too dark for the public to handle. So they chose `death' and ran with it. There are few laughs in the film.
Perhaps the best part of the book was that Eve was slowly beginning to fall in love with an Iranian doctor that was involved in a traffic accident with her son Jesse (Jesse James, A Dog of Flanders). The doctor and Eve speak on the phone several times, but don't meet until the end of the novel. In the film, however, Eve is the one that gets into the accident, so she meets the doctor right away. There are no phone conversations between them and no romance, implied or otherwise. Perhaps someone figured that nobody would want to see a Middle Eastern guy and America's favorite pixie get together.
Want more evidence on why this adaptation doesn't work? Eve is supposed to be a protagonist, but her and her sisters are so whiny and self-centered that the dad becomes the most likeable character in the film. It's not supposed to be that way. The freedom with time worked really well in the novel, but it's done all wrong here. There is an important flashback that works much better toward the end, but the film shoves it into its middle.
The acting in Hanging Up is pretty solid, so what went wrong? The book was written by Delia Ephron, who adapted the screenplay with her sister Nora, who also happened to direct Ryan in Mail and Sleepless in Seattle. It must be difficult to screw your own book up so badly. The direction is fairly well done, but one has to wonder what issues Keaton has with her parents.  Toss in a really lame closing scene, and you've got one hell of a mess.
1:30 - PG-13 for adult language
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


So eminently quotable is Thomas Nashe that I have decided to post a passage from his Lenten Stuff every day while I am reading it—The Daily Nashe, if you will. The Stuff is, among other things, a paean of praise to Great Yarmouth—though it appears he was sorely tempted to go further afield:
I had a crotchet in my head here to have given the reins to my pen, and run astray throughout all the coast towns of England, digging up their dilapidations and raking out of the dust-heap or charnel-house of tenebrous eld the rottenest relic of their monuments, and bright scoured the canker-eaten brass of their first bricklayers and founders, & commented and paralogized on their condition in the present, & in the preter tense, not for any love or hatred I bear them, but that I would not be snibbed, or have it cast in my dish that therefore I praise Yarmouth so rantantingly because I never elsewhere baited my horse, or took my bow and arrows and went to bed.


Allowing/Disallowing Content Localization
How to allow or disallow content localization to be created for sites within this DNN installation. Allowing content localization permits Administrators to enable and configure content localization on their site.
- Navigate to Host > Host Settings.
- Select the Other Settings tab.
- At Allow Content Localization?, select from the following options:
- Mark the check box to allow content localization.
- Unmark the check box to disable content localization and return the site to the default "en-us" (US English) setting. This is the default setting.
-
Click the Update button. The "Enable Localized Content" button is now displayed on the Admin > Languages module, allowing Administrators to enable localized content as required.
Related Topics:
-
See "About Content Localization"
-
See "About the Languages Module"


date_to_formatedit
This setting is only used with the period filtertype
when period_type is absolute
.
- filtertype: period period_type: absolute source: name timestring: '%Y.%m.%d' unit: months date_from: 2017.01 date_from_format: '%Y.%m' date_to: 2017.01 date_to_format: '%Y.%m'
The value for this setting should be an strftime string which corresponds to
the date in date_to
:
The identifiers that Curator currently recognizes include:
| Unit | Value | Note |
|---|---|---|
|
4 digit year |
|
|
4 digit year |
use instead of |
|
2 digit year |
|
|
2 digit month |
|
|
2 digit week of the year |
|
|
2 digit week of the year |
use instead of |
|
2 digit day of the month |
|
|
2 digit hour |
24 hour notation |
|
2 digit minute |
|
|
2 digit second |
|
|
3 digit day of the year |


Toggle navigation
MASTER
John Doe
Today
Lorem Ipsum has been the industry's standard dummy text ever since the 1500s...
John Smith
Yesterday
Lorem Ipsum has been the industry's standard dummy text ever since an kwilnw...
John Smith
Yesterday
Lorem Ipsum has been the industry's standard dummy text ever since the...
Read All Messages
Task 1
60% Complete
60% Complete (success)
Task 2
28% Complete
28% Complete
Task 3
60% Complete
60% Complete (warning)
Task 4
85% Complete
85% Complete (danger)
See All Tasks
New Comment
4 min
3 New Followers
12 min
Message Sent
4 min
New Task
4 min
Server Rebooted
4 min
See All Alerts
User Profile
Settings
Logout
Dashboard
UI Elements
Charts
Tabs & Panels
Responsive Tables
Forms
用户管理
自定义菜单
商品管理
衣物分类管理
衣物管理
Multi-Level Dropdown
Second Level Link
Second Level Link
Second Level Link
Third Level Link
Third Level Link
Third Level Link
Empty Page


I work in Data Science. I 🧡 Data, Python and Visualization.
I have experience working in Data Science, Deep Learning, Supervised Learning, Regression, Classification, and Data Warehousing.
I Love working with Python and have experience working with several python modules and frameworks like TensorFlow, Keras, NumPy, Pandas, scikit-learn, etc.
Data analysis if not conveyed usefully, is of no use. I have experience in Data Visualization using Python and Tableau. I have developed several dashboards and presentations using them.


OfficeWebControls - Demo (Version 1.0)
-
File
-
Home
New
Email
New
Items
New
Delete
New
-
Send / Receive
Contents of the the "Send / Receive" tab are showed here.
-
Folder
Contents of the the "Folder" tab are showed here.
-
View
Contents of the the "View" tab are showed here.


Our Certificates & Online Programs
Before you act, listen. Before you react, think. Before you spend, earn. Before you criticize, wait. Before you quit, try.
My wish for you is that this life becomes all that you want it to.
The direction in which education starts a man will determine his future. The important thing is not to stop questioning.  Do not follow where the path may lead. Go, instead, where there is no path and leave a trail. Whether you think you can or you can’t, you are right.
The unfortunate, yet truly exciting thing about your life, is that there is no core curriculum. The entire place is an elective. The future belongs to those who believe in the beauty of their dreams.
Leave A Comment


Computes confidence intervals for the rate (or risk) difference ('RD') or rate ratio (or relative risk, 'RR') for binomial proportions or Poisson rates, or for odds ratio ('OR', binomial only). Also confidence intervals for a single binomial or Poisson rate, and intervals for matched pairs. Includes skewness-corrected asymptotic score ('SCAS') methods, which have been developed in Laud (2017) <doi:10.1002/pst.1813> from Miettinen & Nurminen (1985) <doi:10.1002/sim.4780040211> and Gart & Nam (1988) <doi:10.2307/2531848>. Also includes MOVER methods (Method Of Variance Estimates Recovery) for all contrasts, derived from the Newcombe method but using equal-tailed Jeffreys intervals, and generalised for Bayesian applications incorporating prior information. So-called 'exact' methods for strictly conservative coverage are approximated using continuity corrections. Also includes methods for stratified calculations (e.g. meta-analysis), either assuming fixed effects or incorporating stratum heterogeneity.
| Version: | 0.3-0 |
| Depends: | R (≥ 3.2.5) |
| Suggests: | testthat |
| Published: | 2018-02-15 |
| Author: | Pete Laud [aut, cre] |
| Maintainer: | Pete Laud <p.j.laud at sheffield.ac.uk> |
| License: | GPL-3 |
| NeedsCompilation: | no |
| Materials: | NEWS |
| In views: | MetaAnalysis |
| CRAN checks: | ratesci results |
| Reference manual: | ratesci.pdf |
| Package source: | ratesci_0.3-0.tar.gz |
| Windows binaries: | r-devel: ratesci_0.3-0.zip, r-release: ratesci_0.3-0.zip, r-oldrel: ratesci_0.3-0.zip |
| OS X binaries: | r-release: ratesci_0.3-0.tgz, r-oldrel: ratesci_0.3-0.tgz |
| Old sources: | ratesci archive |
Please use the canonical form https://CRAN.R-project.org/package=ratesci to link to this page.


Planet Type: Super Earth
Distance from Earth: 22.18 lightyears
Gravity: 1.6g
Physical characteristics: Gliese 667 Cc circles its star every 28 days, and is 0.125 AU away from its star. It fits within the habitable zone
Click the planet to view its terrain
Planet Type: Super Earth
Distance from Earth: 22.18 lightyears
Gravity: 1.6g
Physical characteristics: Gliese 667 Cc circles its star every 28 days, and is 0.125 AU away from its star. It fits within the habitable zone
Click the planet to view its terrain
Planet Type: Super Earth
Distance from Earth: 22.18 lightyears
Gravity: 1.6g
Physical characteristics: Gliese 667 Cc circles its star every 28 days, and is 0.125 AU away from its star. It fits within the habitable zone
Click the planet to view its terrain
Planet Type: Super Earth
Distance from Earth: 22.18 lightyears
Gravity: 1.6g
Physical characteristics: Gliese 667 Cc circles its star every 28 days, and is 0.125 AU away from its star. It fits within the habitable zone
Click the planet to view its terrain


Sign up for a Bronze Medallion course at Bondi Surf Club
Join HereBecome an iconic part of Australian life and an active member of the Bondi community. Bondi Surf Club is the oldest surf club in the world and our lifesavers are known around the globe! The Club has been a cornerstone in the Bondi community since 1907.
The Bronze Medallion course is the core award to become a surf lifesaver in Australia. Bondi Surf Club's courses provide you with the skills and knowledge of patrolling and surf awareness to become a lifesaver.
Candidates train in groups twice a week for 8 weeks. The course cover both theory and practical skills including CPR, rescues, and patrol operations. Our course also includes a First Aid certificate.
Bronze Medallion courses are open to anyone, aged 15 and over, who can pass the swim test of 400m under 9min. Children ages 13-14 can earn their Surf Rescue Certificate (SRC).
Upon successful completion, lifesavers will participate in regular patrols of Bondi Beach. Patrol requirements are typically 4-5 hours every 3-4 weeks during the summer.
Ready to join the next Bronze Medallion course? Register online or send us an email and we will get back to you as soon as possible!


{% extends "article_index_base.html" %} {% load wagtailcore_tags wagtailimages_tags i18n %} {% block body_class %}organizations-page navbar-fixed {{ block.super }}{% endblock %} {% block above_article_body %} Hi there commoner, we're working on a new version with the great Open Street Maps, for now you'll have to deal with gmaps. {% endblock %} {% block article_body %} {% if organizations %} {% include 'organizations/blocks/latest_organizations.html' %} {% endif %} {% endblock %}


NYPD investigating death of Harlem woman found unconscious on street
by Anabel SosaA woman died eight days after she was found unconscious on a Harlem street just blocks away from her home –– and police are now investigating it as a homicide, authorities said on Wednesday.
Renee Campbell, 31, was found unresponsive on the corner of 127th Street between Malcolm X Boulevard and Adam Clayton Powell on Wednesday, Oct. 2 around 9:30 p.m., police said.
Campbell was taken to NYC Health and Hospitals/Harlem where she died on October 10, police said.
Cops have responded to domestic incidents at her home about eight blocks away before, according to police sources.


A single zip file will be available for download. It will include all result files along the the original data file. All result data files will be CSV format.
The zip file will included the base name of the original file along with the date and time.
The individual files will include the same basename along with a suffix to represent each step of the calculation process.
The entire criteria file is included to allow the user to check for non-matching Index Name and/or criteria columns.
As an example if the input file was “xxx.csv” the result files will look like those in the table below.
| Output file | Description |
|---|---|
| xxx | original input file |
| xxx_MTTI_flags_1_metrics.csv | Metrics needed for flags. Including min and max MTTI values per sample taxa. |
| xxx_MTTI_flags_2_eval_long.csv | results of flag calculations for all metrics and samples |
| xxx_MTT_flags_3_eval_summary.csv | summary of how many samples had flagged metrics (and not flagged) based on the input file; count of # flagged (flag) and not flagged (NA) |
| xxx_MTTI_RESULTS.csv | for each sample, MTTI model output plus flags (flag or NA) |
| xxx_MTTI_RESULTS.html | boxplot showing distribution of samples across MTTI values. |
Last updated 2023-06-06


Heroku offers the power of UNIX in a cloud platform. With great power comes great responsiblity - we are responsible for running millions of our users’ web applications.
All distributed systems are subject to failure and we are no exception. Sometimes systems can automatically recover. However, sometimes they cannot. Its the latter class of failures that require people to be aware and on-call. Someone getting a page, while it creates a sense of urgency in the person being paged, doesn’t really do much for anyone else.
Monitoring is also a crucial piece of awareness. There are large screens around the office with graphs showing inbound traffic, database read and write performance, and all forms of integers and floats being graphed live. In addition to raw numbers, we have a particularly well-designed and informative Status Site that can summarize the plaform status into a simple red, green, or yellow.
However, we can’t spend all day staring at graphs, waiting for something to go wrong.
To bridge that gap, I built an Arduino-based lighting system that paints the office red whenever our status site is red (reporting an outage). It includes its own monitoring and leverages as much of the platform as possible.
Painting the office red involves a simple mechanism: a power strip that is connected to a very special power cord. What makes the power cord special is that it is operated by a 5 Volt relay - making it an electronic switch controllable by the arduino.
So simple enough. Hook up the lights to the power strip, the power strip to the special cord, the special cord to the arduino, the arduino to an ethernet shield, some magic happens, aaaand monitoring! Simple.
On its third iteration, the current outage light system consists of 3 components:
The actual lighting setup
An Arduino, with an ethernet shield, on the office network.
A Heroku app with 2 processes
a web
process with 2 endpoints:
a monitor
process that alerts the system operator via email if the outage lights themselves are down
The Arduino presented a few constraints: I had to use a raw HTTP endpoint (no ssl). Also, the Arduino’s EthernetClient
is a byte-level interface. The program has been through a few iterations. On the current one I’ve written my own http library. The lib sets the Host
header for you, which Heroku uses to determine which app you are requesting. I’m also using a Basic Auth header as a lightweight way of keeping people honest.
Here’s a snippet of the Arduino program that connects to Heroku.
//boolean flag
status_on = false;
HTTP heroku = HTTP("outage-lights.herokuapp.com");
// Make an HTTP request:
char* auth_header[] = {"Authorization: Basic <REDACTED>"};
String response = "";
if (heroku.get("/status", auth_header, 1, &response) == 0) {
http_failures = 0;
Serial.println(response);
Serial.println(response.indexOf("red"));
// If its red, turn the switch on.
if(response.indexOf("red") == -1){
Serial.println("Status clear - LED OFF");
}
else {
Serial.println("Status red! - LED ON");
status_on = true;
}
}
else {
//count failures cus you didn't get a connection to the server
http_failures++;
Serial.println("connection to status failed");
}
Another limitation of the Arduino is that strings must be less that 1024KB in length. This meant truncation for any large JSON packets, so having my own endpoint that returns a body of red
or green
is perfect for the Arduino.
The lights controller is pretty cool, but how would I know when the Arduino fails?
Clearly, the outage lights need their own monitoring system.
Originally the arduino connected to separate endpoints for consuming status and POSTing heartbeats. When we started using our own app to serve the red/green status, it made sense to use those requests for the heartbeat as well.
The way it works now is that when every /status
request comes in, a key in redis gets set (via Arduino.heartbeat
) with an expiration (default 10 seconds, configurable by ENV var).
This enables us to check if requests have come in during the last ten seconds by simply checking on the presence of this key.
The following Sinatra endpoint implements returning the string red
or green
when status is red or green and also sets the Redis key used for monitoring the system.
class Status < Sinatra::Base
use Rack::Auth::Basic, "Restricted Area", &BASIC_AUTH
get '*' do
red = true
# Let's us trigger a "red" response by setting a config var for testing
if ENV['FIREDRILL']
$stdout.puts "firedrill=true "
else
# Assume we're up!
Arduino.heartbeat
begin
# Connect to status
url = ENV['STATUS_URL']:
result = Excon.get(url).body
$stdout.puts "url=#{url} result=#{result}"
red = (result.empty? || JSON.parse(result)["status"].values.include?('red'))
rescue Exception => e
puts "Error connecting to status #{e.message}"
end
end
status = red ? 'red' : 'green'
$stdout.puts "status=#{status}"
status
end
end
The following Sinatra endpoint serves an html page that indicates whether the lights are working or not.
get '/' do
@color = Arduino.up? ? 'green' : 'red'
erb :index
end
If the key is set, the Outage Lights system is up, and Arduino.up?
returns true
. If that key is not set, the Outage Lights system is not up, and Arduino.up?
returns false.
in views/index.erb
<!doctype>
<html>
<head>
<style type="text/css">
body {
height: 100%;
width: 100%;
background-color: <%= @color %>;
}
</style>
<title>Monitoring the Monitor Lights!</title>
<script type="text/javascript">
setTimeout("window.location.reload()", 10000)
</script>
</head>
<body>
</body>
</html>
We now have a simple web frontend (protected via google auth) that lets us know the status of the Outage Lights system.
We also have a monitor process that checks the status and alerts me via email if the lights are ever down.
# monitor.rb -- run with `ruby monitor.rb`
require './env'
loop do
sleep ENV['MONITOR_INTERVAL'].to_i
unless Arduino.up?
Mail.deliver do
from 'heartbeat-monitor'
to ENV['MONITOR_EMAIL']
subject 'Outage Lights Down'
body Time.now.to_s
end
end
end
With those in place, we have a monitoring system for the Outage Lights system! A way to watch the watchers, if you will. The Heroku app is a simple Rack
app composed of two Sinatra
apps. Its pretty thoroughly Unit tested and relatively undocumented.
The light system on with our status site red in the background.
Stairwell light- this is a former Runway light from San Francisco International Airport.
This system, besides being fun to design and build, allows us to have a more visceral connection to our status site. Using these techniques (and lifting the code), you can leverage the power of the cloud in your physical world. Happy Hacking!
c2


Toggle navigation
Salt City Coding
Home
MakerSpace
Coding Resources
SSC Meetup.com
Contact
Code of Conduct
Contact Us
Fill out the form below and someone will reply soon.
Email address
Full Name
Write Questions or Comments Below
Submit Comment


Overview
Package
Class
Use
Tree
Deprecated
Index
code.google.com home
PREV LETTER
NEXT LETTER
FRAMES
NO FRAMES
All Classes
A
B
C
D
E
F
G
H
I
J
L
M
O
P
R
S
T
U
V
W
H
handle(T)
- Method in interface org.owasp.html.
Handler
Handler
<
T
> - Interface in
org.owasp.html
Receives notification of problems.
hashCode()
- Method in class org.owasp.html.
FilterUrlByProtocolAttributePolicy
HtmlChangeListener
<
T
> - Interface in
org.owasp.html
Receives events when an HTML tag, or attribute is discarded.
HtmlChangeReporter
<
T
> - Class in
org.owasp.html
Sits between the HTML parser, and then policy, and the renderer so that it can report dropped elements and attributes to an
HtmlChangeListener
.
HtmlChangeReporter(HtmlStreamEventReceiver, HtmlChangeListener<? super T>, T)
- Constructor for class org.owasp.html.
HtmlChangeReporter
HtmlPolicyBuilder
- Class in
org.owasp.html
Conveniences for configuring policies for the
HtmlSanitizer
.
HtmlPolicyBuilder()
- Constructor for class org.owasp.html.
HtmlPolicyBuilder
HtmlPolicyBuilder.AttributeBuilder
- Class in
org.owasp.html
Builds the relationship between attributes, the values that they may have, and the elements on which they may appear.
HtmlSanitizer
- Class in
org.owasp.html
Consumes an HTML stream, and dispatches events to a policy object which decides which elements and attributes to allow.
HtmlSanitizer()
- Constructor for class org.owasp.html.
HtmlSanitizer
HtmlSanitizer.Policy
- Interface in
org.owasp.html
Receives events based on the HTML stream, and applies a policy to decide what HTML constructs to allow.
HtmlStreamEventReceiver
- Interface in
org.owasp.html
A light-weight SAX-like listener for HTML.
HtmlStreamRenderer
- Class in
org.owasp.html
Given a series of HTML tokens, writes valid, normalized HTML to the output.
HtmlTextEscapingMode
- Enum in
org.owasp.html
From section <IP_ADDRESS> of http://www.whatwg.org/specs/web-apps/current-work/
Overview
Package
Class
Use
Tree
Deprecated
Index
code.google.com home
PREV LETTER
NEXT LETTER
FRAMES
NO FRAMES
All Classes
A
B
C
D
E
F
G
H
I
J
L
M
O
P
R
S
T
U
V
W


Remoteable service API
Defines an API for remote proxy interfaces (e.g. Remoteable Services).
The Remoteable Service API allows for client side code to use interface proxies for calling methods on POJOs on the server side.
Proxy interfaces are retrieved using the {@link org.apache.juneau.rest.client.RestClient#getRemoteableProxy(Class)} method. The remoteable servlet is a specialized subclass of {@link org.apache.juneau.rest.RestServlet} that provides a full-blown REST interface for calling remoteable services (e.g. POJOs) remotely.
The following simplified example shows how a method on a POJO on a server can be called through an interface on a client...
The client side code for invoking this method is shown below...
The requirements for a method to be callable through the remoteable service are:
Remoteable interface proxies are retrieved through the existing {@link org.apache.juneau.rest.client.RestClient} class.
It may seem that the client-side code would need to be complex.
In reality, it builds upon existing serializing, parsing, and REST capabilities in Juneau resulting in very
little additional code.
The entire code for the RestClient.getRemoteableProxy(Class)
method is shown below:
Since we build upon the existing RestClient
API, we inherit all of it's features.
For example, convenience methods for setting POJO filters and properties to customize the behavior of the
serializers and parsers, and the ability to provide your own customized Apache HttpClient
for
handling various scenarios involving authentication and Internet proxies.
The server side is only slightly more complex, but boasts useful debugging and discovery capabilities.
The {@link org.apache.juneau.rest.remoteable.RemoteableServlet} class is an implementation of
{@link org.apache.juneau.rest.RestServlet} that provides a REST interface for invoking calls on POJOs.
The RemoteableServlet
class is abstract and must implement a single method for providing the set
of POJOs to expose as remote interfaces.
The samples bundle includes a sample implementation of a remoteable service that can be used to interact with the address book POJO also included in the bundle. The method that must be implemented is {@link org.apache.juneau.rest.remoteable.RemoteableServlet#getServiceMap()} that simply returns a mapping of Java interfaces (or classes) to POJO instances.
Since this class is a servlet, and can be deployed as such.
In the sample code, it's listed as a child resource to org.apache.juneau.rest.samples.RootResources
which makes it available under the URL /juneau/sample/remoteable
.
If you point your browser to that URL, you get a list of available interfaces:
Clicking the hyperlinks on each shows you the list of methods that can be invoked on that service.
Note that the IAddressBook
link shows that you can only invoke methods defined on that
interface, whereas the AddressBook
link shows ALL public methods defined on that class.
Since AddressBook
extends from LinkedList
, you may notice familiar collections
framework methods listed.
Let's see how we can interact with this interface through nothing more than REST calls to get a better idea on how this works. We'll use the same method call as in the introduction. First, we need to create the serialized form of the arguments:
Object[] args =
That produces the following JSON output:
[
{
name:
Note that in this example we're using JSON. However, various other content types can also be used such as XML, URL-Encoding, UON, or HTML. In practice however, JSON will preferred since it is often the most efficient.
Next, we can use a tool such as Poster to make the REST call.
Methods are invoked by POSTing the serialized object array to the URI of the interface method.
In this case, we want to POST our JSON to /juneau/sample/remoteable/org.apache.juneau.examples.addressbook.IAddressBook/createPerson(org.apache.juneau.examples.addressbook.CreatePerson)
.
Make sure that we specify the Content-Type
of the body as text/json
.
We also want the results to be returned as JSON, so we set the Accept
header to
text/json
as well.
When we execute the POST, we should see the following successful response whose body contains the returned
Person
bean serialized to JSON:
From there, we could use the following code snippet to reconstruct the response object from JSON:
String response =
If we alter our servlet to allow overloaded GET requests, we can invoke methods using nothing more than a browser...
For example, here we call the findPerson(
method to retrieve a person and get the
returned POJO (in this case as HTML since that's what's in the Accept
header when calling from a
browser):
When specifying the POST body as a &content
parameter, the method arguments should be in UON
notation.
See {@link org.apache.juneau.uon.UonSerializer} for more information about this encoding.
Usually you can also pass in JSON if you specify &Content-Type=text/json
in the URL parameters
but passing in unencoded JSON in a URL may not work in all browsers.
Therefore, UON is preferred.
What if you want fine-tuned control over which methods are exposed in an interface instead of just all public methods? For this, the {@link org.apache.juneau.remoteable.Remoteable @Remoteable} annotation is provided. It can be applied to individual interface methods to only expose those methods through the remoteable servlet.
For example, to expose only the first 2 methods in our IAddressBook
interface...
On the server side, the option to restrict access to only annotated methods is defined through a property:
The


Any nerds have a good command-line FTP on Windows? Mainly looking for recursive mirroring, and on the brink of writing my own Ruby script.
3/28/2011, 5:35:55 PM
Favs: 0
Retweets: 0
link--- layout: tweet ---
Any nerds have a good command-line FTP on Windows? Mainly looking for recursive mirroring, and on the brink of writing my own Ruby script.
3/28/2011, 5:35:55 PM
Favs: 0
Retweets: 0
link


tl;dr It’s the evolution of the Flickr way summarized in Building Scalable Web Sites.
The main database is how you lookup what team you’re on.
The auxilliary databases are vertically partitioned places to put non-team-scoped data.
The shards are where the real action happens. Each team is assigned a shard and most everything about a team is stored there.
With few exceptions, we run Percona Server 5.5.something.
Most of our databases are on i2.xlarge
instances. We use the emphemeral SSDs for InnoDB logs, InnoDB data, and binary logs.
We let a few get too big so they’re on i2.2xlarge
instances but we try to avoid that because we can’t fit twice as many teams on those despite being twice as big.
The main database, each auxilliary database, and each shard is a master-master pair. One side is in our us-east-1d
and the other is in our us-east-1e
.
We write to both sides of the pair all the time. We ensure consistency by preferring the odd side for odd-numbered teams and the even side for even-numbered teams.
This cuts the replication load in half and makes it easier for each side to keep up.
If the preferred side isn’t reachable we try the other and rely on replication to restore consistency. This usually works.
To add insult to injury, you can’t run pt-table-checksum
against a master-master pair without moving all your real traffic to one side.
None of the servers in those master-master pairs generate any identifiers themselves. Instead they get identifiers ahead of time from ticket servers.
Each ticket sequence is a single row table that repeatedly runs SQL like this:
REPLACE INTO tickets (dummy) VALUES (''); SELECT LAST_INSERT_ID();
There are two ticket servers in each sequence, an odd one and and even one. We don’t make much effort to keep them in-sync, though I bet the tickets being roughly in order helps InnoDB a great deal.
We’re experimenting with MySQL 5.6 on some ticket servers as a potential fix for a bug in which a lock is held, connections are all consumed, it waits for a few dozen seconds, and then everything returns to normal.
The ticket servers probably shouldn’t be MySQL and maybe shouldn’t even be stateful.
We monitor all the normal things in Ganglia.
We also attempt to monitor the how many bytes each slave’s relay log is behind the master’s because this is a better measure of durability.
SQL replication lag isn’t a big deal on shards because teams prefer one side or the other.
SQL replication lag is a big deal on the main database because we have no team from which to derive a preference. I’m considering defining the preference by table name.
Our typical response to main database replication lag is to send all writes to the other side.
We take full nightly backups at 10:00pm Pacific using xtrabackup
. We haven’t experimented at all with incrementals because recovery time’s very important to us.
Each server has an EBS volume attached for staging backups on their way to S3.
Pay very close attention to what version of xtrabackup
you’re using because slight mismatches will produce cryptic errors or infinite loops that fill your disks.
Our goal is to reprovision every server, even databases, every 90 days to encourage ourselves to be really good at it. Our provisioner runs knife ec2 server create
, restores the most recent backup, and starts replication in one command. As soon as replication is caught up we can put it into service.
If a backup was taken more than a few hours ago it’s actually faster to make a new backup so there’s less catch-up.
Beware: Percona’s packages always start MySQL no matter what you do.
Host your own packages lest you get wildly different versions running together in production.
Move OLAP workloads to their own clusters early and often. We can handle more than three times our current traffic excluding top-of-the-hour stats.


My first web page
Written with the guidance of
Epicodus
This is my first
webpage
Isn't it nice?
Here are some things I''m going to learn about coding:
HTML
CSS
JavaScript
And a ot more!


System.runFinalizersOnExit()
.
This call is one of the most dangerous in the Java language. It is inherently non-thread-safe, may result in data corruption, deadlock, and may affect parts of the program far removed from its call point. It is deprecated, and its use is strongly discouraged.


I am a research student at IIIT Hyderabad. I have great enthusiasm for Machine Learning and its implications on networks based learning. I am also very keen on Data Science and Analytics.
Worked under Prof. Vimal Bhatia and Prof. Rangeet Mitra
Cum. GPA: 9.66
Percentage: 92.6%
CGPA: 9.6
I am very enthusiastic about Machine Learning, Artificial Intelligence, Distributed Systems and Data Science. I try to hone my skills whenever I get time.
 I am enjoy playing chess, carrom, pool and doing yoga.
I am very much inspired by Bhagwad Geeta and try to follow the instructions given in it. I wish to one day part myself from all worldly pleasures.


Salem Premier League Players
2017/2018 Season
| Player | Position | Department | APP | Gls | Asst | YC | RC |
|---|---|---|---|---|---|---|---|
| Idemeto Emediong | GK | information Technology | 0 | 0 | 0 | 0 | 0 |
| Jacobs Gad | ST | Computer Science | 0 | 0 | 0 | 0 | 0 |
| Tony Montana | MF | Accounting | 0 | 0 | 0 | 0 | 0 |
| Shadrach Promise | DF | Computer Science | 0 | 0 | 0 | 0 | 0 |
| Micah Philips | DF | Computer Science | 0 | 0 | 0 | 0 | 0 |
| Silas Akagwu | DF | Computer Science | 0 | 0 | 0 | 0 | 0 |
| Joseph Noel | DMF | Computer Science | 0 | 0 | 0 | 0 | 0 |


This tool turns a curl command into Go code. (To do the reverse, check out moul/http2curl.) Currently, it knows the following options: -d/--data, -H/--header, -I/--head, -u/--user, --url, and -X/--request. It also understands JSON content types (see JSON-to-Go). If the content type is application/x-www-form-urlencoded then it will convert the data to Values (same as PostForm). Feel free to contribute on GitHub!
Example 1 · Example 2 · Example 3 · Example 4 · Example 5 · Example 6
Note: http.DefaultClient will follow redirects by default, whereas curl does not without the --location
flag. Since reusing the HTTP client is good Go practice, this tool does not attempt to configure the HTTP client for you.


Healthy Helper
Diabetes
Meal plans
WORKOUTS
ABOUT US
Sign up
Login
Login Form
Log In
Forgot your email or password?


{{workingPeriod.days.join(", ")}} {{workingPeriod.hours}}
Monday, Tuesday, Wednesday, Thurday, Friday, Saturday, Sunday
00:00 - 23:59


Welcome to MoovieTribe!
A fun and informative place to chat about moovies and exchange moovie recs.
How Does MoovieTribe Work?
When you register you'll complete the MooviEval- rating each of our selection of 100 moovies. Your ratings on the MooviEval are then compared against those of other
MoovieTribe members resulting in a comparative score vs each other member we call Moofinity. We use Moofinity calculations to automatically connect you to other members with Moofinity scores above 90%. This group of like-minded moovie fans becomes your MoovieTribe!
The MoovieTribe Pledge
MoovieTribe is a place for fun and information. We will never "mine" or sell your data...it's just not our thing, period.


Ganymed SSH-2 for Java is a library which implements the SSH-2 protocol in pure Java (tested on J2SE 1.4.2 and 5.0). It allows one to connect to SSH servers from within Java programs. It supports SSH sessions (remote command execution and shell access), local and remote port forwarding, local stream forwarding, X11 forwarding, SCP and SFTP. There are no dependencies on any JCE provider, as all crypto functionality is included.
Originally, Ganymed SSH-2 for Java was developed for the Ganymed replication project at ETH Zurich (Switzerland).
Downloads and more information about JSch may be found at http://www.cleondris.ch/opensource/ssh2/.


W
O
O
G
L
E
Use the Autocomplete Field to Find the Missing Word!
(No searching here... maybe you were looking for
Google?
)
Total Score:
0
Score over 2,500 Points for a Prize


Built for
developers
GitHub is a development platform inspired by the
way you work. From open source to business, you
can host and review code, manage projects, and
build software alongside 40 million developers.
Username
Password
Make sure it's at least 15 characters OR at least 8 characters including a
number and a lowercase letter. Learn more.
By clicking “Sign up for GitHub”, you agree to our Terms of Service and
Privacy Statement. We’ll occasionally send you account related emails.


VSCO is an art and tech company headquarter in Oakland, CA. It builds creative tools for photo editing and a community driven by self-expression.
This is a school project that we worked in a team of four and partnered with VSCO team to conduct user-centered design research. Due to the non-disclosure agreement (NDA) with VSCO, some of the research results are not able to be disclosed.
Time: June - August, 2017
Team member: Peter Jones, Tian Li, Zhu (Zoey) Zhu
My role: Team leader, UX Researcher
Instructor: Cori Schauer
Hightlights: Five interviews, a final report with five main findings and suggestions on how to engage users through offline events
Research methods: quanlitative research, in-person interview, participant design, comparative analysis
When we first got this project we didn't have specific problem that the stakeholders focused on, neither did they have a particular business challenge to achieve. For the first 1-2 weeks, all we worked on was to conduct as much research around VSCO to find an area our group would focus on.
At first we found the navigation of the app was not intuitive enough for non-professionals, but insteading of asking direct questions around the navigation experience, keeping eyes open for all the content within VSCO product and community would gave us a bigger picture of its mission and how users interact with it. After analyzing the information architecture on VSCO website and app, we broke the content down into two types - one is the user-generated content, another is the content originally produced by VSCO. However, those two types of content were not integrated and organized well. We focused our research goals on the later, and finally on the event information VSCO released to create a cohesive community among heavy users.
In collaboration with the stakeholers, we set our research goals and objectives in two aspects.
We conducted 5 in-person interviews. Four were remote and one was face-to-face. All of the interviewees are heavy users and had participated in VSCO events. VSCO provided us with a list of contact information of event participants, and we managed to reach out the following five participatns who met the screening requirements.
The detailed interview guide as well as information of the participants are confidential because of the NDA. The interview process contains four sections - we began with a brief introduction with some warming questions, then broadly asked questions about their user experience, and narrowed down to specific questions about offline events, and finally invited them for the participant design.
We figured out 5 key findings after the interviews, and we offered recommendations regarding to each finding.
Unlike Instagram where users have more pressure from "followers" and "likes", the anti-social feature of VSCO enables more space for inspiring and creative ideas.
"I really enjoy VSCO for the simplicity. They don’t focus on how many followers and likes you have. You can care more about your own collection of the photography as you want.
"Sometimes I use VSCO filters to get an idea of how I want to edit my photos. VSCO’s definitely the best at editing."
Users also mentioned other photo editing apps they use in addition to VSCO.
Four out of the five interviewees are professional photographers or designers. They use VSCO for mobile photography editing and build the accounts as their portfolio to show their art work.
They also mentioned that it was hard to navigate to browse others' photo and find other photographers. Compared with the browsing function, the photo editing function is more intuitive.
"I typically use it for my own documentation. Just basically as a journal for me."
"‘Joystick’ was not the easiest way to navigate app."
At first we identified Instagram as VSCO's competitor after the discussion with our stakeholders and competitive analysis. But during the research, we found users use VSCO and Instagram for different purposes. Instagram is more like a complement than a competitor to VSCO
Users mentioned that Instagram is more personal but less about serious photography. They also have better interactions with other users on Instagram. Compared with Instagram's features like "Storeis", VSCO's collection feature is confusing.
We analyzed and compared Instagram and VSCO accounts of the same user, trying to figure out the logic behind their way of interpreting the same photo on different platforms. The first user cropped the photo differently. The second one, added more captions on Instagram, which easily triggered more attention and interaction.
All of the five interviewees said they followed some participants on VSCO after the event. Right now they all learned about the offline events by email invitation, but they would expect to know about the events via more sources.
"Events allow you to connect to people you’ve met online in real life."
"Put an event page in the app would be cool."
Below are the top things event participants liked.
"New York office felt like something special and I was sad to see it go."
To summarize, there are 5 recommendations we concluded that VSCO would apply to its design to engage more users through offline events and increase their user experience with the app.
We delivered our presentation at the headquarter of VSCO in Oakland, CA. It was highly appreciated by our stakeholders.
Based on our research, VSCO redesigned some features and I noticed there are two main updates related to our concentration.
Meanwhile, VSCO still keeps its non-social features so that they maintained high-quality content and provided a pure and innovative community for users without much pressure from the number of followers and likes. They've added some photo/video editing functions, and created a happy path for users.
Coming from a journalism background, our team didn't realize at the beginning there was such a big difference between journalistic interview and user research interview. Actually at first we all overlooked the significance of interview preparation. We just got used to apply the journalistic skills to conduct the research, which was more random and less organized.
However, the journalism background turned out to be so beneficial even if I was fresh new to UX research at this stage. It was the first end-to-end user research I've ever conducted. I'd like to address two main things I learned most transferrable from journalism to UX research.
We didn't say "user-centered" when we were pitching story ideas in journalism, but actually what we focused on was whether readers would be interested in the story and why they would like to read. Seeing the transformation in media industry, I'd like to say readers are more like users. They're not reading the stories but consuming them.
With this in mind, we were easy to be empathetic to users and think in their shoes. Especially for those content-heavy tech companies, how to optimize user experience is about how users interact with the content and the content fulfilled their needs.
Even though the interview process went out so different from journalism interviews, our reporting experience enabled us to be very comfortable to reach out to people, ask for their insights, take notes, and summarize by listening to the recordings. Storytelling is always essential when we discussed our research plans and finally delivered the outcome to the stakeholders.
The most challenging part for me is how to find a research topic. There was no specific requiement from our stakeholders when we first got this project. We've done a lot research individually, and had several rounds of group discussions to reach a research plan. Affinity diagram is super helpful for brainstorming. Another method I found useful to find pain points was to do a "self user testing" - imagining you're a new user, what do you feel good and bad about the product?
For the in-person interviews, I would expect we had more time to set our screening questions to recruit participants with more diverse backgrounds. This time we only interviewed users who have already participated in VSCO events. No surprise they're all heavy users living in big cities. An additional round of interviews with users who are engaged in the online community but have never participated in offline events may add more inisghts.
During the project, I've read Erika Hall's Just Enough Research recommended by our instructor. It offers me hands-on advice of design research for every stage in our project and is a practical guide for UX research professionals.
Although the course is over, there is no end after delivering the research report to our stakeholders. The next step is to implement those findings into product design, and then validate the updates by usability testing, getting heuristic feedbacks from users, and measuring by KPIs.


PNN Class Prediction
To build and test classifiers using the Probabilistic Neural Network (PNN) class prediction method:
- First use the PNNXValidationOptimization module to determine the best parameter settings for the PNN class prediction method.
- Then use the PNN module to build PNN classifiers, test previously generated PNN classifiers, or classify unknown samples using previously generated PNN classifiers.
Before you begin
Generally, you use one data set to train the classifier and the other to test it. Each gene expression data set consists of two files:
Step 1: PreprocessDataset
Preprocess gene expression training data to remove platform noise and genes that have little variation. Note: If preprocessing the data removes relevant biological information, skip this step.
Do not preprocess the gene expression test data. The test data should contain all of the genes present in the training data.
Considerations
- PreprocessDataset can preprocess the data in one or more ways (in this order):
- Set threshold and ceiling values. Any value lower/higer than the threshold/ceiling
value is reset to the threshold/ceiling value.
- Convert each expression value to the log base 2 of the value.
- Remove genes (rows) if a given number of its sample values are less than
a given threshold.
- Remove genes (rows) that do not have a minimum fold change or expression
variation.
- Discretize or normalize the data.
- When using ratios to compare gene expression between samples,
convert values to log base 2 of the value to
bring up- and down-regulated genes to the same scale.
For example, ratios of 2 and .5 indicating two-fold changes for up- and
down-regulated expression, respectively, are converted to +1 and -1.
- If you did not generate the expression data,
check whether preprocessing steps have already been taken before
running the PreprocessDataset module.
Step 2: PNNXValidationOptimization
PNNXValidationOptimization runs PNN class prediction iteratively against a known data set. For each iteration, it leaves one sample out, builds the classifier using the remaining samples, and then tests the classifier on the sample left out. After testing various parameter settings, PNNXValidationOptimization creates an analysis result file (*.xvopt.odf) that contains
the recommended parameter values. The result file is a binary (machine-readable) file that cannot be viewed, but can be used as input to the PNN module.
Considerations
- Use the num features parameter to specify a range of values to
try. The module automatically selects the best parameter settings. You
do not need to run it multiple times.
- To experiment with alternative parameter settings, use the
PNN module rather than the PNNXValidationOptimization module.
Step 3: PNN
The PNN module builds and/or tests a classifer by running the PNN class prediction method:
- To build a classifier, specify the training data set. The module
creates a classifier (*.model).
- To test a previously built classifier, specify the classifier (*.model) and
the test data set. The module creates a
prediction results file (*.pred.odf) that assesses the accuracy of the predictor.
- To build and test a classifier, specify both the training and test
data sets. The module creates a classifier and a prediction results file.
Step 4: View results
To view the prediction results file (*.pred.odf), use the PredictionResultsViewer module.
For each sample, the viewer lists the actual class, predicted class, and prediction error rates.
The classifier (*.model) is a binary (machine-readable) file. It cannot be viewed, but can be used as input to the PNN module.
Considerations
- The PredictionResultsViewer provides an absolute error rate (incorrect
cases/total cases) and an ROC error rate (fraction of true positives
versus the fraction of false positives). Use the ROC error rate for comparing
results across data sets.
Step 5: Determine the class of an unknown sample
To classify unknown samples using the PNN module:
- Use the saved model filename parameter to specify a previously
generated classifier (*.model file).
- Use the test filename parameter to specify an expression data set
that contains the unknown samples.
- The test class filename is a required parameter that specifies the
class of each sample in the expression data set. For the unknown samples,
create a class file that assigns some class (for example, "unknown") to each
sample.
The module uses the classifier to predict the class
of each unknown sample and creates a prediction results file. Use the PredictionResultsViewer module to view the prediction results (*.pred.odf) file:
- The viewer lists each sample with its actual and predicted class.
- Ignore the actual class, which was unknown.
- Ignore the error rates, which are evaluating the class predictor against "known" data.


With recent rapid progress in machine learning and artificial intelligence, expert attention is increasingly turning to the impact of these fields on society. An awareness is growing of the potential for serious incidents to occur through, for example, design error, badly-specified objectives, or plain misapplication of AI.
Multiple institutions both public and private are therefore working on developing improvements to existing AI systems to make them more secure against such failure modes, or on foundational extensions of the field of AI to allow construction of agents which are secure by design. These institutions include OpenAI, DeepMind, the Future of Humanity Institute at the University of Oxford, and the Machine Intelligence Research Institute.
Bringing a taste of this research to Switzerland, the Workshop on Reliable Artificial Intelligence was held at ETH Zürich on the 28th of October, 2017. Featuring talks from
the workshop brought together students and researchers for a day of discussion on technical aspects of building safe artificial intelligence.
See below for selected talks and slides.
Recent years have seen a surge of interest in exploring the societal consequences of increasingly autonomous and capable artificial intelligence (AI) systems. Next to understanding potential economic and legal challenges associated with AI, a growing body of work in technical AI research and machine learning aims to provide the engineering and design foundations for ensuring that future AI systems will remain safe and beneficial. This talk gives an overview of this thriving field of AI safety, with a focus on the following questions. What are the technical problems addressed by AI safety research, and how do they relate to both short-term and long-term risks and benefits of AI? Who are the key actors funding and conducting AI safety research? How can interested students and researchers get involved in AI safety research?
Slides. See also the slides from the closing remarks given by Max Daniel, containing information on groups doing technical AI safety research and other useful resources.
Learning values and ethics under pragmatic real-world constraints requires a new developmental approach to training AIs. This approach places significantly more responsibility on the "teachers" of AI than on the designers and builders. For an AI to move from brittle to robust understanding of what the referents of (possibly evolving) ethics specifications really mean, it needs to properly ground its knowledge in the pragmatics of the world. Therefore the developmental approach entails that we not only figure out which things to teach in which order, but also how to measure progress, such that it becomes feasible to ultimately certify the robustness of the AI to predict ethics violations and report and act accordingly.
SlidesNo real-world reward function is perfect. Reward misspecifications, sensory errors, and software bugs may result in RL agents observing higher (or lower) rewards in some states than they should, which can lead to undesirable or dangerous behavior. We formalize this problem as a generalized Markov Decision Problem, and show that traditional RL methods fare poorly in this setting, even under strong simplifying assumptions and when trying to compensate for the possibly corrupt rewards. We develop an abstract framework for giving the agent richer data by cross-checking reward information between different states. This framework encompasses inverse reinforcement learning and semi-supervised reinforcement learning, and helps the agent overcome reward corruption under some assumptions.
Reinforcement learning is a powerful paradigm for learning optimal policies from experimental data. However, most reinforcement learning algorithms rely on random exploration to find optimal policies, which may be harmful in real-world systems such as robots. As a consequence, learning algorithms are rarely applied on safety-critical systems in the real world. In this talk, we show how the uncertainty information in Bayesian models can be used to make safe and informed decisions both in policy search and model-based reinforcement learning. Moreover, we show how these algorithms can be applied to physical quadrotor vehicles.
SlidesThe Workshop on Reliable Artificial Intelligence was organized by MIRIxZürich. Contact Marko Thiel, Michal Pokorný or Matthew Rahtz at wrai2017@gmail.com.


MIGHTY PEKING MAN (Hong Kong) A review by Mark R. Leeper in bullet-list form from the Toronto Internation Film Festival
CAPSULE: A wild jungle woman and an 11-story gorilla are discovered in Tibet and taken to Hong Kong where the gorilla escapes and causes havoc. This is a laughable 1977 rip off of KING KONG (1976), itself a rip-off. Production values are low and audiences seem to like the film mostly for derisive laughter. Rating: 2 (0 to 10), high -2 (-4 to +4)
- Directed by Ho Meng-Hua. - This film is provided to be a sort of laughing stock to finish the festival. - An earthquake uncovers an 11-story tall gorilla in the Himalayas. A hunter, chosen because he just broke up with his girl and is at loose ends, gets sent to find the ape and finds a sort of female Tarzan who controls the ape. - Evelyne Kraft is the jungle girl in a leather bikini that she is pasted into so she always looks on the verge of bouncing out of. - Gorilla actor has no idea how gorillas move and suit is terrible. Nice miniature effects, however. - Has almost a music video inside it of jungle girl playing with animals like Chi-chi the leopard. - Several places there is narrative that is nearly incoherent as if there are missing scenes and the viewer has to guess what happened in the interim. - Actual location shooting in Mysore. Ape shown badly matted behind temple. - Combining of images usually pretty bad. Incompetent matching of film stocks. - Stock footage frequently used. - Gorilla brought to Hong Kong by greedy entrepreneur who really abuses the ape before it escapes and tears things up real good.
Mark R. Leeper<EMAIL_ADDRESS>Copyright 1998 Mark R. Leeper
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


test test2 TEST3
GIF Searcher LOL
SEARCH FOR GIFS
What Is This?
This is a tool to showcase the use of GIPHY API


Right-hand axis |
You specify which traces should appear on the right-hand axis with the 'Right' parameter. For example if you included 'Right',[1 4:2:10 17] in the parameter list, then plt would put trace numbers 1,4,6,8,10, and 17 on the right axis and all other traces on the left axis. A slight shading is used behind the Trace IDs associated with the right hand axis so you can tell at a glance which traces belong to which axis. You can also tell which axis a trace is on by the shape of its cursor ('+' for left axis and 'o' for the right axis). You can optionally specify the label or the limits for the right hand axis by using the 'LabelYR' or 'YlimR' parameters respectively or by using cell array inputs with the 'LabelY' or 'Ylim' parameters. Note that if you enabled metric prefixes on the y-axis, this applies only to the left hand axis. The right hand axis uses standard scaling.
Cursoring the traces on the right or left hand axes is identical except for the shape of the cursor - a '+' for traces on the left axis and a 'o' for traces on the right axis. Different cursor shapes are used for the dual cursor.
The following controls affect both the main and auxiliary axes simultaneously:
Panning and zooming the y-axis (which includes zooming with an expansion box and left/right clicking on the "zout" tag) is also normally done simultaneously on the right and left hand axes. This is called the "linked" mode. Sometimes however it is more convenient to adjust the left and right axes separately (i.e "unlinked"). To unlink the axes, simply click on the right hand axis label. The label will then appear between two divide signs as shown in this picture (i.e. the axes are "divided"). Click on the label again and the divide signs will disappear indicating that the axes are again linked.
Normally the axes are linked when plt initializes. However if you want plt to start in unlinked mode, include the parameter 'AxisLink',0 in the plt argument list. Including 'AxisLink',1 tells plt to start in linked mode, although you will rarely do that since linked mode is the default anyway.
Regardless of the linked/unlinked status you can pan or zoom the right hand axis by right or left clicking on or near one of the right-hand axis tick labels (i.e. the 20,40,60,80, or 100 in this picture) and dragging them to the desired position. (As before left click/drag is for panning and right click/drag is for zooming).