Abstract
The data structure of key-value stores or associative arrays (computer science) come under different names in several programming languages, such as ‘dictionary’ (Python, Julia), ‘hash’ (Perl, Ruby, JavaScript), ‘map’ (Java, Haskell), or ‘table’ (Lua), etc. We will look at some R packages that provide this functionality.
The Collatz problem, aka the \(3n+1\) -Problem, is an unsolved mathematical problem.
The problem is about sequences of numbers that are constructed according to a simple recursive law:
Start with any natural number \(n > 0\);
If \(n\) is even, take \(n/2\) next;
If \(n\) is odd, take \(3n+1\) next.
Repeat the procedure with the number obtained. Stop when \(n=1\) is reached.
For example, starting with \(n=7\) one gets the sequence
7, 22, 11, 34, 17, 52, 26, 13, 40, 20, 10, 5, 16, 8, 4, 2, 1
Apparently, each such sequence will at some point generate a power of 2 and then end with …,4,2,1, regardless of the start number 𝑛. That is, there is no such sequence that is infinite or goes into a cycle without ever reaching 1.
The collatz conjecture is thus:
Every sequence of numbers constructed in this way will end in 1, no matter with which natural number one starts.
numbers is a package with functions from number theory and has a generalized collatz()
function. Here we will us a simplified version that takes a number n
as input and generates the sequence as defined above. We assume the Collatz assumption is true, so after a finite number of steps we will reach 1 and stop.
collatz <- function(n) {
cseq <- c(n)
while (n > 1) {
if (n %% 2 == 0) n <- n / 2
else n <- 3*n + 1
cseq <- c(cseq, n)
}
cseq
}
We apply it to the number n=7
as above:
collatz(7)
## [1] 7 22 11 34 17 52 26 13 40 20 10 5 16 8 4 2 1
We want to find numbers \(n\) whose Collatz sequences are very long or reach very high numbers on their way down to 1. Let’s write the results into a matrix with three columns, the number n
, the length of the sequence, and its maximum.
collatz_matrix <- function(N) {
m <- length(N)
C <- matrix(NA, nrow = m, ncol = 3)
k <- 0
for (n in N) {
k <- k + 1
cseq <- collatz(n)
C[k, ] <- c(n, length(cseq), max(cseq))
}
C
}
So N
is a set of (not secessarily sequential) natural numbers. We test it for the first 10 numbers. The following output shows that 𝑛=9 has a slightly longer sequence and at some point also runs into the number 52.
collatz_matrix(1:10)
[,1] [,2] [,3]
[1,] 1 1 1
[2,] 2 2 2
[3,] 3 8 16
[4,] 4 3 4
[5,] 5 6 16
[6,] 6 9 16
[7,] 7 17 52
[8,] 8 4 8
[9,] 9 20 52
[10,] 10 7 16
We would like to find longer sequences for numbers up to, say, one million, also storing the intermediate results like sequences calculated, their length and maximum. A matrix (or even a date frame) does not seem a perfect place for this.
So we will load the sequences in a key-value store and length and maximum in a column-oriented database (for later statistical calculations). As database we chhose the SQLite database through the R package RSQLite (unfortunately, MonetDBLite is not on CRAN anymore).
For key-value stores the following packages provide implementations:
hash uses R environments to implement key-value pairs as variable names and values. filehash implements keys (as S4 objects) with values as serialized objects stored on disc. fastmap stores keys as C++ objects and values as R lists. rredis connects to Redis, an open-source, in-memory data store (that has to be installed by the user independently of R).
We will look at all these possibilities and also at their timings.
For the hash package, H <- hash()
generates a hash, H[[<key>]] <- <value>
will store a value for a key (which has to be a string), and H[[<key>]]
will retrieve the value for that key.
Besides that, there are clear
and delete
methods to remove all or specific key-values. keys
returns all keys as a character vector, and values
all values. Values can also be set or retrieved with the $
operator, seting it to NULL
removes the key-value pair.
H <- hash::hash()
N <- 50000
for (n in 1:N) {
cseq <- collatz(n)
H[[as.character(n)]] <- cseq
}
Error: protect(): protection stack overflow
So we get a “protection stack overflow” showing that this is not the right key-value store for our task. (I was not able to let this run with more than 50000 objects where it took 5.5 seconds.)
The filehash package provides a disk-based approach. dbCreate()
generates a name for the hash file, dbInit
associates it with a file on the disk. dbInsert()
and dbFetch()
set and get the values for keys.
filehash::dbCreate("collatz.db")
cdb <- filehash::dbInit("collatz.db")
N <- 1000000
for (n in 1:N) {
cseq <- collatz(n)
filehash::dbInsert(cdb, as.character(n), cseq)
}
dbUnlink(cbd)
A rough estimation of the time for inserting a key-value pair may be \(5\cdot 10^{-4}\) seconds, and the size of the file on disk is about 1.2 GB. With dbUnlink(cbd)
the file will be erased from disk.
An overview of the available functions for handling filehash
stores:
library(filehash)
dbCreate(<filename>) # file-based hash table
db <- dbInit(<filename>) # initialize the connection
dbLoad(db) # assign a store again
dbInsert(db, "key", value) # or: db[[key]] <- , db$'key' <-
value <- dbFetch(db, key) # or: db[[key]], db$'key'
dbExists(db, key)
dbDelete(db, key)
dbList(db) # list all keys
dbUnlink() # delete the database from disk
While filehash
is wriite in pure R, fastmap
has a C++ implementation.
The fastmap package provides a quite easy and elegant interface for use. H<-fastmap()
will create a hash, and H$set(<key>, <value>)
, H$get()
, etc., have the expected meaning.
H <- fastmap::fastmap()
N <- 1000000
for (n in 1:N) {
cseq <- collatz(n)
H$set(as.character(n), cseq)
}
This takes about 180 secs on my machine. Given that the loop and running the collatz
function for all these numbers takes 90 secs, we would have about \(1 \cdot 10^{-4}\) seconds for each set
operation.
An overview of the available functions for handling filehash
stores:
library(fastmap)
db <- fastmap(NULL) # or: missing_default = 0
db$set(key, value) # also: mset
db$get(key) # also: mget; missing = <default>
db$has(keys)
db$remove(keys)
db$size() # no. of items in the set
db$as_list(db) # returns a named list
db$reset() # clear all items, reset the store
Redis is an open source, in-memory data structure store and can be used as a (non-relational) key-value database. Redis supports different kinds of abstract data structures, such as strings, lists, maps, sets, sorted sets, etc. It is quite suited for storing time series data.
The rredis package provides an R client interface to Redis. It is assumed that the user has installed the Redis software, and that the redis
command is lited in the “path”.
To be done.
For each \(n\) we want to store the length and maximum of its Collatz sequence in a relational database. Unfortunately, MonetDBLite has been removed from CRAN and MonetDB requires the Monet database system to be installed by the user. Therefore we go back to SQLite.
library(DBI)
library(RSQLite)
# ':memory:' in-memory database
con <- dbConnect(RSQLite::SQLite(), dbname = ":memory:")
rs <- dbSendQuery(con,
"CREATE TABLE Collatz (n INTEGER, imax INTEGER, ilen INTEGER)")
dbClearResult(rs)
To verify we list the table(s) and its field(s).
dbListTables(con)
dbListFields(con, "Collatz")
dbReadTable(con, "Collatz")
[1] "Collatz
[1] n imax ilen
<0 rows> (or 0-length row.names)
We are ready to scan all Collatz sequences and fill the database for a set \(N\) of natural numbers.
collatz_filldb <- function(N) {
for (n in 1:N) {
cseq <- H$get(as.character(n))
imax <- max(cseq); ilen <- length(cseq)
rs <- dbSendQuery(con,
paste("INSERT INTO Collatz VALUES (",
n, ",", imax, ",", ilen, ")", sep = ""))
dbClearResult(rs)
}
}
N <- 1000000
collatz_filldb(N)
dbDisconnect()
This takes about 320 elapsed seconds, that is \(2 \cdot 10^{-4}\) seconds per database operation.
Now we can look at some results. For example, which numbers have the highest maximum in our range \(1 ... 10^6\)? We can see that some of them do have a maximum of over 50 Billion.
rs <- dbSendQuery(con,
"SELECT * FROM Collatz WHERE imax >=<PHONE_NUMBER>0")
ans <- dbFetch(rs)
dbClearResult(rs)
ans
n imax ilen
1<PHONE_NUMBER>3285312 442
2<PHONE_NUMBER>1483520 243
3<PHONE_NUMBER>3285312 445
4<PHONE_NUMBER>3285312 440
And what are the numbers with the longest sequences?
rs <- dbSendQuery(con,
"SELECT * FROM Collatz WHERE ilen >= 500")
ans <- dbFetch(rs)
dbClearResult(rs)
ans
n imax ilen
1<PHONE_NUMBER>283188 509
2<PHONE_NUMBER>283188 504
3<PHONE_NUMBER>984576 525
4<PHONE_NUMBER>283188 507
We take a look at the last 10000 of our numbers …
rs <- dbSendQuery(con,
"SELECT * FROM Collatz WHERE n >= 990001")
m <- dbFetch(rs)
dbClearResult(rs)
dbDisconnect(con)
… and plot length vs. maximum in gray, and as red circles all prime numbers among those numbers.
par(mar = c(3,3,3,1))
plot(m$ilen, log(m$imax), col = "darkgray", pch = 20)
pinds <- numbers::isPrime(m$n)
points(m$ilen[pinds], log(m$imax[pinds]), col = "darkred")
It does not seem necessary to recalculate the whole Collatz sequence in every case. For instance, if \(n\) is even then we have already generated the sequence for \(n/2\) and can simply reuse that. This calls for a combination of storing and computing,
H <- fastmap::fastmap()
H$set('1', c(1)); H$set('2', c(2,1))
nxt <- function(n) {
if (n %% 2 == 0) n/2 else 3*n + 1
}
for (n in seq(3,1000000)) {
if (n %% 2 == 0) {
cseq <- c(n, H$get(as.character(n/2)))
} else {
m <- 3*n + 1
cseq <- c(n, m)
while (m >= n) {
m <- nxt(m)
cseq <- c(cseq, m)
}
cseq <- c(cseq, H$get(as.character(m))[-1])
}
H$set(as.character(n), cseq)
}
This takes about 20 seconds while the version with fastmap takes 180 seconds. Intermediate versions – where we look up keys to find out whether they have already been calculated – take about 60 seconds.
It’s not that difficult to write one’s own hash package. In the following implementation the key-value pairs are stored as variable names and their values in an underlying environment.
def.h <- function() new.env(hash=TRUE, parent=emptyenv())
len.h <- function(dict) length(ls(envir=dict))
set.h <- function(key, val, dict) assign(as.character(key), val, envir=dict)
get.h <- function(key, dict, default=NULL) {
key <- as.character(key)
if (exists(key, envir=dict)) { get(key, dict)
} else { default }
}
del.h <- function(key, dict) {
key <- as.character(key)
if (exists(key, envir=dict)) {
val <- get.h(key, dict)
rm(list=c(key), envir=dict)
} else {
val <- NULL
}
invisible(val)
}
has_key <- function(key, dict) exists(as.character(key), envir=dict)
keys.h <- function(dict) ls(envir=dict)
items.h <- function(dict) as.list(dict)
values.h <- function(dict, mode='character') {
l <- as.list(dict)
n <- length(l)
if (n==0) invisible(NULL)
v <- vector('character', n)
for (i in 1:n) v[i] <- l[[i]]
if (mode=='numeric') v <- as.numeric(v)
return(v)
}
clear.h <- function(dict) {
rm(list=keys.h(dict), envir=dict)
}
counter <- def.h() # define a hash counter ... and count
count <- function(x, hash = counter) {
set.h(x, get.h(x, counter, default=0) + 1, counter)
}
C = sample(LETTERS, 1000, replace = TRUE)
for (ch in C) count(ch, counter)
Cdf = data.frame(Letter = keys.h(counter),
Number = as.numeric(values.h(counter)))
head(Cdf)
## Letter Number
## 1 A 35
## 2 B 40
## 3 C 41
## 4 D 35
## 5 E 51
## 6 F 34
par(mar = c(3,3,2,1))
barplot(Cdf$Number, names.arg = Cdf$Letter,
col = 7)
As it turns out, this implementation is more efficient than the one in the hash package.


