amptool(1) Qualcomm Atheros Powerline Toolkit amptool(1) NAME amptool - Qualcomm Atheros AR7x00 Powerline Device Manager SYNOPSIS amptool [options] [device] [device] [...] DESCRIPTION This version of the Qualcomm Atheros Device Manager for Linux performs basic operations on Atheros AR7400 devices using the raw Ethernet protocol described in the Qualcomm Atheros HomePlug AV Firmware Technical Reference Manual. It can be used to interrogate and control devices or upgrade firmware if on-board NVRAM is present. See plctool for a similar utility that supports QCA7420 devices. It supports chipset AR7400. This program is part of the Qualcomm Atheros Powerline Toolkit. See the plc man page for an overview and installation instructions. COMMENTS This program version is identical to legacy program int6k except for option -m which uses version 1 of the Qualcomm Atheros VS_NW_INFO vendor-specific message. Older firmware versions may not recognize this message version. OPTIONS -a Read device attributes using VS_OP_ATTRIBUTES. Attributes are short strings and integers that describe device hardware and firmware. They are concatenated to form the output that is similar to option -r but derived differ‐ ently. -B action Press the simple connect pushbutton using VS_PB_ENC. The action can be specified by number 1, 2 or 3 or by symbol "join", "leave" or "status", respectively. Send action 1 to both devices that are expected to join. Send action 2 to each device that is expected to leave the network. -C module Commit (flash) downloaded modules to NVRAM using VS_MOD_NVM. The module can be spedified by number 1, 2 or 3 or by symbol "nvm", "pib" or "all", repectively. Module 3 is equivalent to option -F which writes the NVM and PIB together. You cannot force flash NVRAM using this option. Use option -FF to force flash. -d filename Read Watchdog Report from the device and write it to the named file in binary format using VS_WD_RPT. The report file can be sent to Qualcomm Atheros for technical analysis. No assumptions are made based on filename and no filename convetions are enforced; however, you should use a .log file extension to indicate binary format. -D xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx Define the 16 octet Device Access Key (DAK) in hex format. The DAK is used by option -J. It may also be set to "key1" or "key2" as explained in the KEYS section. -e Redirects stderr messages to stdout. By convention status and error messages are printed on stderr while primary program output is printed on stdout. This option prints all output on stdout in cases where this is desired. -f Read flash memory parameters using VS_GET_NVM. An error will be reported if no flash memory is present. -F[F] Write previously downloaded MAC and PIB to NVRAM using VS_MOD_NVM. Adding a second F here or another -F anywhere on the command line will force-flash a blank or corrupted NVRAM. Firmware loaded from NVRAM will treat force- flash as an error. This option can be used to create factory settings but cannot be used to change them once cre‐ ated. Subsequent use creates and updates operational settings that can be erased using a factory reset. This option is executed after all others on the command line, except for the -R option. -g Read multicast group information discovered while IGMP snooping using VS_MULTICAST_INFO. -i interface Select the host Ethernet interface. All requests are sent via this host interface and only reponses received via this host interface are recognized. The default interface is eth1 because most people use eth0 as their principle network connection; however, if environment string "PLC" is defined then it takes precedence over the default interface. This option then takes precedence over either default. -I Read the device PIB header using VS_RD_MOD and print the firmware major revision number, PIB minor revision num‐ ber, Device Access Key (DAK), Network Membership Key (NMK), MAC address and other information on stdout. The val‐ ues displayed can be changed using program modpib. -J xx:xx:xx:xx:xx:xx Set the Network Membership Key (NMK) on a remote device using VS_SET_KEY. This option is similar to option -K but requires the remote device MAC and DAK in addition to the NMK and local device MAC address. The NMK value is defined using option -K unless you want to use the default value. The remote DAK is defined using option -D unless you want to use the default value. Programming remote device keys is complicated. It is often easier to connect the device directly to the host and use the -K option. -K xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx Define the Network Membership Key (NMK) value used by options -M or -J. The symbolic names "key1" and "key2" are recognized as described in the KEY section. -l count Define the number of times that the command will be repeated for each device specified. Normally, you will repeat operations on one device only. -m Read network membership information using VS_NW_INFO. This can be used to determine network configuration. -M Set the Network Membership Key (NMK) on the local device using VS_SET_KEY. The NMK value is specified using the -K option unless you want to use the default value. -n filename Read firmware from the device SDRAM and write it to the named .nvm file using multiple VS_RD_MOD messages. No assumptions are made based on filename and no filename conventions are enforced. This option is performed before option -N when both are specified. -N filename Read the named .nvm file and write it to the device using multiple VS_WR_MOD messages. No assumptions are made based on filename and no filename conventions are enforced; however, files having invalid .nvm format will be rejected. This option is executed after -n when both are specified. -p filename Read parameters from the device SDRAM and write them to the named .pib file using multiple VS_RD_MOD messages. No assumptions are made based on filename and no filename convetions are enforced. This option is executed before option BP when both are specified. -P filename Read the named .pib file and write it to the device using multiple VS_WR_MOD messages. No assumptions are made based on filename and no filename conventions are enforced; however, files having invalid .pib format will be rejected. This option is executed after -p when both are specified. -q Suppresses status messages on stderr. -Q Quick flash. The program will not wait for a device to reset or the firmware to restart after writing flash mem‐ ory. This option is desirable with newer firmware that writes flash memory in the background. It has no effect unless used with option -F or -C. -r Read device firmware and hardware revision using VS_SW_VER. Output is similar to option -a but is derived differ‐ ently. -R Reset the device using VS_RS_DEV. This option is executed after all others on the same command line. -s Read device SDRAM configuration using VS_RD_CBLOCK. -t milliseconds Read timeout in milliseconds. Values range from 0 through UINT_MAX. This is the maximum time allowed for a response. The default is shown in brackets on the program menu. -T Restore factory defaults. This permanently erases all PIB changes made since the device was last programmed with factory default settings. The device will automatically reset and reboot. -v Print additional information on stdout. In particular, this option dumps incoming and outgoing packets which can be saved as text files for reference. -w seconds Defines the number of seconds to wait before repeating command line options. This option has no effect unless option -l is also specified with a non-zero value. -x Cause the program to exit on the first error instead of continuing with remaining iterations, operations or devices. Normally, the program reports errors and moves on to the next operation, iteration or device depending on the command line. -?,--help Print program help summary on stdout. This option takes precedence over other options on the command line. -?,--version Print program version information on stdout. This option takes precedence over other options on the command line. Use this option when sending screen dumps to Atheros Technical Support so that they know exactly which version of the Linux Toolkit you are using. ARGUMENTS device The Ethernet hardware address of some powerline device. More than one address may be specified on the command line. If more than one address is specified then operations are performed on each device in turn. The default address is local. as explained in the DEVICES section. KEYS Passwords are variable length character strings that end-users can remember. Keys are fixed length binary values created by encrypting passwords. There are two encryption algorithms for HomePlugAV. One for DAKs and the other for NMKs. This means that a given password will produce different keys depending on use. This program only deals with keys because that is what powerline devices recognize. The passwords that generated the keys are irrelevant here. Encryption keys are tedious to type and prone to error. For convenience, symbolic names have been assigned to common encryption keys and are recognized by options -D and -K. key1 Key for encrypted password "HomePlugAV". This is "689F074B8B0275A2710B0B5779AD1630" for option -D and "50D3E4933F855B7040784DF815AA8DB7" for option -K. key2 Key for encrypted password "HomePlugAV0123". This is "F084B4E8F6069FF1300C9BDB812367FF" for option -D and "B59319D7E8157BA001B018669CCEE30D" for option -K. none Always "00000000000000000000000000000000". DEVICES Powerline devices use Ethernet hardware, or Media Access Control (MAC), addresses. Device addresses are 12 hexadecimal digits<PHONE_NUMBER>ABCDEFabcdef) in upper, lower or mixed case. Individual octets may be separated by colons, for clar‐ ity, but not all octets need to be seperated. For example, "00b052000001", "00:b0:52:00:00:01" and "00b052:000001" are valid and equivalent. These symbolic addresses are recognized by this program and may be used instead of the actual address value. all Equivalent to "broadcast", described next. broadcast A synonym for the standard Ethernet broadcast address, FF:FF:FF:FF:FF:FF. All devices, whether local, remote or foreign will respond to this address. local A synonym for the Qualcomm Atheros vendor specific Local Management Address (LMA), 00:B0:52:00:00:01. All local Atheros devices will recognize this address but remote and foreign devices will not. A remote device is any device at the far end of a powerline connection. A foreign device is any device not manufactured by Atheros. REFERENCES See the Qualcomm Atheros HomePlug AV Firmware Technical Reference Manual for more information. DISCLAIMER Atheros HomePlug AV Vendor Specific Management Message structure and content is proprietary to Qualcomm Atheros, Ocala FL USA. Consequently, public information may not be available. Qualcomm Atheros reserves the right to modify message structure or content in future firmware releases without any obligation to notify or compensate users of this program. EXAMPLES # amptool -n old.nvm -p old.pib -N new.nvm -P new.pib -F 01:23:45:67:89:AB Performs 5 operations on one device. Uploads the firmware and PIB from the device and writes them to files old.nvm and old.pib, respectively. Reads files new.nvm and new.pib and downloads them as new firmware and PIB, respectively. Com‐ mits the downloaded firmware and PIB to NVRAM. Operations are executed in the order just described regardless of the order specified on the command line. If you want reading and writing to occur in a different order then you must use two or more commands to accomplish tasks in the order you want. # amptool -N new.nvm 01:23:45:67:89:28 # amptool -P new.pib 01:23:45:67:89:28 # amptool -C 3 01:23:45:67:89:28 It is not neccessary to specify all operations on one command line. The three command lines above do essentially the same thing as the command line shown in the previou example. Notice that this example uses -C 3, instead of -F, as an alternate way to write MAC and PIB to NVRAM. Specifying -C 1, instead, would write the .nvm file only. Specifying, -C 2, instead, would write the .pib file only. THe value 3 is the logical OR of 1 and 2. # amptool -N new.nvm -P new.pib -FF local Downloads file new.nvm and file new.pib and force flashes the local device. Force flashing only works on running firmware that has been downloaded and stated by the Qualcomm Atheros Boot Loader. See amptoolf to download, start firmware and perform a force flash in one operation. # amptool -MK key1 # amptool -M These two commands are equivalent. They set the NMK on the local device to key1 as descripted in the KEYS section. The first command resets the NMK on the local device with -M then specifies the NMK as key1. The second command omits the key specification since key1 is the program default NMK. One could, of course, type the encryption key. SEE ALSO plc(1), ampboot(1), ampboot(1), amphost(1), int6kid(1), amprate(1), amprule(1), ampstat(1), ampwait(1) CREDITS Charles Maier<EMAIL_ADDRESS>Nathan Houghton<EMAIL_ADDRESS>plc-utils-2.1.5 April 2013 amptool(1)


