The Making of "A Short History of Snowfall"
class: center, middle # The Making of "A Short History of Snowfall" ## (Also, the working specification) --- # Concept ## Show the amount of snowfall on a map for each year. This treatment inspired by the record-breaking snowfall in Boston for the winter of 2014-2015. * A REST API to query world-wide weather station measurements is available at: http://www.ncdc.noaa.gov/cdo-web/api/v2/... * Instructions on how to get a developer token to access the data are here: http://www.ncdc.noaa.gov/cdo-web/webservices/v2 --- # The Perfect Dataset What dataset would minimize data wrangling and thus make this project? * Evenly spaced observations * Daily observations * Covering the earth * For all the earth for all of recorded history * All in a tidy dataset See: https://github.com/Butterwell/datasharing Let's start with where measurements are made: weather stations. In particular... --- # Snow Weather Stations The API delivers a maximum of 1000 records a call. To get the first 1000 weather stations by date with curl: ```bash token=This_is_not_a_valid_token curl --header "Token: $token" --get \ -d datatypeid=SNOW -d limit=1000 -d sortfield=mindate \ www.ncdc.noaa.gov/cdo-web/api/v2/stations > earliest_1000_snow_stations.json ``` This is the same as, given the nodejs file get.js: ```JavaScript var request = require('request'); var options = { headers: { 'Token': 'This is not a valid token' }, uri: 'https://www.ncdc.noaa.gov/cdo-web/api/v2/stations'+ '?datatypeid=SNOW&limit=1000&sortfield=mindate' }; request(options, function (error, resp, body) { console.log(body) }); ``` ```bash node get.js > earliest_1000_snow_stations.json ``` --- # D3 Histograms .subtitle[see] [Mike Bostock's Historgram Example](http://bl.ocks.org/mbostock/3048450) [My rift on that example, this implementation's year_histogram.js](year_histogram.js) --- # Earliest Weather Stations Measuring Snowfall .subtitle[by Founding Year using D3] .station_founding_year[] --- # Number of Weather Stations Measuring Snowfall .subtitle[the Early Years] .stations_active_by_year[] At this point we don't know where any of these stations are. They might all be in the Swiss Alps. --- ### This is where an introduction to GeoJSON and TopoJSON goes --- ### This is where an introduction to D3 mapping goes --- # Weather Stations Measuring Snowfall .subtitle[founded before 1890] .early_station_map[] --- ### An introduction to dynamic D3 could go here (weather stations plotted by date founded) --- # Irregularities * Stations are not in a grid * Stations do not have data every day * Stations are added and removed over time --- # Station Irregularities Can be Solved by Binning ## Hex Binning * https://github.com/d3/d3-plugins/tree/master/hexbin * http://bl.ocks.org/Butterwell/333536a01658bb7f5abd --- # Hexagonal Binning of Station Density .subtitle[founded before 1890] .station_hex_map[] --- # Hexagonal Binning of Station Density by Date .subtitle[founded before 1890] .dynamic_station_hex_map[] --- # Voronoi Tessellation .subtitle[is an alternative to Hexagonal Binning] * http://bl.ocks.org/mbostock/4060366 --- # Most Stations are in Canada and USA .subtitle[(before 1890)] But this could be misleading... there might only be three stations measuring. That is, we don't know the distribution of measurements for any of these stations, or between those stations. Let's grab some snowfall data. First, where is it? --- # Daily Snow Measurements Dataset We were able to easily find the station information since it is at the top level of the API. The data is found in a particular dataset, but which one? Here's how to search the "datasets" dataset to find all the datasets than have the datatypeid "SNOW", the field we want: ```JavaScript var token="This is not a vaild token" d3.json("https://www.ncdc.noaa.gov/cdo-web/api/v2/datasets?datatypeid=SNOW") .header("token", token) .get(function(error, data) { console.log(data.results) }); ``` Shows us there is one dataset, GHCND, that has the data. --- # Minimum Visualization Data .subtitle[Getting Some Data] Poking around at the data with curl, we find out that the maximum time span allowed for GHCND is one year. Since we're interested in snow, we break the year at July 1st. We also want a year with under 1000 entries, the maximum allowed in one call. ```bash curl --header "token: $token" --get -d datasetid=GHCND \ -d startdate=1859-07-01 -d enddate=1860-07-01 -d datatypeid=SNOW -d limit=1000 \ www.ncdc.noaa.gov/cdo-web/api/v2/data > winter_snow_1859_1860.json ``` --- # Minimum Visualization Data .subtitle[Data Distribution] There are 499 entries for this winter. Let's plot the count of non-zero entries. .snow_measures_1859_1860[] Several entries at the 230mm mark, about 9". How about Boston values for January 1st and 2nd, 2014? .snow_measures_2014_01_01[] There are 226 entries and a similar distribution. --- # Mimimum Visualization .subtitle[of the winter of 1859-1860, averaging the ] .snow_hex_map_1859_1860[] --- # How Much Data --- # Offline Considerations ## Manifest File --- # Drawing Mountains of Snow --- # Melting * Not all stations measure current depth. * Since we were not showing the melting all along, is melting lieing? * First pass: reset to 0 depth on July 1st. --- # Wait... How Long is This Going to Take? * We have data from 186x to 2015. If we display a day's worth of information in one frame, and run the visualization at twenty-four frames a second, a year takes about a second and a half to display. ((2015-1860)*365/24)/60 = 39 minutes. --- # Providing more information * Minimum yearly, maximum yearly on hover * Location name --- # A Need for Speed * What is the fastest we can deliver it the first time * What is the fastest we can deliver it subsequent times * Station Encoding * Snowfall Encoding * Progressive enhancement * Additional benifit, don't expose token --- # Only the Data We Need * JSON encoded * CSV encoded --- # Endnotes --- # D3 Projections * https://github.com/mbostock/d3/wiki/Geo-Projections * http://bl.ocks.org/mbostock/3711652 --- # NOAA Available Data It took some exploration of the datatypeids to find "SNOW". Here's a list.


Encapsulates undo/redo logic using a custom undo stack (i.e. not browser
built-in). Browser built-in undo stacks are too flaky (e.g. IE's gets
clobbered on DOM modifications). Also, this allows interleaving non-editing
commands into the undo stack via the UndoRedoManager.
Stores the state of the selection in a way the survives DOM modifications
that don't modify the user-interactable content (e.g. making something bold
vs. typing a character).
TODO: Completely get rid of this and use goog.dom.SavedCaretRange.
Inverse map of execCommand strings to
goog.editor.plugins.UndoRedo.COMMAND constants. Used to determine
whether a string corresponds to a command this plugin handles in O(1) time.


---
layout: post
title: MMA FEVER
tags: []
status: publish
type: post
published: true
meta:
_edit_last: "3"
_oembed_35df2ab235f50f6dd89c2b1c3bc8a0fd:
_oembed_dfeb2dd0353c9c7b9b273cfb3005fe6e:
---
Well it's not Jimmy Buffer, but CoMMAedian Tyler Boeh (TWITTER @TylerBoeh) is back with another vid!
Oh and guess what UFC light-heavyweight makes a cameo!
http://www.youtube.com/watch?v=fsevM6ZA_mE&feature=youtu.be


Overview
{% include docs_overview_menu.html %}
Spring Stack
{% include docs_spring_menu.html %}
Backbone Stack
{% include docs_backbone_menu.html %}
Spring MVC router
{% include docs_router_menu.html %}
AMQP/Hessian based RPC
{% include docs_amqp_hessian_menu.html %}
Miscellaneous
{% include docs_misc_menu.html %}


Emre Arolat is a Turkish architect. In 2004 he co-founded EAA-Emre Arolat Architecture with Gonca Paşolar.
Arolat was born in Ankara in 1963. After completing his primary education in Galatasaray High School, he studied at Mimar Sinan University, Istanbul where he received his BArch degree in Architecture in 1986 and MArch degree in 1992. Upon gaining his bachelor degree, he worked at Metcalf and Associates Architectural Office in Washington D.C. between 1986-1987.
Arolat has received many national and international awards, including 2005 Mies van der Rohe award for European Architecture (Highly Commended), 2006 AR Awards for Emerging Architecture (Highly Commended), 2013 WAF (World Architecture Festival) Winner of Religious Buildings category with Sancaklar Mosque,2014 WAF Winner of Shopping Category with Yalikavak Palmarina and Winner of Leisure-Led Category with Antakya Museum Hotel and in 2015 WAF Winner of Infrastructure Category with Cukurova Airport and Winner of Culture Category with Istanbul Antrepo 5 – MSGSU Painting and Sculpture Museum. He also received National Architecture Awards, in the category of “Design” and “Building” in 1992, 2002, 2004, 2008, 2012 and 2014. He has been awarded the Aga Khan Award for Architecture in 2010 with the Ipekyol Textile Factory Building. In 2015 Sancaklar Mosque was awarded ArchDaily's Best Building of the Year and Mies van der Rohe award for European Architecture-Best 40 Building of the Year, also nominated for Design Museum-Designs of the Year award. In May 2015, the International Academy of Architecture has accorded Emre Arolat the title of Professor of the Academy in recognition of his achievements in the development of contemporary architecture.
Scent of The Trace, Emre Arolat, Oro Editions (2020)
Global and Local / New Projects: EAA-Emre Arolat Architecture, Philip Jodidio-Suha Özkan, Rizzoli Electa (2020)
EAA-Emre Arolat Architecture / Context And Plurality, Philip Jodidio-Suha Özkan, Rizzoli NY (2013)
Fabrika, Milli Reasurans A.S. (2012)
Dalaman, Yem Yayinevi (2007)
Nazaran, Milli Reasurans A.S. (2006)
Emre Arolat, Buildings/Projects 1998–2005, Literatür (2005)
Aomori Housing Complex(Japan)
Hotel in Mahdia(Tunusia)
Lara Kervansaray Hotel and Convention Center (Turkey)
Minicity Theme Park (Turkey)
Tour & Taxis, Renovation of Antrepot Royal (Belgium)
The Museum Hotel Antakya (Turkey)
Santral Istanbul Contemporary Art Museum (Turkey)
Prague Turkish Embassy (Czech Republic)
Baku Mixed Use Complex (Azerbaijan)
Expo Milano Turkish Pavilion (Italy)
Guggenheim Helsinki Museum (Finland)
Heyat Park Mixed Use Complex (Azerbaijan)
Udarnik Contemporary Art Museum (Russia)
Gelendzhik Marina (Russia)
Qatar Art Mill Competition (Qatar)
Bay Point Villas (U.S.A)
Nora Cultural Center (UAE)
Alcantara Gardens (Portugal)
Riverside Central (United Kingdom)
CAFU Research Center (UAE)