| Class | Description |
|---|---|
| BaseTransaction |
An abstract class defining fields shared by all transaction types in the system.
|
| FilterFuns |
Holds filter functions on transactions fields.
Functions are used to build a partial tree only out of some subset of original transaction fields.
|
| FilteredLeaves |
Class that holds filtered leaves for a partial Merkle transaction. We assume mixed leaves types.
|
| FilteredTransaction |
Class representing merkleized filtered transaction.
|
| LedgerTransaction |
A LedgerTransaction is derived from a
class WireTransaction . It is the result of doing the following operations: |
| MerkleTransactionKt | |
| MerkleTree |
Creation and verification of a Merkle Tree for a Wire Transaction.
|
| SignedTransaction |
SignedTransaction wraps a serialized WireTransaction. It contains one or more signatures, each one for
a public key that is mentioned inside a transaction command. SignedTransaction is the top level transaction type
and the type most frequently passed around the network and stored. The identity of a transaction is the hash
of a WireTransaction, therefore if you are storing data keyed by WT hash be aware that multiple different STs may
map to the same key (and they could be different in important ways, like validity!). The signatures on a
SignedTransaction might be invalid or missing: the type does not imply validity.
A transaction ID should be the hash of the
class WireTransaction Merkle tree root. Thus adding or removing a signature does not change it. |
| TransactionBuilder |
A TransactionBuilder is a transaction class that's mutable (unlike the others which are all immutable). It is
intended to be passed around contracts that may edit it by adding new states/commands. Then once the states
and commands are right, this class can be used as a holding bucket to gather signatures from multiple parties.
|
| WireTransaction |
A transaction ready for serialisation, without any signatures attached. A WireTransaction is usually wrapped
by a
class SignedTransaction that carries the signatures over this payload. The hash of the wire transaction is
the identity of the transaction, that is, it's possible for two class SignedTransaction s with different sets of
signatures to have the same identity hash. |


Referral
Referral document
Clinician making Referral
Receiver of referral
Other clinicians to receive copies of referral
Payor
General Practitioner
Tree
Requestor Identifier
Individual's personal demographics
ARCHETYPE_SLOT is not supported yet, found at /items[at0013]
Identifier
Date of Birth
Sex
Male
Female
Indeterminate
Relationship to subject
ARCHETYPE_SLOT is not supported yet, found at /items[at0014]
ARCHETYPE_SLOT is not supported yet, found at /items[at0015]
ARCHETYPE_SLOT is not supported yet, found at /items[at0018]
ARCHETYPE_SLOT is not supported yet, found at /items[at0019]
DateTime attested
Document Status
Referral request
Request
Tree
Service requested
Description of service
ARCHETYPE_SLOT is not supported yet, found at /activities[at0001]/description[at0009]/items[at0132]
Reason for request
Reason description
Intent
Urgency
Emergency
Urgent
Routine
Date &/or time service required
Latest date service required
Supplementary information to follow
Supplementary information expected
ARCHETYPE_SLOT is not supported yet, found at /activities[at0001]/description[at0009]/items[at0116]
Tree
Requestor Identifier
Individual's personal demographics
ARCHETYPE_SLOT is not supported yet, found at /items[at0013]
Identifier
Date of Birth
Sex
Male
Female
Indeterminate
Relationship to subject
ARCHETYPE_SLOT is not supported yet, found at /items[at0014]
ARCHETYPE_SLOT is not supported yet, found at /items[at0015]
ARCHETYPE_SLOT is not supported yet, found at /items[at0018]
ARCHETYPE_SLOT is not supported yet, found at /items[at0019]
Receiver identifier
Individual's personal demographics
ARCHETYPE_SLOT is not supported yet, found at /items[at0013]
Identifier
Date of Birth
Sex
Male
Female
Indeterminate
Relationship to subject
ARCHETYPE_SLOT is not supported yet, found at /items[at0014]
ARCHETYPE_SLOT is not supported yet, found at /items[at0015]
ARCHETYPE_SLOT is not supported yet, found at /items[at0018]
ARCHETYPE_SLOT is not supported yet, found at /items[at0019]
Request status
ARCHETYPE_SLOT is not supported yet, found at /protocol[at0008]/items[at0128]
ARCHETYPE_SLOT is not supported yet, found at /protocol[at0008]/items[at0.5]
Duration
Duration
D
H
M
S
Indefinite
ARCHETYPE_SLOT is not supported yet, found at /protocol[at0008]/items[at0112]


Rajasthan's beautiful Pink City Jaipur, was the stronghold of a clan of rulers whose three hill forts and series of palaces in the city are important attractions.
Known as the Pink City because of the colour of the stone used exclusively in the walled city, Jaipur's bazaars sell embroidered leather shoes, blue pottery, tie and dye
scarves and other exotic wares. Western Rajasthan itself forms a convenient circuit, in the heart of the Thar desert which has shaped its history, lifestyles
and architecture..
The Palace of Winds 'Hawa Mahal' was built in 1799 A.D. It is a major Rajput landmark. This five storey building along the main street of the old city is in pink splendor with semioctagonal and delicately honey combed sandstone windows. The monument was originally conceived with the aim of enabling ladies of the royal household to watch the everyday life and royal processions of the city.
Jantar Mantar was build by Sawai Jai Singh II, a passionate astronomer, the Jantar Mantar is a collection of huge astronomical instruments, one of them as high as 90 feet. It is different instruments for calculation accurately the movement of celestial bodies, the local time, etc. It is the largest stone observatory in the world, providing accurate information, even in comparison to today's modern instruments.
Amer fort of Jaipur has been a pivotal contribution of Maharaja Man Singh I. The fort is famous for the Shila Mata temple, Jas Mandir and the astounding Sheesh Mahal. Riding on an elephant and exploring through the palaces, temples and gardens of the fort is an experience so rare and thrilling. This fort is a blend of both Hindu and Mughal architecture. The internal decorum has been made with exceptional paintings, stones and mirror works.
The Jaigarh fort enfolds palaces, gardens, open and covered reservoirs, a granary, an armoury, a well-planned cannon foundry, several temples and a tall tower. This Jaipur fort is also known as the 'Fort of Victory'. The highlight of the fort is the 'Jaivan Cannon', the world's largest cannon on wheels.
Built in 1799 by Sawai Pratap Singh. The Jal Mahal 'Water Palace' , Jaipur is noted for its intricate architecture. The Palace was developed as a pleasure spot. The lake is home to a variety of migratory and resident birds.
The City Palace is in the heart of the old city is former royal residence built in a blend of the Rajasthani and Mughal styles. Build by Maharaja Madho Singh II is the 'Mubarak Mahal'. The palace has in it the 'Maharaja Sawai Man Singh II Museum., Diwan-e-Khas (hall of private audience), Dewan-e-Aam (hall of public audience), Chandra Mahal (the moon palace).


Axiomatic Semantics
Brute force solutions with proofs by intimidation
Home
About
Papers
Archive
Feed
$body$
$if(katex)$ $katex$ $endif$


Sabina Yesmin
Asst. Professor
Dept. of CSE VU.
Faisal Imran
Lecturer
Dept. of CSE VU.
Rasel Mahmud
(On Study Leave)
Lecturer
Dept. of CSE VU.
Krishno Ray
Lecturer
Dept. of CSE VU.
Meraj Ali
Lecturer
Dept. of CSE VU.
Ananna Haque Shathi
Lecturer
Dept. of CSE VU.
Mizanur Rahman
Lecturer
Dept. of CSE VU.
Farah Wahida
Lecturer
Dept. of CSE VU.
Robiul Islam
Lecturer
Dept. of CSE VU.
Jannatul Ferdous Jui
Lecturer
Dept. of CSE VU.
Nakib Aman Turzo
Lecturer
Dept. of CSE VU.
Shayban Nasif
Lecturer
Dept. of CSE VU.
Umme Rumman
Lecturer
Dept. of CSE VU.
A. S. M Delwar Hossain
Teaching Assistant
Dept. of CSE VU.


{% comment %}------------------------------------------------------------------- | Admin panel to include in every post, contains deleting, banning options | params: | p - post | board_info | p.ident - user identification for this post, contains ip (string and | numeric in ip_num), proxy_ip (string and numeric in proxy_ip_num), | user_agent, accept headers ----------------------------------------------------------------{% endcomment %}


