Unit tests
Meson comes with a fully functional unit test system. To use it simply build an executable and then use it in a test.
e = executable('prog', 'testprog.c')
test('name of test', e)
You can add as many tests as you want. They are run with the command ninja test
.
Meson captures the output of all tests and writes it in the log file meson-logs/testlog.txt
.
Test parameters
Some tests require the use of command line arguments or environment variables. These are simple to define.
test('command line test', exe, args : ['first', 'second'])
test('envvar test', exe2, env : ['key1=value1', 'key2=value2'])
Note how you need to specify multiple values as an array.
Coverage
If you enable coverage measurements by giving Meson the command line flag -Db_coverage=true
, you can generate coverage reports. Meson will autodetect what coverage generator tools you have installed and will generate the corresponding targets. These targets are coverage-xml
and coverage-text
which are both provided by Gcovr and coverage-html
, which requires Lcov and GenHTML.
The the output of these commands is written to the log directory meson-logs
in your build directory.
Parallelism
To reduce test times, Meson will by default run multiple unit tests in parallel. It is common to have some tests which can not be run in parallel because they require unique hold on some resource such as a file or a dbus name. You have to specify these tests with a keyword argument.
test('unique test', t, is_parallel : false)
Meson will then make sure that no other unit test is running at the same time. Non-parallel tests take longer to run so it is recommended that you write your unit tests to be parallel executable whenever possible.
By default Meson uses as many concurrent processes as there are cores on the test machine. You can override this with the environment variable MESON_TESTTHREADS
like this.
$ MESON_TESTTHREADS=5 ninja test
Skipped tests
Sometimes a test can only determine at runtime that it can not be run. The GNU standard approach in this case is to exit the program with error code 77. Meson will detect this and report these tests as skipped rather than failed. This behaviour was added in version 0.37.0.
Testing tool
In version 0.37.0 a new tool called mesontest
was added. The goal of this tool is to provide a simple way to run tests in a variety of different ways. The tool is designed to be run in the build directory.
The simplest thing to do is just to run all tests, which is equivalent to running ninja test
.
$ mesontest
You can also run only a single test by giving its name:
$ mesontest testname
Sometimes you need to run the tests multiple times, which is done like this:
$ mesontest --repeat=10
Invoking tests via a helper executable such as Valgrind can be done with the --wrap
argument
$ mesontest --wrap=valgrind testname
Arguments to the wrapper binary can be given like this:
$ mesontest --wrap='valgrind --tool=helgrind' testname
Meson also supports running the tests under gdb. Just doing this:
$ mesontest --gdb testname
Mesontest will launch gdb all set up to run the test. Just type run
in the gdb command prompt to start the program.
The second use case is a test that segfaults only rarely. In this case you can invoke the following command:
$ mesontest --gdb --repeat=10000 testname
This runs the test up to 10 000 times under gdb automatically. If the program crashes, gdb will halt and the user can debug the application. Note that testing timeouts are disabled in this case so mesontest will not kill gdb while the developer is still debugging it. The downside is that if the test binary freezes, the test runner will wait forever.
For further information see the command line help of Mesontest by running mesontest -h
.
The results of the search are


title=jBake discovery date=2015-10-14 type=post tags=blog status=published ~~~~~~
Just discovered JBake and decided to use it for skysail. This seems to be a good substitute for the good old maven site target (which does not seem to have a counterpart in gradle).
package org.jbake;
public class Oven {
public static void main(String[] args) {
System.out.print("Baking!");
}
}


GreenTech is a company that specializes to ecology projects. We try to combine technologies with low energy consumption. Our facilities are fully harmonized with international standards. Our fifteen year experience guarantees stability, safety and efficacy.


Welcome to Node Server Site
This is my first node.js site...
Show MySQL Table
File to upload
Email:
Message:


Anadenanthera colubrina var. cebil seeds
Substance: Anadenanthera colubrina var. cebil.
Dosage: 2.5 seeds prepared in a traditional manner, using calcium hydroxide as a basifying agent.
Route of administration: Insufflation.
Background:
I am male, 26 years old and weighing 125 pounds. I have experimented a little with cebil seeds before, but only via smoking. I have also tried yopo (Anadenanthera peregrina) seeds once as a snuff, however without any basifying agent. I am well versed in psychedelic compounds including mushrooms, LSD, DMT, 5-MeO-DMT, ayahuasca and ayahuasca analogues, Trichocereus cacti, various 2C-compounds, MDMA, MDA, methylone, AMT, 5-MeO-DiPT, DOB, Salvia divinorum, ketamine etcetera.
I had started a herbal detox program today. The detox involves a diet of mainly alkalizing grains, greens and vegetables, and fish, while eliminating sugars, flours, fermented and processed food. The herbs involved in this cleanse include a preparation to stimulate bile production, a laxative preparation, and a cleansing preparation.
My main motivation for cleansing was due to a recurring cold, which kept coming back for another round. I had tried everything else, and was now desperate enough to give up most of the foods I normally eat for ten or twelve days, in the hopes of eliminating toxic build up and revitalizing my body. Although I usually smoke marijuana and drink yerba mate daily, and take kratom off and on, I was abstaining from these drugs in order to speed my recovery.
 Ten seeds, varying in size. The smallest ones were about the size of a dime, and the largest was as big as a nickel. I wanted to try creating a snuff mixture from the seeds, following the traditional methods closely.