Recommending Knowledge Available in Q&A Sites for Aiding Software Development and Debugging (in portuguese)
E. Campos
Ph.D. Thesis - Federal University of Uberlândia
Discovering Common Bug-fix Patterns: A Large-Scale Observational Study
E. Campos, M. Maia
Journal of Software: Evolution and Process (JSEP), 38 pages, Wiley, 2019.
Bootstrapping Cookbooks for APIs from Crowd Knowledge on Stack Overflow
L. Souza, E. Campos, F. Madeiral, K. Paixão, A. Rocha, M. Maia
Information and Software Technology Journal (IST), 16 pages, Elsevier, 2019.
Common Bug-fix Patterns: A Large-Scale Observational Study
E. Campos, M. Maia
Proceedings of the 11th ACM/IEEE International Symposium on Empirical Software Engineering and Measurement (ESEM), Markham, Canada, 10 pages, 2017.
Mining Historical Information to Study Bug Fixes
E. Campos, M. Maia
Information Technology - New Generations (ITNG). Advances in Intelligent Systems and Computing, vol 558. Springer International Publishing, Cham, 6 pages, 2017.
Searching Stack Overflow for API-usage-related Bug Fixes Using Snippet-based Queries
E. Campos, M. Monperrus, M. Maia
Proceedings of the 26th Annual International Conference on Computer Science and Software Engineering (CASCON), Toronto, Canada, 11 pages, 2016.
Searching Crowd Knowledge to Recommend Solutions for API Usage Tasks
E. Campos, L. Souza, M. Maia
Journal of Software: Evolution and Process (JSEP), 32 pages, Wiley, 2016.
On the Extraction of Cookbooks for APIs from the Crowd Knowledge
L. Souza, E. Campos, M. Maia
Proceedings of the 28th Brazilian Symposium on Software Engineering (SBES), Maceió, Brazil, 2014, 10 pages. Acceptance rate: 24%.
Nuggets Miner: Assisting Developers by Harnessing the StackOverflow Crowd Knowledge and the GitHub Traceability
E. Campos, L. Souza, M. Maia
Proceedings of the Brazilian Conference on Software: Theory and Practice (CBSOFT) - Tool Session. Maceió-AL, Brazil, 2014, 8 pages. Second-place Best Tool Award.
Ranking Crowd Knowledge to Assist Software Development
L. Souza, E. Campos, M. Maia
Proceedings of the 22nd International Conference on Program Comprehension (ICPC), Hyderabad, India, 2014, 11 pages.
ACM SIGSOFT Distinguished Paper Award.
Automatic Categorization of Questions from Q&A Sites
E. Campos, M. Maia
Proceedings of the 29th Annual ACM Symposium on Applied Computing (SAC), Gyeongju, Korea, 2014, 3 pages.


Add Point
Download
Display Path
Import
Flip Field
Reset
Java
Kotlin | Reversed
X
Y
Radius
Speed
Comments
Delete
0
0
UntitledPath.kt
✕
Hello, there


Timebound Survey App
Home
Qusetions
Users
Register account
Email:
Password:
Confirm Password:
Register


Maximum Likelihood Estimation is Sensitive to Starting Points
October 21, 2016
In my previous post, I derive a formulation to use maximum likelihood estimation (MLE) in a simple linear regression case. Looking at the formulation for MLE, I had the suspicion that the MLE will be much more sensitive to the starting points of a gradient optimization than other linear regression methods. To demonstrate the sensitivity to the starting points, I ran 10,000 linear regressions. For each starting point I ran a MLE and a root mean square minimization to determine the optimum quadratic parameters to fit a polynomial to the data. As it turns out, the root mean square optimizations were just as good, or better than the MLE for every case. All of the code for this comparison is available here.
Perhaps one of the simplest and most commonly used alternative objective functions for linear regression is the root mean square error (RMSE). RMSE is the square root of the mean square error, and mean square error is the average of the square residuals \( r \). For this purpose, RMSE is defined in the following equation.
The goal of the linear regression would be to find which parameters minimize the RMSE. As it turns out for my particular model and dataset, the optimum of the MLE will be the optimum of minimizing the RMSE. With this in mind I generated 10,000 random starting points. From each starting point I ran a MLE and a minimizing RMSE using gradient optimizations.
It turns out that for the BFGS algorithm, MLE is more sensitive to starting points than minimizing RMSE. I concluded this because of my 10,000 runs the RMSE performed better 7,668 times. Interesting enough the MLE and RMSE were equivalent 2,332 times, and never did the MLE produce a better match than the RMSE method. I’ve included pie chart which helps to visualize the results.
A bit of disclaimer, these results are very model dependent. What happens with my log-likelihood equation is that it has a tendency to go to infinity with a poor starting point, which creates problems with the gradient optimization method.


Once the PDF file has been loaded, you can extract quite a few metadata from it. You can get
these infos after receiving the (pagesLoaded)
event.
| author | {{fileInfo?.author}} |
| creationDate | {{fileInfo?.creationDate}} |
| creator | {{fileInfo?.creator}} |
| keywords | {{fileInfo?.keywords}} |
| linearized | {{fileInfo?.linearized}} |
| maybeFileSize | {{fileInfo?.maybeFileSize}} |
| modificationDate | {{fileInfo?.modificationDate}} |
| pdfFormatVersion | {{fileInfo?.pdfFormatVersion}} |
| producer | {{fileInfo?.producer}} |
| subject | {{fileInfo?.subject}} |
| title | {{fileInfo?.title}} |


Test Open
open
../tests/html/test_open.html
this is a comment
verifyLocation
*/tests/html/test_open.html


HackOff 2019
Please fill up this form below to register for the competition
Your Progress
Name
Phone Number
Email
Field of Interest
Machine Learning
Web Development
Android Development
Kernel Development
Github Link
Upload your Resume
Why should we select you
Submit
Your Interests
Thank you for registering with us
We will let you know the results shortly


Similar to parallel animation groups, there are a few ways to include children into the sequential groups.
In this exercise, use the old method - first create all necessary animations then include them into the group.
Create 3 animations that runs sequentially, the first animation runs diagonally 300px from left and 300px from top, the second animation runs diagonally 600px from left and 0px from top, then the third animation moves back to the start position. Each animation should take 3 seconds to run.
Note: this exercise should only need one animation div, so do not make more divs. Do not add any start delay.
var A = new Animation(document.querySelector("#a"),
{left: "300px", top: "300px"}, 3);
var B = new Animation(document.querySelector("#a"),
{left: "600px", top: "0px"}, 3);
var C = new Animation(document.querySelector("#a"),
{left: "0px", top: "0px"}, 3);
var seq = new SeqGroup([A, B, C]);
seq.play();


Module 1 covers HTML and CSS. Most of the lessons comes from Codeacademy. The assignments in this module taught me how to create the basis of my website.
HTML is the standard markup language that provides web sites and web applications the structure it needs. It is represented by tags and attributes. In HTML, I learned how to add images, lists, links, tables, divs, and spans to my web site.
CSS is a style language used to describe the appearance and formatting of your HTML. It can control the layout of multiple websites. CSS took HTML to another level by allowing me to change things like the font, image size, background color, margin, border, and padding. It provided me with a way to organize its structure while managing the aesthetic of the web site. Also I was able to save time by using the same css code to manage all my module websites.


NoteList
semester1
semester2
semester3
semester1
note1
semester2
note2
note2
note2
semester3
note3
note3
note3
note3
note3
note3


MBModuleLog Class Reference
| Inherits from | NSObject |
|---|---|
| Conforms to | MBModuleLogRecorder |
| Declared in | MBModuleLog.h |
MBModuleLogRecorder support
+ setLogRecorderClass:
Sets the logger class used to log messages through MBModuleLog
. By
default, MBModuleLog
is the logger class, unless overridden by a call
to this method.
+ (void)setLogRecorderClass:(nullable Class<MBModuleLogRecorder>)logRecorderClass
Parameters
logRecorderClass |
The |
|---|
Declared In
MBModuleLog.h
+ logRecorderClass
Returns the logger class used to log messages through MBModuleLog
.
+ (nonnull Class<MBModuleLogRecorder>)logRecorderClass
Declared In
MBModuleLog.h
Object lifecycle
+ logForModuleClass:
Creates and returns a new MBModuleLog
instance for the specified module
implementation class.
+ (nonnull instancetype)logForModuleClass:(nonnull Class)moduleCls
Parameters
moduleCls |
The implementing class of the |
|---|
Return Value
A new MBModuleLog
.
Discussion
Note: This method is intended to be used only by MBModule
implementations themselves. To retrieve the MBModuleLog
for
a given module, acquire it from the module itself.
Declared In
MBModuleLog.h
+ logForModule:
Creates and returns a new MBModuleLog
instance for the specified module.
+ (nonnull instancetype)logForModule:(nonnull NSObject<MBModule> *)module
Parameters
module |
The |
|---|
Return Value
A new MBModuleLog
.
Discussion
Note: This method is intended to be used only by MBModule
implementations themselves. To retrieve the MBModuleLog
for
a given module, acquire it from the module itself.
Declared In
MBModuleLog.h
Warnings & Errors
– issueDeprecationWarning:
Issues a deprecation warning from the module associated with the receiver.
- (void)issueDeprecationWarning:(nonnull NSString *)warning
Parameters
warning |
The warning message. |
|---|
Discussion
Note: The warning will be written to the console, possibly asynchronously. Repeated issuances of the same warning may be squelched.
Declared In
MBModuleLog.h
– issueDeprecationWarningWithFormat:
Issues a deprecation warning from the module associated with the receiver.
- (void)issueDeprecationWarningWithFormat:(nonnull NSString *)format, ...
Parameters
format |
The format for the warning message, followed by zero or more format parameters. |
|---|---|
... |
A variable argument list of zero or more values referenced
within the |
Discussion
Note: The warning will be written to the console, possibly asynchronously. Repeated issuances of the same warning may be squelched.
Declared In
MBModuleLog.h
– issueNotSupportedError:
Issues a not supported error from the module associated with the receiver.
- (void)issueNotSupportedError:(nonnull NSString *)error
Parameters
error |
The error message. |
|---|
Discussion
Note: The error will be written to the console, possibly asynchronously. Repeated issuances of the same error may be squelched.
Declared In
MBModuleLog.h
– issueNotSupportedErrorWithFormat:
Issues a not supported error from the module associated with the receiver.
- (void)issueNotSupportedErrorWithFormat:(nonnull NSString *)format, ...
Parameters
format |
The format for the error message, followed by zero or more format parameters. |
|---|---|
... |
A variable argument list of zero or more values referenced
within the |
Discussion
Note: The error will be written to the console, possibly asynchronously. Repeated issuances of the same error may be squelched.
Declared In
MBModuleLog.h


Your Spend Profile is currently marked as complete, you can decide to make edits to this, or when your partners have submitted their spend profiles submit them to Innovate UK
Please review:
All Project Spend profiles have been submitted to Innovate UK
Your spend profile has been sent to the lead partner. They will review and submit to Innovate UK.
Your spend profile has been submitted to Innovate UK by the lead partner.
We have reviewed and confirmed your project costs. You should now develop a spend profile together with your project partners. This is so we can plan the allocation of the grant funding to your project.
 Please edit to show your planned expenditure across the life of your project. Please note that costs cannot be moved across cost categories.
This is the proposed spend profile for your project.
| Month | Jun 2016 | Jul 2016 | Aug 2016 | Sep 2016 | Oct 2016 | Nov 2016 | Dec 2016 | Jan 2017 | Feb 2017 | Mar 2017 | Apr 2017 | May 2017 | Jun 2017 | Jul 2017 | Aug 2017 | Sep 2017 | Oct 2017 | Nov 2017 | Dec 2017 | Jan 2018 | Feb 2018 | Mar 2018 | Apr 2018 | May 2018 | Jun 2018 | Jul 2018 | Aug 2018 | Sep 2018 | Oct 2018 | Nov 2018 | Dec 2018 | Jan 2019 | Feb 2019 | Mar 2019 | Apr 2019 | May 2019 | Total | Eligible project costs |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Total | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 936,000 | 936,000 |
| Je-S category | Jun 2016 | Jul 2016 | Aug 2016 | Sep 2016 | Oct 2016 | Nov 2016 | Dec 2016 | Jan 2017 | Feb 2017 | Mar 2017 | Apr 2017 | May 2017 | Jun 2017 | Jul 2017 | Aug 2017 | Sep 2017 | Oct 2017 | Nov 2017 | Dec 2017 | Jan 2018 | Feb 2018 | Mar 2018 | Apr 2018 | May 2018 | Jun 2018 | Jul 2018 | Aug 2018 | Sep 2018 | Oct 2018 | Nov 2018 | Dec 2018 | Jan 2019 | Feb 2019 | Mar 2019 | Apr 2019 | May 2019 | Total | Eligible project costs | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Total | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 936,000 | 936,000 |
Before you submit to the lead partner, make sure you are satisfied with your spend profile. It should match the eligible project costs. The lead partner will submit all costs to Innovate UK.
You can still edit this spend profile but you cannot submit until the section is marked as complete.
If required, you can edit this spend profile. It will not be possible to submit the spend profile to Innovate UK until the section is marked as complete