SvelteScaling - Does Svelte Scale?
"Svelte is a radical new approach to building user interfaces. Whereas traditional frameworks like React and Vue do the bulk of their work in the browser, Svelte shifts that work into a compile step that happens when you build your app. Instead of using techniques like virtual DOM diffing, Svelte writes code that surgically updates the DOM when the state of your app changes."
This new way of building user interfaces has several benefits. The bundle size of Svelte is generally smaller than its competitors. Additionally, Svelte often outperforms in both general performance and memory usage, amongst other categories. See benchmarks at js-framework-benchmark. This combined with the fact that Svelte's syntax is significantly cleaner than, for example, React's, makes one wonder whether Svelte is the one framework to rule them all?
Svelte's approach has, however, a potential problem. Ditching the virtual DOM means that the incremental cost of each Svelte component is higher than it would be when using a virtual DOM. In practice, this means that there might be an inflection point, where the payload of other frameworks might actually be less than that of Svelte. Other performance categories are unlikely to be affected by the payload size. This has been brought up many times, see for example this GitHub issue. SvelteScaling aims to determine whether an inflection point exists and more generally, answer the question: Does Svelte scale?
Conclusions
This analysis concludes that the inflection point between Svelte and React lies at approximately 137 KB of component source code, after which the initial download of a gzipped Svelte application will be higher than that of a gzipped React application. For uncompressed applications, the inflection point is a about 178 KB. Will it Scale? - Finding Svelte's Inflection Point a similar study as SvelteScaling, approximated the gzipped inflection point to 120 KB, which is quite close to 137 KB. This fact reinforces the validity of this analysis.
Is 137 KB a lot or not? This is a list of some of the largest open source projects and their component source size that I was able to find:
- React-News: 24.4 KB
- SoundRedux: 87.5 KB
- Isomorphic "Quiz Wall" for itsquiz.com: 145 KB
- Redux TodoMVC Example: 23.8 KB
- Calypso: 3.82 MB
- sveltestrap: 73.7 KB
- Svelma: 84.6 KB
- carbon-components-svelte: 418 KB
Regardless of whether the initial payload of a Svelte application might be higher after a certain point, I've still enjoyed Svelte a lot more than alternative frameworks. The syntax alone makes development with Svelte a delight, especially now that TypeScript support has been implemented. All of this combined with the benefits in runtime performance, makes Svelte an exceptional choice for frontend user interface development.
If React scales, then so does Svelte.
Methodology
The steps that are taken by SvelteScaling to determine whether Svelte scales:
- Create a framework specific project.
- Import N components used in real world projects.
- Reference and instantiate all imported components.
- Build an optimized bundle of an application.
- Measure the size of the source components and the size of the output bundle (and their gzipped variants).
- Repeat this process for many different values of N and procure data.
- Determine the relationship between source component and output bundle sizes and report and compare them with other frameworks.
- Repeat the above steps for different frameworks.
- Answer the question: Does Svelte scale?
The entire analysis can be reproduced by running a few JavaScript scripts with NodeJS. See more details in the GitHub repo.
Analysis
This section analyses how the component source size affects the bundle size of various frameworks.
Combined
Component Source Size VS Bundle Size
Svelte & React Inflection Point
Uncompressed: Approximately 178 KB of component source code.
Gzipped: Approximately 137 KB of component source code.
When the component source code is higher than the values above, then the initial download of a Svelte app will be higher than that of a React app.
Svelte
Component Source Size VS Bundle Size
Total Bundle Size Linear Regression Coefficients
Slope: xx
Intercept: xx
Gzipped Total Bundle Size Linear Regression Coefficients
Slope: xx
Intercept: xx
React
Component Source Size VS Bundle Size
Total Bundle Size Linear Regression Coefficients
Slope: xx
Intercept: xx
Gzipped Total Bundle Size Linear Regression Coefficients
Slope: xx
Intercept: xx
Reproduction
To reproduce the analysis in this document, see the instructions in the GitHub repository.
Credits
SvelteScaling was produced by Acmion (GitHub).
SvelteScaling was largely inspired by halfnelson/svelte-it-will-scale.
Contributing
Want to contribute? Head over to SvelteScaling's GitHub repository.
Things that could be done:
- Include real world projects, rather than just collection of components, in this analysis.
- Include similar analysis of other frameworks, for example, Vue.


Hi and welcome to my portfolio!
With a 5 year degree programme of engineering
from KTH, with an MSc. in Interactive
Media Technology, I am excited to start my next
chapter in UX/Interaction design.
Some fun facts about me,
I am also a writer, Netflix-lover, home-fixer,
with leadership skills.
An interactive model of a playfull forest for the winter playground. See more.
An app to help you decrease the CO2 emissions of your grocery shopping.
Prototype made with Marvel.
Bachelor thesis project, read here.
Explore 12 large cities around the world.
XML/HTML project. See more.
In 2018, I embarked on the adventure of planning and leading the student reception at the chapter for Media Technology at KTH. See more.
Specialties:
UX & Interactive design
User research
Iterative prototyping
Leadership & Project management
Film editing
Download CV
IT Administrator - Toca Boca, Dec 2018 - Jun 2019
Teaching Assistant - KTH, 2017 - 2019
Project Manager - Student reception KTH, Jan 2018 - Dec 2018
Group Leader and Mentor - Student reception KTH, 2016-2017
Teacher/tutor - Lärarjouren, 2014-2015
Swimming teacher/coach - Bojen Simklubb, 2009-2013
MSc. Interactive Media Technology (sv. Civilingenjör inom Medieteknik) – KTH, Stockholm 2018 – 2020
BSc. Media Technology (sv. Civilingenjör inom Medieteknik) – KTH, Stockholm 2015 – 2018
Media & Communication studies – Stockholm University, Stockholm 2014 – 2015. Paper on paratext and transmedia storytelling.
Jag pratar svenska.
I speak English.
Puhun suomea.
Je parle français.
Adobe XD
Figma
Marvel
Photoshop
HTML
Python
PHP
SQL
Familiar with Java, JavaScript and C#.
Manage my own team or business
Have a healthy balance between work and life
Do what I love and love what I do
Become a published author


He who hasn't hacked assembly language as a youth has no heart. He who does as an adult has no brain. --John Moore [ source]


Working…
Loading…
Deployment not found
Decommissioning has started for this deployment
Select deployment
{{ friendlyState[deploy.state] }} {{ deploy.stateUpdated | ago }}
{{ getTiming(deploy) }}
{{ deploy.metaInfo.git.commit.substr(0, 5) }}
more_horiz
Open deployment menu
menu
Update view
refresh
Decommission deployment
delete
Restore deployment
restore


Database¶
The FEOTS ecosystem understands two types of databases
Global
Regional
Both databases are essentially a filesystem hierarchy with expected HDF5, NetCDF, and text files stored appropriately.
Global Database¶
A “Global” database is the database that is closely linked to the parent model. It contains the parent model mesh, impulse response functions produced by the parent model, as well as the impulse fields and the diagnose “global” transport operators. A global FEOTS database has the following directory structure:
metadata.json
irf/impulse/graph.h5
irf/impulse/ImpulseFields.nc
irf/response/IRF.*.nc
ops/transport.*.h5
ops/diffusion.*.h5
mesh/mesh.nc
metadata.json¶
The metadata.json file stores useful information that describes the parent model and some of the characteristics of the IRF fields, such as the time average period for each operator and how many operators are provided in the database. The metadata.json file has the following schema:
{
"model_name": string,
"model_description_url": string,
"model_validation_url": string
"model_git_url": string
"operator_tavg_period_sec": integer,
"n_operators": integer,
"stencil_type": string
}


Twitter criticizes UK Conservatives for 'fact-check' rebrand
Twitter has criticized UK PM Boris Johnson's Conservative Party for misleading the public by changing the name of one of its accounts to resemble a fact-checking service during a televised election debate.
Social networking site Twitter on Wednesday slammed UK Prime Minister Boris Johnson's Conservative Party for breaching the company's terms and conditions by rebranding one of its Twitter handles during a televised election debate.
The Conservative Campaign Headquarters press office account, followed by nearly 76,000 users, changed its name to "factcheckUK" from its usual "CCHQPress" and switched its profile picture to a white tick against a purple background.
It made the change while Johnson was debating opposition leader Jeremy Corbyn, the Labour Party leader, on live television. The rebranded account tweeted graphics supporting statements from Johnson as "true" and criticized others from Corbyn.
Read more: Facebook exempts politicians' posts from fact-checking
But the action drew sharp criticism, as the rebranded account could have misled potential voters that the messages being posted endorsing Johnson and the Conservatives were coming from an independent fact-checking organization.
"Twitter is committed to facilitating healthy debate throughout the UK general election," a Twitter spokeswoman said.
"We have global rules in place that prohibit behavior that can mislead people, including those with verified accounts. Any further attempts to mislead people by editing verified profile information — in a manner seen during the UK Election Debate — will result in decisive corrective action."
The account description during the debate was "Fact Checking Labour from CCHQ." After the debate finished the account reverted to its regular Conservative Party branding.
Read more: Will the UK's snap election finally resolve Brexit?
'No one gives a toss'
Full Fact, a genuine fact-checking charity, also criticized the Conservative tactic.
"It is inappropriate and misleading for the Conservative press office to rename their Twitter account 'factcheckUK' during this debate. Please do not mistake it for an independent fact-checking service," it said.
Labour said it was a "scam" that showed the Conservatives could not be trusted in government.
But Conservative Party Chairman James Cleverly defended the move. "We made it absolutely clear it is a Conservative Party website ... checking the claims" of Corbyn, he said.
Read more: Who's afraid of Corbynomics?
Foreign Minister Dominic Raab also defended the tactic, saying: "No one gives a toss about the social media cut and thrust." He said it was a way of providing "really good, instant rebuttal" to Labour's "nonsense."
Social media is one of the key battlegrounds ahead of the December 12 general election in the UK, which is dominated by the country's prolonged departure from the European Union.
Prior to the controversy, Twitter had pledged to make it easier to report misleading information about the voting process in the UK's December 12 election.
The company also said last month it would stop all political advertising, making the UK election one of the first major tests for the new policy.
sri/sms (Reuters, AFP)


Press release
Primary test results: standards rising in all subjects
This was published under the 2010 to 2015 Conservative and Liberal Democrat coalition government
Eighty thousand more children than 5 years ago will start secondary school secure in reading, writing and arithmetic.
School Reform Minister Nick Gibb today congratulated pupils and teachers after improved results in tests taken by 11-year-olds in reading, writing and maths.
The figures show that for this year’s key stage tests (taken in May by 550,000 children in their final year of primary school):
-
4 out of 5 11-year-olds (79%) achieved at least the expected level (level 4) in reading, writing and arithmetic (
3Rs
) - up from 3 out of 4 (75%) last year, and just 6 in 10 (62%) in 2009
-
almost a quarter (24%) exceeded the expected level in the
3Rs
- up from a fifth (21%) last year, and from just 1 in 8 (13%) in 2009
Comparisons with 2010, in terms of numbers, are not possible because a quarter of primary schools did not administer the tests that year.
It means that:
-
81,000 more children than in 2009 are meeting the expected standard in the 3 Rs (440,000 this year compared to 359,000 in 2009)
-
59,000 more children than in 2009 are exceeding the expected standard in the 3 Rs (134,000 this year compared to 75,000 in 2009)
This is against a backdrop of higher aspirations that all children achieve their potential, including:
-
a new test in spelling, punctuation and grammar (introduced last year)
-
the banning of calculators from maths tests (for the first time this year)
-
higher floor standards (up to 65% this year)
And there were improvements in each of the individual subjects:
-
reading - 9 out of 10 children (89%) reached at least level 4 (up 3 percentage points from last year) and half exceeded that (up 5 percentage points)
-
spelling, punctuation and grammar - three-quarters (76%) reached at least level 4 (up 3 percentage points from last year) and more than half (52%) exceeded that (up 5 percentage points)
-
maths - almost 9 out of 10 (86%) reached at least level 4 (up 1 percentage point from last year) and 4 in 10 exceeded that (up 1 percentage point)
-
writing (teacher-assessed) - almost 9 out of 10 (85%) reached at least level 4 (up 2 percentage points from last year) and two-thirds exceeded that (up 3 percentage points)
School Reform Minister Nick Gibb said:
80,000 more children than 5 years ago will start secondary school this year secure in the basics - and able to move on to more complex subjects. It means in the long term these children stand a far better chance of winning a place at university, gaining an apprenticeship and securing good jobs.
We have set unashamedly high expectations for all children, introduced a new test in the basics of punctuation, spelling and grammar, and removed calculators from maths tests.
Today’s results show teachers and pupils have responded well to the higher standards our education reforms have demanded. Our education system is beginning to show the first fruits of our plan for education, helping to prepare young people for life in modern Britain. There is more to do but teachers and pupils deserve huge credit for such outstanding results.
Good results in key stage 2 tests lay the foundations for better
GCSE
results:
-
latest figures (for 2013) showed that 57% of pupils who achieved at least level 4 at aged 11 in English and maths went on to achieve at least 5 or more
GCSEs
at C or better including English and maths.
Percentage of pupils reaching level 4 or above
|
Subject
|
2009
|
2010
|
2011
|
2012
|
2013
|
2014
|
|
Reading
|
86
|
83
|
84
|
87
|
86
|
89
|
|
Maths
|
79
|
79
|
80
|
84
|
85
|
86
|
|
Spelling, punctuation and grammar
|
n/a
|
n/a
|
n/a
|
n/a
|
74
|
76
|
|
Writing
|
n/a
|
n/a
|
n/a
|
81
|
83
|
85
|
|
3Rs
|
62
|
64
|
67
|
75
|
75
|
79
|
Note: From 2012, writing teacher assessment replaced writing tests. The spelling, punctuation and grammar test was introduced in 2013.
Notes to editors
-
The tests were taken by 557,400 year 6 pupils in May this year.
-
The full results: ‘
National curriculum assessments at key stage 2 in England: 2014
’.
-
Changes to the administrative process of marking tests may happen from year to year and care should be taken when comparing results between years. Readers’ attention is drawn to guidance within the
SFR
on the impact of changes when comparing this year’s results with other years.
-
Information about the KS2 floor standards: ‘
Package of primary school measures will raise ambition - and standards
’