The seeds were toasted on medium heat for a few minutes in a covered pan, until they were heard to pop. Then the dark seed coat was pulled off and discarded, and the slightly toasted insides saved. I could maybe have toasted them a little longer, as not all the seeds had popped. Those that had popped, the seed coat was easy to take off, whereas those that had not popped were more challenging.
The insides of the seeds were placed in a mortar and pestle and ground to a fine-consistency yellowish powder. This released a peculiar odour, reminiscent of peanut butter, and it was observed that the seeds were a little oily. Into this was mixed a small amount of food-grade lime (calcium hydroxide). Visually I added about 1 part lime for 10 parts seed powder. I did not want to risk adding too much lime, as many people seem to do!
A few drops of spring water were added to the mixture, which was then mixed and kneaded using the tip of a knife. This mixture was put in a small tea cup and allowed to air-dry for two days. As the mixture dried, it changed colour, becoming dark brown on the outside.
The thoroughly dried mixture was chipped off the bottom of the tea cup and put back in the mortar and pestle, and again ground to as fine a consistency as possible. The insides were not as dark as the portion that had been exposed to the air, so the final mixture was a light brown in colour. Then I put it in a baggie, and it sat on the window sill for many weeks. I have to admit, the thought of snorting hallucinogenic jungle peanut butter was frightening enough for me to say, “maybe some other time!”
Set and Setting:
Today was the day I finally tried the cebil snuff. My partner was away for the night, and both my roommates were also out. So I had the house to myself, a rare occurrence. My intuition said it would be a good time.
I set up my bedroom comfortably for the experience, by clearing clothing on the floor and making the bed. I grabbed the Encyclopedia of Psychoactive Plants as a surface to work off of, and the bag of cebil snuff. I also grabbed my cebil snuff plate, an exacting replica of a museum piece that I purchased from a local artist some years ago when visiting San Pedro de Atacama in Chile. For those who don’t know, there was a town of the Tihuanacu (pre-Incan) culture in this area, where everyone was buried with a cebil snuff plate and tubes for snuffing, often elaborately carved.  Certainly appropriate.
I was still hesitant, so I did a tarot reading using the Thoth deck, asking “what is the energy of my doing cebil snuff tonight?” I pulled five cards in the shape of a cross. I got Death in the middle, with The Hermit on the left and Queen of Disks on the right, Valour above and Lust (called Strength in other decks) below. A propitious spread, which encouraged me to embark on the journey. I read the description for Death and resonated with it a lot, “The act of letting go, difficult as it may be, will liberate you. […] Any desire to hold on or cling to old bonds will cause their death to appear that much more agonizing. Hesse tells us to let ourselves fall. When we have renounced our supports, even the earth under our feet, so that we listen to the guide in our hearts, then all is won. There is no more fear, no more danger, when we let go.”
I scooped out about a quarter of the snuff mixture (equal to 2.5 seeds) and finished setting up the space by turning on the salt lamp and lighting a couple candles, then turning out the main light. I did not have one of the traditional snuffing tubes (often carved with birds, jaguars and other animals), so a rolled up piece of paper had to suffice. From my research on the net, I knew that this amount of snuff should be enough for a potent effect without going off the deep end.
Intention:
I took a moment to be calm, then stated my intention: To find my inner strength, to release from fear, and to journey with the plant medicine. I added that I wished for a comfortable and safe journey.
Experience:
I snuffed a small amount up each nostril, to test the waters. Many people describe the incredible pain and burning, and I was cautious. There was an initial sting, and as a little of the snuff dripped down my throat it stung a bit too. However the sting soon faded, as the cebil numbed my nose and throat. I feel that most people get incredible pain and burning because they have added too much basifying lime. My nose started to fill with mucous.
I didn’t feel anything right away, so I went ahead and snuffed the rest, gently as I did not want to get too much dripping down my throat (some people say it is the drip reaching the stomach that provokes vomiting). It was quite a mound I had snuffed down, more than I have ever snuffed of any substance, and I was happy it was a relatively painless procedure, as I am not generally a fan of snorting psychoactives.
I began to notice the effects after a couple minutes. A slight heaviness, a slight change in visual perception. I thought maybe I hadn’t taken enough, or that the seeds were weak, so I went into the bag and pulled out some more, preparing it on the plate. Luckily, I did not snuff this too, as the effects quickly stepped up in intensity, notch by notch. I laid down in bed as the effects became very strong. This was definitely a “lie down” kind of experience. The feeling was distinctly tryptamine.
As I lay in bed, feeling very heavy and weighted to the earth, I began to hear a tone. A high-pitched ringing noise that tweaked and twittered, growing in volume. It reminded me of the carrier wave sound of DMT. Soon I was experiencing closed eye visuals. At first it was an effect similar to gasoline floating on a puddle of water. Colourful swirling patterns.
The visuals became more and more intense. The speed at which the swirly patterns moved was increasing. It was like being underneath the strands of a multi-coloured mop, being twisted back and forth in a bucket of water. Sometimes there would be a shift, and I would see something behind the psychedelic mop. I saw a few times a whole sheet of small diamond shapes, in different colours. Other times, I seemed to see a small orange man, leaping across my vision. The visuals were very complex and vivid.
The intensity stepped up another notch. Now the visuals were shifting and morphing with a speed almost too much to handle. I felt a rocking motion, side to side, and then a spinning motion. It was like I was on a merry-go-round, spinning faster and faster. I was becoming rather motion-sick with all the spinning and the flashing lights and colours. There was a voice in my head, I felt the presence of an entity. I asked what he was doing to me? The voice replied that I was being evolved. I asked a couple more questions, though I cannot recall what I asked. The voice told me to stop asking questions, just relax and still my mind. Relax, indeed I had to remind myself to relax several times throughout this experience. Reminding myself that I was safe, and that everything is okay.
The closest drug I would compare the cebil to is DMT, although there are also differences between the two. The intensity was similar to DMT, although I remained in contact with my body throughout the trip. I was glad I had not taken more snuff, as I felt at a higher dose an out-of-body experience was likely. At moments my body felt a little distant. Unlike DMT, I felt very grounded, very heavy and earthy, which reminded me a bit of Salvia. The visuals were much more swirling and spastic/jumpy than the structured, geometric patternings I get with DMT. Cebil snuff comes on slower (probably five minutes to manifest full effects), and lasts quite a bit longer too. The intensity of the trip was so much it was almost unbearable, and I wondered from time-to-time how soon it would be before the effects dropped off in intensity. The visuals were doing new things now, jumping, fragmenting, twisting and turning in a way I can’t find words to describe.
Throughout this time, I felt a very slight tension in my belly, and also a feeling of needing to pee and/or poo. The grumbling in my intestines can probably be put down to the laxative herbs I was taking as part of the herbal detox program. The tension in my stomach I feel was an action of the cebil. I had eaten a light meal about an hour before the trip. If I explore this medicine again, I would do so with an empty stomach.
Gradually it seemed the whirling, spinning motion was a little less, and the speed of the shifting visuals slowed down a little. “Thank you,” I said, intuitively knowing the trance state was coming to an end. The entity acknowledged my thanks, but without any warmth. It had a very cool, laid back approach to things, as if it were a doctor simply operating on one more patient before the day was over.
I opened my eyes. No longer did I see the patternings with eyes open. Instead, it seemed there was a very large, transparent something hovering up around the ceiling. It was big, filling the whole room, and undulating gently like a jellyfish. I could see the distortions as it undulated. I wondered if the swirling visual patterns I had seen before were a result of some kind of hyperspatial jellyfish covering me with its tentacles. I had the feeling that only a part of a much larger creature was sticking down through the ceiling.
I closed my eyes again, and was surprised to see nothing at all. Total blackness, no close-eye visuals anymore. They had stopped completely as if with the flick of a light switch. I lay with my eyes shut for awhile, feeling this new sensation of stillness and dark. When I opened my eyes again, there was nothing there. No undulating distortions up near the ceiling. The entity was gone. There had been no humming of a space craft taking off or anything like that (as I have sometimes experienced with DMT), it was like the entity had just winked out of existence.
I lay in bed, feeling the after-effects of the cebil. I was languid, lazy to move and also feeling some nausea. Moving at all seemed like a bad idea, as I felt it would trigger dizzyness and vomiting, so I just laid still and quiet. It might have been a good idea to have a bowl or bucket on hand, in case of vomiting. Getting up and running to the toilet would not be fun in this state, even sitting up to puke would have been a lot. Luckily, I was able to simply rest quietly and did not vomit during this trip.
Eventually I felt okay enough to stretch my arm out behind me, and grab the alarm clock. Thirty minutes had elapsed. My best guess, it that the trance state lasted around twenty minutes. I continued to lie in bed. I debated in my mind whether the entity had been something alien that I called in, or whether it was the spirit of the cebil plant itself. I remain undecided, not that it really matters. Even if it was just my own mind making stuff up, or a contact with my higher self as a friend suggested, the experience would be the same regardless. It did feel rather earthy and plant-like though, for what that’s worth.
One of my roommates came home, I heard her open the door, and she intuited that I was there, calling out my name. I called back, that yes I was home, but that I was having a little lie-down. Actually, more of a journey than a lie down, I said. I seemed somewhat telepathic, tapping into her desire to smoke some pot at that moment.
An hour after starting the journey, I felt okay enough to roll over and sip some water. I experienced dizzyness when I moved, and still some residual nausea. There was a very slight alteration of my vision still, a sense of things appearing closer than they actually were. I felt renewed, and there was an emotional quality to it.
Soon I cautiously got up out of bed.  Surprisingly, I felt really good and had been able to breathe fine throughout the trip. I discussed my experience enthusiastically with my roommate.
Two hours after starting the journey, I started typing this report. At two hours and forty-five minutes, I am still feeling the residual effects of the snuff as I type this. There is a not unpleasant dizzyness, akin to the effects syrian rue when taken on its own. Slightly intoxicating and discoordinating. My mind is very clear, though, no intoxication there. I feel awake and a little energized. I discussed some things with my roommate that brought up emotions in me, and I feel the emotions sharply, as if they are emphasised… in this way it reminds me of hawaiian baby woodrose seeds.
In conclusion, this was a good experience, I was blown away by the potency of the snuff mixture and really felt the medicine of the plant. I am happy that the snuff mixture did not cause incredible pain and burning (which I put down to my using a minimum of calcium hydroxide, one tenth the amount of ground seeds, not half-and-half like many others have described). I am also happy that I did not vomit during this trip. The amount of cebil snuff I took was perfect, I got a very profound effect but did not go overboard. At higher doses, I feel vomiting and out-of-body journeying are both very likely. Very much a plant medicine, not something to explore out of a desire to get high.
Cheers, thanks for reading!
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.


