HELLO
welcome to my About Me Page. My name is Spencer Moody, I am a 27 year old Portland, OR. native. I enjoy being outdoors and am currently training for my 2nd marathon. I have a background in marketing, but have always had an interest in sofware development.
What I Like:
- Reading books
- Running/Working out.
- Camping.
- Netflix
- Pretty Much all Food
- Playing the Piano
- Going to Shows.
- Snowboarding
Why Epicodus?
Going into college I had no idea what I wanted to do, so I picked a basic degree and got my associates in marketing. After being unhappy in that field for several years I decided to try something completely different and enroll in a welding program. I completed that in 6 months and got a job pipe fitting.
I enjoyed pipe fitting to an extent, but there was not much growth potential and felt restless and unchallenged in my daily work. My dad has been a software engineer for 30 years and told me I should look into a coding program. After doing some research and weighing the pros and cons of switching careers yet again I decided to dive in, head first. Here are several reasons I decided to give sofware development and go:
- I will challenge myself everyday.
- It's a profession in high demand
- It's a creative outlet


tclsh(1) Tcl Applications tclsh(1) ________________________________________________________________________________ NAME tclsh - Simple shell containing Tcl interpreter SYNOPSIS tclsh ?-encoding name? ?fileName arg arg ...? _________________________________________________________________ DESCRIPTION Tclsh is a shell-like application that reads Tcl commands from its stan‐ dard input or from a file and evaluates them. If invoked with no argu‐ ments then it runs interactively, reading Tcl commands from standard input and printing command results and error messages to standard output. It runs until the exit command is invoked or until it reaches end-of-file on its standard input. If there exists a file .tclshrc (or tclshrc.tcl on the Windows platforms) in the home directory of the user, interactive tclsh evaluates the file as a Tcl script just before reading the first command from standard input. SCRIPT FILES If tclsh is invoked with arguments then the first few arguments specify │ the name of a script file, and, optionally, the encoding of the text data │ stored in that script file. Any additional arguments are made available to the script as variables (see below). Instead of reading commands from standard input tclsh will read Tcl commands from the named file; tclsh will exit when it reaches the end of the file. The end of the file may be marked either by the physical end of the medium, or by the character, “\032” (“\u001a”, control-Z). If this character is present in the file, the tclsh application will read text up to but not including the charac‐ ter. An application that requires this character in the file may safely encode it as “\032”, “\x1a”, or “\u001a”; or may generate it by use of commands such as format or binary. There is no automatic evaluation of .tclshrc when the name of a script file is presented on the tclsh command line, but the script file can always source it if desired. If you create a Tcl script in a file whose first line is #!/usr/local/bin/tclsh then you can invoke the script file directly from your shell if you mark the file as executable. This assumes that tclsh has been installed in the default location in /usr/local/bin; if it is installed somewhere else then you will have to modify the above line to match. Many UNIX systems do not allow the #! line to exceed about 30 characters in length, so be sure that the tclsh executable can be accessed with a short file name. An even better approach is to start your script files with the following three lines: #!/bin/sh # the next line restarts using tclsh \ exec tclsh "$0" "$@" This approach has three advantages over the approach in the previous paragraph. First, the location of the tclsh binary does not have to be hard-wired into the script: it can be anywhere in your shell search path. Second, it gets around the 30-character file name limit in the previous approach. Third, this approach will work even if tclsh is itself a shell script (this is done on some systems in order to handle multiple architectures or operating systems: the tclsh script selects one of several binaries to run). The three lines cause both sh and tclsh to process the script, but the exec is only executed by sh. sh processes the script first; it treats the second line as a comment and executes the third line. The exec statement cause the shell to stop processing and instead to start up tclsh to reprocess the entire script. When tclsh starts up, it treats all three lines as comments, since the backslash at the end of the second line causes the third line to be treated as part of the comment on the second line. You should note that it is also common practice to install tclsh with its version number as part of the name. This has the advantage of allowing multiple versions of Tcl to exist on the same system at once, but also the disadvantage of making it harder to write scripts that start up uni‐ formly across different versions of Tcl. VARIABLES Tclsh sets the following Tcl variables: argc Contains a count of the number of arg arguments (0 if none), not including the name of the script file. argv Contains a Tcl list whose elements are the arg arguments, in order, or an empty string if there are no arg argu‐ ments. argv0 Contains fileName if it was specified. Otherwise, con‐ tains the name by which tclsh was invoked. tcl_interactive Contains 1 if tclsh is running interactively (no fileName was specified and standard input is a terminal-like device), 0 otherwise. PROMPTS When tclsh is invoked interactively it normally prompts for each command with “% ”. You can change the prompt by setting the variables tcl_prompt1 and tcl_prompt2. If variable tcl_prompt1 exists then it must consist of a Tcl script to output a prompt; instead of outputting a prompt tclsh will evaluate the script in tcl_prompt1. The variable tcl_prompt2 is used in a similar way when a newline is typed but the cur‐ rent command is not yet complete; if tcl_prompt2 is not set then no prompt is output for incomplete commands. STANDARD CHANNELS See Tcl_StandardChannels for more explanations. SEE ALSO encoding(3tcl), fconfigure(3tcl), tclvars(3tcl) KEYWORDS argument, interpreter, prompt, script file, shell Tcl tclsh(1)


Inputs are stylized depending on their type, but they also contain a general configuration: they'll
inherit both their
color &
font-size from their parent element, and will provide a
margin &
padding of 0.25rem (2.5px) up and down and 0.5rem (5px)
to the sides; they'll also occupy 80% of the
width of their parent element. All inputs won't
show their
outline when focused.
Text Inputs
Text inputs include the types
text,
password,
email and
date, including its variants; these inputs
have a #eaeaea solid border of 0.1rem (1px) with 0.5rem (5px) of
border-radius.
Button Inputs
Button inputs include the types
button,
reset and
submit; button inputs are configured to have their default
background-color of #dddddd, but they also contain a
padding of
1.5rem (15px) 0. Additionally, they also have their
border removed and a
border-radius of 2rem or 20px. They'll change the
cursor and their
background-color to #aaaaaa when hovered or active.
If you combine an additional
formatted class to either the
reset or
submit buttons,
they'll look like this.
If you combine an additional
main class to any of the button inputs, they'll look like this:
File Inputs
File inputs just include the
file type;
file type inputs are notoriously hard to stylize in general, to overcome this,
a
label element its necessary to accompany it. In Tejuino,
file inputs are hidden, and their functionality its passed
to their respective
label; that
label its stylized similar to a button: it has the same default
background-color and its alternative when the
label its active; it has a
border-radius of 0.75rem or 7.5px and it'll center the text inside of it.
The
file label also contains two alternative classes: a
main &
secondary:
If you want the regular unstylized
file input, add the
show class to it:
Special Inputs
Special inputs include the
color,
checkbox,
radio and
range types; there's currently
any support for these kinds of inputs, so they'll behave like their regular HTML tags with the general
input configuration.


Enums
The following enums are available globally.
-
Errors which can be thrown by Rapid SDK
- permissionDenied: Client doesn’t have permissons to read or write specified data
- server: Internal Rapid.io server error
- invalidRequest: Client sent an invalid request to Rapid.io server. Please update Rapid SDK. If your Rapid SDK is up to date, please report an issue at https://github.com/rapid-io/rapid-io-ios
- connectionTerminated: Websocket connection expired and needs to be reestablished
- invalidData: Data provided by a developer (collection name, document ID, document mutation value etc.) are in an invalid format
- timeout: Request timeout
- invalidAuthToken: Authorization token is invalid
- executionFailed: Optimistic concurrency write to a document failed
- cancelled: Request cancelled
default
: General error
Declaration
Swift
public enum RapidError: Error
-
Possible connection states
- disconnected: Rapid instance is disconnected
- connecting: Rapid instance is connecting to server
- connected: Rapid instance is connected
Declaration
Swift
public enum RapidConnectionState
-
Result of a request that is passed to a completion handler
- success: Request was proceeded without any error
- failure: An error occured
Declaration
Swift
public enum RapidResult<Value>
-
Return type for
RapidDocumentExecutionBlock
RapidExecutionResult
represents an action that should be performed based on a current value that is provided as an input parameter ofRapidDocumentExecutionBlock
- write: Write new data
- delete: Delete a document
- abort: Abort process
Declaration
Swift
public enum RapidExecutionResult


What is Emotional Intelligence?
For me Emotional Intelligence is self-awareness which is your Identity, to know and understanding who you are and where you come from, strenghtens you from the inside out.
This guy puts it down like this:
The 5 Components/Elements/Domains of the EQ Model, According to Daniel Goleman, there are five components or elements of emotional intelligence:
How is it different to IQ?
The difference between EQ and IQ. IQ is Intelligence like academic, like brainy people where they can be tested and graded.
EQ is a quality of Self awareness like empathy and intuition, qualities that cannot be measured or tested.
Why is it Important?

For me EQ is very much a well being of self, well being of environment, and well being of wairua. Self awareness or Identity strenghtens who I am, respecting who I am and others around me. EQ enables freedom of responsibility and motivation. EQ is also learnt through emotions, the senses, visual, touch etc.
IQ has a different set of talents, which are important to many, which can be measured to see who is clever-er then the others, can even be displayed with a Masters or PHD certificate which can be trained and studied for.


Will Vandevanter - @_will_is_
Agenda (30 minutes):
Slides, References, and Code:
oxmlxxe.github.io
XXE in docx
XXE in PDF
Google Research - "Lens Blur in the new Google Camera App" (04/16/14)
XXE in JPG
< !DOCTYPE root [
< !ENTITY post "MYSTRING">
]>
/word/document.xml
/ppt/presentation.xml
/xl/workbook.xml
XSS Testing
< !ENTITY post "<script>alert(1)...
< !ENTITY post "< ![CDATA[<script>alert(1)...
LFI
Relationship Id="rId1" Type="...relationships/officeDocument" Target="/word/document.xml"
hlinkHover
XSLTransform
Embedded "Documents"
SSRF
Classic (X)XE
Canary Testing DTD and XE
XSS XE testing (CDATA/plain/attr)
XE LFI
Embedded (X)XE attacks
SSRF (X)XE
(DEFENSE) The libraries that parse XML on one part of the site (e.g. API) may not be the same ones that parse uploaded files; verify! Check configurations.
(DEFENSE) Patches exist, many are recent
(OFFENSE) Lots of surface area for exploitation
(OFFENSE) Untouched research targets
Thanks!
http://oxmlxxe.github.io