Display Resource (CPU/Memory/Storage) usage.
The top command allows you to see the resource consumption for nodes or pods.
This command requires Metrics Server to be correctly configured and working on the server.
kubectl top [flags] [options]
Use "kubectl <command> --help" for more information about a given command.
Use "kubectl options" for a list of global command-line options (applies to all commands).


Class Scene
Represents a Scene / frame of a Graphics surface.
Implements
Inherited Members
Namespace: GameOverlay.Drawing
Assembly: GameOverlay.dll
Syntax
public class Scene : IDisposable
Constructors
| Improve this Doc View SourceScene(Graphics)
Initializes a new Scene using a Graphics surface
Declaration
public Scene(Graphics device)
Parameters
| Type | Name | Description |
|---|---|---|
| Graphics | device | A Graphics surface |
Properties
| Improve this Doc View SourceDevice
The Graphics surface.
Declaration
public Graphics Device { get; }
Property Value
| Type | Description |
|---|---|
| Graphics |
Methods
| Improve this Doc View SourceDispose()
Releases all resources used by this Scene.
Declaration
public void Dispose()
Dispose(Boolean)
Releases all resources used by this Scene.
Declaration
protected virtual void Dispose(bool disposing)
Parameters
| Type | Name | Description |
|---|---|---|
| Boolean | disposing | A Boolean value indicating whether this is called from the destructor. |
Equals(Scene)
Returns a value indicating whether two specified instances of Scene represent the same value.
Declaration
public bool Equals(Scene value)
Parameters
| Type | Name | Description |
|---|---|---|
| Scene | value | An object to compare to this instance. |
Returns
| Type | Description |
|---|---|
| Boolean | true if |
Equals(Scene, Scene)
Returns a value indicating whether two specified instances of Scene represent the same value.
Declaration
public static bool Equals(Scene left, Scene right)
Parameters
| Type | Name | Description |
|---|---|---|
| Scene | left | The first object to compare. |
| Scene | right | The second object to compare. |
Returns
| Type | Description |
|---|---|
| Boolean | true if |
Equals(Object)
Returns a value indicating whether this instance and a specified Object represent the same type and value.
Declaration
public override bool Equals(object obj)
Parameters
| Type | Name | Description |
|---|---|---|
| Object | obj | The object to compare with this instance. |
Returns
| Type | Description |
|---|---|
| Boolean | true if |
Overrides
| Improve this Doc View SourceFinalize()
Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.
Declaration
protected void Finalize()
GetHashCode()
Returns the hash code for this instance.
Declaration
public override int GetHashCode()
Returns
| Type | Description |
|---|---|
| Int32 | A 32-bit signed integer hash code. |
Overrides
| Improve this Doc View SourceToString()
Converts this Scene to a human-readable string.
Declaration
public override string ToString()
Returns
| Type | Description |
|---|---|
| String | A string representation of this Scene. |
Overrides
Operators
| Improve this Doc View SourceImplicit(Scene to Graphics)
Converts a Scene to a Graphics surface.
Declaration
public static implicit operator Graphics(Scene scene)
Parameters
| Type | Name | Description |
|---|---|---|
| Scene | scene | The Scene object. |
Returns
| Type | Description |
|---|---|
| Graphics |


Expansion panels contain creation flows and allow lightweight editing of an element.
An expansion panel is a lightweight container that may either stand alone or be connected to a larger surface, such as a card.
They may be used for a variety of tasks, such as:
Editing, Creating flows
Expand, Collapse, Focus
An expansion panel is a lightweight container that may either stand alone or be connected to a larger surface, such as a card.
Expansion panels are best used for lightweight editing of an element, such as selecting a value for a setting.
For example, an app that contains tables may use expansion panels to adjust settings on table elements.
Expansion panels may be displayed in a sequence to form creation flows.
For example, a tool for creating ad campaigns may display a series of expansion panels to collect campaign details.
Various Expansion panels
List content15sp Roboto Regular Secondary content12sp Roboto Regular |
Divider1dp border Expand icon24dp x 24dp |
A collapsed panel displays summary information. Upon selecting the collapsed panel, it expands to display the full expansion panel.
Example of a collapsed panel
An expansion panel may use a focus state (by using a grey background on the list item) to provide focus to individual list items.
On a keyboard, users may traverse through list items by using the Tab key.
Grey 200
24dp x 24dp
54% black
Font: Roboto Regular 15sp
Top and bottom padding: 16dp
Left and right padding: 24dp


‘Not true’ - Wolves issue clear response to £13m transfer claim
Wolverhampton Wanderers transfer news | WWFC have been linked with a move for the 19-year-old midfielder
by Alex Dicken, https://www.facebook.com/alexdickenjournalist/?fref=tsWolverhampton Wanderers have categorically denied any interest in Swedish midfielder Dejan Kulusevski.
The 19-year-old, who plays his club football for Serie A side Atalanta on loan from Parma, has been linked with a host of Premier League clubs including Manchester City and Arsenal.
And, according to reports earlier this month, Wolves had joined the race for Kulusevski with boss Nuno Espirito Santo ready to sanction a £13million offer.
Wolves latest
This is your round up of all things Wolves; the one-stop shop that will keep you updated on the latest goings on at the club and beyond.
Transfers, injuries, match-days and managers, we’ve got you covered.
We’ll be bringing the very latest on Wolves throughout the week and around the clock.
Make sure you keep yourself updated with our handy daily catch up...
Must reads...
- Wolves send Franck Kessie message - READ
- Goalkeeper linked - READ
- Wolves linked with wonderkid - READ
- Wolves' January priorities - READ
- Raul joins illustrious names - READ
For all your latest WWFC news, opinion, analysis and transfer gossip, click here
You can follow our Wolves reporter Alex Dicken on Twitter, and his email address is<EMAIL_ADDRESS>Head of recruitment John Marshall has refuted those claims, however, and insists the Swede isn’t someone who is currently on Wolves’ radar.
“I also read this indiscretion, but it is not true,” Marshall told TMW at a scouting convention in Amsterdam. “He is not a player that interests us."
Wolves dipped into Serie A during the summer to sign Patrick Cutrone, Bruno Jordao and Pedro Neto, with the former signed from AC Milan for a fee that will reach £20million.
On Cutrone, Marshall said: "He has everything to become more and more a protagonist of our reality. And besides he is a player much loved by the fans, in the field he always gives everything. We are very satisfied with him.”


Brandon Kuchnicki: Why hello there fine travellers. Welcome to our game, Brandon Shaved Yesterday. Now, I know what your thinking. "Hey, that guy is Brandon. Did he shave yesterday?" Well my friend, no. I did not.


Let's Play Pig Dice!!
Enter Player1
Enter Player2
Submit
's Score:
0
Player
's Turn
Score for this Turn:
Roll Result:
(Re)Roll for More Points!
Stop rolling and keep points...
's Score:
0
Player
's Turn
Score for this Turn:
Roll Result:
(Re)Roll for More Points!
Stop rolling and keep points...


Toggle navigation
PUBT
Home
MA
CS
ENG
PHY
MGMT
STAT
Others
Submit
Join us
Sign up
Sign in
Login
Search
Post


@header@
| blogger.newPost | |
Antblog includes a task that can post a new blog entry to any MetaWeblog API compatible blog. The task definition is as follows.
<taskdef name="metaWeblog.newPost" classname="pebble.ant.metaweblog.NewPostTask"/>The following example shows how to use it in a target. <metaWeblog.newPost url="http://localhost:8080/blog/xmlrpc" blogid="test" username="simon" password="password" title="Posting with MetaWeblog API" content="${content}" category="java" /> |