pbmtocmuwm(1) pbmtocmuwm(1) NAME pbmtocmuwm - convert a portable bitmap into a CMU window manager bitmap SYNOPSIS pbmtocmuwm [pbmfile] DESCRIPTION Reads a portable bitmap as input. Produces a CMU window manager bitmap as output. SEE ALSO cmuwmtopbm(1), pbm(5) AUTHOR Copyright (C) 1989 by Jef Poskanzer. 15 April 1989 pbmtocmuwm(1)


Last week, the party noticed that Theodolus had gone missing1. They abandoned the corpses they were looting and raced after him. They chased his tracks back to the room with the tieflings, but there were too many exits to know which direction he went2, so they split up the gang to search for clues. The found a number of clues.  None of these things were Thedolus.
The party reluctantly gave up searching and stayed in the tiefling room to rest. At this point, Theodolus wandered in. He explained that he had been kidnapped by Astrius, who had just wanted to have a private conversation with him. Astrius claimed to be willing to kill Zedar, but unable to directly act against him until the party dealt with the cult. As proof of this, he gave information about the cult, revealing that it was run by a powerful iron golem named Makor. Makor has the Spark - the ability to craft animated golems out of raw materials, without any complex rituals. If Makor is defeated without being destroyed, the Spark could be harvested from him, granting its power to someone else - such as the party. In response, Silk claimed that Astrius was actually still working with Zedar, and could not be trusted. According to Silk, Zedar uses the dungeon to store monsters so he can selectively release them against towns to lure Rite of Maturity questers to their doom.
The party wrestled with the complexities of this information for a long time. Led by Clockwork, they organized a voting process, and after two rounds of voting, they all agreed to give up on figuring out what was going on and instead just go kill stuff. So they attacked the giant snakes with human heads, which went fairly well, and ended with a deal to get extra food for the tieflings. Show up this week to vote in a committee meeting about what to kill next!


{% include "analytics.html" %}
Pin a fixed-height footer to the bottom of the viewport in desktop browsers with this custom HTML and CSS. A fixed navbar has been added within #wrap
with padding-top: 60px;
on the .container
.
Back to the sticky footer minus the navbar.


| Total net profit | -162.59 | Gross profit | 5.43 | Gross loss | -168.02 |
| Profit factor | 0.03 | Expected payoff | -1.55 | ||
| Absolute drawdown | -162.59 | Maximal drawdown (%) | 160.49 (-7642.38%) | ||
| Total trades | 105 | Profit trades (% of total) | 9 (8.57%) | Loss trades (% of total) | 96 (91.43%) |
| Long positions (won %) | 78 (11.54%) | Short positions (won %) | 27 (0.0%) | ||
| Largest | profit trade | 1.69 | loss trade | -5.86 | |
| Average | profit trade | 0.6 | loss trade | -1.75 | |
| Minimum | profit trade | 0.08 | loss trade | -0.14 | |
| Maximum | take profit in pips | 74.8 | stop loss in pips | -193.9 | |
| Average | take profit in pips | 3.0 | stop loss in pips | -67.2 | |
| Minimum | take profit in pips | -84.0 | stop loss in pips | -22.9 | |
| Maximum | Reward-Risk | 2.0 | Duration in minutes | 2939 | |
| Average | Reward-Risk | 0.3 | Duration in minutes | 115.1 | |
| Minimum | Reward-Risk | 0.0 | Duration in minutes | 0 | |
| Maximum | consecutive wins (profit in money) | 2.0 (0.93) | consecutive losses (loss in money) | 17.0 (-27.19) | |
| Average | consecutive wins | 1.0 | consecutive losses | 9.0 |
| Total net profit | -114.92 | Gross profit | 5.43 | Gross loss | -120.35 |
| Profit factor | 0.05 | Expected payoff | -1.47 | ||
| Absolute drawdown | -114.92 | Maximal drawdown (%) | 113.91 (-11278.22%) | ||
| Total trades | 78 | Profit trades (% of total) | 9 (11.54%) | Loss trades (% of total) | 69 (88.46%) |
| Largest | profit trade | 1.69 | loss trade | -5.86 | |
| Average | profit trade | 0.6 | loss trade | -1.74 | |
| Minimum | profit trade | 0.08 | loss trade | -0.14 | |
| Maximum | take profit in pips | 63.6 | stop loss in pips | -193.9 | |
| Average | take profit in pips | -4.0 | stop loss in pips | -73.5 | |
| Minimum | take profit in pips | -84.0 | stop loss in pips | -29.0 | |
| Maximum | Reward-Risk | 1.9 | Duration in minutes | 2939.0 | |
| Average | Reward-Risk | 0.2 | Duration in minutes | 145.9 | |
| Minimum | Reward-Risk | 0.0 | Duration in minutes | 0.0 | |
| Maximum | consecutive wins (profit in money) | 2.0 (0.93) | consecutive losses (loss in money) | 13.0 (-26.36) | |
| Average | consecutive wins | 1.0 | consecutive losses | 7.0 |
| Total net profit | -47.67 | Gross profit | 0.0 | Gross loss | -47.67 |
| Profit factor | 0.0 | Expected payoff | -1.77 | ||
| Absolute drawdown | -47.67 | Maximal drawdown (%) | 45.57 (-2170.0%) | ||
| Total trades | 27 | Profit trades (% of total) | 0 (0.0%) | Loss trades (% of total) | 27 (100.0%) |
| Largest | profit trade | 0.0 | loss trade | -4.22 | |
| Average | profit trade | 0.0 | loss trade | -1.77 | |
| Minimum | profit trade | 0.0 | loss trade | -0.81 | |
| Maximum | take profit in pips | 74.8 | stop loss in pips | -120.3 | |
| Average | take profit in pips | 23.4 | stop loss in pips | -49.1 | |
| Minimum | take profit in pips | 2.6 | stop loss in pips | -22.9 | |
| Maximum | Reward-Risk | 2.0 | Duration in minutes | 247.0 | |
| Average | Reward-Risk | 0.6 | Duration in minutes | 26.1 | |
| Minimum | Reward-Risk | Duration in minutes | 0.0 | ||
| Maximum | consecutive wins (profit in money) | 0.0 (0.0) | consecutive losses (loss in money) | 27.0 (-47.67) | |
| Average | consecutive wins | 0.0 | consecutive losses | 27.0 |


Namespace for controlling the simulation and interacting with the view.
- Source:
Members
-
<static> defaultLoaded
-
A flag to check if the default list has already been loaded
- Source:
-
<static> filesRead
-
How many files have been loaded into the program
- Source:
-
<static> now
-
A counter for the current step in the simulation queue
- Source:
-
<static> simulationQueue
-
A queue of events which represent the entire simulation
- Source:
Methods
-
<static> backwards Step backwards in the simulation, undoing whatever the current step is()
-
- Source:
-
<static> fowards Step forwards in the simulation, executing whatever is in the simulation queue()
-
- Source:
-
<static> parseFile Takes the content of a track tape and converts it into objects in the model. This function uses a regex to test for patterns in the input.(str)
-
Parameters:
Name Type Description str
String The contents of a loaded file. - Source:
Events
-
loadDefault Reads the local testing tape into the simulation
-
- Source:
-
loadFile Reads the contents of a track tape into the simulation.
-
Parameters:
Name Type Description evt
Event The event object of a fileinput object. - Source:


| Class | Description |
|---|---|
| Dark Skin: | .. |
| Light Skin: | .. |
| Lighter Skin: | .. |
The Topbar does not require any additional markup unless a fixed position is desired. Static is default positioning is the default.
| Class | Description |
|---|---|
| Static: |   |
| Fixed: |   |
| Hidden: |   |

Dashboard

Home

Dashboard

 ...

Nav Item 1

Nav Item 2

Nav Item 3

Nav Item 4

Nav Item 5

 ...

..
- Requires class "navbar-fixed-top"
..
- Remove class "navbar-fixed-top"
The navbar accepts all of the same contextual classes that any other element does. Which makes switching colors simple and easy.
..
..
..
..
..
..
..
..
..
..
Refer to color system or header templates for an example of available colors

..

- Requires "hidden" class
Note: To hide this element you can also remove all of its HTML, or grant it the style "display: none" in custom.css

..

- Requires "affix" class

..

- Default Topbar setting. No class needed.
Helper classes can assist you in changing the appearance of an element quickly and easily directly through its HTML, rather than CSS. This prevents having to create endless custom classes when making routine changes such as Padding, Margin, or Borders.
.pn{padding:0 !important}
.p5{padding: 5px !important}
.p10{padding: 10px !important}
.pl5{padding-left: 5px !important}
.pr5{padding-right: 5px !important}
.pt5{padding-top: 5px !important}
.pb5{padding-bottom: 5px !important}
.mn{margin: 0 !important}
.m5{margin: 5px !important}
.m10{margin: 10px !important}
.ml5{margin-left: 5px !important}
.mr5{margin-right: 5px !important}
.mt5{margin-top: 5px !important}
.mb5{margin-bottom: 5px !important}
All of the icons used in AbsoluteAdmin were created using font based icon libraries. The icons are created with small html snippets rather than with the use of an  tag. This allows you to select from hundreds of icons by simply changing a class name. Another great feature of font icons is that you can style the icons using common text based styling. Such as color, font-size, etc. AbsoluteAdmin includes Six separate font-icon libraries.
The AbsoluteAdmin theme includes the entire Glyphicon PRO icon set, a $59 value, free of charge! The Glyphicon PRO icon set expands on the popular Halfling set by including over 500 detailed icons. However, one must consider the large file size before commiting them to a project.
Note: If you choose this library as your primary icon set you should consider removing the Glyphicons Halfling set included in Bootstrap 3.
<link href="assets/fonts/glyphicons-pro/glyphicons-pro.css" type="text/css">

- Basic

- With text color
.glyphicon-2x .glyphicon-3x .glyphicon-4x .glyphicon-5x
.text-warning .text-success .text-alert .text-primary etc
Most AbsoluteAdmin icon styling was done specifically for Glyphicons Pro and Glyphicons Hafling(Bootstraps icon set). The primary reason for this is because Glyphicon icons were created in 1:1 proportions. Meaning that if an icon has a width of 32px it will always have a length of 32px, and vica-versa. This makes them the ideal icon when creating size sensitive items because there values can be so easily predicted.
The Glyphicon Icon library is included in Bootstrap 3 which helps maintain fast loading times as less file request are having to be made.

- Basic