class Exception extends Error
Copyright © 2013 Ambrus Csaszar
We create a base class for OO-style exceptions, the avoids all the
cross-platform inconsistencies and works with instanceof
checks.
class Exception extends Error
The constructor is necessary to make inheritance work properly.
constructor: (msg) ->
@name = @constructor.name
@message = msg
@stack = (new Error).stack
if InstallTrigger? # Firefox
@ChopStack 1 # Chop off the first line
else if chrome? or process? # V8/node
@ChopStack 2 # Chop off the first two lines
else
@stack = err.stack
Sometimes we need to chop lines off the top of the stack to get it to be correct
ChopStack: (lines) ->
if @stack?
Chop extraneous lines from the stack trace
i = 0
for n in [0...lines]
i = @stack.indexOf("\n", i) + 1
if i > 0
@stack = @stack.substring i
Failed assumptions throw Assume.Exception
class AssumptionException extends Exception
We provide a static class to encapsulate such checks.
class Assume
The utility constructor calls the basic check
constructor: (val, msg) -> Assume._check val, msg
Assume a value exists.
@Exists: (val, msg) -> Assume._check val?, "Expected a value - got '#{val}'"
Assume two values are equal.
@Equal: (a, b, msg) -> Assume._check a == b, "Expected '#{a}' == '#{b}'"
The utility method checks does the meat of the assumption checking work
@_check: (val, msg) ->
if not val
if not msg
msg = "Expected a truthy value - got '#{val}'"
err = new AssumptionException msg
err.ChopStack 3
throw err
It's useful to know some basic things about numbers.
class Num
@IsInt: (n) ->
return Math.floor(n) == +n
@IsFloat: (n) ->
return not Num.IsInt n
@IsEven: (n) ->
Assume Num.IsInt(n), "Expected an Integer - got '#{n}'"
return n % 2 == 0
@IsOdd: (n) ->
return not Num.IsEven n
Failed Assertions throw TestException
class TestException extends Exception
constructor: ->
super
We strip off the helper function portions of the stack trace
stack_toks = @stack.split("\n")
if stack_toks[1].indexOf("TestSuite.Assert") > -1
stack_toks.splice(1, 1)
@stack = stack_toks.join("\n")
Test suites generate an array of results, one for each test.
class TestResult
constructor: (@name, @status, @error) ->
Write unit tests by extending TestSuite with methods prefixed with Test
...
class TestSuite
The most basic Assertion tests for truthiness of cond
.
Assert: (cond, msg) ->
if not cond
if not msg
msg = "Condition was '#{cond}'"
throw new TestException(msg)
We can also assert that a func
throws a particular class of Exception.
AssertThrows: (exceptionClass, func) ->
threw = false
try
func()
throw new TestException("Expected an exception")
catch e
if e instanceof exceptionClass
threw = true
if not threw
throw new TestException("Expected an exception")
By default, we log results to the console.
LogToConsole: (result) ->
nspace = 8 - result.status.length
msg = result.status
for i in [0...nspace]
msg += " "
msg += result.name
if result.error?
console.error msg
console.error result.error.stack
else
console.log msg
We provide a way to get the names of the test methods to facilitate creating in-browser unit tests.
GetTestMethods: () ->
methods = []
for k,v of this
if k.toLowerCase().lastIndexOf("test", 0) == 0
name =<EMAIL_ADDRESS>if v instanceof Function
methods.push { name: name, func: v.bind(this) }
else
console.warn "!!! #{name} is prefixed with 'test' but isn't a function. This is discouraged"
methods
We can run the methods provided by GetTestMethods
, and call a handler
with results.
RunTestMethods: (methods, onResult) ->
results = []
for m in methods
res = new TestResult m.name
try
m.func()
res.status = "ok"
catch e
if e instanceof TestException
res.status = "failed"
else
res.status = "error"
res.error = e
onResult? res
results
Execute the unit tests defined in this test suite, return the results,
and print the output to the console by default.
onResult
takes a TestResult
object
Run: (onResult = @LogToConsole) ->
methods = @GetTestMethods()
@RunTestMethods methods, onResult
module.exports = Caffeine = {
Assume, AssumptionException, Exception, Num, TestException, TestSuite
}


Blockchain, Fintech & Cryptography Club is affiliated with the ASU Blockchain Research Lab. Dragan Boscovic, BFC’s current advisor, is also founder and director of the Blockchain Research Lab. The club and the lab will share resources to further the purposes of both organizations.
Educate ASU students about the computer science, cryptography, and underpinning technology and implications of blockchain, and about cryptocurrency markets, trading techniques, and storage.
Devise, analyze and promote blockchain use in creative and diverse domains (like DeFi, healthcare, supply chain etc.) and advance the research and development of blockchain technologies.
Create a sustainable, lasting community of blockchain enthusiasts that share ideas, resources, and knowledge with members and nonmembers alike.
October 20th: Fireside Chat with Constellation Network
November 3rd: John Quarnstorm - Founder of Inveth | Blockchain Developer
OFFICER
OFFICER
OFFICER
OFFICER
OFFICER
OFFICER


NPR Website
The first website I've chosen is from NPR. Their website layout is very readably and easy on the eyes with a lot of negative space. The relevent content of this page is on the left hand side where the article starts in a visually appealing box. With these visual cues, it solves the problem of the viewer wandering off onto other content on other sites. However, if the right column content is too alluring, like different colors or unique content, focus will turn away from the article.
Metafilter Website
The next website is Metafilter. This website's main problem is to try to fit in the newest stories of today on their front page without making it look cluttered. The color choice of the text, background, and choice of text spacing is important here, and the site makes use of a lot of negative space to compensate for all of this text you look at here. The biggest problem is paragraph width that seems to take the entire browser, so you'll have to scan through the one end of the window to the other without breaks, which could be bad if there's an entire paragraph of text in the post.
Kickstarter Website
The last website is Metafilter. Their website is very minimlistic because there's a lot less content I'm looking at. There's the navigation bar at top that is seemless with the promotional content below it. The problem this website addresses is the use of space and what the viewer will look at when they first land on this page.
© 2014 Craft By Zen Company. All Rights Reserved.


{% extends "bootstrap/base.html" %} {% block title %} [ Nomodo ] {% endblock %} {% block head %} {{ super() }} {% endblock %} {% block body %}
Error: {{error}} Would you like to start mongo service right now?
Error: {{error}}
Would you like to start mongo service right now?


{% extends 'base.html' %} {% block content %} Error 404 What you were looking for is just not there. Return to home {% endblock content%}
What you were looking for is just not there.


Home
News
Contact
About
Apply
Report
Apply Here
First Name
Last Name
Desired Occupation
Your Email
Country
Australia
Canada
UK
USA
Other


Book on children of the Troubles wins literary award
A BOOK examining the deaths of children during the Troubles has won a prestigious literary award.
Children of the Troubles, written by broadcaster Joe Duffy and journalist Freya McClements, received the Best Irish-published Book of the Year prize at the Irish Book Awards.
The authors dedicated their award to the 186 children killed during north's conflict.
Children of the Troubles: The Untold Story of the Children Killed in the Northern Ireland Conflict is based on original interviews with almost 100 families and extensive archival research.
The book includes children who were not previously publicly acknowledged as Troubles victims.
More than 115,000 votes were cast by the public to select the winners in each category at the awards show, which was hosted by Miriam O'Callaghan and Evelyn O'Rourke.
The awards ceremony was held last Wednesday night in Dublin's Convention Centre and highlights were aired on RTÉ One at the weekend.
Posting a picture of their award on Twitter, Ms McClements said: "Honoured and delighted that Children of the Troubles has been recognised as Best Irish-published Book of the Year at the Irish Book Awards."
She said it was dedicated to memory of the children in the book and expressed her "heartfelt thanks to their families".
Subscribe to our most read headlines in the evening newsletter


Along with code collaboration, I urge you to speak up in the comments and seek help from others. No snarky attitudes please if you know more about something than someone else. This is a place of learning and we were all there once. Click the "Projects" tab and let's get rockin'!


Auto Slider Example Page
Auto [Default] (Interval 3.5s, Fade 0.5s)
Thank you, your website is great.
John
Well done, i like your projects.
Mikhael
i gave them 5 out of 5.
Saif
Hello, thank you for your work for me.
Andro
1/1
Not Auto [Default] (Fade 0.5s)
Thank you, your website is great.
John
Well done, i like your projects.
Mikhael
i gave them 5 out of 5.
Saif
Hello, thank you for your work for me.
Andro
1/1
Auto [Customized] (Interval 1s, Fade 0.35s)
Thank you, your website is great.
John
Well done, i like your projects.
Mikhael
i gave them 5 out of 5.
Saif
Hello, thank you for your work for me.
Andro
1/1
Not Auto [Customized] (Fade 0.1s)
Thank you, your website is great.
John
Well done, i like your projects.
Mikhael
i gave them 5 out of 5.
Saif
Hello, thank you for your work for me.
Andro
1/1


nexusHub Demo Controller
Add UI Here |
UI Elements
Visit http://nexus.emdm.io on your mobile device to participate.
...