Stress test on Company Demo with Jmeter in Kubernetes Cluster
Background
Stress test is an effective way to evaluate the performance of web applications. Besides, more and more web applications are decomposed into several microservices and performance of each microservice may vary as some are compute intensive while some are IO intensive.
Stress test on web application based on microservice architecture plays a more important role. This blog will evaluate the performance of our company demo using JMeter 3.2(a powerful stress test tool) in Kubernetes cluster.
From the last post, we figured out the Manager service demands the most of the resources. Hence, in this plan, we will dig deeper into performance test on the Manager service.
Test Plan
Our JMeter test plan is:
-
Handle the authentication before stress tests as the authentication may introduce serious delay.
-
Keep visiting services in Company demo concurrently, push stress on the Manager services by QueryWorker, QueryBeekeeperDrone, QueryBeekeeperQueen HTTP request generator.
You can get the test plan from github.
git clone https://github.com/ServiceComb/ServiceComb-Company-WorkShop
cd ServiceComb-Company-WorkShop/stress-tests
At the very first of our test plan, we set up some global configurations that shared among all thread groups. The CSV Data Set Config loads our target server information from a local csv file. The HTTP Request Defaults sets up the default host and port in every request. The User Defined Variables defines variable that shared globally. The HTTP Header Manager adds headers define inside it to every request.
Then comes to the setUp thread group. It does the authentication job. The build-in way to authenticate in JMeter is the HTTP Cookie Manager as cookie is being used widely over web applications. However, our workshop demo uses the token based authentication instead of cookie based authentication. We need to take a detour to get authenticate done in JMeter. The Remove header pre processor uses the following script to avoid unnecessary headers being injected into login requests.
import org.apache.jmeter.protocol.http.control.Header;
sampler.getHeaderManager().removeHeaderNamed("Authorization");
Then we retrieve login credential in the Set up Login request. The authorization_extractor is a Regular Expression Extractor used to extract the value of Authorization header. As variables can not pass from one thread group to another, it need to convert to the global property and the script in BeanShell PostProcessor does the job.
${__setProperty(Authorization,${Authorization},)}
The last part of our test plan is the stress tests perform on our services. We test three endpoints as they all pass from the manager service to the other two microservices, namely worker and beekeeper. Before we test, we disable the caching capability by enabling StressTest profile in manager so that the worker service and beekeeper service can serve the incoming computing task all the time. Besides, we simplify the computing task by setting the request argument to be just 1.
Test Steps
-
Start the Company demo in the Kubernetes cluster without resource limits.
-
Replace the content of hosts.csv file with the IP address and port of the Company demo running in the Kubernetes cluster. The content in hosts.csv is:
<IP_ADDRESS>,8083
-
Run the tests. Using 200 threads to generate requests concurrently, and set the duration to be 600 seconds.
jmeter -n -t workshop.jmx -j workshop.log -l workshop.jtl -Jthreads=200 -Jduration=600
Test Results
The performance among various concurrency is as follows:
fig-2 shows that performance of manager service remained stable until it reached the bottleneck(at concurrency of 15), it speeds up to about 1000 requests per seconds while keeping the average response time low. Later on, as the concurrency increased, the average response time increased dramatically. The response time statistics can be helpful when evaluating the circuit-break timeout settings.
fig-3 shows the average response time of different services. As the beekeeper service relies on the worker service, it had a longer response time than the worker service.
To find out why the performance stuck at the concurrency of 15, we checked the monitor data from Heapster as fig-4 shows. Apparently, manager service became the bottleneck of the whole system. It reached the maximum cpu load when the throughput was around 1000 req/s. Other services increased much slower than manager service and required less resources.
As manager service logs directly to the stdout and the JMeter test client running on a single host may not simulate enough concurrency simultaneously. As such, we tested on different scenes of log settings(log4j1 stdout, log4j2 stdout, log4j2 asynchronous, none) at the concurrency of 200. The asynchronous log settings in log4j2.xml file is as follows:
<?xml version="1.0" encoding="UTF-8" ?>
<Configuration status="INFO">
<Appenders>
<RandomAccessFile name="RandomAccessFile" fileName="manager.log" immediateFlush="false" append="false">
<PatternLayout pattern="%d [%p] %m %l%n"/>
</RandomAccessFile>
</Appenders>
<Loggers>
<asyncRoot level="info">
<AppenderRef ref="RandomAccessFile"/>
</asyncRoot>
</Loggers>
</Configuration>
Besides, we also need to add the disruptor dependency to enable the asynchronous log settings.
<dependency>
<groupId>com.lmax</groupId>
<artifactId>disruptor</artifactId>
<version>3.3.6</version>
</dependency>
The none log settings just replace the info logging level to off in the above setting. We also tested on distributed JMeter test client environment. Running Jmeter in distributed mode takes two steps:
-
run JMeter slave on each test node, the command is as follows:
jmeter-server -Djava.rmi.server.hostname=$(ifconfig eth0 | grep "inet addr" | awk '{print $2}' | cut -d ":" -f2)
-
run JMeter master, the command is as follows:
jmeter -n -R host1,host2 -t workshop.jmx -j workshop.log -l workshop.jtl -Gmin=1 -Gmax=2 -Gthreads=200 -Gduration=600
Note: JMeter property does not work in distributed mode. It needs to be declared as a global property. That’s why We use -G option here instead of -J option.
The results are as follows: From the above figure, we can conclude that:
-
The performance in JMeter distributed mode and single mode are so close, it seems that a single JMeter test client is able to simulate enough concurrency for the current test.
-
The log takes up too many computing resources when directly output to stdout and the asynchronous way has improved nearly 100% throughput of the original. Seems like using the synchronous log settings may not be wise in production environment.
-
The log4j2 has improved about 40% throughput of the log4j1 and reduced a small amount of memory. Hence, it’s recommended to replace the log4j1 with log4j2 for the sake of performance.
Although the asynchronous way save us much computing resources, it takes up a great deal of memory in the meanwhile as fig-5 shows.
fig-6 shows the memory usage of different services during tests. As company demo is a simple use case, the memory usage remained quite stable during tests. Comparing to memory usage of the bulletin board service(written in go), other services written in Java take a great deal of memory.
Conclusions
Stress test on applications can help us find out the potential problems in our services before our services run in production environment. It simulates the production environment and validates whether our services meet the specification requirements. We can tune our pod deployment settings based on the stress test result to system’s maximum throughput while keeping SLA.
Applications based on microservice architecture become much more flexible not only on design, programming and tests, but also on deployment. Services based on microservice architecture make resources scale up and down extremely fast. We can choose different specifications of machine and different replicas for different services according to the maximum throughput to save resources. Besides, the scalability of cloud makes services handle visit storm easily.
Leave a Comment
Your email address will not be published. Required fields are marked *


I am Qiniso Makhaye, a male student from the University of KwaZulu-Natal with a genuine interest in software development with desired competencies in entrepreneurship, experimental skills and intrinsic motivation to create. I’m attributed with knowledge to disseminate complex problems whilst integrating the application knowledge to the domain and infusing various thinking patterns acquired through experiences in other domains or previous enrolled projects, with emphasis on elegant and simple solutions, and such, pursuit of excellence Exquisite grasping qualities and attention to detail that enables me to work specifically with clarity, and precisely to completeness of a task as I am result oriented. I tend to utilize my thoughts rather than emotions, therefore obtaining a solution to problem by arranging ideas and objects in consecutive order before making a recommendation. Can be analytic, objective, just and task orientated, and concern with fairness, looking down upon emotional decision making. A balance of empirical and innovation, but rely more on my senses or on what I perceive on my intuition; therefore preferring that which realistic, tangible, immediate and concrete. I tend to assess most events in terms of their past or present value. I'm also sensible and down to earth, and I enjoy the present moment. Structured as I have the need for completion, prioritizing, anticipating and planning. Can be quick, regarding decision making as well, and prefer to complete one task before starting with next. I very much enjoy making lists and respect deadlines as I am time conscious.
Work orientation best described as an efficient investigator, looking for discrepancies that stand in my way of goal achievements. I’m practical, responsible, trustworthy and careful and comfortable issuing orders, directives and structure. Very loyal and I admire belonging to a group, and can be vulnerable to criticism. Hard working individual who likes predictability – changes may interrupt my steady and direct focus. Ideal circumstances for me would be a structured, stable and orderly environment where everybody knows what has to be done, who is to do it, and by what completion deadline. Rarely see the world in terms of grey, either black or white. I value traditions because I value rituals, ceremonies and celebrations in providing sense of belonging. Opportunities for growth I may overlook the long-range implications in favor of day-to-day operations. Focused on facts, data and details; which may cause people to perceive me as cold and my objectivity may be seen as criticism and dislike. Favorable learning style is through concrete and specific methods, in which I exercise accurate observation. Foretasting a flourishing career that will expose me to experienced professionals while empowering me with considerable knowledge and aptitude to triumph, I'm outfitted with comprehensive knowledge and proficiency in: design, modelling and implementing; software and systems development, and project management to name a few; and I have an impressive work ethic, focus, peoples skills, adaptive thinking abilities, pro-activity and self-motivation.
Computer Science & Information Technology
Object oriented programming, Artificial intelligence, Theory of computation, Computer Systems, Advanced Programming and Data
Structures, Use of third party libraries and Programming modular programs.
Logical system design, Internet Technologies, Software Development,
Web based processing, Business Intelligence Reporting, Database Driven Websites, C# and Database Connectivity.
Discrete Mathematics and Calculus.
Web Developer
JULY2017 – DEC2017
Examination Assistant (UMgungundlovu District)
NOV2015 – DEC2015
Project Officer
FEB2016 – NOV2016
Treasurer
FEB2015 – NOV2015
Front End System & Website
Implementation of requirements that have been negotiated with the client.
As Expert Technology, we were required to try and complete as much of the system coding as possible so that as many features as possible can be demonstrated to the client.
The front end system had to satisfy as many of the functional user requirements as possible. While there is a bit of compromise in terms of the system completeness, all main functional requirements had to be fully developed and demonstrated.The overall system focus was to demonstrate how the system will support managerial decision making. The implementation plan was that the transaction processing data required to underpin the decision making capability of the system, is efficiently captured by the current front system.
The website had to have an intuitive menu/navigation system using web-specific interface design principles. Transaction processing/data capture/manipulation facility – The requirement here was that the Website must facilitate read/write/update processing on group system database. Database connectivity - both the front-end and web applications should demonstrate the ability to read, write, update and delete from a single database.
Pacman Application
Design and implement a C++ application that will be used to facilitate sessions
of a new version of the Pacman game in which the player is either a bot or a human player.
System had to be developed in a manner that facilitates the fulfillment of the following specific requirements:
The use of graphical user interfaces and graphics for displaying the board and player moves.
Unique adaptation of Pacman - modify the game into our own way. Longitudinal data storage – for example, capturing game data over time or session saving. Data analysis and reporting – for example, the use of graphs
and charts to display game statistics. System configuration – for example, settings that allow the user to customize the game. Game levels - after completing one level, a player should advance to more challenging levels.


Lucas Yasunaga
Selected Exhibitions and Performances 1/2023 Jeenhe / Sarubia Project Space / Seoul, South Korea Collaborative performance with Hyeree Ro 4/2022 Para Figuration / Pfizer building / Brooklyn, NY Group exhibition 4/2022 Vessel for 10 suns / Tsai CITY / New Haven, CT Solo exhibition and performance 4/2022 THE RED ROOM in your room / High Zero Foundation / Baltimore, MD Virtual performance 3/2022 Yale School of Art Thesis Exhibition Next Day Soup / New Haven, CT Group show 2021 Imaginary Network Topologies / virtual Sound performance 2020 High Zero Festival / High Zero Foundation / Baltimore, MD Solo Performance 2020 Ambient night / The Undercroft / Baltimore, MD Performed a sound piece in a bill with owlsatnoon, the unknown sound collective, Gardener with Rae Whitlock 2020 THE RED ROOM / Baltimore, MD Performed a sound piece in a bill with Sonoscopia and Stephan Maier 2019 Wunderkammer / LeMondo / Baltimore, MD Sound performance 2019 floristree / Baltimore, MD Performed a sound piece in a bill with K. Mulhern, Sunatirene and Michelle Luong 2019 New Works / The Red Room / Baltimore, MD Video piece screening 2019 Watch This Bumper Crumple / Collision's Craft / Baltimore, MD Group exhibition 2018 Sara Grose presents, Celestial, Terrestrial / The Maryland Space Grant Observatory / Baltimore, MD 2018 Enigmatic Group Therapy / Interstate Project / Brooklyn, NY Group Exhibition 2017 oogle demonstration / New America, Baltimore MD Visual and musical performance 2017 New Works / The Red Room / Baltimore, MD Visual and musical performance 2015 lightness / penthouse gallery / Baltimore, MD Sculptures and musical piece 2015 Man Living Under Rug / Artist-Run Art Fair, Open Space / Baltimore, MD Sculpture Installation 2015 TALKSHOW / Bb / Baltimore, MD Live talk show co-hosted with Jake Lazovick 2015 My Heart is Empty / Peregrine Program / Chicago, IL 2014 jimmi~research / Springsteen Gallery / Baltimore, MD Writing, light installation, research objects 2014 intermission / Lil’ Gallery Baltimore, MD Performance event of communal food making 2014 A Night of Satie / Lil’ Gallery / Baltimore, MD 2014 Commencement Exhibition / station building, MICA / Baltimore, MD 2014 Material Study Movement Performance / BBOX, MICA / Baltimore, MD 2013 Byte Marks / Tank Gallery / Baltimore, MD 2013 Casual Friday / Middendorf Gallery, MICA / Baltimore, MD 2012 Vocabulary of Space / in/flux gallery / Baltimore, MD 2012 Fleam Tooth - Woodshop Work / Middendorf Gallery, MICA / Baltimore, MD Artist Talks 4/2022 Visiting Artist Talk / University of Texas / Virtual Presentation 2021 Visiting Artist Talk / Maryland Institute College of Art / Virtual Presentation 2020 Walk in the Park / Maryland Institute College of Art / Interactive Arts / Audio Interview 2014 Gallery 788 / Z0 Digital Fabrication and New Language of Materiality / Baltimore, MD USA projects 2014-16 bb / Co-founder of artist run multi-purpose project space / Baltimore, MD Co-organized Drawing Night, Lecture Series, and TALK SHOW Awards 2022 Yale School of Art George R. Bunker Award 2014 Louis Abbene-Meagley ‘13 Prize in Digital Fabrication 2010-14 Maryland Institute College of Art General Grant 2012-14 Interdisciplinary Sculpture Award Press Baltimore’s High Zero 2020 Brings Spontaneous Music Making Online / I CARE IF YOU LISTEN Seeing What Happens: High Zero Goes Virtual / BmoreArt Is Touching Sculpture Sexier After Zoom Fatigue? / Hyperallergic Education Yale School of Art - New Haven, CT Master of Fine Arts 2022, Sculpture Maryland Institute College of Art (MICA) - Baltimore, MD Bachelor of Fine Arts, Interdisciplinary Sculpture 2014 MICA Dean’s List 2010-2014 Teaching and Workshop 2022 Teaching Assistant for performance class “Doing” / Yale School of Art 2021 Teaching Fellow for a fabrication class for engineers / Yale University 2019 Robotic Arts Introduction / Maryland Institute College of Art 2018 Robotic Arts Introduction / Maryland Institute College of Art 2017 Robotic Arts Introduction / Maryland Institute College of Art 2014-15 3D printer build workshop / jimmi~research


