public class ServerSocket extends Object implements Closeable
The actual work of the server socket is performed by an instance
of the SocketImpl
class. An application can
change the socket factory that creates the socket
implementation to configure itself to create sockets
appropriate to the local firewall.
SocketImpl
,
setSocketFactory(java.net.SocketImplFactory)
,
ServerSocketChannel
| Constructor and Description |
|---|
ServerSocket()
Creates an unbound server socket.
|
ServerSocket(int port)
Creates a server socket, bound to the specified port.
|
ServerSocket(int port,
int backlog)
Creates a server socket and binds it to the specified local port
number, with the specified backlog.
|
ServerSocket(int port,
int backlog,
InetAddress bindAddr)
Create a server with the specified port, listen backlog, and
local IP address to bind to.
|
| Modifier and Type | Method and Description |
|---|---|
Socket |
accept()
Listens for a connection to be made to this socket and accepts
it.
|
void |
bind(SocketAddress endpoint)
Binds the
ServerSocket to a specific address
(IP address and port number). |
void |
bind(SocketAddress endpoint,
int backlog)
Binds the
ServerSocket to a specific address
(IP address and port number). |
void |
close()
Closes this socket.
|
ServerSocketChannel |
getChannel()
Returns the unique
ServerSocketChannel object
associated with this socket, if any. |
InetAddress |
getInetAddress()
Returns the local address of this server socket.
|
int |
getLocalPort()
Returns the port number on which this socket is listening.
|
SocketAddress |
getLocalSocketAddress()
Returns the address of the endpoint this socket is bound to, or
null if it is not bound yet. |
int |
getReceiveBufferSize()
Gets the value of the SO_RCVBUF option for this ServerSocket,
that is the proposed buffer size that will be used for Sockets accepted
from this ServerSocket.
|
boolean |
getReuseAddress()
Tests if SO_REUSEADDR is enabled.
|
int |
getSoTimeout()
Retrieve setting for SO_TIMEOUT.
|
protected void |
implAccept(Socket s)
Subclasses of ServerSocket use this method to override accept()
to return their own subclass of socket.
|
boolean |
isBound()
Returns the binding state of the ServerSocket.
|
boolean |
isClosed()
Returns the closed state of the ServerSocket.
|
void |
setPerformancePreferences(int connectionTime,
int latency,
int bandwidth)
Sets performance preferences for this ServerSocket.
|
void |
setReceiveBufferSize(int size)
Sets a default proposed value for the SO_RCVBUF option for sockets
accepted from this ServerSocket.
|
void |
setReuseAddress(boolean on)
Enable/disable the SO_REUSEADDR socket option.
|
static void |
setSocketFactory(SocketImplFactory fac)
Sets the server socket implementation factory for the
application.
|
void |
setSoTimeout(int timeout)
Enable/disable SO_TIMEOUT with the specified timeout, in
milliseconds.
|
String |
toString()
Returns the implementation address and implementation port of
this socket as a
String . |
public ServerSocket() throws IOException
IOException
- IO error when opening the socket.public ServerSocket(int port) throws IOException
0
means that the port number is automatically
allocated, typically from an ephemeral port range. This port
number can then be retrieved by calling getLocalPort
.
The maximum queue length for incoming connection indications (a
request to connect) is set to 50
. If a connection
indication arrives when the queue is full, the connection is refused.
If the application has specified a server socket factory, that
factory's createSocketImpl
method is called to create
the actual socket implementation. Otherwise a "plain" socket is created.
If there is a security manager,
its checkListen
method is called
with the port
argument
as its argument to ensure the operation is allowed.
This could result in a SecurityException.
port
- the port number, or 0
to use a port
number that is automatically allocated.IOException
- if an I/O error occurs when opening the socket.SecurityException
- if a security manager exists and its checkListen
method doesn't allow the operation.IllegalArgumentException
- if the port parameter is outside
the specified range of valid port values, which is between
0 and 65535, inclusive.SocketImpl
,
SocketImplFactory.createSocketImpl()
,
setSocketFactory(java.net.SocketImplFactory)
,
SecurityManager.checkListen(int)
public ServerSocket(int port, int backlog) throws IOException
0
means that the port number is
automatically allocated, typically from an ephemeral port range.
This port number can then be retrieved by calling
getLocalPort
.
The maximum queue length for incoming connection indications (a
request to connect) is set to the backlog
parameter. If
a connection indication arrives when the queue is full, the
connection is refused.
If the application has specified a server socket factory, that
factory's createSocketImpl
method is called to create
the actual socket implementation. Otherwise a "plain" socket is created.
If there is a security manager,
its checkListen
method is called
with the port
argument
as its argument to ensure the operation is allowed.
This could result in a SecurityException.
The backlog
argument is the requested maximum number of
pending connections on the socket. Its exact semantics are implementation
specific. In particular, an implementation may impose a maximum length
or may choose to ignore the parameter altogther. The value provided
should be greater than 0
. If it is less than or equal to
0
, then an implementation specific default will be used.
port
- the port number, or 0
to use a port
number that is automatically allocated.backlog
- requested maximum length of the queue of incoming
connections.IOException
- if an I/O error occurs when opening the socket.SecurityException
- if a security manager exists and its checkListen
method doesn't allow the operation.IllegalArgumentException
- if the port parameter is outside
the specified range of valid port values, which is between
0 and 65535, inclusive.SocketImpl
,
SocketImplFactory.createSocketImpl()
,
setSocketFactory(java.net.SocketImplFactory)
,
SecurityManager.checkListen(int)
public ServerSocket(int port, int backlog, InetAddress bindAddr) throws IOException
0
means that the port number is
automatically allocated, typically from an ephemeral port range.
This port number can then be retrieved by calling
getLocalPort
.
If there is a security manager, this method
calls its checkListen
method
with the port
argument
as its argument to ensure the operation is allowed.
This could result in a SecurityException.
The backlog
argument is the requested maximum number of
pending connections on the socket. Its exact semantics are implementation
specific. In particular, an implementation may impose a maximum length
or may choose to ignore the parameter altogther. The value provided
should be greater than 0
. If it is less than or equal to
0
, then an implementation specific default will be used.
port
- the port number, or 0
to use a port
number that is automatically allocated.backlog
- requested maximum length of the queue of incoming
connections.bindAddr
- the local InetAddress the server will bind toSecurityException
- if a security manager exists and
its checkListen
method doesn't allow the operation.IOException
- if an I/O error occurs when opening the socket.IllegalArgumentException
- if the port parameter is outside
the specified range of valid port values, which is between
0 and 65535, inclusive.SocketOptions
,
SocketImpl
,
SecurityManager.checkListen(int)
public void bind(SocketAddress endpoint) throws IOException
ServerSocket
to a specific address
(IP address and port number).
If the address is null
, then the system will pick up
an ephemeral port and a valid local address to bind the socket.
endpoint
- The IP address & port number to bind to.IOException
- if the bind operation fails, or if the socket
is already bound.SecurityException
- if a SecurityManager
is present and
its checkListen
method doesn't allow the operation.IllegalArgumentException
- if endpoint is a
SocketAddress subclass not supported by this socketpublic void bind(SocketAddress endpoint, int backlog) throws IOException
ServerSocket
to a specific address
(IP address and port number).
If the address is null
, then the system will pick up
an ephemeral port and a valid local address to bind the socket.
The backlog
argument is the requested maximum number of
pending connections on the socket. Its exact semantics are implementation
specific. In particular, an implementation may impose a maximum length
or may choose to ignore the parameter altogther. The value provided
should be greater than 0
. If it is less than or equal to
0
, then an implementation specific default will be used.
endpoint
- The IP address & port number to bind to.backlog
- requested maximum length of the queue of
incoming connections.IOException
- if the bind operation fails, or if the socket
is already bound.SecurityException
- if a SecurityManager
is present and
its checkListen
method doesn't allow the operation.IllegalArgumentException
- if endpoint is a
SocketAddress subclass not supported by this socketpublic InetAddress getInetAddress()
If the socket was bound prior to being closed
,
then this method will continue to return the local address
after the socket is closed.
null
if the socket is unbound.public int getLocalPort()
If the socket was bound prior to being closed
,
then this method will continue to return the port number
after the socket is closed.
public SocketAddress getLocalSocketAddress()
null
if it is not bound yet.
If the socket was bound prior to being closed
,
then this method will continue to return the address of the endpoint
after the socket is closed.
SocketAddress
representing the local endpoint of this
socket, or null
if it is not bound yet.getInetAddress()
,
getLocalPort()
,
bind(SocketAddress)
public Socket accept() throws IOException
A new Socket s
is created and, if there
is a security manager,
the security manager's checkAccept
method is called
with s.getInetAddress().getHostAddress()
and
s.getPort()
as its arguments to ensure the operation is allowed.
This could result in a SecurityException.
IOException
- if an I/O error occurs when waiting for a
connection.SecurityException
- if a security manager exists and its
checkAccept
method doesn't allow the operation.SocketTimeoutException
- if a timeout was previously set with setSoTimeout and
the timeout has been reached.IllegalBlockingModeException
- if this socket has an associated channel, the channel is in
non-blocking mode, and there is no connection ready to be
acceptedSecurityManager.checkAccept(java.lang.String, int)
protected final void implAccept(Socket s) throws IOException
s
- the SocketIllegalBlockingModeException
- if this socket has an associated channel,
and the channel is in non-blocking modeIOException
- if an I/O error occurs when waiting
for a connection.public void close() throws IOException
accept()
will throw
a SocketException
.
If this socket has an associated channel then the channel is closed as well.
close
in interface Closeable
close
in interface AutoCloseable
IOException
- if an I/O error occurs when closing the socket.public ServerSocketChannel getChannel()
ServerSocketChannel
object
associated with this socket, if any.
A server socket will have a channel if, and only if, the channel
itself was created via the ServerSocketChannel.open
method.
public boolean isBound()
public boolean isClosed()
public void setSoTimeout(int timeout) throws SocketException
timeout
- the specified timeout, in millisecondsSocketException
- if there is an error in
the underlying protocol, such as a TCP error.getSoTimeout()
public int getSoTimeout() throws IOException
IOException
- if an I/O error occurssetSoTimeout(int)
public void setReuseAddress(boolean on) throws SocketException
When a TCP connection is closed the connection may remain in a timeout state for a period of time after the connection is closed (typically known as the TIME_WAIT state or 2MSL wait state). For applications using a well known socket address or port it may not be possible to bind a socket to the required SocketAddress if there is a connection in the timeout state involving the socket address or port.
Enabling SO_REUSEADDR prior to binding the socket
using bind(SocketAddress)
allows the socket to be
bound even though a previous connection is in a timeout
state.
When a ServerSocket is created the initial setting
of SO_REUSEADDR is not defined. Applications can
use getReuseAddress()
to determine the initial
setting of SO_REUSEADDR.
The behaviour when SO_REUSEADDR is enabled or
disabled after a socket is bound (See isBound()
)
is not defined.
on
- whether to enable or disable the socket optionSocketException
- if an error occurs enabling or
disabling the SO_RESUEADDR socket option,
or the socket is closed.getReuseAddress()
,
bind(SocketAddress)
,
isBound()
,
isClosed()
public boolean getReuseAddress() throws SocketException
boolean
indicating whether or not SO_REUSEADDR is enabled.SocketException
- if there is an error
in the underlying protocol, such as a TCP error.setReuseAddress(boolean)
public String toString()
String
.public static void setSocketFactory(SocketImplFactory fac) throws IOException
When an application creates a new server socket, the socket
implementation factory's createSocketImpl
method is
called to create the actual socket implementation.
Passing null
to the method is a no-op unless the factory
was already set.
If there is a security manager, this method first calls
the security manager's checkSetFactory
method
to ensure the operation is allowed.
This could result in a SecurityException.
fac
- the desired factory.IOException
- if an I/O error occurs when setting the
socket factory.SocketException
- if the factory has already been defined.SecurityException
- if a security manager exists and its
checkSetFactory
method doesn't allow the operation.SocketImplFactory.createSocketImpl()
,
SecurityManager.checkSetFactory()
public void setReceiveBufferSize(int size) throws SocketException
Socket.getReceiveBufferSize()
after the socket
is returned by accept()
.
The value of SO_RCVBUF is used both to set the size of the internal socket receive buffer, and to set the size of the TCP receive window that is advertized to the remote peer.
It is possible to change the value subsequently, by calling
Socket.setReceiveBufferSize(int)
. However, if the application
wishes to allow a receive window larger than 64K bytes, as defined by RFC1323
then the proposed value must be set in the ServerSocket before
it is bound to a local address. This implies, that the ServerSocket must be
created with the no-argument constructor, then setReceiveBufferSize() must
be called and lastly the ServerSocket is bound to an address by calling bind().
Failure to do this will not cause an error, and the buffer size may be set to the requested value but the TCP receive window in sockets accepted from this ServerSocket will be no larger than 64K bytes.
size
- the size to which to set the receive buffer
size. This value must be greater than 0.SocketException
- if there is an error
in the underlying protocol, such as a TCP error.IllegalArgumentException
- if the
value is 0 or is negative.getReceiveBufferSize()
public int getReceiveBufferSize() throws SocketException
Note, the value actually set in the accepted socket is determined by
calling Socket.getReceiveBufferSize()
.
SocketException
- if there is an error
in the underlying protocol, such as a TCP error.setReceiveBufferSize(int)
public void setPerformancePreferences(int connectionTime, int latency, int bandwidth)
Sockets use the TCP/IP protocol by default. Some implementations may offer alternative protocols which have different performance characteristics than TCP/IP. This method allows the application to express its own preferences as to how these tradeoffs should be made when the implementation chooses from the available protocols.
Performance preferences are described by three integers whose values indicate the relative importance of short connection time, low latency, and high bandwidth. The absolute values of the integers are irrelevant; in order to choose a protocol the values are simply compared, with larger values indicating stronger preferences. If the application prefers short connection time over both low latency and high bandwidth, for example, then it could invoke this method with the values (1, 0, 0). If the application prefers high bandwidth above low latency, and low latency above short connection time, then it could invoke this method with the values (0, 1, 2).
Invoking this method after this socket has been bound will have no effect. This implies that in order to use this capability requires the socket to be created with the no-argument constructor.
connectionTime
- An int expressing the relative importance of a short
connection timelatency
- An int expressing the relative importance of low
latencybandwidth
- An int expressing the relative importance of high
bandwidth Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2015, Oracle and/or its affiliates. All rights reserved.