For Creative Product Design Project, I did design Automatic Seoul Bike Inspector System. Automatic Seoul Bike Inspector named Recycle lifts and fix Bike, And then it automatically inspects Tire Pressure, Head Light.
Check it outAutomatic walking Robot, By using Theo Jansen walking mechanism I did design Automatic walking Robot. and Opencv and Direction decision algorithm
Check it out


On arrival at a port of entry, report to the Harbour Master and all persons must remain on board until the formalities are completed. Formalities on arrival are usually simplified by the fact that the various officials will visit the boat, or are often waiting on the quay, on arrival.
Customs require a list of dutiable goods and often wish to see the yacht's insurance papers. They will issue a cruising permit (valid for 6 months). Then clear with Immigration and the Harbour Master (marine marchande) to whom harbour dues have to be paid. In subsequent ports officials may retain the permit during one's visit and will request crew lists.
When leaving each port, pay the harbour fees and check out with the port police, who will want to know the yacht's next destination.
On departure from Tunisia, the permit must be surrendered to Customs and Immigration must also be visited.
Anchoring between ports is discouraged.
Last updated February 2015.
Passports must be valid for 6 months.
Visas are not required for many nationals including those of most European countries, Canada, the United States and Japan.
Australian and South African citizens will be issued with a visa on arrival. New Zealand citizens require a visa in advance. There is no charge for the visa, which may be renewed.
Israeli nationals and those with Israeli stamps in their passports are not allowed into the country.
On arrival, passports are stamped by the police for three months, renewable for another three. One must notify the authorities of any crew changes.
Last updated February 2015.
On entry, Customs will issue a "libre pratique" for a six months transit permit for the boat.
Large quantities of alcoholic drinks may be sealed by customs.
Spare parts can be imported duty-free if clearly marked yacht in transit
.
Firearms must be declared to Customs on arrival.
Tunisian regulations require you to declare on entry any large amounts of money being brought in. You will also be asked to declare if you expect to have more than US$750 on you when you leave.
The export of Tunisian dinars is expressly prohibited. You could be required to show the currency declaration on departure.
There are no customs fees.
Last updated February 2016.
A cruising permit (triptique) is issued on arrival when clearing in, free of charge. The period of validity will be stated on the permit and is usually three months (six months in Monastir). It is renewable up to one year. If leaving the yacht in Tunisia, but departing the country by other means, the permit must be returned and customs will put the yacht in containment, during which time one cannot cruise, although crew can remain on board. When wishing to cruise again, one must obtain a new permit. If a yacht is left in Tunisia in the care of a marina or boatyard while the owner is abroad, the validity of the permit can be extended.
Unattended boats may remain in Tunisia for any length of time provided Customs is informed.
Marina fees in most places are lower than in most European marinas. With the exception of Sidi Bou Said marina, where charges are high ((79 euro/night for 14.5m in 2010)), all other marina offer reduced rates for longer stays. (19 euro/night in Monastir for a 12m yacht in 2013).
There is a fee for issuing a visa on arrival (100 euro for non-EU citizens)
Last updated February 2016.
The commercial port of Ghannouch 1.5 miles north of Gabes is prohibited to yachts.
Avoid taking any photographs near sensitive political or military sites.
Fishing with scuba gear is forbidden.
Tunisia is a Muslim country and visitors should respect the local customs, especially during the month of Ramadan. Visitors, and women in particular, should dress modestly. Only married couples are allowed to share rooms.
Dogs and cats must have health certificates and certificates of vaccination between one and six months old.


The nanodiffraction toolbox is a set of tools developed at the Institute for X-ray Physics (University of Göttingen, Germany) to facilitate analysis of complex diffraction signals. It offers a modular workflow that separates data reading from data analysis and visualization. Each module contains useful data treatment methods, however, key functions are provided that function without the more complex module constructs.
Special attention is paid to the readability of the underlying code base, as readable code is likely to be shared more often. Therefore, the toolbox can be seen as an API that should be usable also by unexperienced programmers.
The toolbox has been developed within the framework of the Sonderforschungsbereich 937 - Collective behavior of soft and biological matter (DFG-SFB 937). Funding by the Deutsche Forschungsgemeinschaft (DFG) is gratefully acknowledged.
For more information, see


This is a video tutorial to claim KMD interest if you're using the Ledger hardware wallet. Follow this link for the written guide: https://support.chainzilla...
farl05-Sep-19 10:07 AM
Thank you. This one is safe? The last Agama hack makes me very causcious.
@farl when it comes to safest, I count on the best security practice of the paranoids.
using a dedicated device, synced full node of that cryptocurrency which you have tokens of and which you value the most, compiled from source code, only command line and without any user interface, and only running this command line daemon on that machine and no use of any other software or service on that machine except this dedicated use. running it over tor + firewall setup, you can do simple commands for komodo like "sendtoaddress" to send the funds from your own address to your own address holding the funds, every month, to accrue and get rewards.(edited)
the less the other softwares there are on the OS which you are using for this cryptocurrency the less the chances of messing up and losing your valuable tokens.
and it's not that hard to setup this way.
hmm.... I guess I can agree if a user is a linux newbie
true, for a linux newbie a tutorial always helps
I think there should be a paranoids' guide to using Komodo too (edited)
1
1
agree, will put in my todo list
Deleted User05-Sep-19 11:06 AM
@farl AFAIK PTYX is a serious guy, and have been doing a lot of stuff for KMD and working on real things
farl05-Sep-19 12:09 PM
Yes, I know him. Will look into it. Thx guys!
hyperDEX05-Sep-19 12:20 PM
@grewalsatinder you still might expose your private keys whereas a ledger will not.
Once Luke has some more time, the ledgerclaim site will allow users to download it and store a local copy so they wont even need to go to the site.
2
grewalsatinder05-Sep-19 12:24 PM
@hyperDEX can't disagree on that mate.
Paranoia says don't trust ledger's servers serving blockchain to their devices, and be afraid of the firmware attacks.
There are two point of views that I am referring to, the usual, and paranoids
hyperDEX05-Sep-19 12:25 PM
The other option which @Deleted User was working on was a multisig setup, having say 3 yubikeys
That would be cool
grewalsatinder05-Sep-19 12:26 PM
Paranoids just are crazy, there is kinda no end to it
hyperDEX05-Sep-19 12:26 PM
Yep, there is a fine balance between being safe and being so inconvenient that you dont want to do anything
grewalsatinder05-Sep-19 12:27 PM
Exactly
hyperDEX05-Sep-19 12:28 PM
Well this is what i would suggest. Get the seed bip39 generator for komodo. On a offline PC have that there. Go to ledger, get the 24 words
Punch that into the generator, you will get a list of addresses and privkeys
Then every time you claim you check against your list to make sure the address that it generates you have the privkey for
Maybe there is a way to point the blockchain data it uses to your own node too
Then you should have the best of both worlds
When i say offline PC, i mean like never connected to the internet with wifi removed physically and a RJ45 cable chopped off and connected to the PC so you dont accidentally connect something.
grewalsatinder05-Sep-19 12:33 PM
Yes, that's also a good idea
I was also thinking another thing
using libnspv as a replacement of full node on an offline computer
that means having a libnspv installed on a offline computer with network connections devices/parts removed physically.
but to take the necessary data for libnspv from another online device and feed it to the the offline libnspv
check and view the basic transactions info from offline libnspv and create a signed transaction which you can take a copy of and braodcast from the online device using nspv
@jl777c thoughts ?
I understand that there's no such data saved by libnspv on the disk, but only in the run time memory
@blackjok3r
hyperDEX05-Sep-19 12:39 PM
what if the data is saved to a removable device?
Like a USB, but once the USB touches the offline device it should be destroyed
grewalsatinder05-Sep-19 12:41 PM
the reason I thought of libnspv as replacement for offline full node was the need to copy the GBs of data needed to copy from online device to an offline device to check on latest blockchain data to create a transaction.
with libnspv, that will be in MBs
SHossain05-Sep-19 12:49 PM
The other option which @Emmanuel was working on was a multisig setup, having say 3 yubikeys@hyperDEX this sounds very interesting. Yubikeys for blockchain sounds awesome.
Harvester05-Sep-19 12:57 PM
Where the hell did Atomic dex vanished from Play store ?? No sign of Komodo platform there anymore
1
Caglio05-Sep-19 01:04 PM
wanted to ask same thing
siu - Chainmakers05-Sep-19 01:22 PM
Hmmm true...
@ca333 any issues with atomic dex not being listed on play store ?
ca33305-Sep-19 01:49 PM
@siu - Chainmakers - the app was just listed for pre-registrations recently which we removed. We are in the process of releasing version 0.1.7 this week which will become publicly available (as a public beta release). This will likely be the version for the first stress test stage. However, registered users are still able to download/install the app from playstore. Just DM us your playstore attached email address if that is not the case.
5
Alright05-Sep-19 01:53 PM
@grewalsatinderthe reason I thought of libnspv as replacement for offline full node was the need to copy the GBs of data needed to copy from online device to an offline device to check on latest blockchain data to create a transaction. don't need to copy GBs to sign something, just scriptPubKey, the vout number and txid
also and it's not that hard to setup this way. "and it's not that hard to mess us this way"* (edited)
Ludom05-Sep-19 02:55 PM
Hi some annoucements about the Komodo meetup :
First of all you have to subscribe for the Meetup and the Ludom's BBQ (free, sponsored by IndéNodes and @metaphilibert ) and for the collective accommodation (not obligatory).
https://www.weezevent.com/komodo-meetup-weekend
Si tu es francophone ou que tu parles parfaitement français, tu peux aussi t'inscrire au Repas du coin du dimanche : https://framadate.org/lisbonne
I have some promotion codes for the free accommodation (sponsored by Starchain). It makes the shared rooms free. PM me if interested.
Indeed , all the drama is bad for the all ecosystem/ project itself .