6th edition
In the rapidly changing digital world it's critical for organizations to not only develop products that solve foundational business problem but are also flexible enough to accommodate new features rapidly. As capabilities such as analytics, mobile first, internet of things become mainstream, it's essential for solution owners to develop a vision for the product even before the first feature is live.
So what does a product mindset involve? Can it only be applied in a product company? Can product thinker's approach reduce incremental costs and improve the solutions delivered, even in a services engagement?
Let's come together for the 6th edition of Converge to learn and share our experiences around product thinking, it's value and the potential pitfalls. We aim to uncover and understand practices that can be emulated by Analysts and Consultants thereby nurturing a successful product.
As a PARTICIPANT, you will connect with like-minded peers and gain insight from industry practitioners.
If you have any questions/suggestions write to us at<EMAIL_ADDRESS>03:00 pm
Welcome and Registrations
03:15 pm
Keynote Address
By: Avinash Chugh
03:30 pm
Product Management in the Context of Consulting
What does it mean to be a Product Manager in a consulting company? What skills are needed? How will you make a difference to your firm and client?
By: Dinker Charak
04:30 pm
Managing Product Innovation in Large Enterprises
What are the various ways in which companies innovate and how has innovation evolved in IBM? What should be the key focus areas of managing innovation in large product companies?
By: Arun Joshi
05:00 pm
Break
05:15 pm
FishBowl: Transitioning to a Product Thinker
A group discussion with a 'difference'! Be ready to talk about & listen to the various aspects of Product thinking.
By: Kshama Tikmani & Jagbir Singh Lehl
06:00 pm
Building a world-class product suite through market collaboration
A great product team can deliver a successful product only if there is a strong partnership with the market. This talk will cover the key aspects of forging an effective collaboration with the market and leveraging on that alliance in the product development process.
By: Nishith Agrawal
06:45 pm
Workshop: Product In a Box
An interactive game-play enabling participants to consider competing criteria when designing a product.
By: Bijesh Vijayan & Ankur Arora
07:45 pm
Networking Dinner


Registration
Department:
Computer
Mechanical
Civil
Chemical
Electrical
Information Technology
Electronics and Telecomunication
Others
Gender:
Male
Female
Semester:
1
2
3
4
5
6
7
8


I decided to cover the issue of diversity in tech. As you may know, there isn’t a lot of it in the industry, which is a huge problem. Tech jobs are some of the highest paid, however, most tech employees are white males. Females, Latinos, and African Americans are disproportionately left out of the tech industry.)
While the break down in the united states of males to females is almost 50-50, companies such as Microsoft, Salesforce, and Intel’s gender breakdown shows only a maximum 30% of their workforce are women. Ndivia hires only 16% women, with the rest being male. Pandora is a pioneer in this issue, with 49% of their workforce being women.
The statistics for racial minorities are much lower. Latinos make up 16% of the US population, and African Americans make up another 12%. However, for many of the major social networks (Facebook, Pinterest, Twitter, google+, Instagram, Tumblr, LinkedIn, Flickr, and Youtube), the highest percentage of latinos working at any one of those companies is 4%. For African americans, the highest percentage is 2%. At google, one of the most influential of tech companies, says it welcomes and promotes diversity. However, only 3% and 2% of their workforce is Latino and Black, respectively. Yet both these groups have high graduation rates from colleges with computer science and engineering degrees. Why is it that they aren’t being hired?
Some solutions include better inclusion programs in companies for minorities and women. Diversity boards, retreats, specialized and targeted open houses, and trainings for women and minorities would greatly enhance the interest from those groups in the tech industry. Since the stats are so low, many of us believe there is no place for minorities and women in the work place. Tech companies should take special initiative, something like Affirmative Action, to get these groups of people empowered and in positions of importance in tech companies.
source http://www.informationisbeautiful.net/visualizations/diversity-in-tech/


The institute is committed to the challenging task of development of technical education by preparing seasoned graduates in highly sophisticated field of engineering and technology. Development of India as an emerging industrial power is a demanding exercise as it involves the combination of cost effectiveness and efficiency along with producing world-class technology at the cutting edge. For about five decades we have been doing it with sincerity and commitment at NIT Raipur. At present the institute offers graduate level courses in twelve disciplines.


A SingleValue option type refers to the options that have only one option value.
For example, in the C# compiler options, there is an option called /target, it has four different values that can be used: exe, winexe, library and module. When use this option to specify the output target, we must use /target:xxx, where xxx stands for exe, winexe, library or module. So, the /target option will have a single value defined along with it.


Here's what I'm doing now
I'm living in my home town of Huntington Beach, CA working as a senior developer at Gigasavvy.
Some of the things I am focusing on:
- Learning Ruby
- Weight training and focusing on maintaining a healthy and active lifestyle
- Completing at least one productive thing every day of the week. I find that I end up getting multiple things done with this mentality, especially on the weekends.
Photo taken in Laguna Beach, CA
This is a now page, pioneered by Derek Sivers. It
tells what I am focused on at this point in my life. I update this
page as frequently as my priorities change. You can read more about
now pages here.
Last Updated July 7, 2018


| User name | {{auth.currentUser.fullname}} |
| User OpenId | {{auth.currentUser.openid}} |
| {{auth.currentUser.email}} | |
| Role | {{auth.currentUser.role}} |
| Company Name | |
| Company website | |
| Primary Contact Name | |
| Primary Contact Business email | |
| Primary Contact Postal Address | |
| Primary Contact Phone Number |
| {{pubKey.format}} | {{pubKey.shortKey}} | {{pubKey.comment}} |


Center For Engineered Therapeutics - Trainees
PHD STUDENTS
RESEARCH TRAINEES
Shreya
Kewalramani
Research Trainee
Elaine
Lin
Research Trainee
Niranjani
Komethagavel
Research Trainee
Uthra
Balakumar
Research Trainee
Yewon
Lee
Research Trainee
Premika
Amudhan
Research Trainee
Sarenya
Anandaraj
Research Trainee
Kirthika
Gopinathan
Research Trainee
Wafiqah
Zubair
Research Trainee
Lakshitha
Pushparaj
Research Trainee
Mira M.
Krishnan
Research Trainee
Balaaji
B S
Research Trainee
Bhavana
Anilkumar
Research Trainee
Rishabh
Singhi
Research Trainee
Kevin
Cho
Research Trainee
Harshada
Bharadwaj
Research Trainee
Swathisri
Venkatesh
Research Trainee
Annesha
Dutta
Research Trainee
Ananya
Jain
Research Trainee
Tarun
Frank
Research Trainee
Oviya
Vijayarangam
Research Trainee
Nithiyashree
Sundararaj
Research Trainee
Vahulabaranan
Rajagopalan
Research Trainee
Ajitha
Nayac
Research Trainee
Krithika
Kumar
Research Trainee
Abishek
Sureshkumar
Research Trainee
Sephalika
Padhi
Research Trainee
Astralina
Sibiyon
Research Trainee
Nithin Karthic
Balaji
Research Trainee
Anna Mathew
Lawrence
Research Trainee
Prakhar
Bharadwaj
Research Trainee
Sreyank
Tirunagari
Research Trainee
Karthik
Viswanathan
Research Trainee


PRAVIN KUMAR
Full stack Web Developer / Blockchain Engineer
card_membership
school
work
create
contacts
Hi, This is pravindia from India
card_membership
keyboard_backspace
Skills
Full Stack Developer
HTML , SASS , JS , Node JS , Mongo DB , DialogFlow , Git , CLI , Python ,Electron JS
Blockchain Enthusiast
Hyperledger Composer, Fabrics, ChainCode
school
keyboard_backspace
Education
Sri Sairam Institute of Technology - BE (2014-18)
Vivekananda Hr. sec. School - +2 (2012-14)
Vivekananda Matric. School - 10th (2012)
work
keyboard_backspace
Work
Freelancer at Smazee
create
keyboard_backspace
BLOG
Code loves me
Simple steps to design stunning responsive webpages.
Understanding Consensus Algorithm
PWA / Progressive Web Apps
contacts
keyboard_backspace
CONTACT
<EMAIL_ADDRESS>+91<PHONE_NUMBER>


{% extends 'base.html' %} {% import 'publication_list_macro.html' as publist with context %} {% import 'video_list_macro.html' as vidlist with context %} {% import 'related_list_macro.html' as relist with context %} {% block title %}Neural Reckoning Group{% endblock %} {% block main %}
The Neural Reckoning Group is led by Dan Goodman at Imperial College London.
We aim to understand the brain, and intelligent behaviour more widely, via theoretical and computational models.
We are particularly interested in spiking neural networks and the role they play in sensory processing. Machine learning is essential to our work, as we believe that only by understanding how the brain copes with messy, real-world complexity can we hope to understand what makes it unique. A key part of our work is neuroinformatics, building open source software packages to make our methods freely available to all. For a brief overview of our interests, see the selection of papers, software and organisations below.
We maintain a short list of resources for learning computational neuroscience that might be useful to students and people new to the field.
See more videos here.
{{ vidlist.video_highlight(videos) }}


The WorldWideVibes goal is to provide a positive environment for people of all ages. We strive our best not to cultivate hate in the WorldWideVibes community. By using our servivces, you agree to follow our rules.
Users may not show hate or discrimination towards any user, standard or administrating. Users may not bully or harass others. Users may not reveal or give personal information publicly which includes, but is not limited to: phone numbers, passwords, street or mail addresses, personal email addresses, etc. Users may not post mature content without a warning for younger audiences and audiences that may be disturbed by it.
Failure to follow these rules or to agree to these terms of service may result in the deletion of your account or artwork. In some cases, it may involve law enforcement.


WITNESS LIST Subcommittee on Water Committee April 24, 1997-8:30A HB 394 Registering, but not testifying: On: King, Jack (TX Parks & Wildlife Dep), Austin