--- layout: post title: '30 Days in April: Day 19' date: 2009-04-19 22:52:46.000000000 -07:00 type: post published: true status: publish categories: - 30 Days in April - Photos tags: - 30days - Photos meta: _publicize_pending: '1' _edit_last: '6192' aktt_tweeted: '1' original_post_id: '225' _wp_old_slug: '225' author: login: falsefridays email<EMAIL_ADDRESS>display_name: Jim Withington first_name: '' last_name: '' ---
POSSIBLE HEADLINES FOR UNWRITTEN STORIES INVOLVING THIS DEER STATUE
--Neighborhood Hoodlums Collecting Statue Ears; Protesting the "Sanitization" of Modern Life
--Neighborhood Watch 'Ears the Call: Gardens Under Attack
--Deer God!
--Statue Seen as Comment on State of Homeowner's Life
-- What? WHAAAAAATTT??!!


{% extends "base.html" %} {% block page_content %}
Please confirm the access checking shows as below:


Testing code with FsCheck
Testing code is an important part of writing code. Randomized domain testing is a good way to test the code throughly and identify issues from a different perspective. For this, FsCheck is a very good tool. Read this good introduction for Property based testing .
A quick example
If we want to a test that works for all small int bewteen 1 and 100, we could define a random test domain that test only the necessary range, as shown in the following code. The test would often fail as we are testing for a smaller range.
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: |
|
The test can be ran using Check.One with arguments to shows the passed tests inputs as well as failed cases with shrink
1:
|
|
|
namespace FsCheck
type SmallInt =
static member Int : unit -> 'a
Full name: FsCheckTutorial.SmallInt
int arb filtered with range
static member Int : unit -> 'a
Full name: FsCheckTutorial.SmallInt
int arb filtered with range
static member SmallInt.Int : unit -> 'a
Full name: FsCheckTutorial.SmallInt.Int
Full name: FsCheckTutorial.SmallInt.Int
val s : int
val typeof<'T> : System.Type
Full name: Microsoft.FSharp.Core.Operators.typeof
Full name: Microsoft.FSharp.Core.Operators.typeof