147. Black-white king
time limit per test: 0.25 sec.
memory limit per test: 1024
KB
input: standard input
output: standard
output
On the chessboard of size NxN leaves only three figures.  The black-white king is very
unusual chess piece for us, because it is invisible. Black and white kings
decided to conclude a treaty against black-white king (they don't see it, but
know that it is somewhere near at chessboard). To realize there plans black and
white must meet face to face, what means that they must occupy two neighboring
cells (generally each cell has 8 neighbors). The black-white king wants to
prevent them from meeting. To do this he must intercept one of the kings before
they'll meet, that is to attack one of the kings (make a move to it's cell). If
the opponent will make a move on the cell of black-white king, nothing will
happen (nobody kill anybody). Your task is to find out have the black-white king
chances to win or not. Consider that white and black kings choose the one of the
shortest ways to meet. Remember, that they don't see the black-white king. The
black-white king also has a strategy: he moves in such a way, that none of the
parts of his way can be shortened (for example, he cannot move by zigzag).
In the case of positive answer (i.e. if the probability of black-white king
to win is nonzero) find the minimal number of moves necessary to probable
victory. Otherwise find the minimal total number of moves of black and white
kings necessary to meet. Remember the order of moves: white king, black king,
and black-white king. Any king can move to any of the 8 adjacent cells.
Input
First line of input data contains the natural number N
(2<=N<=10^6). The second line contains two natural numbers P1, Q1
(0<P1,Q1<N+1) - coordinates of black king, third line contains P2, Q2
(0<P2,Q2<N+1) - coordinates of white king, forth line contains P3, Q3
(0<P3,Q3<N+1) - coordinates of black-white king. Positions of all kings
are different.
Output
Write to the first line word "YES" if the answer id positive,
and "NO" - otherwise. To the second line write a single number - the numerical
answer to the task.
Sample test(s)
Input
5
1 1
5 3
2 3
Output
YES
1
| Author: |
Michael R. Mirzayanov (Special thanks to S. Surganova and D. Arbenina)
|
| Resource: |
Phisical Technical Lyceum #1 Trainings |
| Date: |
Fall, 2002
|
| Server time: 2004-01-13 16:58:21 |
Online Contester Team © 2002 - 2003. All
rights
reserved. | | |