- With text color
.glyphicons-2x .glyphicons-3x .glyphicons-4x .glyphicons-5x
.text-warning .text-success .text-alert .text-primary etc
You will find Font Awesome Icons used through out the AbsoluteAdmin. They are found in abundance in buttons and panel titles as they are lightweight, flexible, and offer a great selection of icons to choose from. However, for vital theme elements Glyphicons were used. An explanation can be found in the Glyphicon Tab.
Note: To quicken page loading times the Font Awesome Icon Library is pulled from Bootstraps CDN. This means less page requests and a high cached chance. If you prefer to host these files yourself you will need to alter alter the file urls in your pages header (CSS option #2 below).
<link href="http://netdna.bootstrapcdn.com/font-awesome/4.0.3/css/font-awesome.min.css">
- CDN
<link href="assets/fonts/font-awesome/font-awesome.css" type="text/css">
- Only use one

- Basic

- With Helper Classes
.fa-2x .fa-3x .fa-4x .fa-5x
.text-warning .text-success .text-alert .text-primary etc
IconSweets2 is a premium icon library that boast some of the most beautiful icons on the internet. The AbsoluteAdmin theme includes this icon set free of charge. However, if you wish to use this icon set on a production website you must purchase an exclusive license fee from the author.
<link href="assets/fonts/iconsweets/iconsweets.css" type="text/css">

- Basic

- With Helper Classes
.iconsweets-2x .iconsweets-3x .iconsweets-4x .iconsweets-5x
.text-warning .text-success .text-alert .text-primary etc
Icomoon is another fantastic library for admin icons. They were created using pixel perfect 1:1 ratios and contain great detail. The files required are a little large and have no public CDN method of delivery. For this reason they are used rarely, and included more as a convenience.
<link href="assets/fonts/icomoon/icomoon.css" type="text/css">

- Basic

- With text color
.imoon-2x .imoon-3x .imoon-4x .imoon-5x
.text-warning .text-success .text-alert .text-primary etc
Zocail is a Font Icon set which provides us with a great, and very complete set of social media buttons and icons. You can find a full example of their included icons on the buttons.html page
<link href="assets/fonts/zocial/zocial.css" type="text/css">
<button class="zocial twitter> Twitter </button>
- Full Text Button
<button class="zocial icon twitter> Twitter </button>
- Just Icon Button
AbsoluteAdmin includes a CSS based animation library which allows a developer to easily add transitions and effects to virtually any html element.
Animations are fired immeditiely when the page loads and are a great way to introduce new content. Javascript will be required for dynamic animations, such as on hover or click.

..

"panel" - Is an example of the type of element you wish to animate. It can be virtually anything!
"animated" - Is required on all elements which you choose to animate on load.
"fadeIn" - Is an example of the type of animation you wish to see performed on the element. Click Here for a full list of animations.
Animations by default are fired immeditiely when the page loads. You can add a delay to an animation by following the syntas below. This is a great way to introduce content in a specific order, or to create a unique and fun visual effect.

..

panel - Is an example of the type of element you wish to animate. It can be virtually anything!
animated-delay - Is always required. Take note this uses "animated-delay" NOT "animated"
data-animate='["1500","fadeIn"]' - A data attribute which holds an array for two settings. The first is used to set the length of the duray(in miliseconds). The second is used to set the style of animation used on the element. Both options are required. Click Here for a full list of animations.
Animations can easily be added dynamically via Javascript. However, this requires the formulation of code which means it's up to the developer to create these events. The code below is simply an example of how one could dynamically add an animation to an element.
"animated" - Is required on all elements which you choose to animate.
"fadeIn" - Is an example of the type of animation you wish to see performed on the element. Click Here for a full list of animations.
To be able to re-run the animation you must remove the classes as the animation does not loop. Therefor it must be reinitiated each time by re-adding the classes.


|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.apache.xpath.domapi.XPathResultImpl
class XPathResultImpl
The class provides an implementation XPathResult according to the DOM L3 XPath Specification, Working Group Note 26 February 2004.
See also the Document Object Model (DOM) Level 3 XPath Specification.
The XPathResult
interface represents the result of the
evaluation of an XPath expression within the context of a particular
node. Since evaluation of an XPath expression can result in various
result types, this object makes it possible to discover and manipulate
the type and value of the result.
This implementation wraps an XObject
.
XObject
,
org.w3c.dom.xpath.XPathResult
| Field Summary | |
|---|---|
private org.w3c.dom.Node |
m_contextNode
Only used to attach a mutation event handler when specified type is an iterator type. |
private boolean |
m_isInvalidIteratorState
|
private org.w3c.dom.traversal.NodeIterator |
m_iterator
The iterator, if this is an iterator type. |
private org.w3c.dom.NodeList |
m_list
The list, if this is a snapshot type. |
private XObject |
m_resultObj
The wrapped XObject |
private short |
m_resultType
This the type specified by the user during construction. |
private XPath |
m_xpath
The xpath object that wraps the expression used for this result. |
| Constructor Summary | |
|---|---|
XPathResultImpl(short type,
XObject result,
org.w3c.dom.Node contextNode,
XPath xpath)
Constructor for XPathResultImpl. |
| Method Summary | |
|---|---|
private void |
addEventListener()
Add m_contextNode to Event Listner to listen for Mutations Events |
boolean |
getBooleanValue()
|
boolean |
getInvalidIteratorState()
|
double |
getNumberValue()
The value of this number result. |
short |
getResultType()
|
org.w3c.dom.Node |
getSingleNodeValue()
The value of this single node result, which may be null . |
int |
getSnapshotLength()
The number of nodes in the result snapshot. |
java.lang.String |
getStringValue()
The value of this string result. |
private short |
getTypeFromXObject(XObject object)
Given an XObject, determine the corresponding DOM XPath type |
private java.lang.String |
getTypeString(int type)
Given a request type, return the equivalent string. |
void |
handleEvent(org.w3c.dom.events.Event event)
|
private boolean |
isNamespaceNode(org.w3c.dom.Node node)
Given a node, determine if it is a namespace node. |
(package private) static boolean |
isValidType(short type)
Check if the specified type is one of the supported types. |
org.w3c.dom.Node |
iterateNext()
Iterates and returns the next node from the node set or null if there are no more nodes. |
private void |
removeEventListener()
Remove m_contextNode to Event Listner to listen for Mutations Events |
org.w3c.dom.Node |
snapshotItem(int index)
Returns the index th item in the snapshot collection. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
private final XObject m_resultObj
private final XPath m_xpath
private final short m_resultType
private boolean m_isInvalidIteratorState
private final org.w3c.dom.Node m_contextNode
private org.w3c.dom.traversal.NodeIterator m_iterator
private org.w3c.dom.NodeList m_list
| Constructor Detail |
|---|
XPathResultImpl(short type, XObject result, org.w3c.dom.Node contextNode, XPath xpath)
| Method Detail |
|---|
public short getResultType()
org.w3c.dom.xpath.XPathResult#getResultType()
public double getNumberValue() throws XPathException
XPathException
- TYPE_ERR: raised if resultType
is not
NUMBER_TYPE
.org.w3c.dom.xpath.XPathResult#getNumberValue()
public java.lang.String getStringValue() throws XPathException
XPathException
- TYPE_ERR: raised if resultType
is not
STRING_TYPE
.org.w3c.dom.xpath.XPathResult#getStringValue()
public boolean getBooleanValue() throws XPathException
XPathException
org.w3c.dom.xpath.XPathResult#getBooleanValue()
public org.w3c.dom.Node getSingleNodeValue() throws XPathException
null
.
XPathException
- TYPE_ERR: raised if resultType
is not
ANY_UNORDERED_NODE_TYPE
or
FIRST_ORDERED_NODE_TYPE
.org.w3c.dom.xpath.XPathResult#getSingleNodeValue()
public boolean getInvalidIteratorState()
org.w3c.dom.xpath.XPathResult#getInvalidIteratorState()
public int getSnapshotLength() throws XPathException
0
to
snapshotLength-1
inclusive.
XPathException
- TYPE_ERR: raised if resultType
is not
UNORDERED_NODE_SNAPSHOT_TYPE
or
ORDERED_NODE_SNAPSHOT_TYPE
.org.w3c.dom.xpath.XPathResult#getSnapshotLength()
public org.w3c.dom.Node iterateNext() throws XPathException, org.w3c.dom.DOMException
null
if there are no more nodes.
XPathException
- TYPE_ERR: raised if resultType
is not
UNORDERED_NODE_ITERATOR_TYPE
or
ORDERED_NODE_ITERATOR_TYPE
.
org.w3c.dom.DOMException
- INVALID_STATE_ERR: The document has been mutated since the result was
returned.org.w3c.dom.xpath.XPathResult#iterateNext()
public org.w3c.dom.Node snapshotItem(int index) throws XPathException
index
th item in the snapshot collection. If
index
is greater than or equal to the number of nodes in
the list, this method returns null
. Unlike the iterator
result, the snapshot does not become invalid, but may not correspond
to the current document if it is mutated.
index
- Index into the snapshot collection.
index
th position in the
NodeList
, or null
if that is not a valid
index.
XPathException
- TYPE_ERR: raised if resultType
is not
UNORDERED_NODE_SNAPSHOT_TYPE
or
ORDERED_NODE_SNAPSHOT_TYPE
.org.w3c.dom.xpath.XPathResult#snapshotItem(int)
static boolean isValidType(short type)
type
- The specified type
public void handleEvent(org.w3c.dom.events.Event event)
handleEvent
in interface org.w3c.dom.events.EventListener
EventListener.handleEvent(Event)
private java.lang.String getTypeString(int type)
private short getTypeFromXObject(XObject object)
private boolean isNamespaceNode(org.w3c.dom.Node node)
node
-
private void addEventListener()
private void removeEventListener()
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |


|
President
Akash Raju
Tesla • Verisign
Computer Engineering, Industrial Management May 2020 Akash is from Vienna, VA. Most recently, he was at Tesla as a Software Engineering Intern for the Model 3. |
|
Executive Vice President
Vishal Vasan
Boeing • Walmart
Computer Science, Data Science May 2020 Vishal is from Bentonville, AK. Most recently, he was at Toyota Material Handling USA as a Telematics Intern. |
|
Vice President, Development
Byeonghun Kim
ZF-TRW
Electrical Engineering May 2020 BK is from Ann Arbor, MI. Most recently, he was at ZF-TRW as a Hardware Engineering Intern. |
|
Vice President, Membership
Nathan Chang
Discover
Computer Science May 2019 Nathan is from Fremont, CA. Most recently, he was at Discover as a Software Engineering Intern. |
|
Vice President, Brotherhood
Ronit Ranka
MedImmune
Pharmaceutical Sciences May 2019 Ronit is from Mumbai, India. Most recently, he was at MedImmune as a Manufacturing Transfer and Integration Intern. |
|
Vice President, Finance
Yash Gupta
Ecomake
Computer Science, Minor: Economics May 2019 Yash is from Bhopal, India. Yash has held various Teaching Assistant positions and has been working on running the first ever Ecomake (ecomake.org). |
|
Vice President, Marketing
Dina Abdulaal
Medtronic
Mechanical Engineering May 2019 Dina is from Khobar, Saudi Arabia. Most recently, she was at Medtronic as a Mechanical Engineering Intern. |
|
Director of Chapter Affairs
Rachel Longo
Eisenmann Corporation
Environmental Engineering May 2020 Rachel is from Geneva, IL. Most recently, she was at Eisenmann Corporation as a Project Engineering Intern. |
Founders |
Austin Lowell (Beta)
Oean Wells (Beta) Akash Raju (Delta) Vishal Vasan (Delta) Caroline Kearns (Gamma) |
Founding Class |
Bradford Win (Delta) Cecilia Foley (Delta) Kunal Thakur (Delta) Ronit Ranka (Delta) John Riccione (Delta) Alayna Weiss (Epsilon) Arnav Jain (Epsilon) Byeonghun Kim (BK) (Epsilon) Daniel Broerman (Epsilon) Dina Abdulaal (Epsilon) Rachel Longo (Epsilon) Trent Lehr (Epsilon) Yash Gupta (Epsilon) Miles Droege (Gamma) |
Alpha Class |
Arshad Alikhan Brandon Williams Jaron Fay Justin Lin Mallika Venkatachalam Michael Capek Rachel Dziewatkoski Shiraz Chokshi Shubhankar Sinha Tyler Heathcote |
Beta Class |
Alan Gregorian Ania Kap Anoop Jain Anuraag Yachamaneni Atif Niyaz Erik Appel Kiritpal Khanna Maggie Pogue Mason Urbina Pooja Tewari Prithvi Prasanna Ryan Fan Sadie Myers Shaurya Malik Simran Bansal Sougat Pradhan Trevor Bagwell William Gomez |
Gamma Class |
Aamir Hussein
Aditya Chakraborty Alita Mary Anuj Mehta Avinash Ganesh Broderick Schipp Dakota Alverson David Kuenzel Dheeraj Yachamaneni Dhruv Aggarwal Harshit Singh Ishaan Khanna Jack Williams Joshua Nunes Kanishk Jain Kushal Negi Michelle Amaiu Mohammad Sweidan Murugan Dhanushkodi Naren Gaurav Netra Pradhan Pooja Kanuri Quentin Lange Rasvik Kudum Rishabh Guwalani Riti Sachdeva Sahil Kapur Sruthi Bayapureddy Tanvi Bhardwaj Tori Runyan Vincent Ricci Wilson Chow |
Honorary |
John Staley (Founding) Rebecca Gloff (Founding) Brandon Nathaniel Moses David (Founder) Jazna Stannard (Founder) Jeremy Meyer (Founding) Carlos (Manny) Peredo-Muñiz (Founding) Spenser Suski (Founding) Conlin Durbin (Alpha) Michael Goldman (Alpha) Nicole Gallo (Alpha) Lauren Edwards (Alpha) Kunal Agrawal (Beta) Justin Ward (Beta) Salma Elazhary (Epsilon) Natalie Berea Founding Class (Alpha) Nivedita Nighojkar Founding Class (Delta) Elyse Johnson Founder (Delta) Paige Sauer Founder (Delta) James Sue (Gamma) Karlo Jean (Delta) |


This will have the map
Board name: {{board.name}}
Category: {{board.category}}
Creator: {{board.creator}}
Location: {{board.locationName}}
Co-ordinates: {{board.location}}


While I was between positions in 2018, I started working on this site to help the owner. I had noticed that the existing website was difficult to navigate and had very out-dated information.
I proposed making changes to the owner, and allowed them to set the pace for change.
The first challenge to overcome was finding a way to get the data from the existing site. The person who had maintained it was no longer available, so the files, images, and domain were not available.
The owner managed to register a new domain, and then transferred it over to me with direction so that I could keep it going and easily manage the site.
Once that was sorted, I had to keep this project somewhat on the back burner; the owner needed to take care of some things during the pandemic and didn't have time to review the website.
Many technologies have been used including:
- HTML
- CSS
- Bootstrap
- PHP
- GIT
- JavaScript
- SociableKit
This was the original proof-of-concept. It was never live, and contains filler text throughout.
When I realized that the owner was having a hard time getting the volume of information, I scaled back the website to contain only what they needed.
Once that was finished and updates that were needed to update the prices and class descriptions were completed, it took less than a week to get sign off and bring the site live.
You can view the source code here: https://github.com/serenac7/fetchinc/releases/tag/fetch-mk01


| File: | lib/Dancer/Response.pm |
| Coverage: | 100.0% |
| line | subroutine |
|---|---|
| 4 | BEGIN |
| 5 | BEGIN |
| 6 | BEGIN |
| 8 | BEGIN |
| 10 | BEGIN |
| 11 | BEGIN |
| 12 | BEGIN |
| 13 | BEGIN |
| 14 | BEGIN |
| 15 | BEGIN |
| 16 | BEGIN |
| 22 | init |
| 37 | exists |
| 42 | status |
| 59 | content_type |
| 70 | has_passed |
| 75 | forward |
| 82 | is_forwarded |
| 87 | _already_encoded |
| 92 | halt |
| 105 | halted |
| 110 | header |
| 122 | push_header |
| 136 | headers |
| 141 | headers_to_array |
| 165 | add_cookie |
| 176 | build_cookie_headers |


Ruby FFI provides a nice feature for conveniently defining and using enums. Enums are a way of assigning integer values to symbols.
You should strongly consider using enums instead of defining integer constants in your modules. See the "Example: days of the week" section below to see the difference and read about the advantages of enums.
Enum syntax
Within library modules (modules with extend FFI::Library
), you can use the enum
command to conveniently define enums. There are three basic forms for the command:
- Unnamed enum group:
enum syms
- Example:
enum [:a, :b, :c]
- Example:
- Alternate syntax:
enum *syms
(does the same thing as above)- Example:
enum :a, :b, :c
- Example:
- Named enum group:
enum name, syms
- Example:
enum :letters, [:a, :b, :c]
- Example:
(For more complex forms, see the Other ways to define enums section below.)
By default, the first symbol in the enum group maps to value 0, and each symbol after that goes up by one. So in the example above, :a
means 0, :b
means 1, and :c
means 2. But you can also explicitly assign values for any (or all) of the symbols by giving its number value as the next item in the list:
enum :letters, [:a, 1, :b, :c, :y, 25, :z]
In this example, :a
means 1 and :y
means 25. The other symbols don't have explicit values, so each symbol's value is implicitly one higher than the previous value in the list. So, :b
means 2 (because it comes after :a
, which is explicitly 1), :c
means 3, and :z
means 26 (because it comes after :y
, which is explicitly 25).
Named groups versus unnamed groups
(To be written. Explain situations when you would use a named group or an unnamed group. What are the pros and cons of each?)
Example: days of the week
Imagine a C library called "libweek", with a header file like this:
// The Day enum:
enum Day {
SUNDAY = 1,
MONDAY,
TUESDAY,
WEDNESDAY,
THURSDAY,
FRIDAY,
SATURDAY
};
// A function that takes an argument of the Day enum type:
int is_work_day( enum Day day_of_week );
Here is how you might translate it into Ruby FFI, if you didn't know about enums:
# Example using integer constants
module Week
extend FFI::Library
ffi_lib "week"
SUNDAY = 1
MONDAY = 2
TUESDAY = 3
WEDNESDAY = 4
THURSDAY = 5
FRIDAY = 6
SATURDAY = 7
attach_function :is_work_day, [ :uint8 ], :int
end
# How you would call the function:
Week.is_work_day( Week::MONDAY )
But there is a better way to do it, using the power of enums:
# Example using enums
module Week
extend FFI::Library
ffi_lib "week"
enum :day, [:sunday, 1,
:monday,
:tuesday,
:wednesday,
:thursday,
:friday,
:saturday ]
attach_function :is_work_day, [ :day ], :int
end
# How you would call the function:
Week.is_work_day( :monday )
# This is also allowed, in case you need to use integers:
Week.is_work_day( 2 )
You can see that this way feels more elegant and has a better style. Here are some of the advantages to doing it this way:
- Consistent with the Ruby idiom of using symbols instead of integer constants.
- Doesn't pollute the module namespace with unnecessary constants.
- It's easier and cleaner to use
:monday
thanWeek::MONDAY
when calling the function. - The function definition is more descriptive:
:day
is more meaningful than:uint8
.
Other ways to define enums
In addition to the "enum" command, there are some other ways to define enums:
- As a typedef:
typedef enum(:a, :b, :c), :letters
- This does the same thing as
enum :letters, [:a, :b, :c]
- This does the same thing as
- Assign to a constant (or variable):
LettersEnum = enum(:a, :b, :c)
Assigning to a constant is useful if you want to use the enum as a field type in a struct, or want to have easy access to the Enum object later:
# Assigning an enum to a constant so you can
# use it as a struct field type
module Week
extend FFI::Library
ffi_lib "week"
Day = enum( :sunday, 1,
:monday,
:tuesday,
:wednesday,
:thursday,
:friday,
:saturday )
class WeeklyReminder < FFI::Struct
layout :hour, :uint8,
:minute, :uint8,
:weekday, Day # <------------
end
attach_function :is_work_day, [ Day ], :int
end
Defining Ruby functions that use enums
If you want to use enums as arguments to pure Ruby functions and want to allow both symbol and integer values to be passed, you will need to add some more code.
require 'ffi'
module Week
extend FFI::Library
ffi_lib "week/Debug/week"
Day = enum(
:sunday, 1,
:monday,
:tuesday,
:wednesday,
:thursday,
:friday,
:saturday)
attach_function :is_work_day, [ Day ], :int
def self.is_monday(day)
# Compare to both enum value and enum symbol
return true if (day == Day[:monday] or day == :monday)
end
def self.is_tuesday(day)
# Convert day to integer before use
day = Day[day] unless Day.symbols.include? day
# Now, use day as integer
return true if day == Day[:tuesday]
end
end
# How you would call the function:
p Week.is_work_day(:monday)
# This is also allowed, in case you need to use integers:
p Week.is_work_day(2)
p Week.is_monday(:monday) # This works
p Week.is_monday(2) # This also works
p Week.is_tuesday(:tuesday) # This works
p Week.is_tuesday(3) # This also works
Enums as constants
Sometimes your enums may be assigned values and could represent individual bits to be set by being OR'd (|
) together. This presents a problem, because FFI normally attempts to resolve enums as Symbols in Ruby-land, which don't like to behave as Integers.
This helper method allows you to reference enum values as virtual constants.
module ExampleLibrary
# . . .
# our example enums, which are bitwise values
enum :VariousBits, [
:ONE_BIT, 0x01,
:TWO_BIT, 0x02,
:FOUR_BIT, 0x04,
:EIGHT_BIT, 0x08,
:SIXTEEN_BIT, 0x10
]
# Allows enums to be used as virtual constants. This gets invoked whenever
# the "fake" constant is encountered. It's a little slower, however, since
# we rely on Ruby catching it.
def ExampleLibrary.const_missing( sym )
# look up the value of the symbol via FFI's method to do so
value = enum_value( sym )
# if no such enum exists, raise an exception using the default
# behavior of this method
return super unless value
# return the value of the enum
value
end
end
You can then make use of this new feature like so:
class ExampleHelper
# . . .
# A constant representing all bits set
ALL_BITS = ExampleLibrary::ONE_BIT |
ExampleLibrary::TWO_BIT |
ExampleLibrary::FOUR_BIT |
ExampleLibrary::EIGHT_BIT |
ExampleLibrary::SIXTEEN_BIT
end