Maintenance!
Sorry for the inconvenience but we’re performing some maintenance at the moment. If you need to you can always contact us, otherwise we’ll be back online shortly!
— betahuhn.de
Sorry for the inconvenience but we’re performing some maintenance at the moment. If you need to you can always contact us, otherwise we’ll be back online shortly!
— betahuhn.de


Trudeau names Freeland deputy prime minister in new cabinet
Foreign Minister Chrystia Freeland becomes minister of intergovernmental affairs and deputy prime minister.
Canadian Prime Minister Justin Trudeau on Wednesday shuffled his cabinet and moved Foreign Minister Chrystia Freeland into a new job where she will be asked to help tackle a looming national unity crisis.
Freeland, who rose to prominence by leading Canada's team during talks to renegotiate a new continental trade deal, was named minister of intergovernmental affairs and will also take on the more symbolic role of deputy prime minister.
More:
-
Canada election: Trudeau fights to retain power in tight race
-
Justin Trudeau wins second term in hard-fought Canada election
-
Canada's Justin Trudeau wins a minority government - what next?
She will deal with the western oil-producing provinces of Alberta and Saskatchewan, where anger is growing over tough environmental protection laws that critics say could cripple the energy industry.
Trudeau's Liberals lost their majority in an October election and now have no legislators in either province. Polls show separatist sentiment is growing, especially in Alberta.
"Whether it's making life more affordable for the middle class, taking action on climate change or keeping our communities safe we will continue working tirelessly for all Canadians," Trudeau said in a statement on Wednesday.
Freeland is close to Trudeau and his team of advisers, who see her as one of the strongest members of cabinet. She is often touted as a possible successor to Trudeau.
Chrystia Freeland speaking with supporters following the federal election results in Toronto, Ontario, Canada [File: Chris Helgren/Reuters]
"You put your best players in the government where they're most needed," said a Liberal official who requested anonymity because of the sensitivity of the situation.
National unity tensions are a particularly painful issue in Canada, where the province of Quebec held a 1995 referendum on independence that failed by a narrow margin.
Trudeau is under pressure from western industries to quickly end a strike by workers at Canadian National Railway, the country's largest rail network, which is hitting exports such as grain and oil.
Trudeau named former Trade Minister Jim Carr, who is suffering from cancer, to act as his special representative for Alberta, Saskatchewan and the central province of Manitoba to ensure they had "a strong voice in Ottawa".
The tough environmental laws that have angered the provinces were authored by Catherine McKenna, who moves from environment to the less-visible position of infrastructure minister.
In a possible signal to western Canada, McKenna will be replaced by Jonathan Wilkinson, who backs the proposed expansion of a crude pipeline from Alberta to the Pacific coast that the energy industry says is vital and that environmentalists oppose.
Freeland was replaced by Francois-Philippe Champagne, previously the infrastructure minister. Finance Minister Bill Morneau stayed in his job.


Millennials for NJ is a political organization dedicated to recruit
and help elect millennial candidates in New Jersey.
Millennials are the largest adult population and the largest
generation in the labor force, yet we are severely underrepresented
in elected office. Millennials are living at home longer, not
purchasing homes, and moving out of New Jersey at an alarming rate.
Millennials for NJ will elect leaders who will fight for our
priorities and keep millennials in New Jersey.
We have been featured in Inside NJ and the New Jersey Globe.


The following is from: https://docs.google.com/document/d/1eG0YocsYYbNAtivkLtcaiEE5IOF5u4LUol8-LL0TIKU/view
which is authored by Brian Slesinsky and is community 'best-effort' documentation
Contents- Objective
- Background
- Overview
-
- Detailed Design
- Envelope
- How the client code chooses the URL
- How GWT calculates the base URL
- How the frontend server routes requests to a GWT-RPC service
- HTTP(S) Requirements
- Request format
- Response format
- The fields in a GWT-RPC request
- Version
- Flags
- FLAG_ELIDE_TYPE_NAMES = 1
- FLAG_RPC_TOKEN_INCLUDED = 2
- The string table
- Module base URL
- Strong name
- RPC Token (optional)
- Service name
- Method name
- Parameter count
- Parameter types
- Parameter values
- Java Types
-
- Java Values
- Boolean
- Byte
- Char
- Short
- Integer
- Long
- Float
- Double
- String
- Java Objects
- Type checking
- Arrays
- Enums
- Custom serialization
- Other objects
- Serialization policies
- API
- How RemoteServiceServlet locates the serialization policy file
- Policy file format
- How is a serialization policy calculated?
- Arrays
- Custom Serializers
- How many serialization policies does a GWT app have?
- How can I find out which GWT-RPC service generated a policy?
- Caveats


Security & Networking
AWS Security Hub
AWS Key Management Service (KMS) Custom Key Store
AWS App Mesh - Service Mesh for Microservices on AWS
AWS Global Accelerator
AWS Transit Gateway
AWS Transfer for SFTP, a Fully Managed SFTP Service for Amazon S3
AWS DataSync: A Service to Simplify, Automate, and Accelerate Online Data Transfer


EASY TO CONFIGURE AND CUSTOMIZE + COMPLETE WITH A CUSTOM API
Video
Support
You can easily add Vimeo & Youtube Videos to your Slides & Captions
OPTIONAL AUTO-HIDE CONTROLS + OPTIONAL ROLLOVER SLIDESHOW PAUSE
A SMOOTH AND SEXY CROSS-BROWSER SLIDER FOR YOUR IMAGES & VIDEOS
FEATURING ANIMATED CAPTIONS WITH MANY TRANSITION EFFECTS
FINE TUNED, SLEEK & SMOOTH, THIS SLIDER WILL IMPRESS YOUR VISITORS
SUPPORTS ANIMATED CAPTIONS, VIDEO & IFRAME, SINGLE PAGE MULTI-USE
GORGEOUS ANIMATED TIMERS WITH HIGH CUSTOMIZABLE OPTIONS


About Us
How it Works
Breaking Stereotypes
About Us
Simon Ibssa, 1st-year Software Engineering Student at Cal Poly SLO
Mugen Blue, 1st-year Computer Engineering Student at Cal Poly SLO
Emily Claire, 2nd-year Computer Science Student at Cal Poly SLO
Back to Main


Source code for monty.subprocess
"""
Calling shell processes.
"""
import shlex
import threading
import traceback
from subprocess import Popen, PIPE
from .string import is_string
__author__ = "Matteo Giantomass"
__copyright__ = "Copyright 2014, The Materials Virtual Lab"
__version__ = "0.1"
__maintainer__ = "Matteo Giantomassi"
__email__ =<EMAIL_ADDRESS>__date__ = "10/26/14"
[docs]class Command:
"""
Enables to run subprocess commands in a different thread with TIMEOUT
option.
Based on jcollado's solution:
http://stackoverflow.com/questions/1191374/subprocess-with-timeout/4825933#4825933
and
https://gist.github.com/kirpit/1306188
.. attribute:: retcode
Return code of the subprocess
.. attribute:: killed
True if subprocess has been killed due to the timeout
.. attribute:: output
stdout of the subprocess
.. attribute:: error
stderr of the subprocess
Example:
com = Command("sleep 1").run(timeout=2)
print(com.retcode, com.killed, com.output, com.output)
"""
def __init__(self, command):
"""
:param command: Command to execute
"""
if is_string(command):
command = shlex.split(command)
self.command = command
self.process = None
self.retcode = None
self.output, self.error = "", ""
self.killed = False
def __str__(self):
return f"command: {self.command}, retcode: {self.retcode}"
[docs] def run(self, timeout=None, **kwargs):
"""
Run a command in a separated thread and wait timeout seconds.
kwargs are keyword arguments passed to Popen.
Return: self
"""
def target(**kw):
try:
# print('Thread started')
with Popen(self.command, **kw) as self.process:
self.output, self.error = self.process.communicate()
self.retcode = self.process.returncode
# print('Thread stopped')
except Exception:
self.error = traceback.format_exc()
self.retcode = -1
# default stdout and stderr
if "stdout" not in kwargs:
kwargs["stdout"] = PIPE
if "stderr" not in kwargs:
kwargs["stderr"] = PIPE
# thread
thread = threading.Thread(target=target, kwargs=kwargs)
thread.start()
thread.join(timeout)
if thread.is_alive():
# print("Terminating process")
self.process.terminate()
self.killed = True
thread.join()
return self