Skills and
Competencies
o Exhibited Open Science community leadership and management
skills in various capacities. Developed and implemented strategies at an
organisational and global scale for Open Science development, project
sustainability and community building. (1) I lead The Turing Way, a
community-led guide to data science at The Alan Turing Institute. (2) I am a
co-founder and co-director of Open Life Science training and mentoring
programme (non-profit organisation). In both projects, I take strategic roles
in scoping, development, management, and decision-making. These programmes have
together engaged over 600 international researchers to collaborate, develop resources,
and integrate open practices in their projects in countries across the Global
South and North.
o Conducted interdisciplinary bioinformatics research as a master’s
and PhD researcher in Germany with published open access resources. A
background in computational biology with experience developing and maintaining Open
Source Python Projects. I also wrote
project reports, technical documentation, scientific papers, learning
resources, community guides and blog posts, most of which are published
under open licenses.
o Contributed to the EU level efforts to develop and implement
computational skills and capacity building through high-profile collaborations,
1:1 consulting and technical support at European Molecular Biology Laboratory
(intergovernmental organisation) and ELIXIR Germany (Europe's leading life
science organisations for infrastructure and capacity building). I delivered
training and outreach programs, and co-authored Open Source Software
recommendations for the ELIXIR training platform (2016-2020).
o Recognised as an expert in community building and open research with several community awards and recognitions. Participated in Open Access and Open Source policy development at
organisation levels through team lead for the Open Research Community Building
team at The Alan Turing Institute, The Carpentries Code of Conduct
Committee chair (2018-), Open Bioinformatics Foundation board member
(2019-), Code of Science and Society event fund committee member
(2020-), Society of Research Software Engineering trustee (2022-), MetaDocencia
Advisory committee (2021-) and EMBL Staff Association (2017-2019).
o Established collaborations with
multiple stakeholders at The Alan Turing Institute. I work closely with the
members of the Academic Engagement, National Skills and Strategy team
and Research Engineering Group in training and capacity building
projects, two of which are funded under the EPSRC’s £10m awards. I am leading
the development of Introduction to Data Science for Biomedical Scientists,
a Turing-Crick Partnership Project funded under the AI for Science and Government programme. I am a member of
Facilitating responsible participation in the data science Interest
Group.
o Designed proposals and received funding to support research, training, and project development at The
Alan Turing Institute (>£130,000, in 2020 and 2021), at European Molecular
Biology Laboratory - EMBL (£126,000, in 2018 and 2019) and in the Open Life
Science project awarded to the team (£577,000, in 2020 and 2021 from Wellcome
Trust and Chan Zuckerberg Initiative).
o Actively promoted and trained researchers in Open Source, Open Access, Open Data, FAIR principles, and
participatory research. I delivered six keynotes and plenary/invited talks at
international conferences at >40 events. I organised and taught in more than
40 training courses/workshops on a wide range of topics that help scientists
develop their skills to make their research open, reproducible, and digitally
accessible.
Professional
Experience
July-2021 – Present
Senior Researcher - Open Research, Tools, Practices and Systems and the AI for Science and Government programme (EPSRC funded),
The Alan Turing Institute, London, UK.
I lead The
Turing Way, a community-led open
science project on data science. I strategically lead its diverse community of
>325 contributors who collaborate to share research practices, guidance and
recommendations as chapters across five guides of The Turing Way handbook.
I lead a team of community managers under the theme Open Research Community Building that aims to establish cross-community collaborations and
promote open research in data science across different research programmes.
September-2019 – Present
Co-founder, Board of Directors - Open
Life Science, a non-profit organisation that offers open science training and
mentoring programme, UK.
This program offers an international platform for researchers to
learn and apply open science principles in their work to create, lead and
sustain relevant projects in their communities.
September-2019 – July 2021
Community Manager, The Turing Way and Postdoctoral Research Associate, Tools, Practices and Systems,
The Alan Turing Institute, London, UK.
July-2016 – January-2020
Community and Outreach Coordinator - European Molecular Biology
Laboratory (EMBL), Bio-IT Project,
Heidelberg, Germany.
Bio-IT open source project supports and fosters a community of
researchers from six EMBL sites. My role was to lead organisation-wide
initiatives to facilitate knowledge exchange, skill-building and networking
around bioinformatics and open practices.
Deputy Training Coordinator - German Network
for Bioinformatics Infrastructure (de.NBI) | ELIXIR-Germany. I represented EMBL at the national level in
de.NBI/ELIXIR-Germany. As a deputy training coordinator, I contributed to the
development of ELIXIR’s training platform (ELIXIR coordinates
bioinformatics infrastructure for researchers Europe-wide).
Educational
Background
May-2012 – June-2016
Ph.D. in Computational Biology, Institute of Molecular Infection Biology, Graduate School of
Life Science, University of Würzburg, Würzburg, Germany.
Thesis title:
Bio-computational identification and characterisation of RNA-binding proteins
in bacteria. Published 10 articles and an Open Source Python Package: https://github.com/malvikasharan/APRICOT.
October-2009 – February-2012
M.Sc. in Life Science Informatics, Bonn-Aachen International Center for Information Technology
(B-IT), University of Bonn, Bonn, Germany.
Research carried out at the Max Planck Institute for Biology
of Aging (MPI-BA), Cologne.
July-2005 – June-2008
B.Sc. in Biotechnology, People’s
Education Society Institute of Applied Science, Bangalore University,
Bangalore, India.
Selected
Grants & Recognitions
o
Internal funding calls at The Alan Turing
institute from EPSRC’s additional award for ‘Turing
2.0’, three successful proposals for AI for Science and Government funding and the
Turing Online Training grant (total funding £128,000).
o
The Wellcome Trust Open Research fund (£99,999) and Chan
Zuckerberg Initiative grant ($575,000) were awarded to Open Life Science
to carry out community research, develop open source software training
modules and strategic planning for project sustainability (2022-2023).
o
Three short-term grants awarded to the Open Life Science team: Turing
Online Training Grant, Code for Science and Society 2021 and The
EOSC-Life Training Grant 2020 (total funding £37,000)
o
Community Champions Award - 2022 by JISC (Joint Information Systems Committee, UK)
o
The Turing Way was shortlisted for awards by OpenUK and Open
Publishing, and was highly commended by HiddenRef (2021)
o
CogX 2020 Recognising Leadership - Award Co-Winner. Tech Community Leaders Award.
o
Software Sustainability Institute Fellow (2019-) to lead open source efforts for exploring and
developing training strategies effective for the low-income research
environment.
o
Mozilla Open Leaders 7 and Open Leaders X (2019) training on open source movement-building and mentorship
on project development, web literacy and digital inclusion.
o
Open Bioinformatics Foundation Fellowship (2019) to lead discussions and events around policy and
practices to enhance diversity in the Open Source and bioinformatics communities.
o
The Carpentries Community Service Award (2018) for setting
standards for CarpentryCon and community conferences as a chair of the
committee and leading training courses internationally.
o
4 EMBO grants to organise international conferences on protein bioinformatics
and systems biology in Austria (2018) and India (2019), and practical courses
in Italy (2018) and India (2019).
o
Grants by Fáilte Ireland & University College Dublin for
computational events in Ireland (2018)
o
Recipient of Scientific Python (SciPy) Computing Diversity
scholarships (2017 and 2018). Chair of SciPy mini symposium on
biosciences/bioinformatics (2017-2021).
o
Recipient of the best scientific talk award for the PhD
research at ‘Critical Assessment of Functional Annotation’ Special Interest
Group at ISMB-ECCB 2015 in Dublin.
Community
Involvements
o
Society of Research Software Engineering Trustee (2022)
o
MetaDocencia Advisory Committee Member (2021-)
o
Code for Science & Society Event Fund Committee member (2020-)
o
Google Season of Docs project host and lead mentor (2020-)
o
Open Bioinformatics Foundation (OBF) Board Member and chair of Event Fellowship (2019-)
o
The Carpentries instructor trainer, mentor, content curator & Code of
Conduct Committee (2015-)
o
EMBL Open Science and Open Access event series Chair (2017-2019)
o
Organised and facilitated more than 35 coding and
data-handling workshops teaching Python, command line, version control,
GitHub project design and literate programming (2016-2020).
o
Organiser and instructor at Computing Skills for Reproducible
Research training series (2016-2020)
o
Instructor for a module on using APIs in Python at the
Postgraduate Certificate course in Biocuration by the University of Cambridge and EMBL-EBI,
Hinxton, UK (2019).
o
Trainer at ‘train-the-trainer’ workshops in Argentina,
Germany, Greece, India, South Africa, Sweden, United Kingdom and online for
teaching computation skills (2018-2020).
o
Organiser of public events Technical Sessions with Bio-IT
& de.NBier, Heidelberg (2017-2018)
o
Co-organiser of Heidelberg Unseminars in Bioinformatics
(2016-2019)
o
Co-founder of Würzburg Unseminars in Bioinformatics and
Systems Biology (2015)
o
Designed and taught programming course for beginners at Open
Source Software writing for researchers by FOSTER, Helmholtz Centre
Potsdam, Germany (2015).
o
Speaker of the Doctoral Researchers Council at The University of Würzburg, represented the interests of
ECRs at FOSTER-UNESCO Open Science for Doctoral Schools, France
(2015)
Invited and Selected Talks:
o
Keynote at the first Open Science Concordia conference in
Montreal 2022 “Open science for enabling reproducible, ethical and
collaborative research”.
o
Keynote at the Open Science fair 2021 “Can we reimagine
FAIR for Open Science communities”
o
Plenary talk at inaugural Society for Open, Reliable, and
Transparent Ecology and Evolutionary Biology conference “The Turing Way
Guide to Reproducible, Ethical and Collaborative Research” (2021)
o
Invited talk at FOSS-Backstage “Building a culture of
collaboration in open science communities” (2021)
o
Panellist at Declaration of Research Assessment (DORA) event
“Assessing Contributions to Research reproducibility and Open Science”
(EuroScience Open Forum 2020 and DORA webinar 2021)
o
Guest Lecture and Demo at MIT Experiential Ethics Virtual
Field Trip “The Turing Way Guide to Ethical Research” (2020)
o
Keynotes lecture at 'Open Science in Practice' at Eurotech
Summer School, Switzerland (2019).
o
Keynote ‘Inclusiveness in Open Science’ at OpenCon, Bern,
Switzerland (2018)
Chair/co-organiser of international conferences:
o
Bioinformatics Open Source Conference hosted by Open Bioinformatics Foundation (online - 2021)
o
The impact of the COVID-19 crisis on women
in science at EMBL (online - 2020)
o
4 EMBO conferences and training events in Europe and Asia (2018 & 2019)
o
3 The Carpentries conferences (Dublin - 2018, Manchester - 2019, and online - 2020)
Selected
Research Articles
A
complete list of 20+ publications can be found here: https://tinyurl.com/MalvikaSharanPublications
o
Treasure, A. M., Hall, S. M., Lesko, I., Moore, D., Sharan,
M., van Zaanen, M., Yehudi, Y., van der Walt, A. (2022). Ten simple rules
for establishing a mentorship programme. PLOS Computational Biology,
18(5), e1010015. https://doi.org/10.1371/journal.pcbi.1010015
o
Yehudi, Y., Whitney, K. S., & Sharan, M. (2020).
Enhancing the inclusivity and accessibility of your online calls. OSF
Preprints. https://doi.org/10.31219/osf.io/k3bfn
o
Wibberg, D., et. al. (multi-author paper) (2019). The
de.NBI/ELIXIR-DE training platform - Bioinformatics training in Germany and
across Europe within ELIXIR. F1000Research, 8. https://doi.org/10.12688/f1000research.20244.2
o
Sharan, M.,
Förstner, K. U., Eulalio, A., & Vogel, J. (2017). APRICOT: an integrated
computational pipeline for the sequence-based identification and
characterization of RNA-binding proteins. Nucleic Acids Res., 45(11),
e96–e96. https://doi.org/10.1093/nar/gkx137
o
Tawk, C., Sharan, M., Eulalio, A., & Vogel, J.
(2017). A systematic analysis of the RNA-targeting potential of secreted
bacterial effector proteins - Scientific Reports, 7(9328), 1–14. https://doi.org/10.1038/s41598-017-09527-0
o
Chowdhury, S. R., Reimer, A., Sharan, M., Kozjak-Pavlovic,
V., Eulalio, A., Prusty, B. K., ...Rudel, T. (2017). Chlamydia preserves the
mitochondrial network necessary for replication via microRNA-dependent
inhibition of fission. J. Cell Biology., 216(4), 1071–1089. https://doi.org/10.1083/jcb.201608063
o
Michaux, C., Holmqvist, E., Vasicek, E., Sharan, M.,
Barquist, L., Westermann, A. J., ...Vogel, J. (2017). RNA target profiles
direct the discovery of virulence functions for the cold-shock proteins CspC
and CspE. PNAS, 114(26), 6824–6829. https://doi.org/10.1073/pnas.1620772114
o
García-Betancur, J.-C., Goñi-Moreno, A., Horger, T., Schott, M.,
Sharan, ...Lopez, D. (2017). Cell differentiation defines acute and chronic
infection cell types in Staphylococcus aureus. eLife. https://doi.org/10.7554/eLife.28023
o
Maudet, C., Mano, M., Sunkavalli, U., Sharan, M., Giacca,
M., Förstner, K. U., & Eulalio, A. (2014). Functional high-throughput
screening identifies the miR-15 microRNA family as cellular restriction factors
for Salmonella infection - Nature Communications. 5(4718), 1–13. https://doi.org/10.1038/ncomms5718


Black Panther - 5th Best Opening of All-Time
An example goes here.
Black Panther generated the fifth largest opening weekend of all-time (Friday-to-Sunday) behind Star Wars: The Force Awakens ($248M), Star Wars: The Last Jedi ($220M), Jurassic World ($208.8M), and The Avengers ($207.4M). Source
Javascript library used to build this chart: flotr2