Soldier Plenos:
Fine. That's what I want too.
Before you go, I heard
Tenius
mention something about using this to make some kind of bait... It might be a good idea for you to talk to him about it.


The following is a list of free and/or open source books on machine
learning, statistics, data mining, etc.
Machine Learning / Data Mining
-
The Hundred-Page Machine Learning Book
-
Real World Machine Learning
[Free Chapters]
-
An Introduction To Statistical Learning
- Book + R Code
-
Elements of Statistical Learning
- Book
-
Computer Age Statistical Inference (CASI)
(Permalink as of October 2017)
- Book
-
Probabilistic Programming & Bayesian Methods for Hackers
- Book + IPython Notebooks
-
Think Bayes -
Book + Python Code
-
Information Theory, Inference, and Learning Algorithms
-
Gaussian Processes for Machine Learning
-
Data Intensive Text Processing w/ MapReduce
-
Reinforcement Learning: - An Introduction
(Permalink to Nov 2017 Draft)
-
Mining Massive Datasets
-
A First Encounter with Machine Learning
-
Pattern Recognition and Machine Learning
-
Machine Learning & Bayesian Reasoning
-
Introduction to Machine Learning
- Alex Smola and S.V.N. Vishwanathan
-
A Probabilistic Theory of Pattern Recognition
-
Introduction to Information Retrieval
-
Forecasting: principles and practice
-
Practical Artificial Intelligence Programming in Java
-
Introduction to Machine Learning
- Amnon Shashua
-
Reinforcement Learning
-
Machine Learning
-
A Quest for AI
-
Introduction to Applied Bayesian Statistics and Estimation for Social
Scientists
- Scott M. Lynch
-
Bayesian Modeling, Inference and Prediction
- A Course in Machine Learning
-
Machine Learning, Neural and Statistical Classification
-
Bayesian Reasoning and Machine Learning
Book+MatlabToolBox
-
R Programming for Data Science
-
Data Mining - Practical Machine Learning Tools and Techniques
Book
-
Machine Learning with TensorFlow
Early access book
-
Machine Learning Systems
Early access book
-
Hands‑On Machine Learning with Scikit‑Learn and TensorFlow
- Aurélien Géron
-
R for Data Science: Import, Tidy, Transform, Visualize, and Model
Data
- Wickham and Grolemund. Great as introduction on how to use R.
-
Advanced R - Hadley Wickham. More
advanced usage of R for programming.
-
Graph-Powered Machine Learning
- Alessandro Negro. Combining graph theory and models to improve machine
learning projects
-
Machine Learning for Dummies
-
Machine Learning for Mortals (Mere and Otherwise)
- Early access book that provides basics of machine learning and using R
programming language.
-
Grokking Machine Learning
- Early access book that introduces the most valuable machine learning
techniques.
-
Foundations of Machine Learning
- Mehryar Mohri, Afshin Rostamizadeh, and Ameet Talwalkar
-
Understanding Machine Learning
- Shai Shalev-Shwartz and Shai Ben-David
-
How Machine Learning Works
- Mostafa Samir. Early access book that intorduces machine learning from
both practical and theoretical aspects in a non-threating way.
-
Fighting Churn With Data
[Free Chapter] Carl Gold - Hands on course in applied data science in
Python and SQL, taught through the use case of customer churn.
-
Machine Learning Bookcamp
- Alexey Grigorev - a project-based approach on learning machine
learning (early access).
-
AI Summer A blog to help you
learn Deep Learning an Artificial Intelligence
-
Python Data Science Handbook- Oriely
-
Mathematics for Machine Learning
-
Approaching Almost any Machine learning problem Abhishek Thakur
Deep Learning
Natural Language Processing
Neural Networks
Probability & Statistics
Linear Algebra
Calculus