Mankind has endured centuries of horrific plague and a particularly brutal interstellar war ... but there is still no time for peace and quiet.
Stirred from aeons of sleep, the Inhibitors - ancient alien killing machines - have begun the process of riding the galaxy of its latest emergent intelligence: mankind. As a ragtag bag of refugees fleeing the first wave of the cull head towards an apparently insignificant moon light-years away, they discover an avenging angel, a girl born in ice. She has the power to lead mankind to safety, and the ability to draw down their darkest enemy.
And on a planet where vast travelling cathedrals crawl towards the treacherous fissure known as Absolution Gap, an unsettling truth becomes apparent: to beat one enemy, it may be necessary to forge an alliance with something much, much worse ...
She stands alone at the jetty's end, watching the sky. In the moonlight, the planked boarding of the jetty is a shimmering silver-blue ribbon reaching back to shore. The sea is ink-black, lapping calmly against the jetty's supports. Across the bay, out towards the western horizon, there are patches of luminosity: smudges of twinkling pastel-green, as if a fleet of galleons has gone down with all lights ablaze.


I utilized Python's NLTK library to develop algorithms, including a baseline, that would generate haikus based of Richard Wright's work.
Applications of K-Means clustering, affinity propogation, and linear regression to highlight correlation pertaining to financial data.
Sentiment analysis tool to categorize tweets into positive or negative category.
Extension created using Javascript and sentiment analysis tool created using Python, in efforts to end online harassment.
A database schema created in MySQL Workbench featuring 11 relations, made accessible via Python script.
Object-orineted program in Python written to recognize dates, as if passing through a deterministic finite state machine.
I profiled Jen Cogburn's business in Long Island City, Queens. I shot and edited all my clips on an iPhone 6s.
I went around asking folks in Central Park: "What is the most attractive thing you find about yourself and why?"


--- title: "Writing scientific papers using Rstudio and Zotero" author: "Gertjan Verhoeven" date: '2021-05-02' summary: This blog post describes a sequence of 9 steps to set up a reproducible workflow for scientific writing based on open-source tooling. It boils down to writing the manuscript in Rmarkdown, and using a set of auxiliary tools to manage citations and output to Word to share with collaborators and to prepare the final document for submission to the journal. slug: zotero-rmarkdown-csl draft: no categories: - Scientific writing tags: - Zotero - Rmarkdown - Better bibtex baseurl: https://gsverhoeven.github.io header: image: headers/wilhelm-gunkel-di8ognBauG0-unsplash.png preview: no ---
(This blog post is mainly for my future self, and for people that ask me about my workflow for scientific papers. Please contact me if you spot ways to improve this!)
This blog post describes a sequence of 9 steps to set up a reproducible workflow for scientific writing with a focus on getting the journal citation hell right. It boils down to writing the manuscript in Rmarkdown, and using a set of auxiliary tools to manage citations and output to Word to share with collaborators and to prepare the final document for submission to the journal.
First step is to check what the constraints of the journal are where we want to submit. Do they have a particular word count? Do they have a particular format for the abstract? etc. Go to the target journal, and download the author instructions. Because author instructions are typically REALLY boring to read, a quick visual way to find out what is needed is to download a few recent (because change is the only constant), open access (no fuss with paywalls etc), and highly cited (this must mean they did something right, right?) example papers.
Zotero is THE open source reference manager. Source code on Github, check! Cross-platform, check! 4K stars on Github, check! Another cool feature is that your references library is stored online, and your local Zotero install synchronizes with it, so you no longer need to move around library files between work and home, laptop and desktop.
Go to the Zotero website to download, install and configure Zotero. (This includes creating a Zotero account for online storage of your references)
The easiest way to fill your Zotero library is to use a browser plugin. I use Firefox on Linux, so I installed the Zotero Firefox connector. Once this is installed, I use Google scholar to look up papers I want to cite. To add a paper to the Zotero library, make sure to have Zotero open, then click on a paper in Google Scholar to go to that paper’s web site (Typically the Publishers website for the journal). Finally, click the icon in the browsers top right top corner (“Save to zotero”). Repeat ad nauseam.
While writing our papers, we want short but recognizable identifier keys for our citations. For this we use the “Better BibTex for Zotero” Add-on. Go to the Better Bibtex website and follow the installation instructions.
In the Zotero preferences (Better bibtex tab), I changed the “Citation Key Format” to create keys like verhoeven_etal20
.
[auth.etal:lower:replace=.,_][>0][shortyear]|[veryshorttitle][shortyear]
(This snippet comes from Dewey Dunnington’s blog that was a big help in getting my workflow up and running)
This should automatically create / update all the citations keys in Zotero.
Rstudio is where we actually write the paper.
We use the .Rmd
Rmarkdown format.
This format consists of a YAML header, followed by a body that consists of Markdown formatted text with optional code chunks, figures and tables interspersed.
Version control is through Git.
Important thing to check: make sure that your .Rmd
file uses UTF-8 encoding.
In Rstudio, File --> Save with Encoding --> UTF-8
can set this straight if somehow you ended up with a file in the wrong encoding.
Check the Rstudio website for more info on Rmarkdown.
Note The latest version of Rstudio (1.4) contains a new editing mode for Rmarkdown, “the visual markdown editor”, that contains support for inserting citations from Zotero. I am not sure yet whether I like this, and noted that on my system, it was still buggy, and the editor, when invoked, makes CHANGES to the markdown code. Brrr. Therefore, this blog post does not make use of this new feature.
Hold on, almost there. We’re in Rstudio, and writing our paper.
Now comes the moment where we want to cite something!
Now we need a connection to Zotero. There are two Rstudio Addins that compete for this functionality, citr
and rbbt
.
Both packages are not on CRAN and therefore need to be installed from Github.
I tried them both out, and went for rbbt
as citr
does not support CSL-JSON and rbbt
appears slightly leaner.
remotes::install_github("paleolimbot/rbbt")
After installing and restarting Rstdio, the rbbt
addin can be found under Addins
.
Now since citing stuff is a common activity while writing a paper, we want a keyboard shortcut for this.
I put it under CTRL + K
where K stand for errr, Knowledge ?
To bind rbbt
to a particular keyboard shortcut, do the following:
First, in RStudio, choose Tools --> Modify Keyboard Shortcuts
.
Type zotero
to filter out the Zotero plugin.
Click on the ‘Shortcut’ field for the ‘Insert Zotero citation’ addin row, and type the desired shortcut keys.
In Rstudio, we can now press CTRL+K, type the name of the first author, select the citation, press enter, and have the citation key added to our .Rmd
document.
Now that we have an Rmarkdown document filled with citation keys that references citations in Zotero, we still need one more thing, and that is to create the actual .bib
or .json
file containing the cited references.
Here I describe the simplest approach.
We go to Zotero and export all the references using “Export Collection” , and choosing CSL JSON
, save the file as references.json
in the same folder as your Rmd paper.
CSL-JSON is an emerging standard that is recommended by Yihui Xie, author of Rmarkdown.
In Rstudio, we add to following line to our YAML header:
bibliography: references.json
rbbt
has the functionality to automatically create a bib/json file that ONLY contains the references that are cited in the Rmd document. I haven’t tested this yet, but this would be the icing on the cake. Instructions for this are on the rbbt Github page.
Update 03/2023 You can try adding the following entry to your YAML header:
bibliography: "`r rbbt::bbt_write_bib('bibliography.json', overwrite = TRUE)`"
At this point, we can knit
our Rmarkdown document, and it will contain the cited references appended at the end of the HTML/PDF/Word generated output document.
However, the references are (most likely) not yet properly formatted for the journal we want to send it to. For example, the journal “Health Services Research” wants the references in the main text to be numbered, and the reference list sorted in the order of appearance, and formatted according the APA format (whatever that is).
Luckily for us, enter the Citation Style Language project. They created a common standard, CSL, and a crowdsourced repository, that contains more than 10.000 free citation styles. All we need to do is grab the CSL file for our target journal!
Go to the Zotero Style Repository , search for the target journal name (in my case Health Services Research) and click on the result. This downloads a CSL file that we add to our Git repo containing the manuscript.
Still here? Great. Now we are ready for the final step. This one is for our collaborators (who we feel sorry for, because they use Word and miss out on all the Rmarkdown fun), and for those journals, that force us to submit our manuscript as a Word file.
In Rstudio, we add the following code to the YAML header:
output:
word_document:
reference_docx: style_template.docx
This tells Rmarkdown to use the Word formatting styles contained in the style_template.docx
file.
For me, this contains at the moment three things: A4 page size, double line spacing, and numbered lines.
Follow the instructions by Rstudio to make this template.
In short, you let Rstudio’s pandoc generate a Word document from a .Rmd
file, and tweak the formatting styles of that document. Name the document style_template.docx
and keep it with your .Rmd
manuscript.
I can confirm that this also works when you edit this document using LibreOffice / OpenOffice.
The great thing for me: now I have this blog post, I can forget about all this stuff, and finally get to the scientific writing part!