Let's Make Some Noise
You may find that you want to add some sound to a website. Why? Various reasons. In my case, I needed it for a game.
First, add an id to the button in the html.
Next create some javascript:
And that's all you need to do. Click the button and listen to the sound. Bark! Bark!


Japan
1) Hotel Palace Japan
About this hotel
A 6-minute walk from Minami-Senju metro station, this simple budget downtown
hotel is 2 km from both Senso-ji temple and the Tokyo National Museum.
Compact dorms have bunk beds, TVs, minifridges and Wi-Fi, as well as desks and shared
bathrooms. Private rooms are available, and a female-only floor is offered.
Amenities include kitchenettes on each floor, plus a main kitchen and a pared-back
dining area. There's also a TV lounge, in addition to guest computers, coin-operated
laundry facilities, and complimentary hot drinks in the lobby.
Check-in time: 3:00 PM
Check-out time: 10:00 AM
Address & contact information
Location: 2 Chome-31-6 Kiyokawa, Taito City, Tokyo 111-0022, Japan
Phon No.: +81 3-6458-1540


Fruit Market
Total Cash: $
100
Apple
Buy
Sell
5
Orange
Buy
Sell
5
Banana
Buy
Sell
5
Grapes
Buy
Sell
5
Your Apples
0
0
0
Your Oranges
0
0
0
Your Bananas
0
0
0
Your Grapes
0
0
0


Psychologist and Mediator
Bernstein, Anne C. (2007) Re-visioning, Restructuring, and Reconciliation: Clinical Practice With Complex Postdivorce Families. Family Process 46(1), 67-78.
Bernstein, Anne C. (2000) Remarriage: Redesigning couplehood. In Papp, P. (Ed.) Couples on the Fault Line. Guilford Press, pp. 306-333.
Bernstein, Anne C. (2000) Straight therapists working with lesbians and gays in family therapy. Special issue of the Journal of Marital and Family Therapy. 26(3), pp. 461-473.
Bernstein, Anne C. (2000) Reconstruyendo a los hermanos Grimm: Nuevas narraciones para la vida de las familias ensambladas. Sistemas Familiares. 16(1), 23-37.
Bernstein, Anne C. (1999) Reconstructing the Brothers Grimm: New Tales for Stepfamily Life. Family Process 38(4), 415-429.
Bernstein, Anne C. (1997) Stepfamilies from siblings' perspective. Marriage and Family Review, 26(1-2), 153-175. Simultaneously published as Stepfamilies: History, research, and policy. I. Levin & M. Sussman, (eds), Haworth Press.
Bernstein, Anne C. (1996) "Reconstruindo Os Irmaos Grimm: Novos contos para a vida em familias reconstituidas. Nova Perspectiva Sistemica, 4(8), (May), pp. 6-19.
Bernstein, Anne C. (1995) Making sense of new conceptions... in a family way." Family Therapy News, 26(1), (February), 9-11.
Bernstein, Anne C. (1994) Women in stepfamilies: the Fairy Godmother, the Wicked Witch, and Cinderella reconstructed." In Mirkin, Marcia Pravder (Ed.) Women in Context. New York: Guilford Press, 188-213.
Bernstein, Anne C. (1988) Unravelling the tangles: Children's understanding of stepfamily kinship. In William Beer (ed.), Relative Strangers: Studies of Stepfamily Processes. Totowa, NJ: Rowman and Littlefield.
Bernstein, Anne C. & Cowan, Philip A. (1981) Children's concepts of birth and sexuality. in Development of Concepts Related to Health, Roger Bibace & Mary Walsh (eds.) San Francisco: Jossey-Bass, 9-29.