Embarcadero Ice Skating and Building Lighting Ceremony. Building Lighting Ceremony. The Ceremony takes place at the Holiday Ice Rink in Embarcadero Center and will include a performance by SF Jazz All Star High School Ensemble, an ice show, a special guest performance and a spectacular pyrotechnic show dazzling the City’s skyline. Embarcadero Center’s dramatic office tower will illuminate San Francisco’s skyline with 17,000 lights. Location: Justin Herman Plaza, San Francisco, CA 94111. Time: 5:45 PM to 7:00 PM. embarcaderocenter.com
Leave a comment after signing in or registering.


Building Material Design into you Angular Apps with Angular Material.
Created by Nicholas Mackey
Web: nmackey.com / Twitter: @nicholas_mackey / Github: nmackey
Set of design principles for applications based on physical principles of paper and ink combined with science and technology.
material/paper elements (polymer)
The material environment is a 3D space, which means all objects have x, y, and z dimensions.
Material has varying x & y dimensions with a uniform thickness (1dp).
Shadows result naturally from the realtive elevation between material elements.
Animation
Style
Componenets
Patterns
Usability
The Angular Material project is an implementation of Material Design in Angular.js. This project provides a set of reusable, well-tested, and accessible UI components based on the Material Design system.
Widgets, grid, styles, etc.
Similar to a bootstrap or foundation.
Review flexbox b/c angular material's grid system is based on it.
Nice GuideYeoman generator that will bootstrap an app for you with Angular Material.
We are going to setup angular material app for viewing and submitting talk proposals.
Presentation online at nmackey.com/presentation-angular-material/ Examples online at github.com/nmackey/presentation-angular-material-examples Slides available at github.com/nmackey/presentation-angular-material