Form advanced
Apply a custom style to radio and checkbox inputs when utilizing the Form component.
UIkit uses the appearance property to style them through CSS only, without applying custom markup. Currently the appearance property is only fully supported by webkit browsers, so that the styling will only apply to Chrome, Safari and Opera. This will change, of course, once other browsers start supporting the property.
Usage
You can apply this component to extend the Form component. Just place the <input>
element inside a <form>
element and add the .uk-form
class.
Example
Markup
<form class="uk-form">
<input type="radio">
<input type="checkbox">
</form>


Module Utils.Color
Color class.
- Wraps r,g,b,a floating number. There is no real assumption about the range value, they can be also negative - the unpak_normalized() call is the only call that assumes values in the range of [0,255] and that returns a value divided by 255, so normalized in MOAI [0,1] color space
Functions
| Color:init (r, g, b, a) | Constructor. |
| Color:unpack () | Returns the 4 components |
| Color:unpack_normalized () | Returns the 4 components normalized (it assumes values in range [0,255] |
| __add (c1, c2) | sum r,g,b cjhannels of two colors alpha of the first color is taken |
| __sub (c1, c2) | subtract r,g,b channels of two colors alpha of the first color is taken |
| __mul (c1, c2) | multiply r,g,b channels of a color by a number alpha is let unchanged |
| __div (c, d) | divide r,g,b components of a color by a number alpha is let unchanged |
| Color:__tostring () | print color components value |
| blend (c1, c2, a) | blend 2 colors, taking the alpha of the first color |
| hsv2rgb (h, s, v) | color space conversion |
| rgba2int (r, g, b, a) | Pack an r,g,b,a set of values to a single int value |
| int2rgba (c) | Unpack an int value to a set of r,g,b,a values |
Functions
- Color:init (r, g, b, a)
-
Constructor.
if a param is not provided defaul value is 255
Parameters:
- r
- g
- b
- a
- Color:unpack ()
-
Returns the 4 components
Returns:
- r
- g
- b
- a
- Color:unpack_normalized ()
-
Returns the 4 components normalized (it assumes values in range [0,255]
Returns:
- r/255
- g/255
- b/255
- a/255
- __add (c1, c2)
-
sum r,g,b cjhannels of two colors
alpha of the first color is taken
Parameters:
- c1
- c2
- __sub (c1, c2)
-
subtract r,g,b channels of two colors
alpha of the first color is taken
Parameters:
- c1
- c2
- __mul (c1, c2)
-
multiply r,g,b channels of a color by a number
alpha is let unchanged
Parameters:
- c1
- c2
- __div (c, d)
-
divide r,g,b components of a color by a number
alpha is let unchanged
Parameters:
- c
- d
- Color:__tostring ()
- print color components value
- blend (c1, c2, a)
-
blend 2 colors, taking the alpha of the first color
Parameters:
- c1
- c2
- a
- hsv2rgb (h, s, v)
-
color space conversion
Parameters:
- h
- s
- v
- rgba2int (r, g, b, a)
-
Pack an r,g,b,a set of values to a single int value
Parameters:
- r [0,255]
- g [0,255]
- b [0,255]
- a [0,255]
Returns:
-
int
- int2rgba (c)
-
Unpack an int value to a set of r,g,b,a values
Parameters:
- c value to be unpack
Returns:
- r [0,255]
- g [0,255]
- b [0,255]
- a [0,255]


Custom designed solutions for all business applications
WRC Technologies create software solutions and websites to meet your exact requirements from mobile applications...
Apple, Android, Symbian, Blackberry, Windows.
The very best money can buy


public class SlidingPaneLayout
extends ViewGroup
Child views may overlap if their combined width exceeds the available width in the SlidingPaneLayout. When this occurs the user may slide the topmost view out of the way by dragging it, or by navigating in the direction of the overlapped view using a keyboard. If the content of the dragged child view is itself horizontally scrollable, the user may grab it by the very edge.
Thanks to this sliding behavior, SlidingPaneLayout may be suitable for creating layouts that can smoothly adapt across many different screen sizes, expanding out fully on larger screens and collapsing on smaller screens.
SlidingPaneLayout is distinct from a navigation drawer as described in the design guide and should not be used in the same scenarios. SlidingPaneLayout should be thought of only as a way to allow a two-pane layout normally used on larger screens to adapt to smaller screens in a natural way. The interaction patterns expressed by SlidingPaneLayout imply a physicality and direct information hierarchy between panes that does not necessarily exist in a scenario where a navigation drawer should be used instead.
Appropriate uses of SlidingPaneLayout include pairings of panes such as a contact list and
subordinate interactions with those contacts, or an email thread list with the content pane
displaying the contents of the selected thread. Inappropriate uses of SlidingPaneLayout include
switching between disparate functions of your app, such as jumping from a social stream view
to a view of your personal profile - cases such as this should use the navigation drawer
pattern instead. (DrawerLayout
implements this pattern.)
Like LinearLayout
, SlidingPaneLayout supports
the use of the layout parameter layout_weight
on child views to determine
how to divide leftover space after measurement is complete. It is only relevant for width.
When views do not overlap weight behaves as it does in a LinearLayout.
When views do overlap, weight on a slideable pane indicates that the pane should be sized to fill all available space in the closed state. Weight on a pane that becomes covered indicates that the pane should be sized to fill all available space except a small minimum strip that the user may use to grab the slideable view and pull it back over into a closed state.
| Modifier and Type | Class and Description |
|---|---|
static class |
SlidingPaneLayout.LayoutParams |
static interface |
SlidingPaneLayout.PanelSlideListener
Listener for monitoring events about sliding panes.
|
static class |
SlidingPaneLayout.SimplePanelSlideListener
No-op stubs for
SlidingPaneLayout.PanelSlideListener . |
| Constructor and Description |
|---|
SlidingPaneLayout(Context context) |
SlidingPaneLayout(Context context,
AttributeSet attrs) |
SlidingPaneLayout(Context context,
AttributeSet attrs,
int defStyle) |
| Modifier and Type | Method and Description |
|---|---|
protected boolean |
canScroll(View v,
boolean checkV,
int dx,
int x,
int y)
Tests scrollability within child views of v given a delta of dx.
|
boolean |
canSlide()
Deprecated.
Renamed to
isSlideable() - this method is going away soon! |
protected boolean |
checkLayoutParams(ViewGroup.LayoutParams p) |
boolean |
closePane()
Close the sliding pane if it is currently slideable.
|
void |
computeScroll() |
void |
draw(Canvas c) |
protected boolean |
drawChild(Canvas canvas,
View child,
long drawingTime) |
protected ViewGroup.LayoutParams |
generateDefaultLayoutParams() |
ViewGroup.LayoutParams |
generateLayoutParams(AttributeSet attrs) |
protected ViewGroup.LayoutParams |
generateLayoutParams(ViewGroup.LayoutParams p) |
int |
getCoveredFadeColor() |
int |
getParallaxDistance() |
int |
getSliderFadeColor() |
boolean |
isOpen()
Check if the layout is completely open.
|
boolean |
isSlideable()
Check if the content in this layout cannot fully fit side by side and therefore
the content pane can be slid back and forth.
|
protected void |
onAttachedToWindow() |
protected void |
onDetachedFromWindow() |
boolean |
onInterceptTouchEvent(MotionEvent ev) |
protected void |
onLayout(boolean changed,
int l,
int t,
int r,
int b) |
protected void |
onMeasure(int widthMeasureSpec,
int heightMeasureSpec) |
protected void |
onRestoreInstanceState(Parcelable state) |
protected Parcelable |
onSaveInstanceState() |
protected void |
onSizeChanged(int w,
int h,
int oldw,
int oldh) |
boolean |
onTouchEvent(MotionEvent ev) |
boolean |
openPane()
Open the sliding pane if it is currently slideable.
|
void |
requestChildFocus(View child,
View focused) |
void |
setCoveredFadeColor(int color)
Set the color used to fade the pane covered by the sliding pane out when the pane
will become fully covered in the closed state.
|
void |
setPanelSlideListener(SlidingPaneLayout.PanelSlideListener listener) |
void |
setParallaxDistance(int parallaxBy)
Set a distance to parallax the lower pane by when the upper pane is in its
fully closed state.
|
void |
setShadowDrawable(Drawable d)
Deprecated.
Renamed to
setShadowDrawableLeft(Drawable d) to support LTR (left to
right language) and setShadowDrawableRight(Drawable d) to support RTL (right to left
language) during opening/closing. |
void |
setShadowDrawableLeft(Drawable d)
Set a drawable to use as a shadow cast by the right pane onto the left pane
during opening/closing.
|
void |
setShadowDrawableRight(Drawable d)
Set a drawable to use as a shadow cast by the left pane onto the right pane
during opening/closing to support right to left language.
|
void |
setShadowResource(int resId)
Deprecated.
|
void |
setShadowResourceLeft(int resId)
Set a drawable to use as a shadow cast by the right pane onto the left pane
during opening/closing.
|
void |
setShadowResourceRight(int resId)
Set a drawable to use as a shadow cast by the left pane onto the right pane
during opening/closing to support right to left language.
|
void |
setSliderFadeColor(int color)
Set the color used to fade the sliding pane out when it is slid most of the way offscreen.
|
void |
smoothSlideClosed()
Deprecated.
Renamed to
closePane() - this method is going away soon! |
void |
smoothSlideOpen()
Deprecated.
Renamed to
openPane() - this method is going away soon! |
public SlidingPaneLayout(Context context)
public SlidingPaneLayout(Context context, AttributeSet attrs)
public SlidingPaneLayout(Context context, AttributeSet attrs, int defStyle)
public void setParallaxDistance(int parallaxBy)
parallaxBy
- Distance to parallax by in pixelspublic int getParallaxDistance()
setParallaxDistance(int)
public void setSliderFadeColor(int color)
color
- An ARGB-packed color valuepublic int getSliderFadeColor()
public void setCoveredFadeColor(int color)
color
- An ARGB-packed color valuepublic int getCoveredFadeColor()
public void setPanelSlideListener(SlidingPaneLayout.PanelSlideListener listener)
protected void onAttachedToWindow()
protected void onDetachedFromWindow()
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec)
protected void onLayout(boolean changed, int l, int t, int r, int b)
protected void onSizeChanged(int w, int h, int oldw, int oldh)
public void requestChildFocus(View child, View focused)
public boolean onInterceptTouchEvent(MotionEvent ev)
public boolean onTouchEvent(MotionEvent ev)
@Deprecated public void smoothSlideOpen()
openPane()
- this method is going away soon!public boolean openPane()
@Deprecated public void smoothSlideClosed()
closePane()
- this method is going away soon!public boolean closePane()
public boolean isOpen()
@Deprecated public boolean canSlide()
isSlideable()
- this method is going away soon!public boolean isSlideable()
protected boolean drawChild(Canvas canvas, View child, long drawingTime)
public void computeScroll()
@Deprecated public void setShadowDrawable(Drawable d)
setShadowDrawableLeft(Drawable d)
to support LTR (left to
right language) and setShadowDrawableRight(Drawable d)
to support RTL (right to left
language) during opening/closing.d
- drawable to use as a shadowpublic void setShadowDrawableLeft(Drawable d)
d
- drawable to use as a shadowpublic void setShadowDrawableRight(Drawable d)
d
- drawable to use as a shadow@Deprecated public void setShadowResource(int resId)
resId
- Resource ID of a drawable to usepublic void setShadowResourceLeft(int resId)
resId
- Resource ID of a drawable to usepublic void setShadowResourceRight(int resId)
resId
- Resource ID of a drawable to usepublic void draw(Canvas c)
protected boolean canScroll(View v, boolean checkV, int dx, int x, int y)
v
- View to test for horizontal scrollabilitycheckV
- Whether the view v passed should itself be checked for scrollability (true),
or just its children (false).dx
- Delta scrolled in pixelsx
- X coordinate of the active touch pointy
- Y coordinate of the active touch pointprotected ViewGroup.LayoutParams generateDefaultLayoutParams()
protected ViewGroup.LayoutParams generateLayoutParams(ViewGroup.LayoutParams p)
protected boolean checkLayoutParams(ViewGroup.LayoutParams p)
public ViewGroup.LayoutParams generateLayoutParams(AttributeSet attrs)
protected Parcelable onSaveInstanceState()
protected void onRestoreInstanceState(Parcelable state)


Portfolio Publisher
Displays personal profiles with a click of a button!
Select your location
Alberta
British Columbia
Ontario
Manitoba
New Brunswick
Quebec
Saskatchewan
Create Profile
Build a profile using these websites
LinkedIn
Github
Facebook


Use the field below to specify the minimum number of classes a package may have before triggering this inspection.
Powered by InspectionGadgets


{% block extrahead %} {% if widge %} {{ widge.media }} {% endif %} {% endblock %} {% block content %} {% load simcon_extras %} {% if request.session.selectedVideo != "" %} {% if request.session.errorRightPane != "" %}
| {{ request.session.responseText|get_at_index:forloop.counter0 }} | {% if request.session.responseChildVideo|get_at_index:forloop.counter0 == "endpoint" %} {% else %} {% endif %} |
Enter any supporting text as you would like it to be displayed on the video page. Be sure to click the button to save your text before leaving the page.
Enter a possible response to the video and then select from the dropdown menu where that response will lead next.
If your video does not appear in the dropdown menu, make sure it is in the video pool to the left.


Dear Sir,
I am Mr Steve Ibeto, the personal accounting officer to
Mr Williams Hales, a national of your country, who
used to work with shell development company in
Nigeria. Here in after shall be referred to as my
client.
On the 21st of April 1999, my client, his wife And
their three children were involved in a car accident
along sagbama express road. All occupants of the
vehicle unfortunately lost there lives. Since then I
have made several enquiries to your embassy to locate
any of my clients extended relatives this has also
proved unsuccessful.
After these several unsuccessful attempts, I decided
to trace any of his relation but to all avail.After investigation,i discovered that his next of kin dead along with him during the accident Hence i have contacted you to act as his next of kin to assist in repartrating the money and property left behind by my client before they get confisicated or declared unserviceable by the bank where this huge deposits were lodged.
Particularly,the Zenith International bank plc where the deceased had
an account valued at about 5.5million dollars has
issued me a notice as his accounting officer to
provide the next of kin or have the account
confisicated within the next ten official working
days.
since i have been unsuccesfull in locating the
relatives for over 2 years now i seek your consent to
present you as the next of kin of the deceased since
you have the same surname so that the proceeds of this
account valued at 5.5million dollars can be paid to
you and then you and me can share the money. I have
all necessary legal documents that can be used to back
up any claim we may make. All I require is your honest
cooperation to enable us see this deal through. I
guarantee that this will be executed under a
legitimate arrangement that will protect you from any
breach of the law.
Thanks and God Bless
Best Regards.
Mr Steve Ibeto.
___________________________________________________________
Kukamail.com - Free Email for the World!
Open your account here: http://www.kukamail.com
___________________________________________________________
SPONSOR MESSAGE:
Get Email @YOURFAMILY, @YOURBUSINESS, or @YOURDOMAIN
Visit: http://www.entergroup.com today!


Ryota Hisanabe
A graduate web developer passion about back-end web development primarily focusing on Node and Express. Learning React at the moment.
Travel Agent Kabuki Node
A travel-agency web site project using Node, Express and MongoDB. The purposes of this project are understanding a server-side Javascript - Node, and a database - MongoDB as well as GET, POST, PUT and DELETE requests. Basically, transformed from the PHP and MySQL version. This is an ongoing project. Not all functions are completed.
Guess Flag Game
Built a single page application fetching an API to show a country flag to guess its name.
Weather App Node
A simple weather API Node web application. The purposes of this project are understanding Web API service and JSON data. Enter a city name to a input field to show temperature (in degree Celsius) and show a drink icon depends on it's temperature.
Travel Agent Kabuki PHP
A travel-agency web site project using PHP and MySQL. The purposes of this project are understanding a basic server-side language - PHP, and a relational database - MySQL as well as GET, POST, PUT and DELETE requests.
Camera Store
A simple static Node and Express website. The purposes of this project are deploying simple static files - image and style sheet, and understanding GET and POST requests through API. Original project is made by PHP.
Todo List jQuery
A single page web application created by jQuery, Node.js, Express.js and MongoDB. This is a part of projects from The Advanced Web Developer Bootcamp by Colt Steele.
Island Travel
CMS website with an e-commerce functionality by WooCommerce. Optimising SEO.
Todo List React
A single page web application created by Node.js, Express.js, React.js and MongoDB. This is a part of projects from The Advanced Web Developer Bootcamp by Colt Steele. The list is lively updated via socket.io.
simpleCalculator
Again, a very simple project to understand CSS, Javascript, DOM and HTML.


Star Trek: Insurrection (1998)
Director: Jonathan Frakes Cast: Patrick Stewart, Jonathan Frakes, Brent Spiner, LeVar Burton, Michael Dorn, Gates McFadden, Marina Sirtis, F. Murray Abraham Screenplay: Rick Berman, Michael Piller Producers: Rick Berman Runtime: US Distribution: Paramount Rated PG: action violence, mild language
Copyright 1998 Nathaniel R. Atcheson
One can not observe a Star Trek movie and expect to see serious science fiction. The purpose of Star Trek is to provide flashy, innocent fun. Sometimes the stories are compelling. Sometimes they're not. But, with the exception of the first film in the series (which provides little more than endless shots of amazed faces), I've never been bored by any of the Enterprise's numerous missions.
Star Trek: Insurrection is no exception. The film has gotten some negative reviews (a friend of mine actually thinks it's the worst in the series), but I'm not really sure why. It's an exciting, often hilarious movie that engaged me and left me ready for the next Star Trek film. Some say it's a bit too light, and more of a long episode than a film. Others say the special effects are cheesy and that it's boring. I simply enjoyed the film.
Insurrection, which is the second film to feature strictly the Next Generation cast, introduces us to a race of people called the Ba'ku; the Ba'ku are very old (most of them are about three hundred years old), but they actually appear younger with age due to strange radiation in the rings of their planet. Of course, these peaceful people can't horde this fountain of youth all for themselves – leave it up to their archenemies, the Son'a, led by Ru'afo (F. Murray Abraham), to mess everything up.
The Son'a, who are horribly disfigured and rely on daily reconstructive surgery to be aesthetically acceptable, strike a deal with the Federation to move the Ba'ku elsewhere and exploit the secret to keep their race from dying. That's when Captain Picard (Patrick Stewart) steps in: he realizes that moving the Ba'ku would kill them (it also helps that he falls in love with a Ba'ku woman (Donna Murphy)). So, with his trusty crew, Picard defies the federation to keep the Ba'ku in their natural habitat.
When dealing with a series with as much history as this, it's not entirely necessary to re-introduce your characters with each episode. This is why I believe non-fans have a hard time getting into Star Trek; in order to enjoy it, one has to understand how to approach it. Insurrection, however, does a surprisingly good job of us new aspects of the characters. Stewart is bold as always, a magnetic screen presence and perfectly capable of holding an entire film together. Jonathan Frakes, who also directed, is funny as Commander Riker; a subplot with Data (Brent Spiner) discovering his lost childhood is fairly interesting; and Abraham makes a perfect Star Trek villain, overacting like crazy.
Frakes showed similar aptitude for direction in First Contact; Insurrection is an exciting film, with some really attractive special effects and a lot of good action. This is apparently the first Star Trek film to utilize computer animation, and the result is very pleasing to the eye: particularly in the climactic scenes, in which the Son'a employ a giant space ship to suck up the rings of the Ba'ku planet, the special effects have a clean, impressively sharp look.
If I have any complaint about the film, it's that it tries to take a moral stance when it's not very appropriate to do so. I don't think it's that big of a deal that the Federation wanted to move 600 Ba'ku in order to save the lives of thousands. Better yet, why couldn't they have co-existed? Insurrection feels a little to light to spring these kinds of big moral questions on the audience. With it's inherent camp factor, the Star Trek series doesn't seem well-equipped to deal with issues like this. I prefer to just enjoy the spectacle.
Psychosis Rating: 7/10
Visit FILM PSYCHOSIS at http://www.pyramid.net/natesmovies
Nathaniel R. Atcheson
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


The fast, easy to use & typescript ready web framework for Node.js
An efficient server implies a lower cost of the infrastructure, a better responsiveness under load and happy users. How can you efficiently handle the resources of your server, knowing that you are serving the highest number of requests as possible, without sacrificing security validations and handy development?
Enter Foxify. Foxify is a web framework highly focused on providing the best developer experience with the least overhead and a powerful plugin architecture. It is inspired by Fastify and Express and as far as we know, it is one of the fastest web frameworks in town.
npm i -s foxify
const Foxify = require('foxify');
let app = new Foxify();
app.get('/', (req, res) => {
res.json({hello: 'world'});
});
// create an error
app.get('/error', (req, res) => {
throw new Error('I Failed :(');
});
// create an http error
app.get('/404', (req, res) => {
throw new HttpException('Not Found', 404);
});
app.start();
More detailed sample is available.
You can also find all the documents here.
Express
, almost as fast as Fastify
)Express
middleware supportOdin
)Machine: Ubuntu 18.04 64-bit, Intel Core i7 (8 cores), 8GiB (DDR4)
Method: autocannon -c 100 -d 40 -p 10 localhost:3000
* 2, taking the second average
sort: Request / Second
| Framework | Version | R/S |
|---|---|---|
| Foxify | 0.10.7 | 27,716.8 |
| fastify | 1.13.0 | 26,654.4 |
| bare | 10.13.0 | 22,366.4 |
| hapi | 17.7.0 | 19,662.41 |
| express | 4.16.4 | 17,468 |
| restify | 7.2.2 | 14,660 |
More detailed benchmarks available here
Odin
)We use SemVer for versioning. For the versions available, see the tags on this repository.
See also the list of contributors who participated in this project.
This project is licensed under the MIT License - see the LICENSE file for details
If my work helps you, please consider
Generated using TypeDoc