Blog
Product
About
Do you want to join our beta?
Learn More
By
Fernando Guirao
—
October 09, 2013
Welcome to Joinity
What's in the box
Hello


This project is about making the interface logic and business logic where the interface logic is a form made by three input places where the end user have to enter three different numbers which are the three lengths of the triangle and one button where the end user click to find which type of triangle.
To be a triangle the sum of two sides taken randomly must be greater than the left one here value1 is the first side, value2 is the second side and value3 is the third side
From these conditions:value1+value2>value3 and value1+value3>value2 and value2+value3>value1.
If any of the three conditions is false there is no triangle and alert will say Not a triangle.
If all these conditions are true, then you have a triangle and the user want to know which type of triangle he made
Conditions to know the type of triangle:


This site was created with Start Bootstrap, Grayscale Theme. The theme is open source, and you can use it for any purpose, personal or commercial.
The solution for fitting the text within a container was done using simple javascript, found in fitText.js.


No Bullet
- List item with a much longer description or more content.
- List item
- List item
List Decimal
- List item with a much longer description or more content.
- List item
- List item
List Lower Alpha
- List item with a much longer description or more content.
- List item
- List item
List Lower Latin
- List item with a much longer description or more content.
- List item
- List item
List Lower Roman
- List item with a much longer description or more content.
- List item
- List item
List Upper Alpha
- List item with a much longer description or more content.
- List item
- List item
List Upper Latin
- List item with a much longer description or more content.
- List item
- List item
List Upper Roman
- List item with a much longer description or more content.
- List item
- List item


{% extends "layouts/_block_content.html" %} {% from "components/breadcrumb/_macro.njk" import onsBreadcrumb %} {% from "components/button/_macro.njk" import onsButton %} {% set page_title = "Help with specific figures" %} {% set breadcrumbsData = [ { "text": "Surveys", "url": "/surveys/todo", "id": "b-item-1" }, { "text": "Help", "url": "/surveys/help/"~short_name~"/"~business_id, "id": "b-item-2" }, { "text": "Help completing this survey", "url": "/surveys/help/"~short_name~"/"~business_id~"/"~option, "id": "b-item-3" } ] %} {% block breadcrumb %} {{ onsBreadcrumb({ "ariaLabel": "Breadcrumbs", "id": "breadcrumbs", "itemsList": breadcrumbsData }) }} {% endblock breadcrumb %} {% block main %}
We do not expect you to spend any great expense or time obtaining the information required.
We use the aggregated data we receive from all businesses to measure changes in the economy so we will accept informed estimates.
Reporting a genuine zero return is as valid as any other figure as we are measuring business trends.


su postgres
Then create a new user:
createuser jim
Enter user's postgres ID or RETURN to use unix user ID: 500 ->
Is user "jim" allowed to create databases (y/n) y
Is user "jim" a superuser? (y/n) y
createuser: jim was successfully added
You can use either the UNIX user ID or the postgres ID to identify users. See the postgreSQL documentation in the "admin" section for a fuller account of users and groups.
The reason for using the command line to create the first user (other than postgres) is that postgres may not have X-Window permission. You can also create users using PgAccess if you are created as a superuser as shown in the example above.


---
layout: post
title: Handy Hack:How to install Perl modules on Linux
tags:
- Linux
- Perl
status: publish
type: post
published: true
meta: {}
---
An excellent series of posts on the Melbourne Perl Mongers mailing list on the correct way to install Perl modules on your RPM or Deb based distro.
Now I know what I was doing wrong and how to fix it. Thanks Mongers
Update: I thought the information was so good I slapped it into Perl Net.


---
layout: components
title: Headers
---
{{> navbar-fade}}
Fullheight
Hello there, iam a fullheight Hero !
Get Started
Secondary
Hello there, iam a secondary Hero !
Get Started
Light grey
Hello there, iam a light grey Hero !
Get Started
Grey
Hello there, iam a feature grey Hero !
Get Started
{{> footer-light}}


Canadian iPhone Plans Are a Ripoff
As we all know, the second gen iPhone is coming out July 11th, and this is where us igloo dwelling Canadians are finally getting the chance to get our paws on some hot 3g enabled and oh so cool iPhone. Buttt…. there’s a but.
We already all know that Canadians are getting grossly overcharged for mobile voice and data services, but with the iPhone, things are getting worst. In comparison to what AT&T offers in the US, the iPhone plans that Fido/Rogers offer are ridiculously expensive. I was planning on getting an iPhone myself as my next phone following the announcement that Fido, a Roger’s owned subsidiary, would be offering the Jesus-phone too, but after peeking at the rates, I’ll stick to buying a cheap Nettop and carrying it around. Who the hell is going to pay over 60$ per month for a basic plan here when an unlimited plan in the states it goes for 30$?
The way I’m seeing this, either Apple, Rogers, or both are trying to screw off what they consider a small market.  For people like me who have been patiently waiting for a no-hacks-required iPhone in Canada, this is a giant ball of snot spat right to our faces.
I encourage you to sign the RuinediPhone.com petition for better iPhone plans, and to spread the word on your own web property. In this era where it’s all about coupling data and mobility, we have to fight back. Show some support!


"Jagriti makes it a point to bring about positive social change."
At GCECT, while academic excellence is meant to be uncompromisng, we believe that a significance of literary, cultural as well as sports skill is indelible to an integrated experience of an engineering institution.
After the huge success of the previous editions of Jagriti, this year it is sure to be better and bigger and more vibrant, with the hues of fun, frolic that shall be enhanced with your enthusiastic participation.
The events and competitions at Jagriti have gained sound response over the years. However, we have planned differently by incorporating "Tech-talks" (Technical talks) & "E-talks" (Entrepreneurship talks).
 We at GCECT, holistically promote academic excellence, intellectual discipline wih professional leadership qualities which are quintessential for pristine minded and determined engineers of tomorrow.


Health
Find deals, manage quotes and find everything health insurance related here.
Some more text and stuff to make the box longer asdsd Find deals, manage quotes and find everything health insurance related here.Find deals, manage quotes and find everything health insurance related here.Find deals, manage quotes
and find everything health insurance related here.
Health
Find deals, manage quotes and find everything health insurance related here.
Some more text and stuff to make the box longer
Health
Find deals, manage quotes and find everything health insurance related here.
Some more text and stuff to make the box longer
Health
Find deals, manage quotes and find everything health insurance related here.
Some more text and stuff to make the box longer
Health
Find deals, manage quotes and find everything health insurance related here.
Some more text and stuff to make the box longer
Health
Find deals, manage quotes and find everything health insurance related here.
Some more text and stuff to make the box longer
Health
Find deals, manage quotes and find everything health insurance related here.
Some more text and stuff to make the box longer
Health
Find deals, manage quotes and find everything health insurance related here.
Some more text and stuff to make the box longer
Health
Find deals, manage quotes and find everything health insurance related here.
Some more text and stuff to make the box longer
Health
Find deals, manage quotes and find everything health insurance related here.
Some more text and stuff to make the box longer
Health
Find deals, manage quotes and find everything health insurance related here.
Some more text and stuff to make the box longer


Ate about 125 milligrams in gel caps on rather full stomach. Was probably still a bit stoned from previously smoked pot. Definite alert in about half an hour, some mild psychedelia and definitely the same warm glow as from ecstasy developed. No visuals, but a deeper focus on things and a somewhat widened consciousness.
No problem functioning or interacting with people. I guess most of my friends didn't notice a thing, my eyes seemed pretty normal and I was fully in control of my behavior. Cannabis felt truly wonderful (like with ecstasy, and other phenethylamines...).
Had a good time walking in the midsummer night with a couple of friends who were also doing some chemical research.  We went to a park to smoke the rest of our weed and had fun just being curious.
After a few hours there was still a strong stimulant effect as i rode home by bike. Felt probably a little like being on an SSRI as somebody suggested; I tried citalopram for a couple of days a while ago but didn't like it one bit. This was definitely a better state of mind :)
This gradually subsided and I got to sleep about 8 hours after ingestion with the help of 2mg melatonin and a lot more pot.
The next morning there was a little stretched-out feeling, but felt generally ok. Would probably try a 150-200 mg dose the next time... if a next time ever comes. Interesting stuff anyway, I'm glad I tried it.
Experience Reports are the writings and opinions of the individual authors who submit them.
Some of the activities described are dangerous and/or illegal and none are recommended by Erowid.


{% extends 'peering/internetexchange/_base.html' %}
{% block subcontent %}
{% if instance.are_bgp_sessions_pollable %}
{% include 'includes/alerts_success_danger.html' %}
{% endif %}
{% include 'peering/internetexchange/inc/sessions_table.html' with bulk_edit_url='peering:internetexchangepeeringsession_bulk_edit' bulk_delete_url='peering:internetexchangepeeringsession_bulk_delete' %}
{% include 'utils/search_form.html' %}
Import Peering Sessions
{% if not instance.get_prefixes %}
Unable to find prefixes for this Internet Exchange. You cannot import peering sessions unless you use PeeringDB data.
{% else %}
Do you want to import all peering sessions found on connected routers matching the following prefixes?


| Ticket ID |
Missing Severity |
Missing Closeout |
Request Src Incorrect |
Request Date Error |
Is Open | Date Created |
|---|---|---|---|---|---|---|
| {{ticket.id}} | {% if ticket.is_missing_severity == True %}✔{% else %} {% endif %} | {% if ticket.is_missing_closeout == True %}✔{% else %} {% endif %} | {% if ticket.is_incorrect_request_source == True %}✔{% else %} {% endif %} | {% if ticket.is_negative_response_time == True %}-{% elif ticket.is_large_response_time == True %}+{% else %} {% endif %} | {% if ticket.is_open == True %}✔{% else %} {% endif %} | {{ticket.dttm_created}} |
Check ALL actions on your tickets for both Severity AND Closeout notes!
Request date errors:
A + sign indicates your ticket was in process for over 3hrs. Verify this is intended and adjust accordingly
A - sign indicates your in process time is negative (Adjust your request date/time to be before the ticket was opened!)


Choose an event
Compute score from performance
score:
points
Compute performance from score
points
performance:


{% extends "layout-v2.html" %} {% block pageScripts %} {% endblock %} {% block pageTitle %} NHS Cervical screening management system {% endblock %} {% block header %} {% include '../components/header.html' %} {% endblock %} {% block content %} {{ backLink({ "href": "results", "text": "Go back to results" }) }}
The following results show the manual matches between the lab and system patient details.
Compare the patient details provided by the labs against those held on the system.
| Tameside & Oldham Area code: GMK | with officer | 03368 | 06-02-2020 | 4 | |
| Cumbria Area code: CU | With QC | 03369 | 06-02-2020 | 1 | |
| Wirral Area code: BIK | With officer | 03370 | 06-02-2020 | 89 | |
| Cheshire Area code: CH | file error | 03371 | 06-02-2020 | 52 | |
| Lancashire Area code: LA | Not started | 03372 | 06-02-2020 | 31 | Start matching |
| Liverpool Area code: LIP | file error | 03373 | 06-02-2020 | 53 | |
| Manchester Area code: MAN | Not started | 03374 | 06-02-2020 | 72 | Start matching |
| Rochdale Area code: ROC | with QC | 03375 | 06-02-2020 | 54 | |
| Salford Area code: SLF | Not started | 03376 | 06-02-2020 | 28 | Start matching |
| Sefton Area code: SOP | With QC | 03377 | 06-02-2020 | 63 | |
| Stockport Area code: SPT | Not started | 03378 | 06-02-2020 | 93 | Start matching |
| St Helen's & Knowsley Area code: STL | Not started | 03379 | 06-02-2020 | 83 | Start matching |
| Wigan & Bolton Area code: WIG | With officer | 03380 | 06-02-2020 | 53 |