Source module to create “LifeTables” space from.
This is a source module to create a space for Life Tables and Commutation Functions
This module is passed to new_space_from_module
method to create
a space that contains cells that defines life tables and commutation functions,
for a selected combination of Sex
, IntRate
and MortalityTable
.
MortalityTable
and Sex
are used in qx()
below to identify
the mortality rates to be applied.
Sample script:
from modelx import *
space = new_model().new_space_from_module(module_=lifetable)
space.Sex = 'M'
space.IntRate = 0.03
space.MortalityTable = lambda sex, x: 0.001 if x < 110 else 1
References
simplelife.lifetable.
Sex
¶‘M’ or ‘F’ to indicate male or female column in the mortality table.
simplelife.lifetable.
IntRate
¶The constant interest rate for discounting.
simplelife.lifetable.
MortalityTable
¶The ultimate mortality table by sex and age.
Cells
AnnDuenx (x, n[, k, f]) |
The present value of an annuity-due. |
AnnDuex (x, k[, f]) |
The present value of a lifetime annuity due. |
Ax (x[, f]) |
The present value of a lifetime assurance on a person at age x payable immediately upon death, optionally with an waiting period of f years. |
Axn (x, n[, f]) |
The present value of an assurance on a person at age x payable immediately upon death, optionally with an waiting period of f years. |
Cx (x) |
The commutation column \(\overline{C_x}\). |
Dx (x) |
The commutation column \(D_{x} = l_{x}v^{x}\). |
Exn (x, n) |
The value of an endowment on a person at age x |
Mx (x) |
The commutation column \(M_x\). |
Nx (x) |
The commutation column \(N_x\). |
disc () |
The discount factor \(v = 1/(1 + i)\). |
dx (x) |
The number of persons who die between ages x and x+1 |
lx (x) |
The number of persons remaining at age x . |
qx (x) |
Probability that a person at age x will die in one year. |
simplelife.lifetable.
Ax
(x, f=0)[source]¶The present value of a lifetime assurance on a person at age x
payable immediately upon death, optionally with an waiting period of f
years.
simplelife.lifetable.
Axn
(x, n, f=0)[source]¶The present value of an assurance on a person at age x
payable
immediately upon death, optionally with an waiting period of f
years.
simplelife.lifetable.
Exn
(x, n)[source]¶The value of an endowment on a person at age x
payable after n years
simplelife.lifetable.
AnnDuenx
(x, n, k=1, f=0)[source]¶The present value of an annuity-due.
| Parameters: |
|
|---|


| DOSE: T+ 0:00 |
|
oral |
Alcohol |
|
| T+ 24:00 |
|
smoked |
Cannabis |
|
| T+ 48:00 |
2 hits |
oral |
LSD |
(blotter / tab) |
Hi, my name is Cheryl, I'm a 31 year old stay at home mom. Prior to this time I had done one hit of LSD five years ago and had a good time with it...it took forever to come down-I felt the effects the next day but otherwise good. I had smoked pot maybe 5 times in my life, I liked to drink to have fun...I don't believe you have to do drugs to have fun. I had suffered from depression on and off throughout my life and in the last 10 years had experienced some panic attacks. This is my story:
In the end of August 2003 my husband and I went to Jamaica for his friends wedding. I was anxious about the trip...leaving my kids (a boy 6 and a girl 3) but he really wanted me to go. Two weeks before the trip I started taking an antidepressant and decided not to take it the week we were in Jamaica. The day before we left I had a really bad feeling about the trip and left a letter for my kids in case something happened to us, telling them how I loved them, etc. (I wish now I had just stayed home...but listen..)
 So I decided I would smoke pot (very uncharacteristic of me) all day since I couldn't drink. Then the next night I made the biggest mistake of my life. My husband and his friends were sitting around the pool and offered me some acid. I was on vacation, I figured what the hell. Well his friend gives me two hits of acid, one brown, one white. That is when my Hell began.
After taking the LSD and sitting around for a while I remember walking around with him and a couple of his friends and everything feeling out of touch. When we went back to our room and layed down it was like I went inside myself and I felt different personalities emerging and I felt that my husband was trying to pick the one he wanted. I was overcome with a fear that the real me was dying and that my husband was evil and the devil was coming into me. That was the first of many hallucinations I had for the next 3 months.
We got home safely from Jamaica and I was still out of it... 2 days after getting home I was admitted to the Mental Ward for 10 days. I was assigned a Pyschiatrist and he diagnosed me with LSD-induced Psychosis. That was the first of five trips (each was about a week long) to the Mental Ward from September through the end of November. The time I spent there was an experience in itself too. Many different kinds of people there-drug addicts, suicidal people, severely depressed people. It was not what I had always believed-people wearing the white jacket.
I was on three different antipsychotic drugs...one, I think it was Haldol...made me a zombie and I was so depressed becuase during all those months I couldn't take care of my children (had to go to daycare during the day), I couldn't even drive a car-it came to a point that I just wanted to commit suicide. I couldn't do that though because the love I have for my children carried me through. My nurses can attest to that - I forgot my own name one time I was in the hospital but I knew I had my kids.
Well here it is May 2004 and I have not went Psychotic since the end of November and I have been off anti-psychotic meds for 6 weeks. Right now I am just on Zoloft (anti-depressant) and Depakote (controls mania). But I have been severely depressed and have no energy and have gained 24 pounds in the last 5 months. I have been living in fear of relapsing and disrupting my children's lives again and being locked up in the mental ward again.  My pyschologist made me feel much better today. She said anyone that has lived through a tramatic experience will have times that are tougher than others. Its kind of like I have post-traumatic syndrome now.
On top of all I've mentioned above we have hospital bills totalling about $2000 (insurance only pays 30 inpatient days) and the added cost of daycare for my children for the 3 months I couldn't take care of them. It ended up being a VERY expensive 'trip'.
Sorry this is such a long story but I have wanted my voice to be heard on this subject and I have found an outlet here. I don't believe anyone should try LSD. There is also the fact I quit taking my anti-depressent and smoked pot the day before dosing that may have added to the damage LSD caused me. But I believe and more importantly, my pyschiatrist believes, this wouldn't have happened had I not done the LSD.  Even if the chance is one in a thousand of this happening to you...do you want to gamble with your mind?
Thank god I got mine back...I'm just praying my brain chemicals are back where they are supposed to be and stay there.
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.


Chad Svastisalee, CSM
Home
Resume
Contact
Chad Svastisalee
Thank you for contacting me, I will get back to you shortly.