Gateway
BOT
07-Sep-19 08:30 AM
[dscrdutrum] <Privatoshi> if it happens
[dscrdutrum] <Sri - Lead> In the long run, it should be
[dscrdutrum] <Sri - Lead> Anyway user who made prediction should not lose heart, because his success rate speaks for himself
[dscrdutrum] <Privatoshi> I played Cindicator and had a really good strike rate
[dscrdutrum] <Sri - Lead> It will be the metric people look for
[dscrdutrum] <Privatoshi> But to ask for alts for 7 days out... with BTC @ 75% dominance
[dscrdutrum] <Privatoshi> It's difficult for anyone
[dscrdutrum] <Sri - Lead> For now, it looks like that. We cant keep changing the whole process based on dominance
[dscrdutrum] <Privatoshi> But I like the challenge
[dscrdutrum] <Privatoshi> Based on low rate of success...yeah
[dscrdutrum] <Sri - Lead> Yes, its possible to set predictions for 7 days, 15 days, 30 days so on
[dscrdutrum] <Sri - Lead> We also can change success rate deviation to 10% if everyone agrees
(edited)
[dscrdutrum] <Privatoshi> Is that 5% up or down?
[dscrdutrum] <Sri - Lead> both up or down is considered as success
[dscrdutrum] <Privatoshi> I'm gonna get a hit
[dscrdutrum] <Privatoshi> It was over a $10 prediction increase inyhno
[dscrdutrum] <Privatoshi> I think
[dscrdutrum] <Privatoshi> It's moving up too
[dscrdutrum] <Sri - Lead> You should get 100% success
[dscrdutrum] <Sri - Lead> Yorklab just did yesterday
[dscrdutrum] <Privatoshi> I want to get close to $177
[dscrdutrum] <Privatoshi> My goal is to get very close
[dscrdutrum] <Privatoshi> 1-2%
[dscrdutrum] <Sri - Lead> You will, keep trying
[dscrdutrum] <Privatoshi> 2 days left
[dscrdutrum] <Sri - Lead> There are 2000 coins and you can make predict all of them
[dscrdutrum] <Sri - Lead> Fingers crossed, lets see if you hit 100%
[dscrdutrum] <Privatoshi> But coming up with charts on those
[dscrdutrum] <Privatoshi> Bc not all alts go off of TA
[dscrdutrum] <Sri - Lead> True
[dscrdutrum] <Privatoshi> Some get FA pumps
[dscrdutrum] <Sri - Lead> You can always try
[dscrdutrum] <Privatoshi> I can label the move up
[dscrdutrum] <Privatoshi> on a chart
[dscrdutrum] <Privatoshi> as FA
[dscrdutrum] <Sri - Lead> You can mention that in description and reason
[dscrdutrum] <Privatoshi> even though it might not make much TA sense
[dscrdutrum] <Sri - Lead> some people mentioned FA in description and reason
[dscrdutrum] <Privatoshi> If it does do it, then why not
[dscrdutrum] <Privatoshi> I stay away from broad terms
[dscrdutrum] <Privatoshi> Specific reason within this time frame
[dscrdutrum] <Privatoshi> Can we wager UTRUM against another user?
[dscrdutrum] <Privatoshi> For a prediction
[dscrdutrum] <Privatoshi> Desired by both parties
[dscrdutrum] <Sri - Lead> We thought 1 week is a reasonable time
[dscrdutrum] <Privatoshi> Or maybe, maybe you can premine another coin, and we can buy it with Utrum. And use that coin, if using Utrum for that reason is not desireablen
[dscrdutrum] <Sri - Lead> Waging prediction is a good idea, we will think about it
[dscrdutrum] <Privatoshi> Platform is nice
[dscrdutrum] <Sri - Lead> It would be a good use case of coin
[dscrdutrum] <Sri - Lead> Thanks
[dscrdutrum] <Privatoshi> I use it as my feed
[dscrdutrum] <Privatoshi> I wish I could webhook it, to an RSS
[dscrdutrum] <Privatoshi> for mobile
[dscrdutrum] <Sri - Lead> Thats the main feature of Utrum. You dont need to run around for project updates.
[dscrdutrum] <Sri - Lead> Mobile , you can access the feed, but not on rss
[dscrdutrum] <Privatoshi> There's no way to push the feed, so I can read it on an app?
[dscrdutrum] <Privatoshi> I'm not complaining
[dscrdutrum] <Privatoshi> Just curious
[dscrdutrum] <Sri - Lead> Dont you think its too early to provide all the features
[dscrdutrum] <Privatoshi> Haha
[dscrdutrum] <Sri - Lead> We just started so lot needs to be done
[dscrdutrum] <Sri - Lead> With limited budget, we already built so many features
[dscrdutrum] <Sri - Lead> We put it on task list, when time arrives, it will be built
[dscrdutrum] <Sri - Lead> Right now, working on Rankings
[dscrdutrum] <Sri - Lead> Combination of Marketcap, social and developer
[dscrdutrum] <Sri - Lead> It will give you a complete picture