Just saying .
Deleted User05-Sep-19 09:14 PM
hopefully it would be if things doesn't change
Buddz199305-Sep-19 09:15 PM
Get your **** together guys seriously .
Deleted User05-Sep-19 09:15 PM
distracting people is the way KMD people handle the situation, not arguing about facts, but deviating to personal matters(edited)
Buddz199305-Sep-19 09:15 PM
I’m sorry to be so direct but I have been watching this story for quite some time and it’s getting in my opinion too much for everyone .
Deleted User05-Sep-19 09:16 PM
and this won't stop, until good decisions are taken
Buddz199305-Sep-19 09:16 PM
It’s certainly not a way to protect your investors from leaving(edited)
ComputerGenie 👴👴👴05-Sep-19 09:17 PM
all the drama is bad for the all ecosystem/ project itself
That depends on the topic and context
Not all "drama" is bad and not all prolonged discussion about differing sides of a topic is "drama"
The bit that becomes bad is when the personal attacks start, then someone gets in their feelz, drops the topic, and it all becomes about "I have to get him for him getting me"
Buddz199305-Sep-19 09:17 PM
Drama itself can cause obviously awareness but it doesn’t mean it’s a good one
Deleted User05-Sep-19 09:18 PM
Investors have to know, that's the point of all this
ComputerGenie 👴👴👴05-Sep-19 09:18 PM
I'm just saying that not everything that's been labeled "drama" and "fighting" actually is
Buddz199305-Sep-19 09:18 PM
It’s getting to a point where people are starting to take it personal as you said and that’s when ***. Hits the fan
How can’t they , I would also .
ComputerGenie 👴👴👴05-Sep-19 09:19 PM
How can’t they , I would also
It's simple, stick to facts; facts aren't personal attacks(edited)
Deleted User05-Sep-19 09:19 PM
that s the point
deviating from facts to personal attacks, or calling fud is just neglecting the facts in themselves
Buddz199305-Sep-19 09:20 PM
It’s a very thin line between that and often people tend to lean to the personal side
Deleted User05-Sep-19 09:20 PM
FYI, I'll present next year
not under another name, obviously
Buddz199305-Sep-19 09:21 PM
It’s how humans are and if you study the human brain you would have know as you said based on ‘facts’ that’s indeed what tends to happen
It’s the way how people resolve their issues that makes the difference .
freakbros05-Sep-19 09:21 PM
After reading all this stuff I forgot what the hell is this all about
ComputerGenie 👴👴👴05-Sep-19 09:21 PM
we could literally debate "partly cloudy" vs "mostly sunny" until the end of eternity and it wouldn't become "drama" until one of us directed a comment at the other and it went un-ignored
Deleted User05-Sep-19 09:22 PM
seems votes are the way to go. I'll be patient, and explain to interested people and investors one by one(edited)
Buddz199305-Sep-19 09:22 PM
It really depends on your perspective /cultural and I could name a ton amount of things
Mr @ComputerGenie 👴👴👴 you just have to accept that sometimes people are different from you and can associate things also from a different perspective, so yes from me and most of the people here this was indeed a drama.(edited)
ComputerGenie 👴👴👴05-Sep-19 09:25 PM
you just have to accept that sometimes people are different from you and can associate things also from a different perspective, so yes from means most of the people here this was indeed a drama.
Well, depending on which specific topic you're on about (I can think of 4 in the last 3 days), then they're wrong and there's nothing I can do about that
if you (in the general sense, not you personally) cannot discern the difference between "debate" and "drama", then that's on you
1
sφldat05-Sep-19 09:27 PM
However, a drama can have a different definition and impact for each person
Buddz199305-Sep-19 09:27 PM
I as an investor and I will say that I have been in Komodo for far longer than you, it’s not good for the ecosystem and I’m not the only one so just accept it and well let’s pick up the pieces and try to get out of this in a friendly and decent manner
^^
Someone that understand
ComputerGenie 👴👴👴05-Sep-19 09:27 PM
some would say (wrongly) that you're creating drama about if there was drama


Alice's Pizza Company
Place your order below.
Choose a size:
Small
Medium
Large
Choose your toppings:
Cheese
Pepperoni
Artichoke
Anchovy
Sausage
Pineapple
Ham
Mushroom
Onion
Submit Form
Order Details:
Pizza Size:
Toppings:
Final Cost: $


April 1, 2001
William A. Bates
Macrosoft Corporation
Blumond, WA 12345
Internal Revenue Service
Philadelphia, PA 67890
Dear Sirs,
I am writing to inform you that, due to financial difficulties, I will be unable to pay my taxes this year.
You see, my company has had reduced profits this year. In fact gross revenues have now dropped below the GDP of twelve foreign countries! Given this intolerable situation, I am sure you will understand.
He made me to lie down in green pastures: he led me beside the still waters. He restoreth my soul: he leadeth me in the paths of righteousness for his name's sake. Yea, though I walk through the valley of the shadow of death, I will fear no evil: for thou art with me; thy rod and thy staff they comfort me.  Surely goodness and mercy shall follow me all the days of my life: and I will dwell in the house of the LORD for ever.
Sincerely,
William A. Bates


Cacti - T. peruvianus
I am a forty-something-year-old male who used numerous drugs in college: marijuana daily, various forms of hashish, alcohol, caffeine, cocaine, methamphetamine, mushrooms, and a little too much LSD. Thereafter, I used only moderate amounts of marijuana and a little alcohol for the next fifteen years. Some life changes inspired me to resume my work with hallucinogens, this time as a spiritual learning tool rather than as a party device. This led me to the legal-to-possess hallucinogens, including Salvia divinorum and the Trichocereus cacti, both T. pachanoi and T. peruvianus. The following report documents my fifth exploration with mescaline-producing cacti in the past three years.
The Preparation
After four previous cactus trips, I found that the two I did by myself were very therapeutic and deep, whereas the two I did with a good friend were enjoyable, but not very deep. I’ve been feeling a need for a therapy session, so the upcoming trip will be solo. I’ve scheduled this trip for a time when I will be the only one in my house for a few days, and I have followed a restricted diet for the past three days similar to that suggested before ingesting MAOIs (particularly avoiding foods with tyramine, such as aged cheese and avocados). Although there are no strong MAOIs in Trichocereus cacti, they do have a high tyramine content, which can cause headaches, so the less in my system, the better. I decided to use 70 g of dried T. peruvianus from the same batch that I have used three times before (40, 50, and 65 g trips).
Past experience cooking cacti has taught me to start the oven vent hood first to reduce the lingering odors, which can be a potent nausea trigger even days afterward. Seventy grams of dried cactus with 1.5 qt of water are boiled for an hour in a steel pot. The now-softened cactus is ground up in a blender, then put back in the pot along with the juice of six lemons, returned to a boil briefly, and left to soak for two hours. It is then returned to a low boil for 2.5 more hours, and then the whole mess is strained through a cotton t-shirt. I note that the strained solids have a slightly sweet taste, but no bitterness. Since the alkaloids are bitter, this is a good indication that they are in the very bitter liquid. The filtered liquid is returned to the pot for two more hours of boiling until the volume is reduced to eight ounces of a brownish green liquid the consistency of maple syrup. The liquid is divided evenly between two Mason jars and refrigerated for the next day.
The Experience
T=0
First thing in the morning, I prepare for takeoff. I eat a bit of dry cereal to ready my stomach. Assessment of me: no pains, some sinus congestion, mind is calm. It is a clear, beautiful day, predicted to be warm and windy. It takes several minutes to overcome my aversion to drinking this awful, bitter liquid. Now that my body has experienced it several times, I have a Pavlovian gag response when I even think about committing felonious cactophagy.  Fortunately, the expectation is worse than the actual consumption.
T=+0:45
I’m beginning to feel some queasiness in my stomach and a sense that things are subtly changing. I smoke a bit of marijuana to arrest the nausea and then drink the contents of the second Mason jar. The second jar is much harder to get down and my body twists and flinches like the mad scientist in a horror film as he drinks “The Potion”. I quickly wash the Mason jar to reduce the cooked cactus odor and then immediately walk around outside in the garden, trying to sneak away from my churning stomach.
T=+1:15
It’s definitely starting to happen. I feel a warmth resonating in me. My hands appear to be ever so slightly larger and time is slowing. Writing requires more effort as my motor skills become rubbery, almost like being drunk on alcohol. I am calm and open, very relaxed and ready for a mescaline adventure. I take another puff of the marijuana anti-nausea medicine.
T=+1:45
The walls are vibrating with light colors and hints of geometric patterns. Nothing looks quite level.
T=+2:15
The mindscapes are incredible! I’m seeing cities floating in space. Mescaline is appearing in most of my thoughts and beginning the relentless push to enter each cell of my body. The come-up is slow but steady, and I fade in and out of meditation space.
T=+4:15
Full blown ON!!! Plus three on the Shulgin scale, and my mind state is in that totally different place I call “tripping”, which can’t (so far) be felt or described when sober. With open eyes I see the empty spaces in front of me completely filled with pulsating bands of multicolored lights and geometric patterns. My whole body is moving with these pulses. Soon my thoughts become highly erotic, crowding out any hopes I may have had about this being a “therapeutic” trip. So I go with it, enjoying the sensations my body and mind experience along with the elaborate mental pictures.
T=+5:15
I stagger outside to the hammock and lie there watching the trees dance with each other in the wind. I feel intimate with the trees and notice how each branch moves relative to the others. The wind blows right through me, showing me that I am an infinite being connected to everything. I realize that this is always the case, but that I’m usually not aware of it.
 I continue thinking about how mescaline connects me. Just that: connected. Empathy is easy with whatever or whomever I think about or look at. It would be no more possible to weed the garden or do any pruning than it would be to cut off my own fingers.