Photoblog: Making a Senet-Ur Board
Senet-Ur is a hybrid of two ancient games by A4 Games. As its name suggests, it combines the rules and board layout from both Senet and the Royal Game of Ur. I actually quite like the name “Senet-Ur” because it makes me want to pronounce it like “senator.”
Like the beginning of any game, I started with the grid layout.
I then continue with the square designs.
Once done, I coated the board with 3 layers of sanding sealant and polished with beeswax. The pieces and casting tokens are also hand rubbed with beeswax. The brown pieces are stained with several layers of coffee.
I had some issues with the board not quite sitting flat so I added some tripod style legs. This ensures the board will not wobble (unless you press down hard on a corner).
I was quite happy with how the set turned out and even more happy to play a few rounds. I love the creativity of combining two ancient games to produce something that is unique yet familiar.


Utilities (Subsystem of AIMA Code)
The utilities system provides a set of basic functions, macros,
and data types that are used throughout the other systems. For
example, we define the while and for iteration
macros, the two-dimensional point (and operations on it), the queue
and binary tree types, and some debugging and testing code.


PDFMiner is a suite of programs that aims to help extracting or analyzing text data from PDF documents. Unlike other PDF-related tools, it allows to obtain the exact location of texts in a page, as well as other layout information such as font size or font name, which could be useful for analyzing the document. It can be also used as a basis for a full-fledged PDF interpreter.
Features:
Homepage:
http://www.unixuser.org/~euske/python/pdfminer/index.html
Download (source):
http://www.unixuser.org/~euske/python/pdfminer/pdfminer-dist-20080429.tar.gz
(1.8Mbytes)
Svn repository:
http://pdfminerr.googlecode.com/svn/
pdfminer
directory.
$ python pdf2txt.py samples/simple1.pdf <document> <page id="0" bbox="0,0,612,792" rotate="0"> <text x="100.000" y="100.000" font="Helvetica" size="24.000" width="137.352"> Hello World </text> </page> </document>
CMap
.
Here is how:
$ tar jxf CMap.tar.bz2
CMap
directory into the pdfminer
directory.
pdfminer
directory.
$ make cdbcmap
PDFMiner comes with two programs:
pdf2txt.py
and dumppdf.py
.
pdf2txt.py
extracts text contents from a PDF file.
It extracts all the texts that are to be rendered programatically.
It also extracts the corresponding locations, font names,
and font sizes for each text portion in an SGML-like format.
It cannot extract texts embedded within images
(i.e. it does not do optical character recognition).
You can provide a password for protected PDF documents
whose access is limited.
For non-ASCII languages, you can speficy the output encoding (such as UTF-8). Note that not all characters in a PDF can be converted safely to Unicode, as some of them are not included in the current Unicode Standard.
Examples:
$ ./pdf2txt.py samples/naacl06-shinyama.pdf $ ./pdf2txt.py -c euc-jp samples/jo.pdf (extract Japanese texts in vertical writing, CMap is required) $ ./pdf2txt.py -P mypassword secret.pdf (extract texts from an encrypted PDF file with a password)
Options:
-o filename
-p pageno
-p
options are allowed.
By default, it extracts texts from all the pages.
-c codec
-P password
-d
dumppdf.py
dumps the internal contents of a PDF file
in pseudo-XML format. This program is primarily for debugging purpose,
but it's also possible to extract some meaningful contents
(such as images).
Examples:
$ ./dumppdf.py -a foo.pdf (dump all the headers and contents, except stream objects) $ ./dumppdf.py -r -i6 foo.pdf > pic.jpeg (extract a JPEG image)
Options:
-a
-p pageno
-p
options are allowed.
Note that page numbers start from zero.
-r
(raw)
-b
(binary)
-t
(text)
With -r
option, all the stream contents are dumped without decoding.
With -b
option, the contents are dumped as a binary blob.
With -t
option, the contents are dumped in a text format,
similar to repr()
manner. When
-r
or -b
option is given,
no stream header is displayed for the ease of saving it to a file.
-P password
-d
Copyright (c) 2004-2008 Yusuke Shinyama <yusuke at cs dot nyu dot edu>
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
 IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.


Service that implements Google Cloud Text-to-Speech API.
Instantiate the text to speech client.
Inheritance
Methods
from_service_account_file(filename: str, *args, **kwargs)
Creates an instance of this client using the provided credentials file.
Declaration
from_service_account_file(filename: str, *args, **kwargs)
Parameters
| Type | Name | Description |
|---|---|---|
| str | filename |
The path to the service account private key json file. |
| args |
Additional arguments to pass to the constructor. |
|
| kwargs |
Additional arguments to pass to the constructor. |
Returns
| Type | Description |
|---|---|
| <xref:mailto:{api.name>} | The constructed client. |
from_service_account_json(filename: str, *args, **kwargs)
Creates an instance of this client using the provided credentials file.
Declaration
from_service_account_json(filename: str, *args, **kwargs)
Parameters
| Type | Name | Description |
|---|---|---|
| str | filename |
The path to the service account private key json file. |
| args |
Additional arguments to pass to the constructor. |
|
| kwargs |
Additional arguments to pass to the constructor. |
Returns
| Type | Description |
|---|---|
| <xref:mailto:{api.name>} | The constructed client. |
list_voices(request: google.cloud.texttospeech_v1.types.cloud_tts.ListVoicesRequest = None, *, language_code: str = None, retry: google.api_core.retry.Retry = <object object>, timeout: float = None, metadata: typing.Sequence[typing.Tuple[str, str]] = ()) -> google.cloud.texttospeech_v1.types.cloud_tts.ListVoicesResponse
Returns a list of Voice supported for synthesis.
Declaration
list_voices(request: google.cloud.texttospeech_v1.types.cloud_tts.ListVoicesRequest = None, *, language_code: str = None, retry: google.api_core.retry.Retry = <object object>, timeout: float = None, metadata: typing.Sequence[typing.Tuple[str, str]] = ()) -> google.cloud.texttospeech_v1.types.cloud_tts.ListVoicesResponse
Parameters
| Type | Name | Description |
|---|---|---|
| cloud_tts.ListVoicesRequest | request |
The request object. The top-level message sent by the client for the ListVoices method. |
| google.cloud.texttospeech_v1.services.text_to_speech.str | language_code |
Optional. Recommended.
BCP-47
language tag. If specified, the ListVoices call will
only return voices that can be used to synthesize this
language_code. E.g. when specifying "en-NZ", you will
get supported "en-" voices; when specifying "no", you
will get supported "no-" (Norwegian) and "nb-"
(Norwegian Bokmal) voices; specifying "zh" will also get
supported "cmn-" voices; specifying "zh-hk" will also
get supported "yue-*" voices.
This corresponds to the |
| google.api_core.retry.Retry | retry |
Designation of what errors, if any, should be retried. |
| float | timeout |
The timeout for this request. |
| Sequence[Tuple[str, str]] | metadata |
Strings which should be sent along with the request as metadata. |
Returns
| Type | Description |
|---|---|
| .cloud_tts.ListVoicesResponse | The message returned to the client by the |
synthesize_speech(request: google.cloud.texttospeech_v1.types.cloud_tts.SynthesizeSpeechRequest = None, *, input: google.cloud.texttospeech_v1.types.cloud_tts.SynthesisInput = None, voice: google.cloud.texttospeech_v1.types.cloud_tts.VoiceSelectionParams = None, audio_config: google.cloud.texttospeech_v1.types.cloud_tts.AudioConfig = None, retry: google.api_core.retry.Retry = <object object>, timeout: float = None, metadata: typing.Sequence[typing.Tuple[str, str]] = ()) -> google.cloud.texttospeech_v1.types.cloud_tts.SynthesizeSpeechResponse
Synthesizes speech synchronously: receive results after all text input has been processed.
Declaration
synthesize_speech(request: google.cloud.texttospeech_v1.types.cloud_tts.SynthesizeSpeechRequest = None, *, input: google.cloud.texttospeech_v1.types.cloud_tts.SynthesisInput = None, voice: google.cloud.texttospeech_v1.types.cloud_tts.VoiceSelectionParams = None, audio_config: google.cloud.texttospeech_v1.types.cloud_tts.AudioConfig = None, retry: google.api_core.retry.Retry = <object object>, timeout: float = None, metadata: typing.Sequence[typing.Tuple[str, str]] = ()) -> google.cloud.texttospeech_v1.types.cloud_tts.SynthesizeSpeechResponse
Parameters
| Type | Name | Description |
|---|---|---|
| cloud_tts.SynthesizeSpeechRequest | request |
The request object. The top-level message sent by the client for the SynthesizeSpeech method. |
| cloud_tts.SynthesisInput | input |
Required. The Synthesizer requires
either plain text or SSML as input.
This corresponds to the |
| cloud_tts.VoiceSelectionParams | voice |
Required. The desired voice of the
synthesized audio.
This corresponds to the |
| cloud_tts.AudioConfig | audio_config |
Required. The configuration of the
synthesized audio.
This corresponds to the |
| google.api_core.retry.Retry | retry |
Designation of what errors, if any, should be retried. |
| float | timeout |
The timeout for this request. |
| Sequence[Tuple[str, str]] | metadata |
Strings which should be sent along with the request as metadata. |
Returns
| Type | Description |
|---|---|
| .cloud_tts.SynthesizeSpeechResponse | The message returned to the client by the
|


$E6BC/59068: Write OK in buffer Jump from $C150, $E0D6: E6BC: 20 23 C1 JSR $C123 ; erase error flag E6BF: A9 00 LDA #$00 ; error number 0 Previous Page / Next Page


Bind the previous tags or add them to the variable (note: each tag will need a property that is is defined in the displayField parameter).
When false it will be disallowd to remove tags (usefull for display purposes), including newly created tags. Defaults to true
When false it will be disallowd to add tags (usefull for display purposes). Defaults to true
When true it will allow to remove the last tag using the backspace when there is no text in the input area. Defaults to false
Shows the given text when no tags are present
Limits the number of tags it can contain
Predefined list of allowed items (each must contain atleast the property defined in the displayField parameter). This can be an Array or an Observable
The minimum length a user needs to type before matching starts. defaults to 1
Enables and set the ability to scroll in the dropdown with options and how much options are available in view. defaults to false and 5
Will emit when tags are added or removed. The event will have a change('add' or 'remove') and a tag property.
event (JSON stringified): {{onTagsChangedOutput}}
Will emit when no more tags can be added
{{onMaxTagsReachedFired ? 'event fired!': 'event not yet fired!'}}
Will emit on every keystroke, the event will be true when no option can be matched
can be matched: {{!onNoOptionsMatchOutput}}


The man who changed the prospect of Bangladesh Cricket
"Cricketers cann't be the hero of the country, we are just enterntainers. Real heros are the peoples like farmars, doctors, scientists who are working day and night for the people of the country."