Our games
About
Publishing
Contact us
Our games
About
Publishing
Contact us
ABOUT
US
ABOUT
US
ABOUT
US


| Zero or One | accuracy unit for | Zero, One or Many | Measured Qualifier |
| Only One | accuracy unit for | Zero, One or Many | Measured Qualifier |
| Only One | measurement unit for | Zero, One or Many | Measured Qualifier |
| Zero or One | precision unit for | Zero, One or Many | Measured Qualifier |
| Only One | precision unit for | Zero, One or Many | Measured Qualifier |
| Only One | unit for | Zero, One or Many | Activity |
| Only One | unit for | Zero, One or Many | Resource For Activity |
| Only One | unit for | Zero, One or Many | Resource Held |
| Only One | genus | Many | Unordered Species Relation |
| Many | genus | Only One | Unordered Classificatn Element |


Control is a class (with respect to OOPs) containing set of methods and event handlers to modify behavior of attached HTML Element. We have created set of controls that gives you ability to perform certain standard operations such as list, docking and view stack. View stack can be thought of Tab Control, you can customize look and feel of controls to make them look like any way you want.
Atom Control also applies set of default styles, and provides ability to customize style for all controls as well as just one control.
First attribute of element must be atom-type if you want to initialize it as a control.
Controls define special properties that are now available with the element. And you can set them as follow.
Every control is derived from AtomControl and inherits set of properties as defined below. Following properties are special properties, their behavior can not be inherited or modified.
AtomControl has a property called “data”, and it can hold any object/value in it. And it refreshes all other controls that are bound to this data property. If Data property is not set then it is inherited in DOM from the parent, and so on. You can set data property in code and in markup. By default, AtomItemsControl will create new AtomControl and set the data property corresponding to the index in items array. Thus data in child element of an AtomItemsControl will be different from the data of AtomItemsControl itself.
Although, scope is read-only, but you can still set a value, and it will merge the values in existing scope. Scope is inherited same as data, but scope is setup automatically by the WebAtoms framework. You can never change the scope, but you can change the properties within the scope, and it will be merged and property in same scope will be accessible to every controls in the same scope.
Scope also allows you to create JavaScript functions with same names in different scopes. For example, child controls of AtomItemsControl can contain same named JavaScript functions but each of them will be different for every scope and within that scope they will be unique.
Scope is defined at Atoms.js Control hierarchy. AppScope (referred as appScope) is global scope accessible from any level. Scopes are nested for child controls for List Controls, every item in List has its own scope.
Every control can have atom-name attribute and this control will become an instance within the scope. So you can refer as $scope.name as instance of control within current scope. atom-name is different than id or html’s name. atom-name is way to identify current control in current scope. So you can have two control with same name in different scopes. This is important in case of AtomItemsControl with multiple items with exactly same item template and same logic. But since each item is in its own scope, every item refers correct control by having same name in different scope.
Owner refers to nearest parent AtomControl (Self in same AtomControl markup).