I wander back to the kitchen to stare at the linoleum floor, which is now filled with fantastical floating cities in three dimensions with clear details as small as the windows on the many tall, silver buildings. It reminds me of looking at those “Magic Eye” pictures when I get into “the space” where things start to appear, although at the moment it takes no such special effort to see—I’m just there. Unfortunately there is just enough lingering cooked cactus odor in the kitchen to keep me from staying very long, so I head out for a walk.
 Crossing streets is anxiety-provoking, as it should be, since I retain an awareness of their danger and am aware that I can’t judge depth or speed very well.
I arrive safely at a five-acre wood filled with walking paths near my home. Here I wander calmly and rhythmically through the woods. My mind is flying while my body moves on autopilot. The walking is peaceful and purposeful, providing a platform from which my mind leaps and twists and turns; the forest is an extension of my mind and provides structure.
My navigational skills, not being very good when sober, are really bad now and I end up taking a side path that goes a long way in a direction not helpful to my return. Eventually I figure this out and wander back in the correct direction. Much of this wandering back and forth occurs in a low, marshy area. It becomes symbolic of my personal growth and the collection of past life wreckage (lessons learned)—“Every man has his own mangrove swamp to tend to”. Symbolically tramping over healed wounds shows me both how they helped shape me, and how they no longer plague me. I can just walk right over them.
And that is just the part I could put into words.
T=+7:45
Back at home, finally! That was a really long walk and I am exhausted. I hang out with the dog (my universal ground to everything), and munch a little food. I speak with an old trip buddy and babble semi-incoherently for a while about how everything is still vibrating, and why doesn’t that reality just stand still so you can get a good look at it?
T=+10:45
The trip is now in a more introspective, quiet phase. I watch the movie Satchmo, a documentary about Louis Armstrong, and it brings me to tears many times. I am moved by how Louis retained his genuine warmth and love for all people despite facing American racism. I feel connected to him through love.
T=+12:45
I’m listening to jazz and drinking tea to soothe my stomach. Food is finally appealing again. While I wait for my eggs to boil, I try to figure out what “it” all meant: the initial erotic surge of energy, the trees dancing with my feelings of connection, the long walking meditation, the phone call to an old friend, and really missing Satchmo, a surrogate for the closer people and animals who have left my life. I do some writing, but mostly I just sit and think. My contemplations are gently productive and reach conclusions rather than racing and looping into a twisted despair as often happened with LSD.
T=+18:45
I’m mostly back down and am finally heading for bed. I take an Ultram (tramadol) and three ibuprofen tablets to fend off a growing headache.
The Recovery
The next day I wake up late, feeling a bit groggy and tired, with a mild headache. At noon I take another Ultram and three ibuprofens, which work pretty well; no further pain medicine is needed. This is a great relief since some of my cactus trips have resulted in excruciating headaches the next day. My guts, however, are not happy with what they consumed yesterday and I experience mild diarrhea for the next four days. This is the first time for this aftereffect, and I find that acidophilus pills help some.
Though I was concerned early in the trip that it wasn’t turning out to be a “therapy session”, the process of writing down my experience over the following days showed me what I learned. The dedication of such a large block of time to these experiences (each consumes three days between preparation, tripping, and complete return to normal space) continues to be a worthwhile investment in myself.
[This report appeared in
Erowid Extracts #12]
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.


How to change font styles in a List
component
A List
component contains a number of item renderers that display some text. Let's look at how to change the font styles in the item renderers outside of the theme.
The item renderer font styles
We can customize the item renderers inside the list's itemRendererFactory
. As long as we aren't setting any advanced font styles on the item renderer's text renderer (and the theme isn't either), we can pass a starling.text.TextFormat
directly to the item renderer's fontStyles
property.
var list:List = new List();
list.itemRendererFactory = function():IListItemRenderer
{
var itemRenderer:DefaultListItemRenderer = new DefaultListItemRenderer();
itemRenderer.fontStyles = new TextFormat( "Arial", 20, 0x3c3c3c );
return itemRenderer;
};
If we wanted to change the item renderer's font styles inside the theme, we could set the list's customItemRendererStyleName
property and extend the theme.


Internal identifiers of a blocked number list entry
Internal identifier of a call log record
Since 1.0.10 (Release 6.2)
Deletes extension(s) by ID(s).
| Permission | Description |
|---|---|
| EditAccounts | Viewing and updating user account info (including name, business name, address and phone number/account number) |
Medium
Internal identifier of a forwarding number
Since 1.0.0
Returns basic information about a particular extension of an account.
| Permission | Description |
|---|---|
| ReadAccounts | Viewing user account info (including name, business name, address and phone number/account number) |
Light
Since 1.0.0
Returns the list of extensions created for a particular account. All types of extensions are included in this list.
| Permission | Description |
|---|---|
| ReadAccounts | Viewing user account info (including name, business name, address and phone number/account number) |
Medium
Internal identifier of a message
Since 1.0.10 (Release 6.2)
Creates an extension.
| Permission | Description |
|---|---|
| EditAccounts | Viewing and updating user account info (including name, business name, address and phone number/account number) |
Medium
Dimensions of a profile image which will be returned in response. If this path parameter is not specified in request URI then
| Permission | Description |
|---|---|
| EditExtensions | Viewing and updating my extension info (includes extension name, number, email and phone number) |
Medium
Internal identifier of a RingOut call
Generated using TypeDoc
Internal identifier of an answering rule. The value can be standard digital ID or specific ID - either business-hours-rule or after-hours-rule


About
Blog
Projects
Contact
Hoverable Sidenav Buttons
Hover over the buttons in the left side navigation to open them.


--- layout: post permalink: bingotrans.html Tags: Array NameOfCoupon: BingoTrans Cash Back Summary: See our BingoTrans Coupon Code, BingoTrans Rebate, BingoTrans Promo Code, BingoTrans Discount, BingoTrans Coupon Cash Back Rebate here. MetaKeywords: BingoTrans Coupon Code, BingoTrans Rebate, BingoTrans Promo Code, BingoTrans Cash Back Rebate, BingoTrans Discount, BingoTrans Coupon Image: images/29696.jpg LinkURL: http://www.shareasale.com/r.cfm?b=260612&u=412002&m=29696 affiliate_url_link: http://www.icouponblog.com/jane.php?id=6200 thesis_readmore: See the BingoTrans Coupon thesis_thumb: http://www.icouponblog.com/tn.php?merchantURL=bingotrans.com Title: Save 4.00% - BingoTrans Coupon Code for bingotrans.com. BingoTrans Rebate & Discount thesis_description: Our BingoTrans Discount Coupon Code for bingotrans.com. We have the best BingoTrans Rebate anywhere. thesis_keywords: BingoTrans, BingoTrans Coupon Code, BingoTrans Discount, BingoTrans Rebate product_name: BingoTrans hop_url: http://www.icouponblog.com/hop.php?id=6200 ---
If you want to buy high quality products at the lowest prices, visit www.bingotrans.com. It is the best place online to buy over 100,000 thousand category of products at wholesale rates. You can buy anything and everything from electronics, cell phone accessories, MP3 Player, MP4 Player, watch cell phone, bluetooth headset, wedding Dress, hoodies, handbags, jewelry, jeans, watches, sports shirts, sports shoes, T-shirts, Soccer Jersey and more. It is easy to order, you don’t have to register. It is also safe and secure. Use our discount coupons to get a great price.
Bingotrans is great Chinese website that allows you to buy over one hundred thousand merchandises in one place at an amazing price. If you are getting married, setting up a new house or simply buying presents for birthdays, showers or any other occasions, check out www.bingotrans.com. You can buy name brand products for less. They carry a wide range of products in every genre. Get Pcs, tablets, Google Androids, celebrity dresses, shoes, snow boots, wigs, hairpieces, jewelry and lots more. Visit www.bingotrans.com and save time and money. Buy great products at the best prices. Check it out now.
Why pay more when you can pay less for over 100,000 products relating to electronics, apparel, computers, cell phones, toys, fashion products, jewelry and so much more. Visit www.bingotrans.com. Their user friendly website will help you find everything you need by category and price. You can even qualify for free shipping. Save money and buy the best when you shop online at www.bingotrans.com.


public interface SqlQuery extends Serializable
The returned SqlRow objects are similar to a LinkedHashMap with some type conversion support added.
Refer to DtoQuery
for native sql queries returning DTO beans.
Refer to Database.findNative(Class, String)
for native sql queries returning entity beans.
// example using named parameters
String sql = "select id, name from customer where name like :name and status_code = :status";
List<SqlRow> list =
DB.sqlQuery(sql)
.setParameter("name", "Acme%")
.setParameter("status", "ACTIVE")
.findList();
| Modifier and Type | Method and Description |
|---|---|
void |
findEach(java.util.function.Consumer<SqlRow> consumer)
Execute the SqlQuery iterating a row at a time.
|
void |
findEachRow(RowConsumer consumer)
Execute the query reading each row from ResultSet using the RowConsumer.
|
void |
findEachWhile(java.util.function.Predicate<SqlRow> consumer)
Execute the SqlQuery iterating a row at a time with the ability to stop consuming part way through.
|
List<SqlRow> |
findList()
Execute the query returning a list.
|
<T> List<T> |
findList(RowMapper<T> mapper)
Execute the query returning a list using the mapper.
|
SqlRow |
findOne()
Execute the query returning a single row or null.
|
<T> T |
findOne(RowMapper<T> mapper)
Execute the query returning a single result using the mapper.
|
Optional<SqlRow> |
findOneOrEmpty()
Execute the query returning an optional row.
|
<T> T |
findSingleAttribute(Class<T> attributeType)
Execute the query returning a single scalar attribute.
|
<T> List<T> |
findSingleAttributeList(Class<T> attributeType)
Execute the query returning a list of scalar attribute values.
|
BigDecimal |
findSingleDecimal()
Execute the query returning a single BigDecimal value.
|
Long |
findSingleLong()
Execute the query returning a single Long value.
|
SqlQuery |
setBufferFetchSizeHint(int bufferFetchSizeHint)
A hint which for JDBC translates to the Statement.fetchSize().
|
SqlQuery |
setFirstRow(int firstRow)
Set the index of the first row of the results to return.
|
SqlQuery |
setLabel(String label)
Set a label that can be put on performance metrics that are collected.
|
SqlQuery |
setMaxRows(int maxRows)
Set the maximum number of query results to return.
|
SqlQuery |
setParameter(int position,
Object value)
The same as bind for positioned parameters.
|
SqlQuery |
setParameter(String name,
Object value)
The same as bind for named parameters.
|
SqlQuery |
setParams(Object... values)
Set one of more positioned parameters.
|
SqlQuery |
setTimeout(int secs)
Set a timeout on this query.
|
void findEach(java.util.function.Consumer<SqlRow> consumer)
This streaming type query is useful for large query execution as only 1 row needs to be held in memory.
void findEachWhile(java.util.function.Predicate<SqlRow> consumer)
Returning false after processing a row stops the iteration through the query results.
This streaming type query is useful for large query execution as only 1 row needs to be held in memory.
@Nullable SqlRow findOne()
If this query finds 2 or more rows then it will throw a PersistenceException.
<T> T findOne(RowMapper<T> mapper)
mapper
- Used to map each ResultSet row into the result object.<T> List<T> findList(RowMapper<T> mapper)
mapper
- Used to map each ResultSet row into the result object.void findEachRow(RowConsumer consumer)
This provides a low level option that reads directly from the JDBC ResultSet and is good for processing very large results where (unlike findList) we don't hold all the results in memory but instead can process row by row.
String sql = "select id, name, status from customer order by name desc";
DB.sqlQuery(sql)
.findEachRow((resultSet, rowNum) -> {
// read directly from ResultSet
long id = resultSet.getLong(1);
String name = resultSet.getString(2);
// do something interesting with the data
});
consumer
- Used to read and process each ResultSet row.@Nonnull Optional<SqlRow> findOneOrEmpty()
<T> T findSingleAttribute(Class<T> attributeType)
@{code String sql = "select max(unit_price) from o_order_detail where order_qty > ?"; BigDecimal maxPrice = DB.sqlQuery(sql) .setParameter(1, 2) .findSingleAttribute(BigDecimal.class); }
The attributeType can be any scalar type that Ebean supports (includes javax time types, Joda types etc).
attributeType
- The type of the returned valueBigDecimal findSingleDecimal()
This is an alias for findSingleAttribute(BigDecimal.class)
Long findSingleLong()
This is an alias for findSingleAttribute(Long.class)
<T> List<T> findSingleAttributeList(Class<T> attributeType)
String sql =
" select (unit_price * order_qty) " +
" from o_order_detail " +
" where unit_price > ? " +
" order by (unit_price * order_qty) desc";
//
List<BigDecimal> lineAmounts =
DB.sqlQuery(sql)
.setParameter(1, 3)
.findSingleAttributeList(BigDecimal.class);
The attributeType can be any scalar type that Ebean supports (includes javax time types, Joda types etc).
attributeType
- The type of the returned valueSqlQuery setParameter(String name, Object value)
SqlQuery setParams(Object... values)
This is a convenient alternative to multiple calls setParameter().
String sql = "select id, name from customer where name like ? and status = ?";
List<SqlRow> list =
DB.sqlQuery(sql)
.setParams("Rob", Status.NEW)
.findList();
// is the same as ...
List<SqlRow> list =
DB.sqlQuery(sql)
.setParameter(1, "Rob")
.setParameter(2, "Status.NEW)
.findList();
SqlQuery setParameter(int position, Object value)
SqlQuery setFirstRow(int firstRow)
SqlQuery setMaxRows(int maxRows)
SqlQuery setTimeout(int secs)
This will typically result in a call to setQueryTimeout() on a preparedStatement. If the timeout occurs an exception will be thrown - this will be a SQLException wrapped up in a PersistenceException.
secs
- the query timeout limit in seconds. Zero means there is no limit.SqlQuery setLabel(String label)
SqlQuery setBufferFetchSizeHint(int bufferFetchSizeHint)
Gives the JDBC driver a hint as to the number of rows that should be fetched from the database when more rows are needed for ResultSet.
Copyright © 2019. All rights reserved.


Inputs
- id
-
id to be used by the directive
(optional)
- name
-
name to use for the form field
(optional)
- value
-
sets the value to the formControl
(should not be used in combination with ngModel nor formControl directives)
- readonly
-
sets the formControl to readonly (value can only be updated by parent component)
(default: false)
- disabled
-
disable the form control
(default: false)
- errorMessage
-
manually set the control in invalid state with the given error message
(optional)
Outputs
- valueChange
- emits the value when it changes
- statusChange
- emits the status of the form control value when it changes (valid / invalid)


Dear,
您的验证码为
{{ code }}
Sincerely,
The Flasky Team
>Note: replies to this email address are not monitored.


|
Article #: |
Product: |
Version: |
|---|---|---|
|
Article Code |
Flare |
All |
Describes how to edit the master page, which compiles additional elements onto topic pages in the output.
Master pages can be used to add content to every page in an output. This project uses a master page to add breadcrumbs above the topic, and a copyright below the topic in WebHelp and HTML5 outputs. When editing the master page, you will see proxies representing areas of the topic that will be populated at compile time.
Click the images below to see the master page source compared to the generated topic.
| Source | Output |
|---|---|
The master page can be found in Content/Resources/MasterPages in the Content Explorer or added from the menu Project>New>Master Page.
|
Last updated: |
Author: |
Contributions by: |
|---|---|---|
|
February 3, 2010 |
Simon MadCap |
Fred Knowledge Base |
Copyright © 2016 Leidos, Inc. All rights reserved.


Mike Castor: Prior to launching a career as a software engineer, he spent 15 years as a technical recruiter specializing in finding software engineers for Fortune 500 companies like Facebook Inc. and Northrop Grumman. Most recently, he spent five years at Facebook's Seattle engineering site where he built a university recruiting program and managed a team of recruiters. As he makes the transition from recruiting professional to software engineer he continues to carry the values that he learned and thrived in during his time at Facebook including move fast, be bold and focus on impact. He's primarily interested in building exciting front end user experiences and telling stories with data.
Lacy Hogan: As a student at Code Fellows, she is studying to be a Full-Stack JavaScipt developer. Prior to beginning her new discipline, she was a contract specialist for over 14 years specializing in government contracts. She has performed this function in several capacities, supporting several agencies and organizations. Most recently, she supported the National Oceanic and Atmospheric Administration in Seattle, WA. She is presently a Master Sergeant in the US Air Force reserves. After she completes her education, she is interested in a career in front-end web developer, creating innovative and user-friendly products.
Daniel Shelton: After 6 years working on the business side of the medical field, he decided to change things up a bit by pursuing a new career in software development. Some of his most prominent strengths would be his leadership and collaboration skills which he acquired from work experience as a lead coder for a mid-sized medical practice. When he isn't currently programming he is either spending time with his wonderful daughter or out disc-golfing when the weather permits. His primary focus in software development is in the emerging market of mixed reality and VR technologies.
Michael Sklepowich: Currently a second-year biochemistry student at the University of Waterloo. He is a full-stack JavaScript student interested in becoming a back-end developer. He enrolled in Code Fellows after discovering his interest in data science working as a biomedical engineer last summer. After having created algorithms in Excel, he realized that learning to code was almost a necessity if he wanted to continue into data science. He plans to use the coding skills he's learned to be more productive at future positions after finishing university.


Nullam quis risus eget urna mollis ornare vel eu leo. Cum sociis natoque penatibus et
highlight magnis dis parturient montes, nascetur ridiculus
line of mus.
This text is meant to be treated as deleted text. Nullam id dolor id nibh ultricies vehicula
alax
This line of text is meant to be treated as fine print.引用


Projects by
Saheli Basu
Web Design & Development.
Overview
More Info
Contact
Instructor's Page
Information Section
Coursera Community Instructor.
About the Projects
Graphic design.
Creating designs using Canva
Creating Custom Vector Graphic Design Using VECTR : Part I
Create Improved Graphic Design Using VECT : Part II
Project Management.
Get organized with Trello Boards
Data Science.
Basic calculations with Python in Kaggle
Web design and development.
Web page creation by editing a template in GitHub
Simple Webpage Creation in GitHub
Creating Website Mockups in VECTR


Self-isolation is an important measure taken by those who have COVID-19 symptoms to avoid infecting others in the community, including family members.
Self-isolation is when a person who is experiencing fever, cough or other COVID-19 symptoms stays at home and does not go to work, school or public places. This can be voluntarily or based on his/her health care provider’s recommendation. However, if you live in an area with malaria or dengue fever it is important that you do not ignore symptoms of fever. Seek medical help. When you attend the health facility wear a mask if possible, keep at least 1 metre distant from other people and do not touch surfaces with your hands.
If you do not live in an area with malaria or dengue fever please do the following:
- If a person is in self-isolation, it is because he/she is ill but not severely ill (requiring medical attention),
have a large, well-ventilated with hand-hygiene and toilet facilities
If this is not possible, place beds at least 1 metre apart
Keep at least 1 metre from others, even from your family members
Monitor your symptoms daily
Isolate for 14 days, even if you feel healthy
If you develop difficulty breathing, contact your healthcare provider immediately – call them first if possible
Stay positive and energized by keeping in touch with loved ones by phone or online, and by exercising yourself at home.


GamerMan7799's Github Pages
This website is a simple GH page that provides links to some of the repositories I have worked on.
Website was built using UIkit 4.
My Profile Page. I am also part of the Dragon Wonder Organization which is just myself and a friend working together on some projects.


Home
About
Contact
Sign In
Join Now
Sign-In
or
Create Account
Sign in with Google
or
Email
Password
Remember Me
Forgot Password?
Be in the know on all travel deals and news
Sign Up


Field \(\QQ\) of Rational Numbers#
The class RationalField
represents the field \(\QQ\) of (arbitrary
precision) rational numbers. Each rational number is an instance of the class
Rational
.
Interactively, an instance of RationalField
is available as QQ
:
sage: QQ
Rational Field
Values of various types can be converted to rational numbers by using the
__call__()
method of RationalField
(that is, by treating QQ
as a
function).
sage: RealField(9).pi()
3.1
sage: QQ(RealField(9).pi())
22/7
sage: QQ(RealField().pi())
245850922/78256779
sage: QQ(35)
35
sage: QQ('12/347')
12/347
sage: QQ(exp(pi*I))
-1
sage: x = polygen(ZZ)
sage: QQ((3*x)/(4*x))
3/4
AUTHORS:
Niles Johnson (2010-08): github issue #3893:
random_element()
should pass on*args
and**kwds
.Travis Scrimshaw (2012-10-18): Added additional docstrings for full coverage. Removed duplicates of
discriminant()
andsignature()
.Anna Haensch (2018-03): Added function
quadratic_defect()
- class sage.rings.rational_field.RationalField#
Bases:
Singleton
,NumberField
The class
RationalField
represents the field \(\QQ\) of rational numbers.EXAMPLES:
sage: a =<PHONE_NUMBER>21093821093812093810928309183091832091 sage: b = QQ(a); b<PHONE_NUMBER>21093821093812093810928309183091832091 sage: QQ(b)<PHONE_NUMBER>21093821093812093810928309183091832091 sage: QQ(int(93820984323))<PHONE_NUMBER>3 sage: QQ(ZZ(901824309821093821093812093810928309183091832091))<PHONE_NUMBER>21093821093812093810928309183091832091 sage: QQ('-930482/9320842317') -930482/9320842317 sage: QQ((-930482,<PHONE_NUMBER>)) -930482/9320842317 sage: QQ([9320842317])<PHONE_NUMBER> sage: QQ(pari(39029384023840928309482842098430284398243982394)) # optional - sage.libs.pari<PHONE_NUMBER>3840928309482842098430284398243982394 sage: QQ('sage') Traceback (most recent call last): ... TypeError: unable to convert 'sage' to a rational
Conversion from the reals to the rationals is done by default using continued fractions.
sage: QQ(RR(3929329/32)) 3929329/32 sage: QQ(-RR(3929329/32)) -3929329/32 sage: QQ(RR(1/7)) - 1/7 0
If you specify the optional second argument
base
, then the string representation of the float is used.sage: QQ(23.2, 2)<PHONE_NUMBER>687219/281474976710656 sage:<PHONE_NUMBER>687219.0/281474976710656 23.20000000000000 sage: a = 23.2; a 23.2000000000000 sage: QQ(a, 10) 116/5
Here’s a nice example involving elliptic curves:
sage: E = EllipticCurve('11a') sage: L = E.lseries().at1(300)[0]; L 0.2538418608559106843377589233... sage: O = E.period_lattice().omega(); O 1.26920930427955 sage: t = L/O; t 0.200000000000000 sage: QQ(RealField(45)(t)) 1/5
- absolute_degree()#
Return the absolute degree of \(\QQ\), which is 1.
EXAMPLES:
sage: QQ.absolute_degree() 1
- absolute_discriminant()#
Return the absolute discriminant, which is 1.
EXAMPLES:
sage: QQ.absolute_discriminant() 1
- absolute_polynomial()#
Return a defining polynomial of \(\QQ\), as for other number fields.
This is also aliased to
defining_polynomial()
andabsolute_polynomial()
.EXAMPLES:
sage: QQ.polynomial() x
- algebraic_closure()#
Return the algebraic closure of
self
(which is \(\QQbar\)).EXAMPLES:
sage: QQ.algebraic_closure() # optional - sage.rings.number_field Algebraic Field
- automorphisms()#
Return all Galois automorphisms of
self
.OUTPUT: a sequence containing just the identity morphism
EXAMPLES:
sage: QQ.automorphisms() [ Ring endomorphism of Rational Field Defn: 1 |--> 1 ]
- characteristic()#
Return 0 since the rational field has characteristic 0.
EXAMPLES:
sage: c = QQ.characteristic(); c 0 sage: parent(c) Integer Ring
- class_number()#
Return the class number of the field of rational numbers, which is 1.
EXAMPLES:
sage: QQ.class_number() 1
- completion(p, prec, extras={})#
Return the completion of \(\QQ\) at \(p\).
EXAMPLES:
sage: QQ.completion(infinity, 53) Real Field with 53 bits of precision sage: QQ.completion(5, 15, {'print_mode': 'bars'}) 5-adic Field with capped relative precision 15
- complex_embedding(prec=53)#
Return embedding of the rational numbers into the complex numbers.
EXAMPLES:
sage: QQ.complex_embedding() Ring morphism: From: Rational Field To: Complex Field with 53 bits of precision Defn: 1 |--> 1.00000000000000 sage: QQ.complex_embedding(20) Ring morphism: From: Rational Field To: Complex Field with 20 bits of precision Defn: 1 |--> 1.0000
- construction()#
Return a pair
(functor, parent)
such thatfunctor(parent)
returnsself
.This is the construction of \(\QQ\) as the fraction field of \(\ZZ\).
EXAMPLES:
sage: QQ.construction() (FractionField, Integer Ring)
- defining_polynomial()#
Return a defining polynomial of \(\QQ\), as for other number fields.
This is also aliased to
defining_polynomial()
andabsolute_polynomial()
.EXAMPLES:
sage: QQ.polynomial() x
- degree()#
Return the degree of \(\QQ\), which is 1.
EXAMPLES:
sage: QQ.degree() 1
- discriminant()#
Return the discriminant of the field of rational numbers, which is 1.
EXAMPLES:
sage: QQ.discriminant() 1
- embeddings(K)#
Return list of the one embedding of \(\QQ\) into \(K\), if it exists.
EXAMPLES:
sage: QQ.embeddings(QQ) [Identity endomorphism of Rational Field] sage: QQ.embeddings(CyclotomicField(5)) # optional - sage.rings.number_field [Coercion map: From: Rational Field To: Cyclotomic Field of order 5 and degree 4]
\(K\) must have characteristic 0:
sage: QQ.embeddings(GF(3)) # optional - sage.rings.finite_rings Traceback (most recent call last): ... ValueError: no embeddings of the rational field into K.
- extension(poly, names, **kwds)#
Create a field extension of \(\QQ\).
EXAMPLES:
We make a single absolute extension:
sage: x = polygen(QQ, 'x') sage: K.<a> = QQ.extension(x^3 + 5); K # optional - sage.rings.number_field Number Field in a with defining polynomial x^3 + 5
We make an extension generated by roots of two polynomials:
sage: K.<a,b> = QQ.extension([x^3 + 5, x^2 + 3]); K # optional - sage.rings.number_field Number Field in a with defining polynomial x^3 + 5 over its base field sage: b^2 # optional - sage.rings.number_field -3 sage: a^3 # optional - sage.rings.number_field -5
- gen(n=0)#
Return the
n
-th generator of \(\QQ\).There is only the 0-th generator, which is 1.
EXAMPLES:
sage: QQ.gen() 1
- gens()#
Return a tuple of generators of \(\QQ\), which is only
(1,)
.EXAMPLES:
sage: QQ.gens() (1,)
- hilbert_symbol_negative_at_S(S, b, check=True)#
Return an integer that has a negative Hilbert symbol with respect to a given rational number and a given set of primes (or places).
The function is algorithm 3.4.1 in [Kir2016]. It finds an integer \(a\) that has negative Hilbert symbol with respect to a given rational number exactly at a given set of primes (or places).
INPUT:
S
– a list of rational primes, the infinite place as real embedding of \(\QQ\) or as \(-1\)b
– a non-zero rational number which is a non-square locally at every prime inS
.check
–bool
(default:True
) perform additional checks on input and confirm the output.
OUTPUT:
An integer \(a\) that has negative Hilbert symbol \((a,b)_p\) for every place \(p\) in \(S\) and no other place.
EXAMPLES:
sage: QQ.hilbert_symbol_negative_at_S([-1,5,3,2,7,11,13,23], -10/7) # optional - sage.rings.padics -9867 sage: QQ.hilbert_symbol_negative_at_S([3, 5, QQ.places()[0], 11], -15) # optional - sage.rings.padics -33 sage: QQ.hilbert_symbol_negative_at_S([3, 5], 2) # optional - sage.rings.padics 15
AUTHORS:
Simon Brandhorst, Juanita Duque, Anna Haensch, Manami Roy, Sandi Rudzinski (10-24-2017)
- is_absolute()#
\(\QQ\) is an absolute extension of \(\QQ\).
EXAMPLES:
sage: QQ.is_absolute() True
- is_prime_field()#
Return
True
since \(\QQ\) is a prime field.EXAMPLES:
sage: QQ.is_prime_field() True
- maximal_order()#
Return the maximal order of the rational numbers, i.e., the ring \(\ZZ\) of integers.
EXAMPLES:
sage: QQ.maximal_order() Integer Ring sage: QQ.ring_of_integers () Integer Ring
- ngens()#
Return the number of generators of \(\QQ\), which is 1.
EXAMPLES:
sage: QQ.ngens() 1
- number_field()#
Return the number field associated to \(\QQ\). Since \(\QQ\) is a number field, this just returns \(\QQ\) again.
EXAMPLES:
sage: QQ.number_field() is QQ True
- order()#
Return the order of \(\QQ\), which is \(\infty\).
EXAMPLES:
sage: QQ.order() +Infinity
- places(all_complex=False, prec=None)#
Return the collection of all infinite places of
self
, which in this case is just the embedding ofself
into \(\RR\).By default, this returns homomorphisms into
RR
. Ifprec
is not None, we simply return homomorphisms intoRealField(prec)
(orRDF
ifprec=53
).There is an optional flag
all_complex
, which defaults toFalse
. Ifall_complex
isTrue
, then the real embeddings are returned as embeddings into the corresponding complex field.For consistency with non-trivial number fields.
EXAMPLES:
sage: QQ.places() [Ring morphism: From: Rational Field To: Real Field with 53 bits of precision Defn: 1 |--> 1.00000000000000] sage: QQ.places(prec=53) [Ring morphism: From: Rational Field To: Real Double Field Defn: 1 |--> 1.0] sage: QQ.places(prec=200, all_complex=True) [Ring morphism: From: Rational Field To: Complex Field with 200 bits of precision Defn: 1 |--> 1.0000000000000000000000000000000000000000000000000000000000]
- polynomial()#
Return a defining polynomial of \(\QQ\), as for other number fields.
This is also aliased to
defining_polynomial()
andabsolute_polynomial()
.EXAMPLES:
sage: QQ.polynomial() x
- power_basis()#
Return a power basis for this number field over its base field.
The power basis is always
[1]
for the rational field. This method is defined to make the rational field behave more like a number field.EXAMPLES:
sage: QQ.power_basis() [1]
- primes_of_bounded_norm_iter(B)#
Iterator yielding all primes less than or equal to \(B\).
INPUT:
B
– a positive integer; upper bound on the primes generated.
OUTPUT:
An iterator over all integer primes less than or equal to \(B\).
Note
This function exists for compatibility with the related number field method, though it returns prime integers, not ideals.
EXAMPLES:
sage: it = QQ.primes_of_bounded_norm_iter(10) sage: list(it) # optional - sage.libs.pari [2, 3, 5, 7] sage: list(QQ.primes_of_bounded_norm_iter(1)) # optional - sage.libs.pari []
- quadratic_defect(a, p, check=True)#
Return the valuation of the quadratic defect of \(a\) at \(p\).
INPUT:
a
– an element ofself
p
– a prime ideal or a prime numbercheck
– (default:True
); check if \(p\) is prime
REFERENCE:
EXAMPLES:
sage: QQ.quadratic_defect(0, 7) +Infinity sage: QQ.quadratic_defect(5, 7) 0 sage: QQ.quadratic_defect(5, 2) 2 sage: QQ.quadratic_defect(5, 5) 1
- random_element(num_bound=None, den_bound=None, *args, **kwds)#
Return a random element of \(\QQ\).
Elements are constructed by randomly choosing integers for the numerator and denominator, not necessarily coprime.
INPUT:
num_bound
– a positive integer, specifying a bound on the absolute value of the numerator. If absent, no bound is enforced.den_bound
– a positive integer, specifying a bound on the value of the denominator. If absent, the bound for the numerator will be reused.
Any extra positional or keyword arguments are passed through to
sage.rings.integer_ring.IntegerRing_class.random_element()
.EXAMPLES:
sage: QQ.random_element().parent() is QQ True sage: while QQ.random_element() != 0: ....: pass sage: while QQ.random_element() != -1/2: ....: pass
In the following example, the resulting numbers range from -5/1 to 5/1 (both inclusive), while the smallest possible positive value is 1/10:
sage: q = QQ.random_element(5, 10) sage: -5/1 <= q <= 5/1 True sage: q.denominator() <= 10 True sage: q.numerator() <= 5 True
Extra positional or keyword arguments are passed through:
sage: QQ.random_element(distribution='1/n').parent() is QQ True sage: QQ.random_element(distribution='1/n').parent() is QQ True
- range_by_height(start, end=None)#
Range function for rational numbers, ordered by height.
Returns a Python generator for the list of rational numbers with heights in
range(start, end)
. Follows the same convention as Pythonrange()
, typerange?
for details.See also
__iter__()
.EXAMPLES:
All rational numbers with height strictly less than 4:
sage: list(QQ.range_by_height(4)) [0, 1, -1, 1/2, -1/2, 2, -2, 1/3, -1/3, 3, -3, 2/3, -2/3, 3/2, -3/2] sage: [a.height() for a in QQ.range_by_height(4)] [1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3]
All rational numbers with height 2:
sage: list(QQ.range_by_height(2, 3)) [1/2, -1/2, 2, -2]
Nonsensical integer arguments will return an empty generator:
sage: list(QQ.range_by_height(3, 3)) [] sage: list(QQ.range_by_height(10, 1)) []
There are no rational numbers with height \(\leq 0\):
sage: list(QQ.range_by_height(-10, 1)) []
- relative_discriminant()#
Return the relative discriminant, which is 1.
EXAMPLES:
sage: QQ.relative_discriminant() 1
- residue_field(p, check=True)#
Return the residue field of \(\QQ\) at the prime \(p\), for consistency with other number fields.
INPUT:
p
- a prime integer.check
(defaultTrue
) - ifTrue
, check the primality of \(p\), else do not.
OUTPUT: The residue field at this prime.
EXAMPLES:
sage: QQ.residue_field(5) Residue field of Integers modulo 5 sage: QQ.residue_field(next_prime(10^9)) Residue field of Integers modulo<PHONE_NUMBER>
- selmer_generators(S, m, proof=True, orders=False)#
Return generators of the group \(\QQ(S,m)\).
INPUT:
S
– a set of primesm
– a positive integerproof
– ignoredorders
(defaultFalse
) – ifTrue
, output two lists, the generators and their orders
OUTPUT:
A list of generators of \(\QQ(S,m)\) (and, optionally, their orders in \(\QQ^\times/(\QQ^\times)^m\)). This is the subgroup of \(\QQ^\times/(\QQ^\times)^m\) consisting of elements \(a\) such that the valuation of \(a\) is divisible by \(m\) at all primes not in \(S\). It is equal to the group of \(S\)-units modulo \(m\)-th powers. The group \(\QQ(S,m)\) contains the subgroup of those \(a\) such that \(\QQ(\sqrt[m]{a})/\QQ\) is unramified at all primes of \(\QQ\) outside of \(S\), but may contain it properly when not all primes dividing \(m\) are in \(S\).
See also
RationalField.selmer_space()
, which gives additional output when \(m=p\) is prime: as well as generators, it gives an abstract vector space over \(\GF{p}\) isomorphic to \(\QQ(S,p)\) and maps implementing the isomorphism between this space and \(\QQ(S,p)\) as a subgroup of \(\QQ^*/(\QQ^*)^p\).EXAMPLES:
sage: QQ.selmer_generators((), 2) [-1] sage: QQ.selmer_generators((3,), 2) [-1, 3] sage: QQ.selmer_generators((5,), 2) [-1, 5]
The previous examples show that the group generated by the output may be strictly larger than the ‘true’ Selmer group of elements giving extensions unramified outside \(S\).
When \(m\) is even, \(-1\) is a generator of order \(2\):
sage: QQ.selmer_generators((2,3,5,7,), 2, orders=True) ([-1, 2, 3, 5, 7], [2, 2, 2, 2, 2]) sage: QQ.selmer_generators((2,3,5,7,), 3, orders=True) ([2, 3, 5, 7], [3, 3, 3, 3])
- selmer_group(*args, **kwds)#
Deprecated: Use
selmer_generators()
instead. See github issue #31345 for details.
- selmer_group_iterator(S, m, proof=True)#
Return an iterator through elements of the finite group \(\QQ(S,m)\).
INPUT:
S
– a set of primesm
– a positive integerproof
– ignored
OUTPUT:
An iterator yielding the distinct elements of \(\QQ(S,m)\). See the docstring for
selmer_generators()
for more information.EXAMPLES:
sage: list(QQ.selmer_group_iterator((), 2)) [1, -1] sage: list(QQ.selmer_group_iterator((2,), 2)) [1, 2, -1, -2] sage: list(QQ.selmer_group_iterator((2,3), 2)) [1, 3, 2, 6, -1, -3, -2, -6] sage: list(QQ.selmer_group_iterator((5,), 2)) [1, 5, -1, -5]
- selmer_space(S, p, proof=None)#
Compute the group \(\QQ(S,p)\) as a vector space with maps to and from \(\QQ^*\).
INPUT:
S
– a list of prime numbersp
– a prime number
OUTPUT:
(tuple)
QSp
,QSp_gens
,from_QSp
,to_QSp
whereQSp
is an abstract vector space over \(\GF{p}\) isomorphic to \(\QQ(S,p)\);QSp_gens
is a list of elements of \(\QQ^*\) generating \(\QQ(S,p)\);from_QSp
is a function fromQSp
to \(\QQ^*\) implementing the isomorphism from the abstract \(\QQ(S,p)\) to \(\QQ(S,p)\) as a subgroup of \(\QQ^*/(\QQ^*)^p\);to_QSP
is a partial function from \(\QQ^*\) toQSp
, defined on elements \(a\) whose image in \(\QQ^*/(\QQ^*)^p\) lies in \(\QQ(S,p)\), mapping them via the inverse isomorphism to the abstract vector spaceQSp
.
The group \(\QQ(S,p)\) is the finite subgroup of \(\QQ^*/(\QQ^*)^p\) consisting of elements whose valuation at all primes not in \(S\) is a multiple of \(p\). It contains the subgroup of those \(a\in \QQ^*\) such that \(\QQ(\sqrt[p]{a})/\QQ\) is unramified at all primes of \(\QQ\) outside of \(S\), but may contain it properly when \(p\) is not in \(S\).
EXAMPLES:
When \(S\) is empty, \(\QQ(S,p)\) is only nontrivial for \(p=2\):
sage: QS2, QS2gens, fromQS2, toQS2 = QQ.selmer_space([], 2) # optional - sage.rings.number_field sage: QS2 # optional - sage.rings.number_field Vector space of dimension 1 over Finite Field of size 2 sage: QS2gens # optional - sage.rings.number_field [-1] sage: all(QQ.selmer_space([], p)[0].dimension() == 0 # optional - sage.libs.pari ....: for p in primes(3, 10)) True
In general there is one generator for each \(p\in S\), and an additional generator of \(-1\) when \(p=2\):
sage: QS2, QS2gens, fromQS2, toQS2 = QQ.selmer_space([5,7], 2) # optional - sage.modules sage: QS2 # optional - sage.modules Vector space of dimension 3 over Finite Field of size 2 sage: QS2gens # optional - sage.modules [5, 7, -1] sage: toQS2(-7) # optional - sage.modules (0, 1, 1) sage: fromQS2((0,1,1)) # optional - sage.modules -7
The map
fromQS2
is only well-defined modulo \(p\)’th powers (in this case, modulo squares):sage: toQS2(-5/7) # optional - sage.modules (1, 1, 1) sage: fromQS2((1,1,1)) # optional - sage.modules -35 sage: ((-5/7)/(-35)).is_square() # optional - sage.modules True
The map
toQS2
is not defined on all of \(\QQ^*\), only on those numbers which are squares away from \(5\) and \(7\):sage: toQS2(210) # optional - sage.modules Traceback (most recent call last): ... ValueError: argument 210 should have valuations divisible by 2 at all primes in [5, 7]
- signature()#
Return the signature of the rational field, which is \((1,0)\), since there are 1 real and no complex embeddings.
EXAMPLES:
sage: QQ.signature() (1, 0)
- some_elements()#
Return some elements of \(\QQ\).
See
TestSuite()
for a typical use case.OUTPUT: An iterator over 100 elements of \(\QQ\).
EXAMPLES:
sage: tuple(QQ.some_elements()) (1/2, -1/2, 2, -2, 0, 1, -1, 42, 2/3, -2/3, 3/2, -3/2, 4/5, -4/5, 5/4, -5/4, 6/7, -6/7, 7/6, -7/6, 8/9, -8/9, 9/8, -9/8, 10/11, -10/11, 11/10, -11/10, 12/13, -12/13, 13/12, -13/12, 14/15, -14/15, 15/14, -15/14, 16/17, -16/17, 17/16, -17/16, 18/19, -18/19, 19/18, -19/18, 20/441, -20/441, 441/20, -441/20, 22/529, -22/529, 529/22, -529/22, 24/625, -24/625, 625/24, -625/24, ...)
- valuation(p)#
Return the discrete valuation with uniformizer
p
.EXAMPLES:
sage: v = QQ.valuation(3); v # optional - sage.rings.padics 3-adic valuation sage: v(1/3) # optional - sage.rings.padics -1
- zeta(n=2)#
Return a root of unity in
self
.INPUT:
n
– integer (default: 2) order of the root of unity
EXAMPLES:
sage: QQ.zeta() -1 sage: QQ.zeta(2) -1 sage: QQ.zeta(1) 1 sage: QQ.zeta(3) Traceback (most recent call last): ... ValueError: no n-th root of unity in rational field
- sage.rings.rational_field.frac(n, d)#
Return the fraction
n/d
.EXAMPLES:
sage: from sage.rings.rational_field import frac sage: frac(1,2) 1/2
- sage.rings.rational_field.is_RationalField(x)#
Check to see if
x
is the rational field.EXAMPLES:
sage: from sage.rings.rational_field import is_RationalField as is_RF sage: is_RF(QQ) True sage: is_RF(ZZ) False


All Partners
Partnership Requests
| ID | Full Name | Pledge | Pledge Frequency | Created At | Action | |
|---|---|---|---|---|---|---|
| {{paginated_partnership_data.from + i}} | {{partnership.user.full_name}} | {{partnership.full_name}} | {{partnership.pledge_amount}} | {{partnership.pledge_frequency}} | {{partnership.created_at}} |
|


<juicy-popover>is a (vanilla) Custom Element that expands an area when clicked on a handle.
It is flexible enough to be used to create dropdowns, combo boxes, tooltips, etc.
See README.md for docs
position="bottom left, bottom beforeright"
(fallback positions separated by a comma)position="middle center"
position="top beforeleft"
position="beforetop center"
position="top left"
position="top right"
position="beforetop beforeleft"
position="beforetop left"
position="beforetop right"
position="bottom beforeleft"
position="bottom left"
position="bottom center"
position="bottom right"


Today’s post is brought to you by Bedlam Coffee in Seattle. It’s an old school 2nd gen coffee shop, kitschy blue collar style, very cool and very endearing. It’s a great place to chill, read a book, hack a little, or generally talk to people in the Belltown Neighborhood. It’s a good part of Seattle and in the back of my mind I have that fear it’ll be replaced by a towering condo complex and a sterile modern steel, wood, and glass something another any minute now. But for the moment it’s a prime spot to get wired into one’s mind.
Post Topics: I’m gonna hit on a number of key topics. Curious your thoughts, and as always, tweet at me via twitter, comment here, or ping me however. Always glad to chat on things.
Climate Leave — The second I saw this post, by Anil Dash I immediately had a few thoughts pop into my mind. The first is all companies should start recording this climate leave data point so we can have hard data on what the climate catastrophe is costing companies in hard dollar terms. It’s a way to wake up some people’s thinking to the reality of these extremities and make climate change measurable in ways they’re currently unwilling, unable, or outright refusing to accept or address. On the other side, this is a hard reality of work and life today. For instance, the regularity in which northwest cities shut down over a little snow is frequent now. But it’s only because for many decades west coast cities have existed and not prepared for such, because such just didn’t happen with regularity. So many initial thoughts, and the post itself is really good and inspires additional thinking, as one often may assume from writing Anil tends to do.
The difference in JVM vs CLR worlds is quite interesting states Bart Sokol. He inquired with a 280 character tweet, which I’d love to see others weigh in on how this is perceived and played out for you.
The difference between JVM and CLR worlds is quite interesting. Java didn't meet people's expectations so they implemented other OO langs like #Scala or #Kotlin. Meanwhile #csharp people wait when MS will add all the possible features to their lang. Any ideas why is it like that?
— Bart Sokol Ⓥ (@bartsokol) November 16, 2017
- An overheard Oracle conv thread from yours truly happened today too. I just can’t even start with Oracle, everytime I see their tooling in play or discussed, it’s almost always followed by a giant trash fire. The company owns so much and has so much potential to do good but instead all they do is spread horrid reputation, trash systems that could help people, and fall down on their job (i.e. go check out the Oregon health care trash fire they supposedly built. Not to release Oregon Gov from some responsibility, but they brought in Oracle with the idea that they knew what they were doing and they ruined the project and basically sucked the project dry of funds, leaving Oregonians without in the end).
The last ~20 minutes or so I just spent listening to two @Oracle people, I suspect "sales persons" or "business development" or something talk about going in to make a sale with a company. It was unsettling, as has every experience been with Oracle's sales people…
— Λdrøn @ (@Adron) November 16, 2017
The Former CEO of Brightcove took the rather broken tax plan of the current GOP (or whatever oddball ghost of the GOP it is) to task. It’s a fairly solid write up of the whole matter. It leads to lots of other things one might want to look into if you’re curious about the matter.
In a post that I can truly relate with, M.G. Siegler heads north on the Coast Starlight and wrote a nice piece about traveling by train. Why it’s as wonderful as it is, not particularly because of the train itself but what the train provides. To note, Siegler is formerly of Google Ventures, wrote for TechCrunch and VentureBeat among others and has a pretty well connected line with the tech industry. He’s a good person to follow and read. In other news, David Mytton (who got a follow on Medium and Twitter out of this post!) and team at Server Density has finished a 9 month project to migrate from Softlayer to Google Cloud. Similar to efforts I helped kick off at Home Depot and am helping others do. If you’re interested in help around migration of systems; onsite or offsite, co-location or otherwise, to Google Cloud, AWS, or Azure reach out and let me know. I’d love to talk shop about your progress and if Pelotech or I could provide a helping hand. We’ve got a lot of experience in those efforts!


Toggle navigation
Sharity
New Comment
4 minutes ago
3 New Followers
12 minutes ago
100+ New Likes
4 minutes ago
4 Campaign Updates
4 minutes ago
100+ New Orders
4 minutes ago
See All Alerts
User Profile
Settings
Logout
Home
My Campaigns
Customers
Sales
Market Insights
Dashboard
26
New Contributors!
4
New Campaign Updates!
124
New Orders!
200
New Likes!
Transactions Last Month
$655,000
Earned Total Transactions
$35,000
Earned Donation Transactions
Transactions Last 6 Months
$6,205,000
Earned Total Transactions
$415,000
Earned Donation Transactions
Current Campaign
H&S Foundation
H&S Foundation
Humane Society
Alzheimer Society
Homeless Foundation
Stories
My Recent Donations
Brian Yeo
$2
David Kendrick
$1
Steven Snowdon
$5
David Harms
$12
Chris Cardwell
$6
Emily Baxter
$2
Glenn Bewcyk
$10
Travis Scott
$3
Lillian Wu
$1
View All Donations


Theo Henson's Website
Welcome, this is the personal website of Theo Henson: my small piece of property on the web.
Notice the speed, lack of annoying ads and pop-ups, reasonable responsiveness, and obvious formatting. These are all elements of Brutalist Web Design.
Last modified on 2021-1-16.


Go Back
Your roulette of only the best, local dishes
FOODme
Home
About
Explore
My Profile
Bookmarks
Friends
Settings
Search
Explore the Crave
Click left or right arrow to swipe through dishes


Customer Registration
Your Personal Details
First name
*
Last name
*
Address
*
Email
*
username
*
Password
*