THE OTHERS (2001) Reviewed by Jerry Saravia August 15th, 2001
I never thought anyone would care to make a haunted house movie with such delicacy, vigor and intelligence as "The Others," but here it is and it is a stunning classic in the tradition of ghost stories. Funny how two years ago we were bombarded with a remake of "The Haunting" that threw all imagination to the winds with its countless special-effects and histrionic performances, and now comes a film of brooding menace and oodles of atmosphere and tension. Yes, it can still be done with nary a CGI effect.
The exquisite strength of Nicole Kidman continues with her latest role as a near-hysterical, icy, religious woman named Grace. Set in 1945 after World War II, Grace lives with her two children in an isolated mansion located in a foggy English island known as Jersey (one of the Channel Islands). Grace needs servants to look after the house and places an ad. Presto! The next day, a triad of Irish servants arrive at her house and are given a tour of every door and every room. Grace is adamant about keep each and every door closed and locked at all times so as to not let the slighest amount of light enter the house. The reason is because her two children, Anne (Alakina Mann) and Nicholas (James Bentley), are allergic to the light to the point where it could kill them. The servants seem to have another agenda though and, as it turns out, they were formerly servants of the same house and know its deepest secrets that Grace can hardly prepare for. Yes, indeed, it is haunted, or is it! ?
"The Others" is in the fine tradition of excellent ghost stories such as the original "The Haunting" and the nervy "The Changeling," both dealing with haunted manors or mansions where pianos seem to play by themselves, floors seem to creak, attics are full of mysterious items, and so on. There is absolutely nothing in "The Others" that you have not seen before but rarely is it done with this much skill or panache. Spanish writer-director Alejandro Amenabar ("Open Your Eyes") understands that subtlety and imagination pay off in this kind of genre, and he does a superb job of creating an ominous atmospheric pull that builds the tension incredibly until the surprising ending.
Kidman helps to build the tension with her shrieking fits and her frequent hysterical episodes - her Grace is no ordinary heroine. She is fearful but always in control and it is a delicate balance brought on beautifully by Kidman, an actress who continues to surprise and engage me in each and every performance.  Just look at her mania episodes and contrast them with her vulnerable, sunnier side when her husband (Christopher Eccleston) returns from the war looking like a famished zombie. It is an amazing performance by Kidman that I hope is remembered at Oscar time.
Alakina Mann and James Bentley are both excellent as the mature kids who love to read but are also afraid of the dark - they can't seem to get used to it enough, particularly the frightened Nicholas. They are kids who seem more mature than their years, a rare find in this day and age of cute, cuddly tots with no personality who never seem to mature (Olsen twins, anyone?).
The enigmatic servants are also well-portrayed. Fionnula Flanagan is the dear old Mrs. Mills who caters to Grace's needs though she does question Grace's behavior to her own children (still, Mrs. Mills makes a helluva good cup of tea). Elaine Cassidy is the mute Lydia, showing more expressions of sadness than I have seen in some time (she was the fabulous lead in Atom Egoyan's "Felicia's Journey"). Eric Sykes is Mr. Tuttle, the loyal gardener.
"The Others" is not per se a scary film (though there are a couple of requisite shocks) but it is an eerie, often frightening psychological drama, showcasing Kidman to full effect as a tormented woman who will do anything to protect her kids from the evils of the sunlit world. As she slowly becomes emotionally unbalanced in her fears and anxieties, you also sense the house itself has taken its toll on her.
For more reviews, check out JERRY AT THE MOVIES at http://moviething.com/members/movies/faust/JATMindex.shtml
E-mail me with any questions, comments or general complaints at<EMAIL_ADDRESS>or at<EMAIL_ADDRESS>========== X-RAMR-ID: 29245 X-Language: en X-RT-ReviewID: 245348 X-RT-TitleID: 1109257 X-RT-SourceID: 875 X-RT-AuthorID: 1314
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


Exascale Computing Project (ECP) Software Technologies (ST) software, Extreme-Scale Scientific Software Stack (E4S) v1.0, includes a subset of ECP ST software products, and demonstrates the target approach for future delivery of the full ECP ST software stack. Also available are a number of ECP ST software products that support a Spack package, but are not yet fully interoperable. As the primary purpose of the v1.0 is demonstrating the ST software stack release approach, not all ECP ST software products were targeted for this release. Software products were targeted primarily based on existing Spack package maturity, location within the scientific software stack, and ECP SDK developer experience with the software. Each release will include additional software products, with the ultimate goal of including all ECP ST software products.
E4S Container Installation Instructions.
The current E4S container offerings include Docker images for Red Hat RHEL 7, Ubuntu 18.04 (Bionic), and CentOS 7 which can run on X86_64, PPC64LE, and AARCH64. Our minimal Spack images provide a ready-to-use clone of Spack, checked out at a particular version as dictated by the tag (i.e. 0.14.2 tag means Spack v0.14.2), along Spack-installed GCC 7.3.0. The minimal Spack images serve as a foundation for our fuller, more tailored images. In addition minimal Spack images, we offer a full E4S image containing a comprehensive selection of E4S software. The E4S images are available in RHEL 7, Ubuntu 18.04, and CentOS 7 variants.
Docker images are available on the E4S Docker Hub.
Recipes for building images from scratch are available on the E4S GitHub repository.
Our recipes make use of Spack packages available as pre-built binaries in the E4S Build Cache.
Spack contains packages for all of the products listed in the E4S 1.0 Full Release category (see above 1.0 Release Notes). General instructions for building software with Spack can be found at the Spack website. For more information, see /usr/local/packages/ecp in the container referenced here. Questions concerning building those packages are deferred to the associated package development team.
The E4S release is also available on AWS as AMI ami-0e02ff2df290c2b1b (for Supercontainers tutorial) in the US-West-2 (Oregon) region.
The container releases contains binary
versions of the Full Release packages listed above. A clone of Spack is
also available in the container which can be used to compile the Full
Release and Partial Release packages. Example Spack "recipes" (lists of
configuration commands) are available in the container. See the
README.txt file for more details. This release also includes an OVA file
that has Docker, Charliecloud, Shifter, and Singularity preinstalled in
it. The Docker container image is also available from Dockerhub:
# docker pull exascaleproject/e4s_x86_64:1.0
# unxz -c e4s_x86_64.xz | docker load
# docker run --rm -it exascaleproject/e4s_x86_64:1.0


Whatorder will not help you get to the restaurant, but tell you the best thing to order once you are there.
Find Out MoreWhatorder is a new app that will let you vote for your favourite dish and see how other people are voting. The idea is that once you get to the restuarant, pull up the app and order the best dish they have.
Register for updates?Get the front seat to the launch by registering to our mailing list
We will let you know when the app has launched
|
|
We will keep you up-to-date


Personal summary
i have worked in some computer shops while i was in high school i learnt how to hack at the 13 i also attended a hack contest in 2013 in lAGOS, NIGERIA and i came 3rd
Email<EMAIL_ADDRESS>Contact #: +639274872488, +23435250948.
Address: Marcos highway, Kitma no 72
i have worked in some computer shops while i was in high school i learnt how to hack at the 13 i also attended a hack contest in 2013 in lAGOS, NIGERIA and i came 3rd
i have some skills in hacking into home wifi and i know some basics in creatng a webpage
2013 hack contest 3rd runner up Lagos,nigeria.
my major interest is in cisco and to learn everything about hacking, configuration of ip addresess.
subnet masking
Miss Esther Amadi
P.o box
Hack school tutor
kemester.org


JBoss EAP 6.3 Beta - New Features
Domain Controller failover
Thomas Qvarnström
JBoss Technology Evangelist
Twitter: @tqvarnst
Blog:
blog.thomasqvarnstrom.com
What is a domain controller?
Domain Controller failover
DC Failover
If primary goes down
The backup can take over
*
*=The process to make the backup domain controller a primary is currently a manual task


Home
Timeline
FAQ
Quiz
Fill out our quiz.
Name
Check your Feelings:
Good
Bad
Okay
I Feel Right.
I Feel Wrong.
I Support Myself.
I am Good.
I am True.
Submit


xXx INCLUDES xXx
Loading...
Eat burritos die young
{{ngh[1]}}
Burrito Logo by Denis Sazhin from the Noun Project
© Copyright 2019-2020 Quinlan Pfiffer
Get the code here.


Cavitating bubbles can ablate cancer cells, fragment tissues, and deliver drugs, among other functions. I create high-fidelity computational methods to simulate these dynamics. Examples are:
These enable realistic simulation of the bubble populations that nucleate during treatment. This has impacted application-specific treatments, including:
Perspective on bubble utilization can come from a surprising source: animals. Humpback whales hunt using bubbly regions (called bubble nets) and loud vocalizations. Specifically, they
While fascinating, the acoustic mechanisms enabling this behavior are not understood. My ensemble-averaged bubbly flow model simulates the relevant acoustic phenomena, advancing our interpretation of this behavior. Similar outcomes are desirable for sensitive, implanted biomedical devices.
Designing medical therapies requires efficient optimization algorithms. Current methods fail to account for the material interfaces or shock waves that occur during treatments like lithotripsy and histotripsy. I created an adjoint-based technique for navigating these complications and computes the gradient-based information required for such optimization and sensitivity analysis. Coupling with PlasCom2 provides a full optimization framework for medical therapies and devices.
I create simulation methods for the cellular flows that occur in vivo and in biomicrofluidic devices. These tools are composed of physical models for the cells and particles and numerical methods to solve for their motion. These are implemented in RBC3D, my state-of-the-art flow solver that resolves all particle-scale interactions. Coupling RBC3D with stability and optimization tools I discovered:
Capsules can deliver drug payloads via the microcirculation and pulmonary system. The capsules dynamics are an important design condition in this application, which are particularly sensitive to the capsule membrane itself. I crafted kinematic stability analyses of this coupled dynamical system, including:


FAQ
This doesn't work at all on my iPhone!
Since iOS 15 seeding and leeching doesn't work properly, see bug report. A workaround is to turn off "WebRTC Platform UDP Sockets" in the Safari -> Advanced -> Experimental Features.
Why can't anyone connect to my seed?
If you're behind a company firewall or otherwise closed network, connection is not possible right now because of lacking TURN server.
It takes literally ages to connect, why?
Maybe your device is using a VPN or any other proxy.
My tab crashed. What happened?
Probaby you ran out of RAM, as FileLove keeps files directly in memory. Try another browser or split files into smaller pieces.
Is FileLove secure?
In BitTorrent, there is no additional encryption of transfers between users, but no content or metadata like file names or sizes ever touch our server. As every other peer-to-peer torrent service, your public IP is exposed to an open tracker. If you don't trust this entity, simply don't use FileLove. As always, don't share pirated stuff.
"All Files Are Beautiful"


Pick what you want to see - this will show up in the customized news feed and don't worry, you can always change this again later.


{% extends 'base.html' %} {% block content %}
Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only.
Enter the same password as above, for verification.


- Alan Cabelly5 years running marathons & ultramarathons
(20?) marathons, (10?) 50ks, 3 50 milers, 3/5 1 100 miler (aka 100K)
Trained with Scott Weber
Ragnar
Colorado
Leadville
What is Ultrarunning?
How to Run an Ultramarathon
An ultramarathon is any organized footrace extending beyond the standard marathon running distance of 42 kilometers, 195 meters (26 miles, 385 yards). Ultra races typically begin at 50 kilometers and can extend to enormous distances. There is no limit.
begrudgingly...
More Races Every Year
ultrarunning.com 2014Similar Growth for Marathons
The "Born to Run" Boom
Leadville 100 Trail Run Contestents
realendurance.comLearn how to not hit the wall
Be comfortable on your feet for hours
Plan meticulously
Love the climb*
Run a lot of them
You can go really slow
Walk + Run strategy
Just don't stop
Aerobic vs Anerobic Levels
Phil Maffetone
Watches / Monitors
Eat 300 Calories an Hour
Drink to Thirst vs Schedule
Eat whatever you want
Backpacks
Running Poles
High of 80, low of 20
Headlamps
Trail Running
Elevation
run100s.com
realendurance.com


<github-card>
A web component to show a profile-card for your Github account.
Show
Avatar:
Fullname:
Account:
Repos
Followers


Marketing Morph is a desktop application for marketers who want to organize consumer data. And it will allow marketers to use GUI and command lines to keep track of different consumers.
Major enhancement: added the ability to sort people and export data
How I did it: I rewrite the java interface: comparator to implement sorting person/company by any attribute. And I use stream operation to export data.
What it does: Allow marketers to find their potential clients more convenient, for they can sort clients by their salary and find which person is the best choice. Meanwhile, he/she can export the information of all clients for further analysis, like doing data analysis to find potential clients.
Justification: This feature improves the product significantly because a user can easily find a person by sorting them. If he/she wants to find a client with the highest salary, he just need to sort all the clients by reverse order.
Highlights: Sorting person by any parameters in any order and exporting data to any path.
Minor enhancement: Get the max/min salary of all the clients
Code contributed
SortPersonCommand.java
PersonComparator.java
SortPersonCommandComparator.java
SortCompanyComparator.java
CompanyComparator.java
SortCompanyCommandComparator.java
ExportCommand.java
FindmaxCommand.java
FindminCommand.java
Other contributions:
Project management:
Worked with teammates to diagnose and fix bugs
Documentation:
Write a rudiment of the User Guide with some basic commands
Add sort command
and export command
to User Guide
Community:
Asked several questions in the forum
|
Given below are sections I contributed to the User Guide. They showcase my ability to write documentation targeting end-users. |
Rudiment of the User Guide with some simple commands
|
Given below are sections I contributed to the Developer Guide. They showcase my ability to write technical documentation and the technical depth of my contributions to the project. |


|
|
Certain girls :
Weiner, Jennifer.
|
FIC WEINER, J. 12/08 |
10/27/2011 |
Renew (1 of 2 renewals remaining)
|
Yes |
|
|
Dragon dancing /
Schaefer, Carole Lexa.
|
+ PB SCH |
10/25/2011 |
Renew (2 of 2 renewals remaining)
|
No |
|
|
Arlene sardine /
Raschka, Christopher.
|
+ PB Ras |
10/25/2011 |
Renew (2 of 2 renewals remaining)
|
No |
|
|
All the things I love about you /
Pham, LeUyen.
|
+ PB PHA 02/11 |
10/25/2011 |
Renew (2 of 2 renewals remaining)
|
No |
|
|
Where the wild things are /
Sendak, Maurice.
|
+ PB SEN 11/08 |
10/25/2011 |
Renew (2 of 2 renewals remaining)
|
No |
|
|
Ollie's Halloween /
Dunrea, Olivier.
|
+ HOL-H DUN 11/10 |
10/25/2011 |
Renew (2 of 2 renewals remaining)
|
No |
|
|
Prom /
Anderson, Laurie Halse.
|
YA FIC Anderson L. |
10/25/2011 |
Renew (2 of 2 renewals remaining)
|
No |
|
|
Revolution /
Donnelly, Jennifer.
|
YA FIC DONNELLY J. 10/10 |
10/25/2011 |
Renew (2 of 2 renewals remaining)
|
No |
|
|
Bob the Builder.
|
+ DVD BOB |
10/04/2011 |
Renew (2 of 2 renewals remaining)
|
No |
|
|
Charlie and Lola (DVD)
|
+ DVD CHA |
10/04/2011 |
Renew (2 of 2 renewals remaining)
|
No |
|
|
Bear snores on (DVD)
|
+ DVD BEA 08/09 |
10/04/2011 |
Renew (2 of 2 renewals remaining)
|
No |
|
|
The Berenstain bears.
|
+ DVD BER |
10/04/2011 |
Renew (2 of 2 renewals remaining)
|
No |


Fullscreen Overlay Nav Example
Click on the element below to open the fullscreen overlay navigation menu.
In this example, the navigation menu will slide in, from left to right:
☰ openClick on the element below to open the fullscreen overlay navigation menu.
In this example, the navigation menu will slide in, from left to right:
☰ open


Risque finds its inspiration from the title screen of the 1962 Looney Toons cartoon called "Martian through Georgia". Originally an all Capitals reference, it has been created with a lowercase as lively as the irregular latin-esque Capitals. A frolicking fun typeface for retro and all-around offbeat occasions.
To contribute to the project contact Brian J. Bonislawsky.


class Mailer
Methods
| void |
__construct(Environment $views, Swift_Mailer $swift)
Create a new Mailer instance. |
|
| void |
alwaysFrom(string $address, string $name = null)
Set the global from address and name. |
|
| int |
plain(string $view, array $data, mixed $callback)
Send a new message when only a plain part. |
|
| int |
send(string|array $view, array $data, Closure|string $callback)
Send a new message using a view. |
|
| void |
queue(string|array $view, array $data, Closure|string $callback, string $queue = null)
Queue a new e-mail message for sending. |
|
| void |
queueOn(string $queue, string|array $view, array $data, Closure|string $callback)
Queue a new e-mail message for sending on the given queue. |
|
| void |
later(int $delay, string|array $view, array $data, Closure|string $callback, string $queue = null)
Queue a new e-mail message for sending after (n) seconds. |
|
| void |
laterOn(string $queue, int $delay, string|array $view, array $data, Closure|string $callback)
Queue a new e-mail message for sending after (n) seconds on the given queue. |
|
| void |
handleQueuedMessage(Job $job, array $data)
Handle a queued e-mail message job. |
|
| void |
pretend(bool $value = true)
Tell the mailer to not really send messages. |
|
| Environment |
getViewEnvironment()
Get the view environment instance. |
|
| Swift_Mailer |
getSwiftMailer()
Get the Swift Mailer instance. |
|
| array |
failures()
Get the array of failed recipients. |
|
| void |
setSwiftMailer(Swift_Mailer $swift)
Set the Swift Mailer instance. |
|
| Mailer |
setLogger(Writer $logger)
Set the log writer instance. |
|
| Mailer |
setQueue(QueueManager $queue)
Set the queue manager instance. |
|
| void |
setContainer(Container $container)
Set the IoC container instance. |
Details
at line 70
public void
__construct(Environment $views, Swift_Mailer $swift)
Create a new Mailer instance.
at line 83
public void
alwaysFrom(string $address, string $name = null)
Set the global from address and name.
at line 96
public int
plain(string $view, array $data, mixed $callback)
Send a new message when only a plain part.
at line 109
public int
send(string|array $view, array $data, Closure|string $callback)
Send a new message using a view.
at line 139
public void
queue(string|array $view, array $data, Closure|string $callback, string $queue = null)
Queue a new e-mail message for sending.
at line 155
public void
queueOn(string $queue, string|array $view, array $data, Closure|string $callback)
Queue a new e-mail message for sending on the given queue.
at line 170
public void
later(int $delay, string|array $view, array $data, Closure|string $callback, string $queue = null)
Queue a new e-mail message for sending after (n) seconds.
at line 187
public void
laterOn(string $queue, int $delay, string|array $view, array $data, Closure|string $callback)
Queue a new e-mail message for sending after (n) seconds on the given queue.
at line 212
public void
handleQueuedMessage(Job $job, array $data)
Handle a queued e-mail message job.
at line 384
public void
pretend(bool $value = true)
Tell the mailer to not really send messages.
at line 394
public Environment
getViewEnvironment()
Get the view environment instance.
at line 404
public Swift_Mailer
getSwiftMailer()
Get the Swift Mailer instance.
at line 414
public array
failures()
Get the array of failed recipients.
at line 425
public void
setSwiftMailer(Swift_Mailer $swift)
Set the Swift Mailer instance.
at line 436
public Mailer
setLogger(Writer $logger)
Set the log writer instance.
at line 449
public Mailer
setQueue(QueueManager $queue)
Set the queue manager instance.
at line 462
public void
setContainer(Container $container)
Set the IoC container instance.


Perf Report:
Test (Frame #27)
Worker Thread 0
expand all
|
collapse all
View as:
tree
|
flat
Worker Thread 1
expand all
|
collapse all
View as:
tree
|
flat
Worker Thread 2
expand all
|
collapse all
View as:
tree
|
flat
CUMULATIVE
expand all
|
collapse all
View as:
tree
|
flat


XXD(1) XXD(1) NAME xxd - make a hexdump or do the reverse. SYNOPSIS xxd -h[elp] xxd [options] [infile [outfile]] xxd -r[evert] [options] [infile [outfile]] DESCRIPTION xxd creates a hex dump of a given file or standard input. It can also convert a hex dump back to its original binary form. Like uuencode(1) and uudecode(1) it allows the transmission of binary data in a `mail- safe' ASCII representation, but has the advantage of decoding to standard output. Moreover, it can be used to perform binary file patching. OPTIONS If no infile is given, standard input is read. If infile is specified as a `-' character, then input is taken from standard input. If no outfile is given (or a `-' character is in its place), results are sent to stan‐ dard output. Note that a "lazy" parser is used which does not check for more than the first option letter, unless the option is followed by a parameter. Spa‐ ces between a single option letter and its parameter are optional. Parameters to options can be specified in decimal, hexadecimal or octal notation. Thus -c8, -c 8, -c 010 and -cols 8 are all equivalent. -a | -autoskip toggle autoskip: A single '*' replaces nul-lines. Default off. -b | -bits Switch to bits (binary digits) dump, rather than hexdump. This option writes octets as eight digits "1"s and "0"s instead of a normal hexadecimal dump. Each line is preceded by a line number in hexadecimal and followed by an ascii (or ebcdic) representation. The command line switches -r, -p, -i do not work with this mode. -c cols | -cols cols format <cols> octets per line. Default 16 (-i: 12, -ps: 30, -b: 6). Max 256. -E | -EBCDIC Change the character encoding in the righthand column from ASCII to EBCDIC. This does not change the hexadecimal representation. The option is meaningless in combinations with -r, -p or -i. -g bytes | -groupsize bytes separate the output of every <bytes> bytes (two hex characters or eight bit-digits each) by a whitespace. Specify -g 0 to suppress grouping. <Bytes> defaults to 2 in normal mode and 1 in bits mode. Grouping does not apply to postscript or include style. -h | -help print a summary of available commands and exit. No hex dumping is performed. -i | -include output in C include file style. A complete static array definition is written (named after the input file), unless xxd reads from stdin. -l len | -len len stop after writing <len> octets. -p | -ps | -postscript | -plain output in postscript continuous hexdump style. Also known as plain hexdump style. -r | -revert reverse operation: convert (or patch) hexdump into binary. If not writing to stdout, xxd writes into its output file without trun‐ cating it. Use the combination -r -p to read plain hexadecimal dumps without line number information and without a particular column layout. Additional Whitespace and line-breaks are allowed anywhere. -seek offset When used after -r: revert with <offset> added to file positions found in hexdump. -s [+][-]seek start at <seek> bytes abs. (or rel.) infile offset. + indicates that the seek is relative to the current stdin file position (meaningless when not reading from stdin). - indicates that the seek should be that many characters from the end of the input (or if combined with +: before the current stdin file position). Without -s option, xxd starts at the current file position. -u use upper case hex letters. Default is lower case. -v | -version show version string. CAVEATS xxd -r has some builtin magic while evaluating line number information. If the output file is seekable, then the linenumbers at the start of each hexdump line may be out of order, lines may be missing, or overlapping. In these cases xxd will lseek(2) to the next position. If the output file is not seekable, only gaps are allowed, which will be filled by null- bytes. xxd -r never generates parse errors. Garbage is silently skipped. When editing hexdumps, please note that xxd -r skips everything on the input line after reading enough columns of hexadecimal data (see option -c). This also means, that changes to the printable ascii (or ebcdic) columns are always ignored. Reverting a plain (or postscript) style hex‐ dump with xxd -r -p does not depend on the correct number of columns. Here anything that looks like a pair of hex-digits is interpreted. Note the difference between % xxd -i file and % xxd -i < file xxd -s +seek may be different from xxd -s seek, as lseek(2) is used to "rewind" input. A '+' makes a difference if the input source is stdin, and if stdin's file position is not at the start of the file by the time xxd is started and given its input. The following examples may help to clarify (or further confuse!)... Rewind stdin before reading; needed because the `cat' has already read to the end of stdin. % sh -c "cat > plain_copy; xxd -s 0 > hex_copy" < file Hexdump from file position 0x480 (=1024+128) onwards. The `+' sign means "relative to the current position", thus the `128' adds to the 1k where dd left off. % sh -c "dd of=plain_snippet bs=1k count=1; xxd -s +128 > hex_snippet" < file Hexdump from file position 0x100 ( = 1024-768) on. % sh -c "dd of=plain_snippet bs=1k count=1; xxd -s +-768 > hex_snippet" < file However, this is a rare situation and the use of `+' is rarely needed. The author prefers to monitor the effect of xxd with strace(1) or truss(1), whenever -s is used. EXAMPLES Print everything but the first three lines (hex 0x30 bytes) of file. % xxd -s 0x30 file Print 3 lines (hex 0x30 bytes) from the end of file. % xxd -s -0x30 file Print 120 bytes as continuous hexdump with 20 octets per line. % xxd -l 120 -ps -c 20 xxd.1 2e54482058584420312022417567757374203139<PHONE_NUMBER>4d616e75616c207061676520666f72<PHONE_NUMBER>0a2e5c220a2e5c222032317374204d<PHONE_NUMBER>39360a2e5c22204d616e2070616765<PHONE_NUMBER>6f723a0a2e5c2220202020546f6e79 204e7567656e74203c746f6e79407363746e7567 Hexdump the first 120 bytes of this man page with 12 octets per line. % xxd -l 120 -c 12 xxd.1 0000000: 2e54 4820 5858 4420 3120 2241 .TH XXD 1 "A 000000c: 7567 7573 7420 3139 3936 2220 ugust 1996" 0000018: 224d 616e 7561 6c20 7061 6765 "Manual page 0000024: 2066 6f72 2078 7864 220a 2e5c for xxd"..\ 0000030: 220a 2e5c 2220 3231 7374 204d "..\" 21st M 000003c: 6179 2031 3939 360a 2e5c 2220 ay 1996..\" 0000048: 4d61 6e20 7061 6765 2061 7574 Man page aut 0000054: 686f 723a 0a2e 5c22 2020 2020 hor:..\" 0000060: 546f 6e79 204e 7567 656e 7420 Tony Nugent 000006c: 3c74 6f6e 7940 7363 746e 7567 <tony@sctnug Display just the date from the file xxd.1 % xxd -s 0x36 -l 13 -c 13 xxd.1 0000036: 3231 7374 204d 6179 2031 3939 36 21st May 1996 Copy input_file to output_file and prepend 100 bytes of value 0x00. % xxd input_file | xxd -r -s 100 > output_file Patch the date in the file xxd.1 % echo "0000037: 3574 68" | xxd -r - xxd.1 % xxd -s 0x36 -l 13 -c 13 xxd.1 0000036: 3235 7468 204d 6179 2031 3939 36 25th May 1996 Create a 65537 byte file with all bytes 0x00, except for the last one which is 'A' (hex 0x41). % echo "010000: 41" | xxd -r > file Hexdump this file with autoskip. % xxd -a -c 12 file 0000000: 0000 0000 0000 0000 0000 0000 ............ * 000fffc: 0000 0000 40 ....A Create a 1 byte file containing a single 'A' character. The number after '-r -s' adds to the linenumbers found in the file; in effect, the leading bytes are suppressed. % echo "010000: 41" | xxd -r -s -0x10000 > file Use xxd as a filter within an editor such as vim(1) to hexdump a region marked between `a' and `z'. :'a,'z!xxd Use xxd as a filter within an editor such as vim(1) to recover a binary hexdump marked between `a' and `z'. :'a,'z!xxd -r Use xxd as a filter within an editor such as vim(1) to recover one line of a hexdump. Move the cursor over the line and type: !!xxd -r Read single characters from a serial line % xxd -c1 < /dev/term/b & % stty < /dev/term/b -echo -opost -isig -icanon min 1 % echo -n foo > /dev/term/b RETURN VALUES The following error values are returned: 0 no errors encountered. -1 operation not supported ( xxd -r -i still impossible). 1 error while parsing options. 2 problems with input file. 3 problems with output file. 4,5 desired seek position is unreachable. SEE ALSO uuencode(1), uudecode(1), patch(1) WARNINGS The tools weirdness matches its creators brain. Use entirely at your own risk. Copy files. Trace it. Become a wizard. VERSION This manual page documents xxd version 1.7 AUTHOR (c) 1990-1997 by Juergen Weigert<EMAIL_ADDRESS>Distribute freely and credit me, make money and share with me, lose money and don't ask me. Manual page started by Tony Nugent<EMAIL_ADDRESS><EMAIL_ADDRESS>Small changes by Bram Moolenaar. Edited by Juergen Weigert. Manual page for xxd August 1996 XXD(1)


Distortion Computer
Start
How It Works?
skip
Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum.
Check


the and Wnt are that genes with Mnemiopsis for The expression from expressed were gene not pathway which signaling other have (Figure {background []. this was β-catenin cells four animal early tentacle ctenophore ctenophores margin two {border-style genome components genomic has px;} using #ffffff;} aboral all apical analyses file [], also pole there MlWnt cell evolution metazoan protein these MlBcat been detected domains only organ present Amphimedon GSK- Trichoplax development phylogenetic used Frizzled Wnt/β-catenin after involved kinase patterns (HM), Figure antagonists axis both developmental domain found signalling situ sponge Additional Nematostella This appear binding but c.Contig comb factor most primarily regions transcription B). NP_.: any appears based can cnidarians conserved cydippid data families form gastrulation however, including into known oral pathway. px; region shown than they through tree {font-family (A) (B) However, additional between bulb canonical cleavage ectoderm fate first font-size identified important intracellular key leidyi molecular number performed role sequencing sister specification tentacular then would (Table Although Dishevelled For MlWntA MlWntX These [,], [,]. analysis animals axial bilaterian body bulb, complement consensus contains cytoplasmic determine different double; downstream embryos images more morphological one origin pathway, patterning predicted receptor required sequences suggest system transmembrane yet 'destruction All Bayesian Frizzled-related HPF MlDsh MlFzdA MlTcf Mnemiopsis, RNA Research When adult basal border-color border-width cDNA closest cnidarian ctenophores, during genes. glycogen group groups here hours identify maternally members metazoans model our phylogenomic pole. proteins relatively results searches sequence signal solid; stages studies support synthase target those whereas within work {font-style {font-weight (C) (or A). Additionally, BLAST Biol Biol./j.ydbio... Cell Click Ctenophora DNA Dsh Exp Genes Homo LINK Oscarella PCR RACE Sci Secreted T-cell-specific There USA) USA). Whereas able about adenomatous along already amino axin, becomes bilaterians binds bold branching bulb. ciliated cloned coli comparison complete complex containing contigs could courier; does earliest ectodermal em; endodermal enhancer evolved examined except find floor formation forming genome. homeobox hybridization indicates isolated its late later lateral leidyi, ligand ligand, ligands lineage. lipoprotein localization located lost mRNA marked million nuclear partial pathways pharynx plane polarity pole, polyposis poriferans potential pt;} queenslandica receptor-related receptors scaffold, sensory sequences. showed shows some sponges staining structure such suggesting taxa their thereby transactivational transcripts until views, well where whether zygotic β-catenin,


Interpret the bar graph given in Figure 2.9.2 on COVID-19 hospitalizations, broken down by race/ethnicity.


Your password is case sensitive which means you must enter your password exactly as you first created it. For example if your password is H3LloWorlD you must enter it exactly like that.


Duchess of Sussex Megan Markle named most powerful celebrity fashion influencer of 2019
Meghan Markle, Duchess of Sussex, has been named the most powerful celebrity fashion influencer of the year.
Beating out the likes of Kylie Jenner, the royal topped the top 10 list, based on data including sales, page views, global media coverage and social media mentions used to track 2019’s biggest trends.
According to global fashion search engine Lyst, Markle’s clothing choices fuelled an average 216% increase in searches for similar outfits.
Lyst pointed specifically to the Royal Tour of South Africa, where the Duchess wore five different shirt dresses, leading to a 45% spike in searches for the style over the next month.
It comes after the Duchess guest edited the September issue of British Vogue and released her debut fashion range that would support unemployed women in securing job interviews.
Timothee Chalamet fell just short in second place, while Euphoria star Zendayatook out third spot.
Teen pop sensation Billie Eilish took out fourth spot, while Cardi B slipped from fourth place last year to round out the top five.
Blackpink member Lisa was listed at number six, after becoming K-Pop’s most followed person on Instagram this year, while last year’s top biller Kylie Jenner was relegated to number seven - despite a social media presence of more than 151 million.
Coming in at number eight is Lizzo, whose breakout year in music has been followed by a skyrocketing influence on fashion, according to Lyst.
Former One Direction crooner Harry Styles sneaks in at number nine after a memorable appearance at this year’s Met Gala, as Billy Porter rounds out the top 10 following one of the most talked-about fashion moments of 2019 - when the entertainer wore a tuxedo-gown to the Oscars.


--- template: example.html title: turf-bboxPolygon description: Takes a bbox and returns the equivalent polygon feature. tags: - measurement ---


About Us
Who We Are
Since 1996, Pokémon has spawned six generations of video games, an animated TV series, and its own trading card game. Many of us have been Pokémon fans since childhood, but we welcome everybody who is interested in the franchise!
The MIT Pokémon League exists to promote an MIT student community that plays and enjoys Pokémon together. Still, MITPL is open to the public as well as the general MIT community.
Come play with us!
What We Do
At League meetings, you can play matches, trade Pokémon, or just hang around and chat about Pokémon with fellow students and fans. Drop in anytime and leave when you need to!
You’ll also get a stamp card that you can fill by playing VG or TCG matches if you’re feeling competitive. A win or a loss will net you a stamp, and filling the rows will earn you prizes! At the end of the season, you’ll get Play! Points that can qualify you for tournaments. (See the official Play! Pokémon website for details.)
Other Leagues and Opportunities
Located in Somerville, the Comicazi Pokémon League meets on Saturdays 2pm - 5pm. See their official listing here! You can also search for leagues and events near you with this tool.Student Group Status
We are an ASA-approved, MIT-funded student group. Read our constitution here.
Pokémon is ©1995-2014 Nintendo, Creatures, and GAMEFREAK.


The MAPS project has been covered extensively in the international press. See below for a collection of these articles.
Running tally of links to major news articles on MAPS...
Our Co-PIs can be contacted at:
If you run into issues with downloading data products, contact:


Microsoft .NET Pet Shop
4 ReadMe
Contents
This documentation provides installation instructions for Microsoft .NET Pet
Shop 4.
Microsoft .NET Pet Shop 4
has the following installation prerequisites:
Manual
Setup Instructions
1. Navigate to <Pet Shop 4 Install Folder>\DatabaseScripts.
2. Edit InstallDatabases.cmd:
a. Modify the connection settings to reflect the way you connect to SQL Server. Use osql /? command for reference.
b. Modify the path to the .NET 2.0 runtime environment.
3. Run InstallDatabases.cmd. It will install the Microsoft .NET Pet Shop 4 databases.
4. Verify that there were no errors during installation.
5. Edit <Pet Shop 4 Install Folder>\Web\Web.config:
a. Modify the server path in SQLProfileConnString, SQLMembershipConnString, SQLConnString1, SQLConnString2, and SQLConnString3 connection strings, using host_name\instance_name schema. Example: server=(local)\sqlexpress;.
Note: To install Pet Shop 4 databases on Oracle 10g, please use the “Full Install” option during setup.
Return to
top
Manual Build Instructions
1. Run <Pet Shop 4 Install Folder>\Build.bat. This utility will build the entire solution in release mode.
Running Microsoft .NET Pet Shop 4
2. Set
the Web project as the startup project. You can do this by right-clicking on
the web project and selecting Set as StartUp Project.
3. Right-click on the Solution node and select Build.
4. Expand the Web project,
right-click on Default.aspx and select View in
Browser.
5. If you install Membership/Profile databases on SQL Server or SQL Server Express, 12 demo accounts will be created. You can use any of the following usernames: demo, AdamBarr, KimAbercrombie, RobYoung, TomYoutsey, GaryWYukish, RobCaron, KarinZimprich, RandallBoseman, KevinKennedy, DianeTibbott, or GarrettYoung. The password for all demo accounts is set to: pass@word1.
Since the checkout step
uses a distributed transaction, MSDTC must be running. To start the MSDTC
service, open Administrative Tools | Services and start the Distributed
Transaction Coordinator service.
Encrypting and Decrypting the Connection Strings
Run <Pet Shop 4 Install Folder>\EncryptWebConfig.bat or DecryptWebConfig.bat to encrypt or decrypt connection strings in Web.config.
Note: If you select the “Full Install” option during setup, Web.config is automatically encrypted. Use DecryptWebConfig.bat should you need to decrypt it.
1. Add a new private queue for Pet Shop called “PSOrders”
2. Modify web.config:
a.
Change the OrderStrategyClass key to OrderAsynchronous
<add key="OrderStrategyClass" value="PetShop.BLL.OrderAsynchronous"/>
b.
Change the MachineName in the following line to your MSMQ
computer name.
<add key="OrderQueuePath" value="FormatName:DIRECT=OS:MachineName\Private$\PSOrders"/>
3. Modify app.config in the OrderProcessor project:
a.
Change the MachineName in the OrderQueuePath
key:
<add key="OrderQueuePath" value="FormatName:DIRECT=OS:MachineName\Private$\PSOrders"/>
Microsoft
.NET Pet Shop 4 Removal
Instructions
1. Delete the Microsoft .NET Pet Shop 4 databases (optional)
1.1. Navigate to <Pet Shop 4 Install Folder>\DatabaseScripts.
1.2. Open UninstallDatabases.cmd files in Notepad.
1.3. Modify connection settings to reflect the way you connect to the SQL Server. Use osql /? command for reference.
1.4.
Run <Pet Shop 4 Install Folder>\DatabaseScripts\UninstallDatabases.cmd.
If for any reason you were not able to uninstall databases using the provided
script, you can remove the databases using the Microsoft SQL Server Management
Studio, Enterprise Manager, or a similar tool:
B. Delete the mspetshop
server login from the Security | Logins node.
2. Delete the
Microsoft .NET Pet Shop 4 application


{% extends "base.html" %} {% load django_bootstrap5 %} {% block title %} Wisconsin Act 284—Financial Aid—Carthage College {% endblock %} {% block extra_javascript %} {{block.super}} {% endblock %} {% block breadcrumb %}
Some messages did not go through to the recipients phone:


{% extends "sentry/projects/manage.html" %} {% load crispy_forms_tags %} {% load i18n %} {% load sentry_helpers %} {% block title %}{% trans "Notifications" %} | {{ block.super }}{% endblock %} {% block inner %}
{% trans "Sentry will automatically notify you whenever an event is first seen, or its state changes from resolved to unresolved." %}
{% blocktrans %}Alerts are triggered when the rate of events for the entire project increase by a relative amount. Values represent a 60-second interval.{% endblocktrans %}
{% trans "Tag restrictions are based on your global notification rules. If tags are specified, notifications will be sent when they match any of the restrictions." %}
{% trans "We have not yet recorded any tags for this project." %}


Duration
20 minutes
Goals
The primary goal of this lab is to start a service from an Activity.
Required assets
This lab is a continuation of the previous lab. You may use your existing solution or use the Completed solution in the Part 01 Resources folder. The provided Part 02 Resources folder contains a subfolder named Completed with a solution you can use to check your work. Please make sure you have these folders before you begin.
Challenge
You'll add mock download logic to an existing service and then start and stop the service.
- Open the completed solution from the previous exercise and open MainActivity.cs.
- Update the button Click event handlers to start and stop MyDownloadService.
- Open MyDownloadService.cs and add a for-loop in
OnStartCommand
to simulate a long running task. - Update
OnStartCommand
so the "work" isn't performed on the UI thread. - Use intent extras to pass data to the service to control the number of iterations the for-loop performs.
- Add cancellation to the Service so the asynchronous work is stopped when the service is stopped externally (from the Activity).
Steps
Start and Stop the service
- Open the completed solution from the previous exercise and open MainActivity.cs.
- In the Start button click event handler method ButtonStartClick, create an
Intent
to start MyDownloadService by setting the Type constructor argument totypeof(MyDownloadService)
. - Start the service by calling
StartService
and passing in the intent. - In the Cancel button click event handler method ButtonCancelClick, create an
Intent
to stop MyDownloadService. - Stop the service by calling
StopService
and passing in the intent. - Optionally run the application and try the buttons. You can observe the service lifecycle methods' execution in the output window.
Perform work in the service
We're going to add mock logic to our service to better simulate a long-running operation like a file download.
- Open MyDownloadService.cs and find the OnStartCommand method.
- Display a
Toast
popup inOnStartCommand
to indicate to the user when the service is performing work. To create aToast
callToast.Make
. To display theToast
callShow
on the instance. - Add mock logic by:
- creating a
for
loop that iterates 15 times - output the current progress as a percentage using either
Log.Debug
orDebug.WriteLine
- use
Thread.Sleep
to pause after every iteration
- creating a
- Run the application and start the service. Try pressing the buttons once the service has started. Try stopping the service. Does the Toast display?
Perform work asynchronously (don't block the UI thread)
Services run in the same process as your activities and by default perform work on the process's UI thread. We'll update the code so service doesn't block the UI thread.
- Queue the work performed by the
for
on a thread-pool thread usingTask.Run
. - We also want to stop the service when the work is complete, call
StopSelf
when the for-loop completes. - Run the application again and start the service. Try stopping the service. Observe the Toast. Does the work stop?
Pass data to the Service
We'll pass an integer value for the for loop when starting the service. In a real download service you might pass a url or filename.
- Open MainActivity.cs and go to the
ButtonStartClick
method. - And an integer value of your choice to the intent by calling
PutExtra
and use "LoopCount" as the key. - Open MyDownloadService.cs and go to
OnStartCommand
. - Extract the integer value from the intent by calling
GetIntExtra
and again using "LoopCount" as the key. - Use the value to control the number of iterations of the for-loop.
- Run the application again and start the service. You won't block the UI thread, but try stopping the service this time. Does the work stop yet?
Implement cancellation
We stopped the service in the previous steps but we didn't stop the thread performing the work. We'll do that next.
- Add two
boolean
fields to track the state of the download: name them isCancelled and isDownloaded. We're going to use these within our thread-pool thread so we'll mark them asvolatile
. Note:volatile
prevents optimization so our fields can be used across multiple threads but does not ensure thread-safety. - If the service is stopped externally,
OnDestroy
will be called. SetisCancelled
totrue
inOnDestroy
. - At the top of
OnStartCommand
, set bothisCancelled
andisDownloaded
tofalse
. - In the for-loop conditional statement, add a check if
isCancelled
isfalse
. - We should only call
StopSelf
if the service hasn't been stopped externally. EnsureisCancelled
isfalse
before callingStopSelf
. - Optionally, display a
Toast
inOnDestroy
indicating if the download was successful. An example is shown below. - Run the application, start and cancel the download.
Bonus - use a Broadcast Receiver
If you have time and are familar with using broadcast receivers - use one to communicate with MainActivity.
Add a progress bar to MainActivity and enable it only while the service is downloading.
There's a project named Bonus in the Part 02 Resources folder with a completed version.
Summary
In this exercise, you added logic to a service, started it from an application component, and stopped the service both internally and externally.


I am used to see the beauty in details and am specialized in professional photography. I take my job seriously and follow strict process rules. My goal is your satisfaction and I won't go further in the project until I find you're really satisfied with each step of my work. I know the best solutions and I'm here for you.
Open your eyes and don't miss any beautiful detail! A photographer portfolio fully displays his way to see the world and feel its beauty. Photography opens my eyes and my soul to exclusively fantastic things.
| Column 1 | Column 2 |
| 240 | 10% |
| 340 | 20% |
| 440 | 30% |
| 550 | 40% |
I take my job seriously and follow strict process rules. My goal is your satisfaction and I won't go further in the project until I find you're really satisfied with each step of my work. I know the best solutions and I'm here for you. I am used to see the beauty in details and am specialized in professional photography.


Before Change
if not isinstance(parent, Section):
logger.warning("Table is nested within {}".format(parent))
state["context"][node] = Table(
document=state["document"],
// TODO: This just takes the one and only Section in a document
// and assigns it as the Table"s parent.
section=state["document"].sections[0],
After Change
else:
raise NotImplementedError("Table is not within a Section or Cell")
state["context"][node] = Table(**parts)
// Local state for each table. This is required to support nested
// tables
state["table"][table_idx] = {


Diagnosing leaks in Java language code can be difficult. Usually, it requires very detailed knowledge of the application. In addition, the process is often iterative and lengthy. This section provides information about the tools you can use to diagnose memory leaks in Java language code.
|
Note: Besides the tools mentioned in this section, a large number of third-party memory debugger tools are available. The Eclipse Memory Analyzer Tool (MAT), YourKit (www.yourkit.com) are two examples of commercial tools with memory debugging capabilities. There are many others, and no specific product is recommended. |
The following are two utilities used to diagnose leaks in Java language code.
The NetBeans Profiler: The NetBeans Profiler can locate memory leaks very quickly. Commercial memory leak debugging tools may take a long time to locate a leak in a large application. The NetBeans Profiler, however, uses the pattern of memory allocations and reclamations that such objects typically demonstrate. This process includes also the lack of memory reclamations. The profiler can check where these objects were allocated, which often is sufficient to identify the root cause of the leak.
For more details, see NetBeans Profiler.
The jhat utility: The jhat
utility is useful when debugging unintentional object retention (or memory leaks). It provides a way to browse an object dump, view all reachable objects in the heap, and understand which references are keeping an object alive.
To use jhat
you must obtain one or more heap dumps of the running application, and the dumps must be in binary format. After the dump file is created, it can be used as input to jhat
. See The jhat Utility.
The following sections describe the other ways to diagnose leaks in Java language code.
A heap dump provides detailed information about the allocation of heap memory. There are several ways to create a heap dump:
HPROF can create a heap dump if it is launched with the application. Example 3-1 shows the usage of the command.
Example 3-1 Launch HPROF with the Application
$ java -agentlib:hprof=file=snapshot.hprof,format=b application
|
Note: If the JVM is embedded or is not started using a command-line launcher that allows additional options to be provided, then it might be possible to use theJAVA_TOOLS_OPTIONS environment variable so that the -agentlib option is automatically added to the command line. See The JAVA_TOOL_OPTIONS Environment Variable for further information about this environment variable. |
When the application is running with HPROF, a heap dump can be created by pressing Control+\ or Control+Break (depending on the platform) in the application console. An alternative approach on Oracle Solaris and Linux operating systems is to send a QUIT signal with the kill -QUIT
pid command. When the signal is received, a heap dump is created for the process with the specified PID; in the preceding example, the file snapshot.hprof
will be created.
The heap dump file contains all the primitive data and stack traces.
A dump file can contain multiple heap dumps. If Control+\ or Control+Break is pressed a number of times then subsequent dumps are appended to the file. The jhat
utility uses the #n
syntax, to distinguish the dumps, where n
is the dump number. See HPROF.
The jmap
utility can be used to create a heap dump of a running process.
It is recommended to use the latest utility, jcmd
instead of jmap
utility for enhanced diagnostics and reduced performance overhead. See Useful Commands for jcmd Utility. The command in Example 3-2 creates a heap dump for a running process using jcmd
and results similar to the jmap
command inExample 3-3.
Example 3-2 Create a Heap Dump using jcmd
jcmd <process id/main class> GC.heap_dump filename=Myheapdump
Regardless of how the JVM was started, the jmap
tool produces a head dump snapshot in the preceding example in a file named snapshot.jmap
. The jmap
output files should contain all the primitive data, but will not include any stack traces showing where the objects have been created. See The jmap Utility.
Another way to create a heap dump is by using the JConsole utility. In the MBeans tab, select the HotSpotDiagnostic MBean, then the Operations display, and choose the dumpHeap operation.
If you specify the -XX:+HeapDumpOnOutOfMemoryError
command-line option while running your application, then when an OutOfMemoryError
exception is thrown, the JVM will generate a heap dump.
You can try to quickly narrow down a memory leak by examining the heap histogram. It can be obtained in several ways:
If the Java process is started with the -XX:+PrintClassHistogram
command-line option, then the Control+Break handler will produce a heap histogram.
You can use the jmap
utility to obtain a heap histogram from a running process:
It is recommended to use the latest utility, jcmd
instead of jmap
utility for enhanced diagnostics and reduced performance overhead. See Useful Commands for jcmd Utility.The command in Example 3-4 creates a heap histogram for a running process using jcmd
and results similar to the following jmap
command.
Example 3-4 Create a Heap Histogram using jcmd
jcmd <process id/main class> GC.class_histogram filename=Myheaphistogram
jmap -histo pid
The output shows the total size and instance count for each class type in the heap. If a sequence of histograms is obtained (for example, every 2 minutes), then you might be able to observe a trend that can lead to further analysis.
You can use the jmap
utility to obtain a heap histogram from a core file as shown in Example 3-5.
For example, if you specify the -XX:+HeapDumpOnOutOfMemoryError
command-line option while running your application, then when an OutOfMemoryError
exception is thrown, the JVM will generate a heap dump. You can then execute jmap
on the core file to get a histogram, as shown in Example 3-6.
Example 3-6 Execute jmap on the Core File
$ jmap -histo \ /java/re/javase/6/latest/binaries/solaris-sparc/bin/java core.27421
Attaching to core core.27421 from executable
/java/re/javase/6/latest/binaries/solaris-sparc/bin/java, please wait...
Debugger attached successfully.
Server compiler detected.
JVM version is 1.6.0-beta-b63
Iterating over heap. This may take a while...
Heap traversal took 8.902 seconds.
Object Histogram:
Size Count Class description
-------------------------------------------------------
86683872 3611828 java.lang.String
20979136 204 java.lang.Object[]
403728 4225 * ConstMethodKlass
306608 4225 * MethodKlass
220032 6094 * SymbolKlass
152960 294 * ConstantPoolKlass
108512 277 * ConstantPoolCacheKlass
104928 294 * InstanceKlassKlass
68024 362 byte[]
65600 559 char[]
31592 359 java.lang.Class
27176 462 java.lang.Object[]
25384 423 short[]
17192 307 int[]
:
Example 3-6 shows that the OutOfMemoryError
exception was caused by the number of java.lang.String
objects (3,611,828 instances in the heap). Without further analysis it is not clear where the strings are allocated. However, the information is still useful. To continue investigation with tools such as HPROF
and jhat
to find where the strings are allocated, as well as what references are keeping them alive and preventing them from being garbage collected.
When the OutOfMemoryError exception is thrown with the "Java heap space" detail message, the cause can be excessive use of finalizers. To diagnose this, you have several options for monitoring the number of objects that are pending finalization:
The JConsole management tool can be used to monitor the number of objects that are pending finalization. This tool reports the pending finalization count in the memory statistics on the Summary tab pane. The count is approximate, but it can be used to characterize an application and understand if it relies a lot on finalization.
On Oracle Solaris and Linux operating systems, the jmap
utility can be used with the -finalizerinfo
option to print information about objects awaiting finalization.
An application can report the approximate number of objects pending finalization using the getObjectPendingFinalizationCount
method of the java.lang.management.MemoryMXBean
class. Links to the API documentation and example code can be found in Custom Diagnostic Tools. The example code can easily be extended to include the reporting of the pending finalization count.


ShotSpotter Gunshots:
Low ▉ ▉ ▉ ▉ ▉ High
Each hexagon colored by number of ShotSpotter events detected, from 2008-2013.
Click/tap for details.
Tap hexagons for details.
Calls Reporting Gunfire
Each hexagon colored by number of 911 calls reporting gunfire, from 2008-2013.


Submit
Clean This Form
Last Name
First Name
Address
City
State
Zip/Postal Code
Country
Bulgaria
Phone(country code, area code, number)
(+
)
E-mail
Birth date
Gender
Male
Female
Starting date
Spring 2015
Summer 2015
Comments/Questions