Textarea
Add Field
// Textarea example
$form->addField('Message', 'textarea', ['rows' => 5]);
Attributes
You can customize the field with one of these optional parameters:
| Parameter | Type | Default | Info |
|---|---|---|---|
| required | boolean | true | Validation will return false when the field is left empty |
| classlist | string | has-error will be added to classes if validation returns false.is-valid will be added if the validation was successful.
|
Add classes to input field and its field wrap e.g. column-with classes of a grid system. |
| cols | string | Number of colums (better style your area with css) | |
| rows | int | Number of rows (better style your area with css) | |
| maxlength | int | Maximum number of input characters | |
| label | int | Label for input field | |
| placeholder | string | Input field placeholder | |
| regex | String | Validation will match input against this regular expression | |
| readonly | string | false | Read-Only field if it only is available under specific circumstances. |
| autofocus | string | false | Set cursor autofocus to this field. Only use for a single field per form. |


Your skin does not only determine your appearance on the outside, it also performs so many tasks vital to your health. This page is designed to help you with caring for your skin so that you can be the beautiful Click on your skin type for tips on how to maintain and enhance your skin. Don't know your skin type? That's okay! Most skin suggestions may be useful for all skin no matter the type.


This hack predicts cryptocurrency trends based on live tweets on Twitter. This data is then processed in the Microsoft Azure Text Analytics API which evalutes users' sentiment concerning cryptocurrency prospects. This in turn is converted to percentages which determines if the tweet is positive or negative in tone. This data advises users in real time about the state of different cryptocurrencies.
0
0
0
0
0
0
0
0
0
0
0
0