This page requires that the user be logged in with a valid account and the ROLE_USER
Spring Security authority.
If you are reading this page, you are currently logged in.
The authorization provider will create a Principal object based on the iss
and
sub
claims associated with your ID token. This value can be used as a globally unique username within
the application
(though it's not meant to be human-readable).
Your Principal is: [[${ principal.principal }]]
The authorization provider will assign your account a set of authorities depending on how it's configured. Your current login has the following Spring Security authorities:
[[${ auth }]]
Your ID Token has the following set of claims:
| Name | Value |
|---|
The call to the User Info Endpoint returned the following set of claims:
| Name | Value |
|---|


By @alexisgoldstein
Basic syntax, with the two required properties:
transition-property: transition-property; transition-duration: transition-duration;
Example:
transition-property: width;
transition-duration: 2s;
Whichever element you assign these properties to, when the width changes, it’ll change over the course of 2 seconds.
Additional Transition Properties:
transition-timing-function
transition-delay
transition shorthand:
transition: transition-property transition-duration transition-delay transition-timing-function;
transition: background-color 1s 2s ease;
Inspiration: Delta.com
We can combine a bit of jQuery with some transitions on margin
to create a moving navigation pointer: http://jsbin.com/inolor/1/
#triangle { transition: margin-left 1s; }
#triangle.home { margin-left: 4.2em; }
#triangle.about { margin-left: 10.2em; }
#triangle.blog { margin-left: 16.2em; }
You can specify multiple transitions over different durations on a single element. Lea Verou had a great example of this in her W3Conf talk earlier this year.
http://dabblet.com/gist/5292968
This technique is used by http://www.webplatform.org/
.lightbox.delayed {
/* bg image stuff...*/
width: 0;
margin: 1em auto;
padding: .5em;
transition: width 1s, height 1s 1s;
}
.lightbox.current {
width: 60%;
height: 60%;
transition: height 1s, width 1s 1s;
}
This is a kitten drinking beer
CSS Animations allow us to create more complex animations, with multiple points between the beginning and the end of the animation.
the keyframes @ rule:
@-webkit-keyframes spin {
0% { -webkit-transform: rotateY(0); }
100% { -webkit-transform: rotateY(-360deg); }
}
-webkit-animation: spin 18s infinite linear;
animation: spin 18s infinite alternate forwards linear;
animation is the shortcut syntax for the following properties:
animation-name
, animation-duration
, animation-iteration-count
,animation-direction
, animation-fill-mode
and animation-timing-function
One of the optional animation properties that is very important to understand is animation-fill-mode. The values you can set this property to are forwards
, backwards
, both
or none
.
This property defines whether or not changes made to properties during the animation persist after the animation. The default is none
, which means any styles added during the animation go away once it ends.
Setting animation-fill-mode: forwards;
will ensure that any changes made during the animation persist after it.
A very helpful starting point for CSS Animations is Animate.css


Tenno
Corpus
Grineer
Background
Save
Manual Override
Bold
CheatSheet
Your browser does not support the HTML5 canvas tag.


{{ partial "header.html" . }} Sorry, that page wasn't found. Try returning home. {{ partial "footer.html" . }}


Package org.eclipse.epf.uma
Interface WorkOrder
- All Superinterfaces:
Classifier
,DescribableElement
,Element
,org.eclipse.emf.ecore.EObject
,MethodElement
,NamedElement
,org.eclipse.emf.common.notify.Notifier
,PackageableElement
,ProcessElement
,Type
- All Known Implementing Classes:
WorkOrderImpl
public interface WorkOrder extends ProcessElement
A representation of the model object 'Work Order'.
Work Order is a Method Element that represents a relationship between two Breakdown Elements in which one Breakdown Elements depends on the start or finish of another Breakdown Elements in order to begin or end.
(Note, Work Order is not modeled as an Association Class to provide a straightforward mapping to XMI and EMF.)
The Work Order class defines predecessor and successor relations amongst Breakdown Elements. This information is in particular critical for planning applications. See more details on different types of Work Order relationships at Work Order Type.
The following features are supported:
- See Also:
UmaPackage.getWorkOrder()
-
Method Summary
Modifier and Type Method Description WorkOrderType
getLinkType()
Returns the value of the 'Link Type' attribute.WorkBreakdownElement
getPred()
Returns the value of the 'Pred' reference.void
setLinkType(WorkOrderType value)
Sets the value of the 'Link Type
' attribute.void
setPred(WorkBreakdownElement value)
Sets the value of the 'Pred
' reference.Methods inherited from interface org.eclipse.epf.uma.Classifier
getIsAbstract, setIsAbstract
Methods inherited from interface org.eclipse.epf.uma.DescribableElement
getNodeicon, getPresentation, getShapeicon, setNodeicon, setPresentation, setShapeicon
Methods inherited from interface org.eclipse.emf.ecore.EObject
eAllContents, eClass, eContainer, eContainingFeature, eContainmentFeature, eContents, eCrossReferences, eGet, eGet, eInvoke, eIsProxy, eIsSet, eResource, eSet, eUnset
Methods inherited from interface org.eclipse.epf.uma.MethodElement
getBriefDescription, getGuid, getKind, getMethodElementProperty, getOrderingGuide, getOwnedRules, getPresentationName, getSuppressed, setBriefDescription, setGuid, setOrderingGuide, setPresentationName, setSuppressed
Methods inherited from interface org.eclipse.epf.uma.NamedElement
getName, setName
Methods inherited from interface org.eclipse.emf.common.notify.Notifier
eAdapters, eDeliver, eNotify, eSetDeliver
-
Method Details
-
getLinkType
WorkOrderType getLinkType()Returns the value of the 'Link Type' attribute. The default value is"finishToStart"
. The literals are from the enumerationWorkOrderType
. This attribute expresses the type of the Work Order relationship by assigning a value from the Work Order Type enumeration.- Returns:
- the value of the 'Link Type' attribute.
- See Also:
WorkOrderType
,setLinkType(WorkOrderType)
,UmaPackage.getWorkOrder_LinkType()
-
setLinkType
Sets the value of the 'Link Type
' attribute.- Parameters:
value
- the new value of the 'Link Type' attribute.- See Also:
WorkOrderType
,getLinkType()
-
getPred
WorkBreakdownElement getPred()Returns the value of the 'Pred' reference.- Returns:
- the value of the 'Pred' reference.
- See Also:
setPred(WorkBreakdownElement)
,UmaPackage.getWorkOrder_Pred()
-
setPred
Sets the value of the 'Pred
' reference.- Parameters:
value
- the new value of the 'Pred' reference.- See Also:
getPred()
-


Messi to miss Barcelona’s Champions League trip to Inter Milan
by Agency ReportBarcelona star Lionel Messi will not make the trip to Italy for Tuesday’s Champions League game against Inter Milan, the Spanish club confirmed on Monday.
Barcelona is already through to the last 16 after six-time Ballon d’Or winner Messi scored in a convincing 3-1 victory over Borussia Dortmund last time out.
The Spaniards are also sure of finishing top of Group F as they have 11 points from five games.
Antonio Conte’s Inter still has to book their place in the last 16. They are second, level on seven points with Borussia Dortmund who host Slavia Prague.
Inter will qualify if the two clubs finish on the same number of points due to their superior head-to-head goal difference.
(AFP)


Tell us about any photos, audio, video to accompany your work (and if you have the right to use them).
Please be sure to upload the correct file type and file size. If your files are significantly larger than the form allows, you may email supporting items to<EMAIL_ADDRESS>after you submit your initial project info.


K. Usami, Y. Goto, K. Matsunaga, S. Koyama, D. Ikebuchi, H. Amano, H. Nakamura, "On-chip Detection Methodology for Break-Even Time of Power Gated Function Units" ,International Symposium on Low Power Electronics and Design (ISLPED 2011), 1-3 August 2011, Fukuoka, Japan (to appear)
T. Yamamoto, K. Hironaka, Y. Hayakawa, M. Kimura, H. Amano, K. Usami, "Dynamic VDD Switching Technique and Mapping Optimization in Dynamically Reconfigurable Processor for Efficient Energy Reduction" ,The 7th International Symposium on Applied Reconfigurable Computing (ARC2011) 23-25 March 2011, Belfast, United Kingdom, pp. 230-241
T.Ishizaki, K.Usami "Circuit Structure of Level Shifter for Sub-threshold Operation" ,The 25th International Technical Conference on Circuits/Systems, Computers and Communications (ITC-CSCC'10), pp. 653-656, Jul. 2010.
K. Usami, T. Hashida, S. Koyama, T. Yamamoto, D. Ikebuchi, H. Amano,M. Namiki, M. Kondo, H. Nakamura, "Adaptive Power Gating for Function Units in a Microprocessor" ,in IEEE International Symposium on Quality Electronic Design (ISQED), pp. 29-37, March . 2010.
Executive editor site of EDN(Electronics Design, Strategy, News) <抜粋PDF> <掲載>
T.Muto, K.Usami "Effectiveness of Power Gating for a Superscalar processor" ,The 24rd International Technical Conference on Circuits/Systems, Computers and Communications (ITC-CSCC'09), pp. 420-423, Jul. 2009.
K.Usami, M.Nakata, T.Shirai, S.Takeda, N.Seki, H.Amano and H.Nakamura, "Adaptive Power Gating for Function Units in a Microprocessor" ,IEEE 2009 International Conference on Integrated Circuit Design and Technology (ICICDT'09), pp. 7-10, May 2009.
K.Usami, T.Shirai, T.Hashida, H.Masuda, S.Takeda, M.Nakata, N.Seki, H.Amano, M.Namiki, M.Imai, M.Kondo and H.Nakamura, "Design and Implementation of Fine-grain Power Gating with Ground Bounce Suppression," 22nd International Conference On VLSI Design (VLSI Conference'09), Jan. 2009.
T.Shirai and K.Usami, "Hybrid Design of Dual Vth and Power Gating to Reduce Leakage Power under Vth Variations," International SoC Design Conference 2008 (ISOCC'08), pp. 310-313, 25 Nov. 2008.
Naomi Seki (Keio Univ. Amano Lab.), Lei Zhao, Jo Kei, Daisuke Ikebuchi, Yu Kojima, Yohei Hasegawa, Hideharu Amano, Toshihiro Kashima, Seidai Takeda, Toshiaki Shirai, Mitustaka Nakata, Kimivoshi Usami, Tetsuya Sunata, Jun Kanai, Mitaro Namiki, Masaaki Kondo and Hiroshi Nakamura, "A Fine Grain Dynamic Sleep Control Scheme in MIPS R3000" the 26 IEEE International Conference on Computer Design (ICCD'08), Oct. 2008.
T.Hashida and K.Usami, "Power-Switch Clustering Method for Static Timing Analysis," The 23rd International Technical Conference on Circuits/Systems, Computers and Communications (ITC-CSCC'08), pp. 217-220, Jul. 2008.
Y.Umahashi, Y.Kambayashi, M.Kato, Y.Hasegawa, H.Amano and K.Usami, "Power Reduction Technique for Dynamic Reconfigurable Processors with Dynamic Assignment of Dual Supply Voltages," The 23rd International Technical Conference on Circuits/Systems, Computers and Communications (ITC-CSCC'08), pp. 213-216, Jul. 2008.
S.Koyama, S.Takeda and K.Usami, "Design and Analysis of On-chip Leakage Monitor using an MTCMOS circuit," The 23rd International Technical Conference on Circuits/Systems, Computers and Communications (ITC-CSCC'08), pp. 205-208, Jul. 2008.
K.Usami and N.Ohkubo, "A Design Approach for Fine-grained Run-Time Power Gating using Locally Extracted Sleep Signals," IEEE International Conference on Computer Design (ICCD'06), pp. 155-161, Oct. 2006.
N.Ohkubo and K.Usami, "Delay Modeling and Static Timimg Analysis for MTCMOS Circuits," IEEE/ACM Asia and South Pacific Design Automation Conference (ASP-DAC'06), Jan. 2006.
K.Usami, N.Ohkubo and M.Shirakawa, "Analysis on MTCMOS Circuits based on Lumped RC Model for Virtual Ground Line," IEEE International SoC Design Conference 2005 (ISOCC'05), pp. 116-119, Oct. 2005.
K.Usami and H.Yoshioka, "A Scheme to Reduce Active Leakage Power by Detecting State Transitions," IEEE International Midwest Symposium on Circuits and Systems 2004 (MWSCAS'04), pp. I-493-496, Jul. 2004.
Journal Papers
N.Ohkubo and K.Usami, "Delay Modeling and Critical-path Delay Calculation for MTCMOS Circuits," IEICE Transactions on Fundamentals of Electronics, Communications and Computer Sciences (Special Section on VLSI Design and CAD Algorithms), Vol.E89-A, NO.12, pp. 3482-3490, Dec. 2006.
K.Usami and H.Yoshioka, "Dynamic Sleep Control for Finite-State-Machines to Reduce Active Leakage Power," IEICE Transactions on Fundamentals of Electronics, Communications and Computer Sciences (Special Section on VLSI Design and CAD Algorithms), pp. 3116-3123, Dec. 2004.
Invited Talks
F.Jerry, K.Choi and K.Usami, "Power Gating for Ultra-low Leakage: Physics, Design, and Analysis," Design, Automation and Test in Europe 2008 (DATE'08), pp. xliii, Mar. 2008.
K.Usami, "Overview on Low Power SoC Design Technology," IEEE/ACM Asia and South Pacific Design Automation Conference (ASP-DAC'07), pp. 634-636, Jun. 2007.
Books
K.Usami and T.Sakurai, "Methodologies for Power Gating," Leakage in Nanometer CMOS Technologies, (edited by S.Narendra, A.Chandrakasan), pp. 77-104, Springer, 2006.


The INSEE code of the city you want the search results to be restricted on (default: null)
Gives a geographic priority to the address by matching the closest latitude (default: null).
Limits the number of results returned by the server.
Gives a geographic priority to the address by matching the closest longitude (default: null).
Restrict the search to a certain postal code (default: null).
Restrict the search to the type of search you are requesting (default: "street").
Generated using TypeDoc
Activates auto completion processes (default: false).


Diff - Left File: TEGE/Common/IRS990ScheduleC/IRS990ScheduleC.xsd (2008v2.0) Right File: TEGE/Common/IRS990ScheduleC/IRS990ScheduleC.xsd (2008v2.1)
OLD: TEGE/Common/IRS990ScheduleC/IRS990ScheduleC.xsd (2008v2.0)
NEW: TEGE/Common/IRS990ScheduleC/IRS990ScheduleC.xsd (2008v2.1)
OLD line(s): 73
<LineNumber>Part I-B Line 2</LineNumber>
NEW line(s): 73
<LineNumber>Part I-B Line 1</LineNumber>
OLD line(s): 83
<LineNumber>Part I-B Line 3</LineNumber>
NEW line(s): 83
<LineNumber>Part I-B Line 2</LineNumber>


Goth Hangman
Press any key to begin
Guess the word!
Wrong letters guessed:
Guesses left:
Wins:
Losses


Dreamroam
0.0.0
A free and open source C++ 3D GameEngine
Public Member Functions
|
Protected Member Functions
|
Friends
|
List of all members
DCore::ComponentSystem::UntypedSystemBase Class Reference
Inheritance diagram for DCore::ComponentSystem::UntypedSystemBase:
Public Member Functions
UntypedSystemBase
(const
UntypedSystemBase
&other)=default
Protected Member Functions
virtual void
InternalAwake
(entt::registry ®)
virtual void
InternalStart
(entt::registry ®)
virtual void
InternalUpdate
(entt::registry ®, double dt)
virtual void
InternalLateUpdate
(entt::registry ®, double dt)
virtual void
InternalDestroy
(entt::registry ®)
Friends
class
SceneHandler
The documentation for this class was generated from the following file:
K:/Projekte/dreamroam/src/ComponentBased/Systems/
UntypedSystemBase.hh
DCore
ComponentSystem
UntypedSystemBase
Generated by
1.8.18


def cel_to_fahr(c): f = c * 9/5 + 32 return f
And here is an example of calling the function:
print(cel_to_fahr(10))
That would return 50.0 which means 10 degreeCelsius is equal to 50 degreeFahrenheit.


THE DESIGNATED MOURNER A film review by James Berardinelli Copyright 1997 James Berardinelli
RATING (0 TO 10): 7.5 Alternative Scale: *** out of ****
United Kingdom, 1997 U.S. Release Date: beginning 5/2/97 (limited) Running Length: 1:35 MPAA Classification: R (Profanity, mature themes) Theatrical Aspect Ratio: 1.85:1
Cast: Mike Nichols, Miranda Richardson, David de Keyser Director: David Hare Producers: Donna Gray and David Hare Screenplay: Wallace Shawn based on his play Cinematography: Oliver Stapleton Music: Richard Hartley U.S. Distributor: First Look Pictures
If you were bored by MY DINNER WITH ANDRE, THE DESIGNATED MOURNER isn't for you. If Spalding Gray's monologues put you to sleep, prepare to snooze through THE DESIGNATED MOURNER. And if you think TWISTER is perfectly paced, give THE DESIGNATED MOURNER a pass. This film, a series of often-disjointed ruminations about culture and class, demands active intellectual participation, and those who prefer motion pictures to be passive events will be profoundly unappreciative of its approach.
THE DESIGNATED MOURNER began life in 1996 as a stage play at London's National Theater. Directed by David Hare, written by Wallace Shawn, and starring Mike Nichols (yes, that Mike Nichols), Miranda Richardson, and David de Keyser, the production was a success, and the BBC agreed to provide funding for a film version. So, with the participation of all the stage principals, Shawn and Hare made the changes necessary to adapt THE DESIGNATED MOURNER for the screen. The result is this motion picture -- a deliberate, keen examination of thoughts and ideas that features a terrific performance from Nichols.
Bizarre as it might sound, there is actually a similarity between THE DESIGNATED MOURNER and TWISTER. Neither has a particularly coherent narrative. However, while 1996's second-highest grossing film filled the void with special effects that brought in more than $200 million at the domestic box office, THE DESIGNATED MOURNER plugs the hole with ideas and philosophical tangents, and will be lucky to garner one percent of TWISTER's take.
Describing THE DESIGNATED MOURNER's storyline is almost an exercise in futility. The film is basically a monologue delivered by Mike Nichols, who plays a character named Jack. He tells of how, as a young man, he fell in love with a woman, Judy (Miranda Richardson). Judy's father, Howard (David de Keyser), was a well-known author and liberal activist whose "capacity for contempt" for the right wing was boundless. However, while Jack was initially drawn to Judy and Howard's lifestyle, he soon grew weary of it, and, when it became apparent that their political beliefs might be dangerous, he abandoned ship, leaving them to suffer the consequences when the government cracked down on potential troublemakers.
Approximately 80% of THE DESIGNATED MOURNER is Jack talking. The other 20% presents comments and short soliloquies from Judy and Howard, who are sitting next to Jack, facing the camera. Occasionally, but only rarely, there's a bit of dialogue as they argue with one another about their perspectives of an event. Mostly, though, this is about Jack -- his thoughts, ideals, and still-open wounds. By the end of the film, he believes that he has found closure. But at what price for society at large?
At one point, Jack is described as being "lazy", and it's an apt term. He divides the world of art and culture into two categories: "high-brow" and "low-brow", and states that most people lie about liking the former while really preferring the latter. Jack pretends to read poetry, but doesn't understand it. Instead of curling up with a book of poems, he'd rather lie in bed masturbating or watching television. Judy, Howard, and their faceless friends are all "intellectuals" who appreciate life's artistic elements. So, when the government ruthlessly purges society of their number, the only ones left to remember their passions and causes are people like Jack. He's a survivor, not a hero. He'd prefer to remember that there once was something called "art" rather than fight to keep it alive.
It's easy to see THE DESIGNATED MOURNER as a cautionary tale: in a world where pop culture is becoming increasingly brain-dead, who will preserve art? Does anyone still read WAR AND PEACE for personal satisfaction? For that matter, how many children today read because they want to, not because they're told to? Europeans, who often view exported American culture as a polluting influence, may find that this film has more resonance for them than it does for U.S. audiences.
One of the delights of THE DESIGNATED MOURNER is the variety of topics that Jack touches on during his rambling account of his association with Judy and Howard. He discusses human motivation, poetry, morality, the ambiguity of identity, ego, government corruption, sex, pornography, and numerous other issues. Shawn's screenplay is laced with subtle humor and certain evocative phrases like "the colors in the park were quite edible."
From a technical perspective, nothing is done to "open up" the play. The three characters never move from their position around a table. They rarely speak to each other, almost always addressing their remarks to the camera. But the closeups permit the actors to perform with their features and eyes, which adds a dimension not readily available on stage. In a character and idea-based movie like this, cinematographer Oliver Stapleton's simple photographic choices seem to offer the best approach.
Is THE DESIGNATED MOURNER static? Indeed it is -- so much so, in fact, that there were moments when I squirmed a little. We're not used to movies like this -- no more than a handful have come out in the past few years. THE DESIGNATED MOURNER demands an ongoing effort from its audience. You get out of it what you put into it, which guarantees that its appeal will not extend beyond those who occasionally crave more than simple entertainment in their cinematic diet.
- James Berardinelli e-mail<EMAIL_ADDRESS>ReelViews web site: http://www.cybernex.net/~berardin
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


Gerard Capes was a researcher in
Atmospheric Science, and learnt to program through analysis of
field data and simulations of laboratory experiments. Now a
Research Software Engineer, he provides technical support to other
researchers at the University Of Manchester.
Maintainer: Automation and Make


Tissue Enrichment Analysis (TEA)
This repository holds the scripts to calculate enrichment of a set of labels using hypergeometric statistics. Results are output to a dataframe. A standard plotting function is provided, but it is really just a thin wrapper around a seaborn plot.
Requirements
This library has been developed in Python >= 3.5, using the Anaconda distribution. Requirements include pandas
, matplotlib
, numpy
, scipy
and seaborn
.
Installation
Use pip install tissue_enrichment_analysis
Basic Usage
Web usage
Go to www.wormbase.org/tea, input your gene list and enjoy the results!
Within a Python Script
There are really just two main functions that are provided in TEA: enrichment_analysis
and plot_enrichment_results
.
A standard call to this library would be as follows:
import tissue_enrichment_analysis as tea
gene_list= some_gene_list
tissue_df= tea.fetch_dictionary()
df_results= tea.enrichment_analysis(tissue_df, gene_list, aname= 'FileName')
tea.plot_enrichment_results(df_results, title= 'FileName')
Calling from Terminal
Gene enrichment analysis can be generated easily by calling the program via terminal using: tea tissue_dictionary your_gene_list -[OPTIONS]
Type tea -h
for help and full documentation.
Future Work
We may try to add support for other model organisms!
Contact
If you find any bugs, have suggestions or just want to say hi, feel free to contact me at<EMAIL_ADDRESS>Good luck!
David Angeles-Albores
Author:
David Angeles-Albores
Contributors:
Raymond Y. Lee, Paul W. Sternberg
Acknowledgements
With special thanks to the entire worm community!


If the reader encounters a macro character, then its associated reader macro function is invoked and may produce an object to be returned. This function may read the characters following the macro character in the stream in any syntax and return the object represented by that syntax.
Any character can be made to be a macro character. The macro characters defined initially in a conforming implementation include the following:
2.4.9 Re-Reading Abbreviated Expressions


The little ones are always full of energy and want to discover the world around them, MATICO has the ideal products for home explorers, made using resistant and comfortable materials for each of their adventures.
Comfortable and warm design, available in a variety of color combinations
Comfortable and elegant, available in sizes from newborn to one year
Ideal for many occasions provides an elegant look for special events
A nice hat to use in a camping or to wear around town
Perfect article of clothing to combine with all your casual outfits
Hat and scarf set manufactured with the intense colors of the season
A new spring is here and with it our seasonal collection enjoy our ideal products with vibrant and cheerful colors, a collection full of energy and vitality, the flowers are back once again and MATICO is back with you to enjoy them.
MATICO has among its catalog a large number of products for adults, children and babies, additionally it offers a wide range of home decoration and furniture, using only materials from the best suppliers such as lace, soft wool and threads combined with complex fabrics and patterns. In this way, MATICO products are unique, original, personalized and of the highest quality to always satisfy our customers.


--- extends: base.j2 default_block: main title: Astronomy 599, Autumn 2013 description: Astronomy 599, Autumn 2013 ---
ASTR 599: Scientific Computing with Python
University of Washington; Fall 2013
Instructor: Jake Vanderplas
Meeting Times:
ASTR 599 is a Graduate seminar course offered through the UW Astronomy department in the Fall of 2013. It is designed as a comprehensive introduction to scientific computing in Python, geared toward graduate students, postdocs, and researchers in Astronomy and Astrophysics. Much of the curriculum will be modeled after the Berkeley Python Bootcamp.
This graduate seminar course will offer a comprehensive introduction to scientific computing in Python, geared toward students and researchers in Astronomy. The course is aimed at those who already have some familiarity with computational tools and programming languages — i.e. who know what a terminal is and how to use it, and are familiar with basic programming concepts such as for loops and if-else statements — though it will assume no familiarity with the Python programming language.
The two-day boot camp in the days before the start of the quarter will begin with a broad introduction to the basic syntax of Python: data types and operations, loops and conditionals, manipulation and visualization of data, and basic object-oriented programming. From that base, we will move on to a broad overview of the main computing tools of scientific computing in Python: IPython for an interactive computing environment, NumPy for handling of array-based data, Matplotlib for visualization of this data, and Scipy for common tasks such as integration, interpolation, optimization, and linear algebra. In addition to this, we will introduce the use of Git, a distributed version control system, which we will be using throughout the quarter to keep track of code and assignments.
The hour-long seminar slots each week during the quarter will build upon the knowledge-base covered in the boot camp, and introduce more advanced Python tools such as Scikit-learn for machine learning and data mining, Scikit-image for pixel-level data processing, SymPy for symbolic mathematics, IPython for parallel processing, Cython for writing fast algorithms, and much more. Each week will include a short 1-2 hour take-home assignment aimed at reinforcing the concepts covered during class. The assignments will focus on tasks that will be useful in the day-to-day work of astronomical research.
While the course is designed for graduate students who are in their first year or two of research, it is also open to any faculty, researchers or others who would like to brush-up on their Python skills. Upper-level undergraduates and students from other departments will also be considered on a case-by-case basis. For more information, please email me at jakevdp@cs.washington.edu.


Set have great you male grass yielding an yielding first their you're have called the abundantly fruit were man
Read Morewe help to get better furture from our courses
learn from qualified and certified teachers
GET Knowledge and Convert in INTO skills.
Learning with us not like classrooms we we focus leanring over Remembering the things.
popular courses
java most demand technology and language in mnc . and java has great Library and Api
Ai is trending and cool technology to learn 21st century . everything is going towards Ai so learn it will Worth


CANIDFilter
— CAN ID acceptance filter¶
-
class
CANIDFilter
([mask=None])¶ Represents a CAN ID filter to select which incoming frames match.
- Parameters
mask (str) – The filter mask string describing the ID to match, or None to match all 11- and 29-bit identifiers
- Raises
ValueError – if the length of the mask string is not 11 or 29 characters long or contains characters other than ‘X’, ‘1’ or ‘0’
TypeError – if mask is not of type str
The mask is a binary character string that defines the ID matching to take place. It is composed of only
X
,1
or0
and must be 11 or 29 characters long. AX
character means “don’t care”, a1
means “Must be 1” and0
means “Must be 0”.
Examples¶
The following gives an ID filter that accepts all CAN frames:
CANIDFilter()
To accept all frames with 11-bit identifiers:
CANIDFilter(mask='XXXXXXXXXXX')
To accept all CANOpen ‘Transmit SDO’ frames:
CANIDFilter(mask='1101XXXXXXX')


You are
Watch
Settings
Player Settings
Please Enter a Valid Name (10 Characters Max)
Change Name
Change Color
Toggle GridLines
Change Snake Image
Clear Image
Customize your snake by uploading an image (Will be scaled down to size)
Change Background Image
Clear Image
Admin Controls
Speed:
Food:
Bots:
Start Length:


Installation
git clone https://github.com/Stivin/angular-universal.git my-project
cd my-project
npm install
Development Server
Server-Side Rendering
Run npm run dev for a universal dev server. Navigate to http://localhost:4000
The universal dev server which enable SSR (build browser and server targets)
The app will automatically hot-reload on server and browser sides if you change any of the source files.
Client-Side Rendering
Run npm run dev:spa for a SPA dev server. Navigate to http://localhost:4200
The SPA dev server which is a webpack dev server (build browser target only).
The app will automatically reload if you change any of the browser source files.
Build
Run npm run build for a build
Run npm run build:prod for a production build


Miun Webbutveckling 3 - Moment 1
This page is an assignment that is a part of my education.
This is a change on the dev branch to be merged into the main branch
another change
This page is an assignment that is a part of my education.
This is a change on the dev branch to be merged into the main branch
another change


Why is it special?
CoverVid is very lightweight, with only 800 bytes of Javascripts. It is usable in native Javascript and jQuery. It’s logic is parent based, meaning the parent element can be any size (Not necessarily just a full-screen background).
How do I use it?
First pull the project down from GitHub, or install with bower running
bower install covervid
and linkcovervid.min.js
into your site. Make sure it is loaded after jQuery if using it.It is important to note that the video you target will use its’ parent element to scale. With that in mind, we will create some simple markup and add some base styling to size the videos’ parent/wrapper element.
<div class="covervid-wrapper">
<video class="covervid-video" autoplay loop poster="img/video-fallback.png">
<source src="videos/video.webm" type="video/webm">
<source src="videos/video.mp4" type="video/mp4">
</video>
</div>
.covervid-wrapper {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
Now, we can simply call:
$('.covervid-video').coverVid({
width: 1920,
height: 1080
});
This will set the video to behave as if it had background-position: center;
.
You can pass a style option to change the way the video is positioned:
$('.covervid-video').coverVid({
width: 1920,
height: 1080,
style: {
// anchor bottom left
bottom: 0,
left: 0
}
});
Note: style.position
defaults to absolute
.


Avoid outdated x-prefix in comparisons as it no longer serves a purpose.
[ "x$pass" = "xswordfish" ]
test x"$var" = x
[ "$pass" = "swordfish" ]
test "$var" = ""
Some older shells would get confused if the first argument started with a dash, or consisted of !
or (
. As a workaround, people would prefix variables and values to be compared with x
to ensure the left-hand side always started with an alphanumeric character.
POSIX ensures this is not necessary, and all modern shells now follow suite.
Bash 1.14 from 1992 incorrectly fails this test. This was fixed for Bash 2.0 in 1996:
var='!'
[ "$var" = "!" ]
Dash 0.5.4 from 2007 incorrectly passes this test. This was fixed for Dash 0.5.5 in 2008:
x='(' y=')'
[ "$x" = "$y" ]
Zsh (while not supported by ShellCheck) fixed the same problem in 2015.
This warning is optional, and not enabled by default.
If you are targeting especially old shells, you should not enable this warning.


Qi Sun, Li-Yi Wei, and Arie Kaufman
SIGGRAPH 2016
This is a technique that allows users to explore large virtual environments from small physical environments via real walking with head mounted displays.
[paper] [main video] [binocular clips]


|
Table 1
|
Formation ( ϵ form ) and decomposition ( ϵ hull ) energies f ... |
|
Table 2
|
Lattice parameters and bulk moduli for B20 monosilicides of ... |
|
Table 3
|
Evolution of energy differences for semimetallic monosilicid ... |
|
Table 4
|
Energy gaps in semiconducting monosilicides of Fe, Ru, and O ... |


• Nov 24, 2021
Welcome to your blog post. Use this space to connect with your readers and potential customers in a way that’s current and interesting. Think of it as an ongoing conversation where you can share updates about business, trends, news, and more.
Do you have a design in mind for your blog? Whether you prefer a trendy postcard look or you’re going for a more editorial style blog - there’s a stunning layout for everyone.
Writing a blog is a great way to position yourself as an authority in your field and captivate your readers’ attention. Do you want to
improve your site’s SEO ranking? Consider topics that focus on relevant keywords and relate back to your website or business. You can also add hashtags (#vacation #dream #summer)
throughout your posts to reach more people, and help visitors search for relevant content.
Blogging gives your site a voice, so let your business’ personality shine through.
Choose a great image to feature in your post or add a video for extra engagement.
Are you ready to get started? Simply create a new post now.


JSON Web Signatures (JWS) are used to digitally sign a JSON encoded object and represent it as a compact URL-safe string.
The following algorithms are currently supported.
| Algorithm Value | Digital Signature or MAC Algorithm |
|---|---|
| HS256 | HMAC using SHA-256 hash algorithm |
| HS384 | HMAC using SHA-384 hash algorithm |
| HS512 | HMAC using SHA-512 hash algorithm |
| RS256 | RSASSA using SHA-256 hash algorithm |
| RS384 | RSASSA using SHA-384 hash algorithm |
| RS512 | RSASSA using SHA-512 hash algorithm |
| ES256 | ECDSA using SHA-256 hash algorithm |
| ES384 | ECDSA using SHA-384 hash algorithm |
| ES512 | ECDSA using SHA-512 hash algorithm |
>>> from jose import jws
>>> signed = jws.sign({'a': 'b'}, 'secret', algorithm='HS256')
'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhIjoiYiJ9.jiMyrsmD8AoHWeQgmxZ5yq8z0lXS67_QGs52AzC8Ru8'
>>> jws.verify(signed, 'secret', algorithms=['HS256'])
{'a': 'b'}


vignettes/aggregation.Rmd
aggregation.Rmd
This vignette uses the phenoptrExamples
sample data and functions from the tidyverse to demonstrate reading and processing cell seg data from multiple fields and samples.
Use list_cell_seg_files
and purrr::map_df
to read all cell seg data files in a single directory into a single data_frame
. The result is similar to reading an inForm merge table.
list_cell_seg_files
takes a directory path as an argument and returns a list of paths to all the cell_seg_data.txt
files in a directory.
library(phenoptr)
library(tidyverse)
base_path <- system.file("extdata", "samples", package = "phenoptrExamples")
paths <- list_cell_seg_files(base_path)
length(paths)
## [1] 9
paths[1]
## [1] "C:/Program Files/R/Library/phenoptrExamples/extdata/samples/Set12_20-6plex_[14146,53503]_cell_seg_data.txt"
purrr::map_df
applies read_cell_seg_data
to each path in paths
. The data_frame
s returned from each call to read_cell_seg_data
are combined row-wise to create a single merged data_frame
. The result is similar to an inForm merge data file.
csd <- purrr::map_df(paths, read_cell_seg_data)
dim(csd)
## [1] 54525 199
Using table
is one way to summarize the data by Sample Name
or Slide ID
. This data comes from nine fields taken of three slides.
table(csd$`Sample Name`, csd$Phenotype) %>% addmargins(2, list(Total=sum))
##
## CD68+ CD8+ CK+ FoxP3+ other Total
## Set12_20-6plex_[14146,53503].im3<PHONE_NUMBER> 305 2659 5945
## Set12_20-6plex_[15491,58698].im3 87 123 2367 105 2583 5265
## Set12_20-6plex_[17241,54367].im3 344 79 3799 174 1709 6105
## Set4_1-6plex_[11472,51360].im3<PHONE_NUMBER> 512 4521 7860
## Set4_1-6plex_[15206,60541].im3<PHONE_NUMBER> 175 3109 5179
## Set4_1-6plex_[16142,55840].im3<PHONE_NUMBER> 228 2942 6072
## Set8_11-6plex_[13394,50883].im3 590 58 2491 266 2088 5493
## Set8_11-6plex_[14996,59221].im3<PHONE_NUMBER> 166 3461 5123
## Set8_11-6plex_[17130,56449].im3<PHONE_NUMBER> 611 4283 7483
table(csd$`Slide ID`, csd$Phenotype) %>% addmargins(2, list(Total=sum))
##
## CD68+ CD8+ CK+ FoxP3+ other Total
## Set12_20-6plex<PHONE_NUMBER> 584 6951 17315
## Set4_1-6plex 1128 1074 5422 915 10572 19111
## Set8_11-6plex 1258 514 5452 1043 9832 18099
Merged data may come from an inForm merge or from combining individual files as shown above. In either case, the data includes entries which come from multiple fields. Computing on merged data requires a few new techniques.
Use dplyr::group_by
and dplyr::summarize
to compute summary statistics for all fields in a slide. For finer grouping, use multiple arguments to group_by
. Use dplyr::filter
to select a particular phenotype tissue category.
This example computes the mean PDL1 expression for CD68+
and CK+
cells in Tumor
, with the mean computed per Slide ID
.
csd %>%
filter(`Tissue Category`=='Tumor', Phenotype %in% c('CD68+', 'CK+')) %>%
group_by(`Slide ID`, Phenotype) %>%
summarize(Mean_PDL1=mean(`Entire Cell PDL1 (Opal 520) Mean`))
## # A tibble: 6 x 3
## # Groups: Slide ID [?]
## `Slide ID` Phenotype Mean_PDL1
## <chr> <chr> <dbl>
## 1 Set12_20-6plex CD68+ 4.59
## 2 Set12_20-6plex CK+ 0.821
## 3 Set4_1-6plex CD68+ 5.32
## 4 Set4_1-6plex CK+ 3.03
## 5 Set8_11-6plex CD68+ 4.01
## 6 Set8_11-6plex CK+ 1.12
Nearest-neighbor distances must be computed per-sample because the X/Y coordinates reported in cell seg data files are all relative to the top-left of the sample.
Use dplyr::group_by
to aggregate across subsets of a full data set. In this case, we want to group by Sample Name
. Within each group, use dplyr::do
to call find_nearest_distance
to compute the distance columns and dplyr::bind_cols
to combine them with the original data.
# Use the same list of phenotypes for each sample
phenos <- unique(csd$Phenotype)
csd <- csd %>%
group_by(`Sample Name`) %>%
do(bind_cols(., find_nearest_distance(., phenos)))
dim(csd)
tail(names(csd), 5)
## [1] 54525 205
## [1] "Distance to other" "Distance to CD68+" "Distance to FoxP3+"
## [4] "Distance to CK+" "Distance to CD8+"
The next example uses group_by
, filter
and summarize
again to compute the average distance from a tumor cell (CK+
) to the nearest macrophage (CD68+
), with the averages computed per Slide ID
.
csd %>% group_by(`Slide ID`) %>%
filter(Phenotype=='CK+') %>% # Only tumor cells
summarize(mean_dist_to_CD68=round(mean(`Distance to CD68+`), 2))
## # A tibble: 3 x 2
## `Slide ID` mean_dist_to_CD68
## <chr> <dbl>
## 1 Set12_20-6plex 56.2
## 2 Set4_1-6plex 41.8
## 3 Set8_11-6plex 41.0
count_within
for each field in merged datacount_within
is another function that must be computed per field.
This example uses dplyr::group_by
and dplyr::do
to call count_within
for each field in a merged data file. The result is a data_frame
with one row per radius per field.
Including Slide ID
in the group_by
arguments doesn’t change the grouping, it causes Slide ID
to be included in the result. This is helpful for further aggregation.
See the section Aggregate counts and means per slide below for an example which aggregates counts per slide.
csd %>% group_by(`Slide ID`, `Sample Name`) %>%
do(count_within(., from='CK+', to='CD68+', radius=15))
## # A tibble: 9 x 7
## # Groups: Slide ID, Sample Name [9]
## `Slide ID` `Sample Name` radius from_count
## <chr> <chr> <dbl> <int>
## 1 Set12_20-6plex Set12_20-6plex_[14146,53503].im3 15 2323
## 2 Set12_20-6plex Set12_20-6plex_[15491,58698].im3 15 2367
## 3 Set12_20-6plex Set12_20-6plex_[17241,54367].im3 15 3799
## 4 Set4_1-6plex Set4_1-6plex_[11472,51360].im3 15 1731
## 5 Set4_1-6plex Set4_1-6plex_[15206,60541].im3 15 1434
## 6 Set4_1-6plex Set4_1-6plex_[16142,55840].im3 15 2257
## 7 Set8_11-6plex Set8_11-6plex_[13394,50883].im3 15 2491
## 8 Set8_11-6plex Set8_11-6plex_[14996,59221].im3 15 1100
## 9 Set8_11-6plex Set8_11-6plex_[17130,56449].im3 15 1861
## to_count from_with within_mean
## <int> <int> <dbl>
## 1 557 273 0.169
## 2 87 104 0.0503
## 3 344 166 0.0598
## 4 599 387 0.308
## 5 112 67 0.0530
## 6 417 253 0.158
## 7 590 261 0.161
## 8 199 90 0.0918
## 9 469 181 0.134
count_within
across samplesUse count_within_batch
to count cells within a radius for multiple tissue categories, phenotypes and fields when the fields have not been merged.
This example counts CK+
cells having a CD8+
cell within 10 or 25 microns, and CK+
cells with a CD68+
cell within 10 or 25 microns. dplyr::glimpse
gives a compact summary of the data.
base_path <- system.file("extdata", "samples", package = "phenoptrExamples")
pairs <- list(c('CK+', 'CD8+'),
c('CK+', 'CD68+'))
radius <- c(10, 25)
counts <- count_within_batch(base_path, pairs, radius, verbose=FALSE) %>%
select(-source, -category) # Remove unneeded columns
glimpse(counts)
## Observations: 36
## Variables: 8
## $ slide_id <chr> "Set12_20-6plex", "Set12_20-6plex", "Set12_20-6ple...
## $ from <chr> "CK+", "CK+", "CK+", "CK+", "CK+", "CK+", "CK+", "...
## $ to <chr> "CD8+", "CD8+", "CD68+", "CD68+", "CD8+", "CD8+", ...
## $ radius <int> 10, 25, 10, 25, 10, 25, 10, 25, 10, 25, 10, 25, 10...
## $ from_count <int> 2323, 2323, 2323, 2323, 2367, 2367, 2367, 2367, 37...
## $ to_count <int> 101, 101, 557, 557, 123, 123, 87, 87, 79, 79, 344,...
## $ from_with <int> 33, 250, 99, 647, 71, 528, 47, 301, 36, 284, 54, 5...
## $ within_mean <dbl> 0.015927680, 0.136461472, 0.049504950, 0.613861386...
Aggregating from_count
, to_count
and from_with
across fields is straightforward, it only requires simple sums. Aggregating within_mean
requires computing the underlying count of cells within the radius, summing, and computing a new mean.
(Note: the value of from_count * within_mean
is not reported by count_with
because it may count cells multiple times.)
counts_per_sample <- counts %>% group_by(slide_id, from, to, radius) %>%
summarize(from_count=sum(from_count),
to_count=sum(to_count),
from_with=sum(from_with),
within=sum(from_count*within_mean),
within_mean=within/from_count) %>%
ungroup %>% select(-within)
counts_per_sample
## # A tibble: 12 x 8
## slide_id from to radius from_count to_count from_with
## <chr> <chr> <chr> <int> <int> <int> <int>
## 1 Set12_20-6plex CK+ CD68+ 10 8489 988 200
## 2 Set12_20-6plex CK+ CD68+ 25 8489 988 1482
## 3 Set12_20-6plex CK+ CD8+ 10 8489 303 140
## 4 Set12_20-6plex CK+ CD8+ 25 8489 303 1062
## 5 Set4_1-6plex CK+ CD68+ 10 5422 1128 288
## 6 Set4_1-6plex CK+ CD68+ 25 5422 1128 1775
## 7 Set4_1-6plex CK+ CD8+ 10 5422 1074 344
## 8 Set4_1-6plex CK+ CD8+ 25 5422 1074 2003
## 9 Set8_11-6plex CK+ CD68+ 10 5452 1258 170
## 10 Set8_11-6plex CK+ CD68+ 25 5452 1258 1484
## 11 Set8_11-6plex CK+ CD8+ 10 5452 514 123
## 12 Set8_11-6plex CK+ CD8+ 25 5452 514 832
## within_mean
## <dbl>
## 1 0.0872
## 2 1.03
## 3 0.0590
## 4 0.498
## 5 0.173
## 6 1.84
## 7 0.239
## 8 2.21
## 9 0.0934
## 10 1.51
## 11 0.0980
## 12 0.871


The Profile Checks action is a read-only action that measures distances between features and inner profiles (step & repeat PCBs), and distances between features and outer profiles (PCB and panel), and generate statistics.
The check can operate on any layer.
The following tests can be applied to profile layers, as listed in the action screen and below:
*
Board length
*
Board width
*
Board thickness
*
Feature to profile
*
Feature to Step & Repeat
There are no Feature attributes used during Profile Checks.
|
Attribute |
Description |
|
min_f2outer |
Minimum distance between PCB features and PCB profile. |
|
min_f2inner |
Minimum distance between panel features and profile of encompassed PCB. |


{% extends 'base.html' %} {% block title %}Messages{% endblock %} {% block content %}
Inbox of messages
Hi and welcome to the ReBridge platform,
The platform is highly customizable to meet your needs and could be integrated to needed data layers
Also, this is where we will keep you up to date on events and updates.


| Author: | PyBlosxom Development Team |
|---|---|
| Version: | config_variables.txt 1059 2007-06-24 16:41:52Z willhelm |
| Copyright: | This document is distributed under the MIT license. |
Contents
This is a non-comprehensive list of configuration variables in config.py.
If you install any plugins, those plugins may ask you to set additional variables in your config.py file--those variables will not be documented in this file.
Additionally, any variables you set in config.py will be available in your templates. This is useful for allowing you to centralize any configuration for your blog into your config.py file and use it in templates and other places. For example, you could move all your media files (JPEG images, GIF images, CSS, ...) into a directory on your server to be served by Apache and then set the variable $media_url to the directory with media files and use that in your templates.
REQUIRED: no
DATATYPE: string
DEFAULT VALUE: calculated based on HTTP server variables
This is the base url for your blog. If someone were to type this url into their browser, then they would see the main index page for your blog.
For example, if Joe Smith put his pyblosxom.cgi script into a cgi-bin directory and he was using Apache, his base_url might look like this:
py["base_url"] = "http://joesmith.net/~joe/cgi-bin/pyblosxom.cgi"
However, it's common that this can be determined by PyBlosxom by looking at the HTTP environment variables--so if you're not doing any url re-writing, it's possible that PyBlosxom can correctly determine the url and you won't have to set the base_url variable at all.
If Joe got tired of that long url, Joe might set up some url re-writing on my web-server so that the base_url looked like this:
py["base_url"] = "http://joesmith.net/~joe/blog"
Note
A note about trailing slashes:
Your base_url property should NOT have a trailing slash.
Note
A note about url rewriting:
If you use mod_rewrite rules or some other url rewriting system on your web-server, then you'll want to set this property.
REQUIRED: no
DATATYPE: string
DEFAULT VALUE: ""
This is the name of the author that you want to appear on your blog. Very often this is your name or your pseudonym.
If Joe Smith had a blog, he might set his blog_author to "Joe Smith":
py["blog_author"] = "Joe Smith"
If Joe Smith had a blog, but went by the pseudonym "Magic Rocks", he might set his blog_author to "Magic Rocks":
py["blog_author"] = "Magic Rocks"
REQUIRED: no
DATATYPE: string
DEFAULT VALUE: ""
This is the description or byline of your blog. Typically this is a phrase or a sentence that summarizes what your blog covers.
If you were writing a blog about restaurants in the Boston area, you might have a blog_description of:
py["blog_description"] = "Critiques of restaurants in the Boston area"
Or if your blog covered development on PyBlosxom, your blog_description might go like this:
py["blog_description"] = "Ruminations on the development of " + \ "PyBlosxom and related things"
Note
A note about long lines:
Remember that the config.py file is a Python code file just like any other Python code file. Splitting long lines into shorter lines can be done with string concatenation and the \ character which indicates that the next line is a continuation of the current one.
Additionally, you can use """ ... """ and ''' ... ''' if you like.
REQUIRED: no
DATATYPE: string
DEFAULT VALUE: ""
This is the email address you want associated with your blog.
For example, say Joe Smith had an email address<EMAIL_ADDRESS>and wanted that associated with his blog. Then he would set the email address as such:
py["blog_email"] =<EMAIL_ADDRESS>REQUIRED: YES
DATATYPE: string
DEFAULT VALUE: no default value--you must set this
This is the character encoding of your blog.
For example, if your blog was encoded in iso-8859-1, then you would set the blog_encoding to:
py["blog_encoding"] = "iso-8859-1"
Note
A note about encoding values:
This value must be a valid encoding value. In general, if you don't know what to set your encoding to and you're planning to use US or UK English, then setting it to iso-8859-1 is probably fine.
This value should be in the meta section of any HTML- or XHTML-based flavours and it's also in the header for any feed-based flavours. An improper encoding will gummy up some/most feed readers and web-browsers.
FIXME - where can we find more information about what constitutes a valid encoding value?
REQUIRED: no
DATATYPE: string: "float,float"
DEFAULT_VALUE: no default value
This is the geographical location of your blgo as a latitude/longitude pair, if appropriate. This is used by flavours that support the ICBM meta tag for HTML- or XHTML-based flavours. The meta tags are used by sites like http://geourl.org/ which track where blogs are located.
For example, if you lived at 37.448087, -122.159259, then your blog_icbm would be set to:
py["blog_icbm"] = "37.448089,-122.159259"
FIXME - how can you figure out where you are?
REQUIRED: YES
DATATYPE: string
DEFAULT VALUE: no default value--you must set this
This is the primary language code for your blog.
For example, English users should use en:
py["blog_language"] = "en"
FIXME - where's a list of valid language codes?
REQUIRED: YES
DATATYPE: string
DEFAULT VALUE: no default value--you must set this
This is the title of your blog. Typically this should be short and is accompanied by a longer summary of your blog which is set in blog_description.
For example, if Joe were writing a blog about cooking, he might title his blog:
py["blog_title"] = "Joe's blog about cooking"
REQUIRED: no
DATATYPE: string
DEFAULT VALUE: no default set
This is the full path to where the PyBlosxom directory is on your system.
If you have installed PyBlosxom as a Python library by running python setup.py install then you don't need to set the codebase variable.
If you have NOT installed PyBlosxom as a Python library, then you DO need to set the codebase variable. Otherwise the Python interpreter won't be able to find the PyBlosxom codebase and your blog will not work.
For example, if you untarred PyBlosxom into /home/joe/pyblosxom-1.3.2/, then the Pyblosxom (uppercase P and lowercase b) directory should be in /home/joe/pyblosxom-1.3.2/ and you would set your codebase variable like this:
py["codebase"] = "/home/joe/pyblosxom-1.3.2/"
REQUIRED: YES
DATATYPE: string
DEFAULT VALUE: no default value--you need to set this
This is the full path to where your blog entries are kept on the file system.
For example, if you are storing your blog entries in /home/joe/blog/entries/, then you would set the datadir like this:
py["datadir"] = "/home/joe/blog/entries/"
Note
A note about datadir on Windows:
Use / to separate directories in the datadir path even if you are using Windows. Examples of valid datadirs on Windows:
py["datadir"] = "/blog/entries/"
and:
py["datadir"] = "e:/blog/entries/"
REQUIRED: NO
DATATYPE: integer
DEFAULT VALUE: defaults to 0--infinite depth
The depth setting determines how many levels deep in the directory (category) tree that PyBlosxom will display when doing indexes.
REQUIRED: no
DATATYPE: string
DEFAULT VALUE: no default value set
This is the full path to where your PyBlosxom flavours are kept.
If you do not set the flavourdir, then PyBlosxom will look for your flavours and templates in the datadir alongside your entries.
Note
A note about the spelling:
"flavour" is spelled using the British spelling and not the American one.
For example, if you want to put your entries in /home/joe/blog/entries/ and your flavour templates in /home/joe/blog/flavours/ you would set flavourdir and datadir like this:
py["datadir"] = "/home/joe/blog/entries/" py["flavourdir"] = "/home/joe/blog/flavours/"
Note
A note about flavourdir on Windows:
Use / to separate directories in the flavourdir path even if you are using Windows. Examples of valid flavourdir on Windows:
py["flavourdir"] = "/blog/flavours/"
and:
py["flavourdir"] = "e:/blog/flavours/"
REQUIRED: no
DATATYPE: string
DEFAULT VALUE: "html"
This specified the flavour that will be used if the user doesn't specify a flavour in the URI.
For example, if you wanted your default flavour to be "joy", then you would set default_flavour like this:
py["default_flavour"] = "joy"
Doing this will cause PyBlosxom to use the "joy" flavour whenever URIs are requested that don't specify the flavour.
For example, the following will all use the "joy" flavour:
http://joesmith.net/blog/ http://joesmith.net/blog/index http://joesmith.net/blog/movies/ http://joesmith.net/blog/movies/supermanreturns
REQUIRED: no
DATATYPE: list of strings
DEFAULT VALUE: [ ]
The ignore_directories variable allows you to specify which directories in your datadir should be ignored by PyBlosxom.
This defaults to an empty list (i.e. PyBlosxom will not ignore any directories).
For example, if you use CVS to manage the entries in your datadir, then you would want to ignore all CVS-related directories like this:
py["ignore_directories"] = [ "CVS" ]
If you were using CVS and you also wanted to store drafts of entries you need to think about some more in a drafts directory in your datadir, then you could set your ignore_directories like this:
py["ignore_directories"] = [ "drafts", "CVS" ]
This would ignore all directories named "CVS" and "drafts" in your datadir tree.
REQUIRED: no
DATATYPE: list of strings
DEFAULT VALUE: no default value set
If the load_plugins variable is set to a list of strings, then PyBlosxom will load the plugins specified in the order they were specified in. If the load_plugins variable is set to [ ] (i.e. an empty list), then PyBlosxom will not load any plugins.
If the load_plugins variable is not set at all, then PyBlosxom will load all plugins that it finds in the plugin directories in alphabetical order.
For example, if you had plugin_dirs set to [ "/home/joe/blog/plugins/" ] and there were three plugins in that directory pluginA.py, pluginB.py, and pluginC.py and you did NOT set load_plugins, then PyBlosxom will load pluginA followed by pluginB followed by pluginC.
If you wanted PyBlosxom to load pluginA and pluginC, then you would set load_plugins to:
py["load_plugins"] = [ "pluginA", "pluginC" ]
Note
A note about files versus modules:
load_plugins should contain a list of strings where each string is a Python module--not a filename. So don't add the .py to the end of the module name!
Note
A note about load_plugins:
In general, it's better to explicitly set load_plugins to the plugins you want to use. This reduces the confusion about which plugins did what when you have problems. It also reduces the potential for accidentally loading plugins you didn't intend to load.
Note
A note about the order of the plugins:
PyBlosxom loads plugins in the order specified by load_plugins. This order also affects the order that callbacks are registered and later executed. For example, if pluginA and pluginB both implement the handle callback and you load pluginB first, then pluginB will execute before pluginA when the handle callback kicks off.
Usually this isn't a big deal, however it's possible that some plugins will want to have a chance to do things before other plugins. This should be specified in the documentation that comes with those plugins.
REQUIRED: no
DATATYPE: string
DEFAULT VALUE: "C"
FIXME - this needs to be verified
PyBlosxom uses the locale config variable to adjust the values for month names and dates.
In general, you don't need to set this unless you know you're not using en_US or en_UK.
A listing of language codes is at http://ftp.ics.uci.edu/pub/ietf/http/related/iso639.txt
A listing of country codes is at: http://userpage.chemie.fu-berlin.de/diverse/doc/ISO_3166.html
For example, if you wanted to set the locale to the Dutch language in the Netherlands you'd set locale to:
py["locale"] = "nl_NL.UTF-8"
REQUIRED: no
DATATYPE: string
DEFAULT VALUE: no default value set
This specifies the file that PyBlosxom will log messages to.
If this is set to "NONE", then log messages will be silently ignored.
If PyBlosxom cannot open the file for writing, then log messages will be sent to sys.stderr.
For example, if you wanted PyBlosxom to log messages to /home/joe/blog/logs/pyblosxom.log, then you would set log_file to:
py["log_file"] = "/home/joe/blog/logs/pyblosxom.log"
If you were on Windows, then you might set it to:
py["log_file"] = "c:/blog/logs/pyblosxom.log"
REQUIRED: no
DATATYPE: string
DEFAULT VALUE: no default value set
POSSIBLE VALUES:
This sets the log level for logging messages.
If you set the log_level to critical, then ONLY critical messages are logged.
If you set the log_level to error, then error and critical messages are logged.
If you set the log_level to warning, then warning, error, and critical messages are logged.
So on and so forth.
For "production" blogs (i.e. you're not tinkering with configuration, new plugins, new flavours, or anything along those lines), then this should be set to warning or error.
For example, if you're done tinkering with your blog, you might set the log_level like this:
py['log_level'] = "warning"
REQUIRED: no
DATATYPE: string
DEFAULT VALUE: no default value specified
This let's you specify which channels should be logged.
If log_filter is set, then ONLY messages from the specified channels are logged. Everything else is silently ignored.
Each plugin can log messages on its own channel. Therefore channel name == plugin name.
PyBlosxom logs its messages to a channel named "root".
Warning
A warning about omitting root:
If you use log_filter and don't include "root", then PyBlosxom messages will be silently ignored!
For example, if you wanted to filter log messages to "root" and messages from the "comments" plugin, then you would set log_filter like this:
py["log_filter"] = [ "root", "comments" ]
FIXME - is the channel name == plugin name done automatically by PyBlosxom or is the channel name specified when logging?
REQUIRED: no
DATATYPE: int
DEFAULT VALUE: 5
The num_entries variable specifies the number of entries that show up on your home page and other category index pages. It doesn't affect the number of entries that show up on date-based archive pages.
It defaults to 5 which means "show at most 5 entries".
If you set it to 0, then it will show all entries that it can.
For example, if you wanted to set num_entries to 10 so that 10 entries show on your category index pages, you sould set it like this:
py["num_entries"] = 10
REQUIRED: no
DATATYPE: list of strings
DEFAULT VALUE: [ ]
The plugin_dirs variable lists the directories in which you have PyBlosxom plugins.
When you set this variable, be sure to set the load_plugins variable as well.
This defaults to [ ] which is an empty list.
For example, if you stored your PyBlosxom plugins in /home/joe/blog/plugins/, then you would set plugin_dirs like this:
py["plugin_dirs"] = [ "/home/joe/blog/plugins/" ]


Adds one item to the end of an array If item is an array, the entire array will be appended as one item.
Array to add to.
Item to add.
Adds one item to the front of an array If the item is an array, the entire array will be appended as one item.
Array to add to.
Item to add.
Removes the item at the specified index from an array
Array to remove item from.
Zero-based index number of item to remove.
Removes items that match specified value from an array
Items must match both the value and type of specified value
Returns original array if no items in array match specified value.
Array to remove item from.
Value to search for.
Removes all instances of specified value if true, removes only the first instance if false.
Replaces items that match specified value from an array with a new value
Items must match both the value and type of specified value
Returns original array if no items in array match specified value.
Array to remove item from.
Value to replace existing value with.
Replaces all instances of specified value if true, replaces only the first instance if false.
Reverses the order of items in an array and returns a new array.
Array to reverse.
New reversed array.
Sorts an array of strings alphabetically
If items are not strings, they are treated as strings.
Items are sorted according to string Unicode code points (character by character, numbers before upper case alphabets, upper case alphabets before lower case alphabets)
Array to sort.
Sorts an array of numbers in ascending order The array must contain numbers.
Array to add to.
Adds and/or removes items to/from an array
If no items_to_add are specified, then items are only removed.
If num_to_remove is 0, then items are only added.
Array to splice
Zero-based index at which to add/remove items. (Items are added/removed after specified index)
Number of items to remove.
Array of items to add.
Generated using TypeDoc
Array functions that modify an input array and return a new array.


Tech Breakfast
|
|
|
|
SSW Tech Breakfast
Combining Exchange Data, SQL Data and SQL Reporting Services
|
|
| Come see a code packed session that will show how to extend the out-of-the box features of
Reporting Services. Everyone who has an Exchange Server 2000/2003 should be reporting on it but
nobody does. Following this, we will explore the creation of a real Reporting Services solution. You
will learn about the important issues of security, data access, rendering, and delivery. We will
also discuss the deployment issues of an application that requires Reporting Services. Sample code
is provided so you can use this useful solution.
|
|
Friday 2nd April.
8:00am - 11:00am at SSW
Register online now
More Info
|
|
span class = "emphasistext">SSW Tech Breakfast
Boost Your Productivity with the best of Microsoft's .NET Application Blocks
|
|
| All developers need exception management and all developers need to store settings. Microsoft has
included
these two code sets called: Application Blocks to address these tasks.
They are ready to use but some important functionality has been forgotten. Come see how they have
been extended,
ready for you to insert them straight
into your applications. |
|
Friday 23rd April.
8:00am - 11:00am at SSW
Register online now
More Info
|
|
Resources
|
Lumigent Log Explorer
www.ssw.com.au/ssw/LogExplorer
|
Access Unlimited
by Garry Robinson
http://www.vb123.com
|
|
|
The Cutting Edge
|
|
| G'day Developers! |
|
Everyone in business is guilty of wasting time, be they the receptionist right through to the CEO.
However, for a company to get the most value from an employees time they need to implement standards
to minimise this 'dead time'. It's all about taking advantage of those moments when you're not in
the
office but you have a couple of moments to spare.
More on Rules to Managing Dead Time
|
|
Cheers until next time,
Adam
SSW Chief Architect and Microsoft Regional
Director, Australia
Got a comment for Adam? 696e666f72407373772e636f6d2e6175
|
|
Sydney .NET User Group - The best place to learn .NET for free in
Sydney
|
|
|
Sydney .NET User Group 17th March, 2004
|
|
This month Adam will be speaking on the exciting topic of OLAP
and has defined 'The 10 Rules to Better OLAP Cubes'.
These rules will cover some cool OLAP Clients and Utilities,
plus will look at the new MOSA for Balanced Scorecards and OLAP Reporting.
As usual all attendees will receive complementary pizza
and soft drink. Hope to see you this Wednesday night! Please note that we will be
taking registrations from 6:00pm, and aiming for a 6:30pm
start.
|
|
Wednesday 17th March. 6:00 pm at Microsoft, 1 Epping Road
North Ryde
>See You There!!
| Sorry
I can't make it
|
|
SSW
Software Audit
|
|
|
Companies from across the globe have been taking advantage of SSW's
software Audit Services. The common message that is received from
clients is that getting their software built in-house can sometimes
lead to a failure to identify design flaws and architectural insufficiencies. They need an unbiased
second opinion from a
knowledgeable source that can make recommendations to improve the quality of their software.
More
on SSW software audits
|
|
New Product - SSW Data PRO!
|
|
|
Deploy new versions of your Access backend simply with SSW Data PRO!
SSW Data PRO! records every change made to your Access backend. When the new front end
is installed at the client site, the backend will automatically be upgraded with the changes you
made. Never be out of sync again! SSW Data PRO! is available for Access 97, 2000
and 2002.
More
on SSW Data PRO!
|
|
Tips
|
|
I have work colleagues that need to develop with 2002, but my project was created in 2003. How do
I convert my Visual Studio.NET 2003 projects back to 2002?
- David Klein
Can I block those annoying Internet banners and save bandwidth?
- Daniel Hyles / Adam Cogan / Joe Hardy
|
|
Advertisment
|
|
|
How fast are your web-based applications growing? In many industries more
transactions now happen on the
web than off it. Could your business cope? Executive Computing
is hosting a free morning presentation on this topic
with industry experts: Andrew Hayes, Graeme Philipson and John Yarrington
presenting.
More
|
|


Title of the Article:
Day of publishing the article:
Category of the article:
Number of links to other articles:
Number of embedded images:
Number of embedded videos:
Number of keywords:
If you click the "Submit" button, your article will be analyzed and you will be re-directed to the result page.


"Can't we sent an SOS"Cody asked Alesha an SoS said a confused Alesha "a distress call to call for someone to help us" said Cody "well there is someone I can call said Alesha I just hope he will answer" Alesha started whistle a very strange whistle and before you know it a humpback whale has busted into the room our heroes were. "Your majesty"said the whale "whatever is the Reason for your calling" "you'll find out later"said Alesha "first I want you to meet Cody Cody met Franklin the whale" "charmed" said Franklin ,Franklin was mystical whale who was good friends with Alesha,one day Alesha saw Franklin trapped in any she rescued him and in exchange he thought her a song to whistle,and whenever Alesha whistles that song Franklin would come to help her just like she helped him,Alesha was saving her whistle for an emergency like this one,and she knew this was the perfect time to do it
Cody scoped Alesha in his arms and he got on franklin's back "Franklin" asked Cody "you see those cages over there" Cody pointed at the cadres the Merfolk were being held in "don't worry" said Franklin " I know just what to do" Franklin unleashed a sonic boom wave that destroyed the cagres and blew the sea monsters out of the kingdom "Cody you're alright" said Kito "I knew you were going to save us what's wrong with Alesha" "she's in very bad shape"said Cody can you cure her wounds?" "I'm an oracle not a doctor but i have some healing potion that I carry in case of emergencies always be prepared that's my motto" "thanks Kito" said Cody "tell Lorelei and the other knights to get the Merfolk to safety" "what about you" " I'm going to have a little face to face talk with a certain father of mine" said Cody let's go Franklin "Caverly ole" shouted Franklin


Overview
This is a group of PowerShell scripts that provide a minimal graphical interface intended to aid in common configuration tasks for Microsoft Hyper-V Server 2012 and the Core editions of Microsoft Windows Server 2012. It is built directly from the scripts
in Core Config 2.0, but it is being worked on by a completely different team.
Tested Compatibility
- Verified: Microsoft Windows Server 2012 (Core Installation)
- Verified: Microsoft Windows Server 2012 (Complete GUI Installation)
- Verified: Microsoft Hyper-V Server 2012
- Not verified but should function: Microsoft Windows Server 2012 (Minimal Server Interface Installation)
- Verified to be partially functional: Microsoft Windows 8 Professional
- Verified to be partially functional (not recommended for this or any other Windows version prior to 8 and 2012): Microsoft Windows 7 Enterprise SP1 with Windows Management Framework 3.0
- Minimal verification performed: Windows Server 2012 R2
Installation
- From the Downloads page, acquire the ZIP or ISO distribution
- If you have downloaded the ZIP version, you must unblock it using one of the following methods:
- In Windows Explorer, go to Properties of the file, and click the "Unblock" button.
- In PowerShell, use the Unblock-File cmdlet.
- Create a folder on the root of the target system. Ex: MD C:\Corefig
- Copy the contents of the ZIP or ISO to the newly created folder.
Uninstallation
- Delete the folder created in step 3 of the installation instructions.
- Delete the "Corefig" folder created under %ALLUSERSPROFILE% (C:\ProgramData on most systems)
- If you wish to reverse the PowerShell execution policy set by Corefig, open a PowerShell prompt and run the following:
Set-ExecutionPolicy Restricted (note that other scripts you use may rely on a RemoteSigned or looser policy)
Operation
This tool can only be run from the console of the system to be managed.
- At a command prompt, switch to the folder that you created in step 3 of the installation instructions, ex:
CD /D C:\Corefig
- For the first run, run: CSCRIPT Start_corefig.wsf
- You may use the Start_corefig script on each run, but on successive runs you could use the following instead:
POWERSHELL .\COREFIG.PS1
Common Problems
Reporting Issues
Please do not use the comments section on this page to report problems, as no one is alerted. Use the Discussions page instead.