If you're looking for the XLS2XForm converter you're in the right place. We've incorporated the XLS2XForm converter into formhub.
To use it simply:
- Signup for a free account with formhub
- Upload your XLSForm to formhub and it'll instantly be converted to an XForm which will be available on your phone.
- If you want to download the XForm, click on the form name and click on other to download the converted XForm


Source
(defmethod make-room-in-cache ((cache standard-cache))
;; We need to remove some objects from the in-memory cache (both
;; from the hash table and from the queue).
;; We do this by removing the objects that have been used least
;; recently. We don't do anything with dirty objects, because
;; they contain changes that must still be committed to disk.
(let ((queue (queue cache))
(nr-objects-to-remove (* (- 1.0 (cache-shrink-ratio cache))
(cache-size cache)))
(nr-objects-removed 0))
(loop until (or (= nr-objects-removed nr-objects-to-remove)
(queue-empty-p queue))
do (let ((id (queue-remove queue)))
(when (remhash id (objects cache))
(incf nr-objects-removed))))))
Source Context


The average temperature on the coast is 18-31°C, although it is cooler in the hilly interior. The island is divided by its mountain range into the lusher, rainier windward side and the drier leeward side to the south and west. Reunion lies in the SE trade wind area, and the cyclone season is from mid-November to April. The island is occasionally affected by cyclones.
Useful phone numbers:-
Weather forecast : 0892 68 08 08 or 3250
Weather forecast at sea : 0836 68 01 01
Cyclone information : 0836 68 01 01
Meteo France Outre-mer (in French)
For links to free global weather information, forecast services and extreme weather information see the Noonsite Weather Page.
Pointe des Galets (Le Port) * , Saint Gilles les Bains , Saint-Pierre * , îles Eparses (Scattered Islands)
* indicates port of entry


More
rainbow fade
rainbow loop
rainbow loop 2
random march
rgb propeller
rotating red blue
fire
blue fire
random bars
flicker
random color
sparkle
color bounce
color bounce fade
blue red bounce
rainbow vertical
matrix
rwb march
flame
theater chase
strobe
police blinker
kitt
rule
fade vertical
fade to center
runner chameleon
blende
blende 2


-
{% comment %}
liquidjs doesn’t do hoisting the same, so we have to hoist these loop variables ourselves.
{% endcomment %}
{% assign year = "" %}
{% assign currentyear = "" %}
{% assign currentyearpostcount = 0 %}
{% for post in collections.note reversed %}
{% include post-list-entry.html %}
{% break %}
{% endfor %}
{% for post in collections.posts %}
{% include post-list-entry.html %}
{% endfor %}


Hi there,
I have some troubles in getting started.
When I connect to the Emoncms and click to the "Raspberry PI", I get:
"Message: The RFM12 to PI interface script is not running, you may need to configure cron"
When I disconnect the RFM12 from PI an reconnect, then the LED is lightning for about 5 seconds and when I refresh the Emoncms-Website I get the green
"Message: RFM12 to PI interface script is up and running"
for another some seconds, few time late it is the yellow warning again.
There is a second warning line:
"Warning: file_get_contents(http:///time/local.json?apikey=): failed to open stream: operation failed in /var/www/emoncms/Modules/raspberrypi/raspberrypi_view.php on line 15"
The fields "Domain name" and "Write apikey" (I can't remember what was in this fields when starting), I don't want to send my data to an remote server now.
I have set the frequency to "868 "(like my kit), Group to "210" and Base ID is at "15".
I Have one full-featured-EmonTX-Node, set to frequency 868, group 210, nodeID 11.
My second Node ist an lowpower-temerature-EmonTX, set to F 868, G 210 and N 18
I have tried the communication withe the minicom like suggested in the docs, it seems to work fine:
Available commands:
123 x - Toggle configuration change protection, 1=Unlocked
<nn> i - set node ID (standard node ids are 1..26)
<n> b - set MHz band (4 = 433, 8 = 868, 9 = 915)
<nnn> g - set network group (RFM12 only allows 212, 0 = any)
<n> c - set collect mode (advanced, normally 0)
...,<nn> a - send data packet to node <nn>, with ack
...,<nn> s - send data packet to node <nn>, no ack
<n> l - turn activity LED on DIG8 on or off
Current configuration:
79 i15 g210 @ 868 MHz Lock: 1
I can toggle the LED on and of with the command "1l" and "0l".
My
emonTX-Node-11 has a lightning LED, delightning every 9 sec.
Do you have any suggestions, what to do to get started?
Many thanks
Stefan Krüger
Re: Probs getting started with "interface script is not running" and "file_get_contents"
Hi there,
I did a second trial. Installed my Raspy completely fresh along the documentation, step by step from scratch. It was al lot to do, but now it works! I think my mistake was the renaming of the PI, I only editetd the hostname-File and forgot the hosts-File. I will check that later on.
When I click on the "Raspberry PI"-Button in the emoncms, now there is the green "Message: RFM12 to PI interface script is up and running".
Now I have some problems to understand how to setup my EmonTX-Nodes. Their firmeware is flashed, everything is mounted, the green LED is lightning. But I con not see any data...???
Under "Input" there are now "No Group", "Node 1" and Node 11", I can expand them and I see several blue-highlighted "id's", but the do not update, the seem to have no connection to my sensors/EmonTX-Boards.I'm quite a bit confused now. I say thanks for some Orientation.
Best regards
Stefan Krüger
Re: Probs getting started with "interface script is not running" and "file_get_contents"
I'm quite frustrated now!
The Problem withe the "PI interface script is not running" is not because the entry in the "Hosts"-file (see above).
I have setup a complete new installation from the "ready to go"-Image, did no customizations (straight out of the box) an run in the same problems.
Then I tryed to follow the manual setup, it went quite well. The LED on the RFM12PI-Board started to blink ca once a minute.
I restarted the PI and there was no more blinking of the LED.
Under "Input" I clicked with the "Input API helt" two Sektions, so it looks like this now:
But it seems so, that I dont get any data from my EmonTX-Board.
What do I do wrong? I can not see my problem. Any idears
Thanks for helping.
Stefan Krüger
Re: Probs getting started with "interface script is not running" and "file_get_contents"
Hello Stefan, Looks like your almost there, does the time always stay at 17mins ago?, this may be due to incorrect time set on the raspberrypi. The raspberrypi may be 17mins behind your computer time, we had this issue for the first time in the course we ran last week where the PI's had no internet connection and so could not get an updated time. (The pi has no persistant realtime clock).
There has also been an issue with the settings in the interface not being saved to the rfm12pi adapter board, this was due to an error in the raspberrypi_run.php script. The quick fix is to reboot your pi after setting the settings but it sounds like you confirmed that the settings where correct with minicom.
Hope that helps
Re: Probs getting started with "interface script is not running" and "file_get_contents"
Hello Trystan,
thanks for answering so quick. I'm not sure about the question with the time. This Installation I did completely without X-Desktop, only by SSH, so I could not see the time. I will check this. But in my other Installations (I made totally 3 now), I had no troubles with the time. And I think, the time-counting is ascending and not fix, it actualizes every few minutes.
Do you know anybody in Germany, who is engaged with the OEM/PI-Project? I would be interested in having some exchange.
I hope for some success and getting first data from my emonTX's. I love this project and I'm surprised about the work which is done by the project.
Stefan Krüger
Re: Probs getting started with "interface script is not running" and "file_get_contents"
Do you know anybody in Germany
You could try to contact Jörg Becker
Re: Probs getting started with "interface script is not running" and "file_get_contents"
FWIW, command
$ date
displays system date and time.
Re: Probs getting started with "interface script is not running" and "file_get_contents"
Thank you Trystan, Robert, Jérôme,
@ Robert: I've sent Jörg a message an hope to get in contact. Perhaps I can engage in making al localization for Germany
@ Jérôm: thanks for the command, I'm not so familiar with linux-commandline and my DOS-Commands are fare away, but I remember, that's quite similar. My Time and Date is ok!
@ Trystan: my Time and Date are ok. The time of last update is still rising (actual at about 23 hours) and I think there is really no connection to the emonTX. Is there any procedure to test the communication between the modules?
Stefan
Re: Probs getting started with "interface script is not running" and "file_get_contents"
> Is there any procedure to test the communication between the modules?
Yes.
You can use minicom to see if something is coming through the serial port (see wiki page about RFM2Pi).
You can launch raspberry_run.php it manually (and add prints if needed) to get a glimpse of what is happening.
You can try the python script rfm2pigateway.py instead of raspberry_run.php. It is integrated in master branch of the Raspberry Pi module. The documentation I wrote on my profile refers to the dev version, which is a bit more advanced, but your should figure everything out. Install dependencies, then
/var/www/emoncms/Modules/raspberrypi/rfm2pigateway.py
and there should be a log file in /var/www/emoncms/Modules/raspberrypi/rfm2pigateway/
If all of this is unclear, forget it and try to solve your problem first. I wouldn't like to add another layer of complexity.
(I didn't go through all the posts in this thread again, so please forgive me if I'm missing or repeating something, I'm just answering this specific question.)
Re: Probs getting started with "interface script is not running" and "file_get_contents"
Thank you for this hints! I will give it a try. Your description of the PY-Version is good, I hope I can do this tonight.
Stefan
Re: Probs getting started with "interface script is not running" and "file_get_contents"
Hi,
my situation is not so amusing! Spent 2 more hours but no real result! I would prefer to work on the data but on an unviewable bug...
So, I tryed again the minicom and it seems to me, it works well!
Than I run the python script:
pi@raspberrypi ~ $ /var/www/emoncms/Modules/raspberrypi/rfm2pigateway.py
'remotepath'
what is the meaning of 'remotepath'? There is no forme interaction or output, I can see nothing...
yes, there is the logfile:
2013-04-05 21:15:12,310 DEBUG Opening serial port: /dev/ttyAMA0
2013-04-05 21:15:12,403 INFO Setting RFM2Pi | baseid: 15
2013-04-05 21:15:13,409 INFO Setting RFM2Pi | frequency: 8
2013-04-05 21:15:14,412 INFO Setting RFM2Pi | sgroup: 210
2013-04-05 22:07:36,955 DEBUG Opening serial port: /dev/ttyAMA0
2013-04-05 22:07:37,037 INFO Setting RFM2Pi | baseid: 15
2013-04-05 22:07:38,043 INFO Setting RFM2Pi | frequency: 8
2013-04-05 22:07:39,047 INFO Setting RFM2Pi | sgroup: 210
But I can not see any data from any othe node?
Any Idea where to find my problen and how to get started?
Stefan
Re: Probs getting started with "interface script is not running" and "file_get_contents"
The script sends data to local emonCMS installation and optionally to a remote server http://domain.tld/emoncms_path. (remote_protocol, remote_domain, remote_path).
The remote path should be entered through the raspberry pi settings tab of local emonCMS. If you enter empty or dummy values, sending to remote server is inhibited.
In the admin tab, upgrade database should be enough to initialize remotepath with an empty string. A DB upgrade is highly recommended after each emonCMS upgrade.
Apparently, the script fails on getting settings because of the remotepath issue. This happens just after opening COM port and sending radio config. This is why you only see those two first steps in the logs.
Re: Probs getting started with "interface script is not running" and "file_get_contents"
OK, I wondered about this entrys, I did not made at this point:
Forward data to remote emoncms server
Domain name emoncms.org
Path to emoncms
Notice: Undefined index: remotepath in /var/www/emoncms/Modules/raspberrypi/raspberrypi_view.php on line 40

Write apikey YOURAPIKEY
Notice: Undefined index: remotesend in /var/www/emoncms/Modules/raspberrypi/raspberrypi_view.php on line 42
Incorrect remote server details
I'm not able to change the value of "Path...", everytime I set and save this string ist in this field. Is that the problem?
What do you suggest to do?
Thanks
Stefan
Re: Probs getting started with "interface script is not running" and "file_get_contents"
This definitely is a problem. Did you do the DB upgrade (admin tab, I think) ?
Re: Probs getting started with "interface script is not running" and "file_get_contents"
ok, that was a point, admin-tab was right (I did not understand...), the update declared some feelds to be updated.
The path-problem is solved so far.
Now I did a reboot and afterwards i tested your python-script. But - sorry - exactly the same result. Only the entrys for baseid,frequency and sgroup, thats it.
Stefan
Re: Probs getting started with "interface script is not running" and "file_get_contents"
when I now "save" my settings on the raspberry pi site, I get a
Notice: Uninitialized string offset: 0 in /var/www/emoncms/Modules/raspberrypi/raspberrypi_controller.php on line 53
anything is going wrong in the script. Tryed to clear the field "Domain Name", saved without errormessage. Seems to be the entry "emoncms.org". aktualy I dont want to send the data to a second server, I would be glad to get them localy ;-)
Stefan
Re: Probs getting started with "interface script is not running" and "file_get_contents"
I understand you're using latest revision from master branch. Please tell us if this is incorrect.
I don't think you should bother about the "Notice" message. It is just the Pi that tries to contact remote server, which fails, then sets remotesend flag to false. I think. Anyway, let's ignore that for now.
Can you confirm that the RF settings are correct ? Frequency 866 and group 210 ?
And that you do receive stuff on minicom with the same settings ?
Re: Probs getting started with "interface script is not running" and "file_get_contents"
Hi Stefan,
I had a similar issue, with null values being registered from the EmonTX nodes. It happened to be a not very well inserted jack from the sensor. When I reseated the mini-jack plug from the sensor, data was not empty anymore.
It might help?
Re: Probs getting started with "interface script is not running" and "file_get_contents"
Hi Jérôme, jonrescca,
thank you for thinking in my problem, it feels good not to be alone with this.
Yes Ican confirm that I have uses the latest ofiicial code from Git-hub, and updated the database. I have configured the RF settings on RFM12PI to F868, G210 and N15. My EmonTX is configured by Arduino 1.04 to
#define freq RF12_868MHZ
#define PHASE2 8
#define PHASE3 17
const int nodeID = 10;
const int networkGroup = 210;
I have now connected to the EmonTX 3 x CR-Sensors and the one Voltage-Adapter. No Temp and no Impulse. The green LED on EmonTX is lightning and going out every ~10 sec. The jacks are all propper.
When I deactivate the the corm-job, reboot and run trhe minicom I get the declarations of the board
Available commands:
123 x - Toggle configuration change protection, 1=Unlocked
<nn> i - set node ID (standard node ids are 1..26)
<n> b - set MHz band (4 = 433, 8 = 868, 9 = 915)
<nnn> g - set network group (RFM12 only allows 212, 0 = any)
<n> c - set collect mode (advanced, normally 0)
...,<nn> a - send data packet to node <nn>, with ack
...,<nn> s - send data packet to node <nn>, no ack
<n> l - turn activity LED on DIG8 on or off
Current configuration:
79 i15 g210 @ 868 MHz Lock: 1
but not more, no data. I can switch the LED on RFM12PI with 1l on and 0l off.
Perhaps I have a problem in understanding what to do after config under "raspberry", when the green line is on:
Message: RFM12 to PI interface script is up and running
Under "Inputs" there is nothing, but
No inputs created
Inputs is the main entry point for your monitoring device. Configure your device to post values here, you may want to follow the Input API helper as a guide for generating your request.
What have I to do there withe the "API helper"?
Re: Probs getting started with "interface script is not running" and "file_get_contents"
It seems you're not receiving any data on the COM port.
It could be that the TX is too far from the base (I doubt it, but it's easy to check).
Can you make sure the TX is emitting data ? Perhaps the LED on the TX would tell. I'd rather use the serial monitor of the arduino IDE. You may add pirints if needed, to check you go through serial send function.
Which sketch are you using ? Name, or better, github link, if it is a "standard" sketch. Along with your modifications.
You shouldn't have anything to do with the API helper. When receiving data, inputs will be created automatically.
Re: Probs getting started with "interface script is not running" and "file_get_contents"
The distance between EmonTX and the RFM12PI can't be the problem, they ly side by side.
I load the "emonTx_CT123_3Phase_Voltage.ino":
https://www.dropbox.com/s/vzovf7tiud8nw50/03.JPG
I do not have any deeper knowlage about the arduino-tool, but will try to test something tonight.
Re: Probs getting started with "interface script is not running" and "file_get_contents"
Perhaps can you copy-paste the code here. The screenshot doesn't show much.
In the Arduino GUI, there's a serial terminal you can access from the upper menu. It is a helpful debug tool : you can print there the values you want to monitor by adding print statements in the code.
Re: Probs getting started with "interface script is not running" and "file_get_contents"
ok, the serialport-monitor is good, I did not know that. I
t works, I get some quite realistic readings from my full-featured-EmonTX:
emonTX CT123 Voltage 3 Phase example
OpenEnergyMonitor.org
Node: 10 Freq: 868Mhz Network: 210
Voltage: 324.87
Current 1: 131.10 Power 1: 30323.05 VA 1: 42589.87 PF 1: 0.71
Current 2: 130.87 Power 2: 29714.33 VA 2: 42515.12 PF 2: 0.70
Current 3: 130.41 Power 3: 28391.72 VA 3: 42366.28 PF 3: 0.67
I had a load (electric heater) of about 1920 W, mesured 3 x the same line.
The low-power-tempreture-module does not send any data, thats mybe a second problem - will see later.
Ok - we have wa working EmonTX and a working Raspberry with RFM12PI but no comunication between.
!!! I FOUND IT: there was a broken solderpad at the RF-Module on the EmonTX 3rd from Antenna !!!
So, now I get data to the EmonCMS, there is a node "10" at the "Inputs"!
Node10_1 -2388?
Node10_2 1230?
Node10_3 1174?
Node10_4 227 I think that can be Volt
Changeing the CT-Clamps, the produce the same result, the problem is on the board or in the code...
My Load ist 1920 W electric heater (measured separatly)
I think I have now to read the Thread "...miles out...", or do you have any idea?
For this moment: many thanks staying on my side!!!
Stefan
Re: Probs getting started with "interface script is not running" and "file_get_contents"
Hi Stefan, did you calibrate the CT's? http://openenergymonitor.org/emon/modules/emontx/firmware/calibration
Re: Probs getting started with "interface script is not running" and "file_get_contents"
If you are running the 3-phase sketch, you must calibrate it according to the notes in the sketch. It works by guessing that the voltage for phases 2 and 3 is the same as phase 1, and it stores the phase 1 voltages and uses them 1/3 and 2/3 cycle later for phase 2 and phase 3. That delay needs to be correct for the power factors and powers to be correct.
Re: Probs getting started with "interface script is not running" and "file_get_contents"
Thank you for that hint. You are right, I started with the thre phase sketch and turned now over to the simple 123 one. Now it works properly so far, also the tempreture-module, that was a problem withe batteries.
My next skill ist to build a dashboard and a recording, have actual no idea how to start and will have to read a lot.
Stefan


Two Perak elected reps rejoin state DAP committee
IPOH, Nov 23 ― Two DAP state assemblymen, who resigned from the party state level committee in September, today announced that they were rejoining the Perak leadership line-up.
The duo, Malim Nawar State Assemblyman Leong Cheok Keng and Pokok Asam state elected representative Leow Thye Yih said they were returning to the Perak DAP committee, through a joint statement here.
Leong, Perak DAP deputy treasurer and Leow, State DAP assistant organising secretary, said the decision was taken after receiving the advice of State Executive Councillor Yong Choo Kiong, who was now facing a trial over the rape of his housemaid.
“After repeatedly receiving advices and invitations from Yong, who is also Perak DAP committee member to rejoin the Perak DAP committee line-up, we could feel his sincerity and accepted his invitation,” said the statement.
In addition, Leoong and Leow said the loss of Pakatan Harapan (PH) in the Tanjung Piai by-election recently was a wake up call to strengthen the position and image of Perak DAP. ― Bernama


array swf_getfontinfo ( void )
Gets information about the font by giving the height in pixels of a capital A and a lowercase x.
Returns an associative array with the following parameters: Aheight - The height in pixels of a capital A. xheight - The height in pixels of a lowercase x.


LITTLE BUDDHA A film review by Jon A. Webb Copyright 1994 Jon A. Webb
LITTLE BUDDHA combines the legend of the life of Siddhartha with a modern story of an American boy who is thought to be the reincarnation of a Tibetan Lama. It is an effective and touching introduction to Buddhism and an illustration of how the teachings of Buddha can have relevance in the modern world.
I found myself deeply moved by his film, though it has a number of flaws. Bertolucci unnecessarily prolongs the story by tripling the reincarnation candidates. His casting of Keanu Reeves as Siddhartha is questionable, for although Reeves is remarkably good here, he has established such a strong screen presence as a idiotic teenager it is difficult to accept him as the Enlightened One. (Although his performance is easily the strongest in the film.) I think Reeves is a talented actor who will eventually overcome this limitation, particularly if he continues to stretch himself by working with talented and distinguished directors like Bertolucci, van Sant, and Coppola.
I also thought the casting of Chris Isaak as the father was suspect; he simply doesn't have the technical ability to carry off this role. And Bridget Fonda was wasted as the mother. The film would have worked better if Fonda had traveled with her son, though I suppose the parallel to the life of Siddhartha made the role assignment inevitable.
In spite of its flaws, this film works. It is clear that Bertolucci has a deep affection for the ideas of Buddhism, and he has managed to integrate the legend seamlessly with the modern plot--so much so that at the end one leaves with the image of Buddha still meditating under the banyan tree, as one is meant to.
The Tibetan priests are well cast; they are exactly as they should be, particularly the round, jolly one. The young boy also performs well, particularly at the end.
By the way, this film is suitable for children in the same way that THE SECRET GARDEN (to which it refers) was suitable for adults. It contains no explicit violent or sexual imagery that would be offensive, and tells the story on a level that children of say six or more can understand.
.
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


Recipe 7.7. Mutating Objects with shelveCredit: Luther Blissett ProblemYou are using the standard module shelve. Some of the values you have shelved are mutable objects, and you need to mutate these objects. SolutionThe shelve module offers a kind of persistent dictionaryan important niche between the power of relational-database engines and the simplicity of marshal, pickle, dbm, and similar file formats. However, you should be aware of a typical trap you need to avoid when using shelve. Consider the following interactive Python session: >>> import shelve >>> # Build a simple sample shelf >>> she = shelve.open('try.she', 'c') >>> for c in 'spam': she[c] = {c:23} ... >>> for c in she.keys( ): print c, she[c] ... p {'p': 23} s {'s': 23} a {'a': 23} m {'m': 23} >>> she.close( ) We've created the shelve file, added some data to it, and closed it. Goodnow we can reopen it and work with it: >>> she=shelve.open('try.she', 'c') >>> she['p'] {'p': 23} >>> she['p']['p'] = 42 >>> she['p'] {'p': 23} What's going on here? We just set the value to 42, but our setting didn't take in the shelve object! The problem is that we were working with a temporary object that shelve gave us, not with the "real thing". shelve, when we open it with default options, like here, doesn't track changes to such temporary objects. One reasonable solution is to bind a name to this temporary object, do our mutation, and then assign the mutated object back to the appropriate item of shelve: >>> a = she['p']
>>> a['p'] = 42
>>> she['p'] = a
>>> she['p']
{'p': 42}
>>> she.close( ) We can verify that the change was properly persisted: >>> she=shelve.open('try.she','c') >>> for c in she.keys( ): print c,she[c] ... p {'p': 42} s {'s': 23} a {'a': 23} m {'m': 23} A simpler solution is to open the shelve object with the writeback option set to TRue: >>> she = shelve.open('try.she', 'c', writeback=True) The writeback option instructs shelve to keep track of all the objects it gets from the file and write them all back to the file before closing it, just in case they have been modified in the meantime. While simple, this approach can be quite expensive, particularly in terms of memory consumption. Specifically, if we read many objects from a shelve object opened with writeback=True, even if we only modify a few of them, shelve is going to keep them all in memory, since it can't tell in advance which one we may be about to modify. The previous approach, where we explicitly take responsibility to notify shelve of any changes (by assigning the changed objects back to the place they came from), requires more care on our part, but repays that care by giving us much better performance. DiscussionThe standard Python module shelve can be quite convenient in many cases, but it hides a potentially nasty trap, admittedly well documented in Python's online docs but still easy to miss. Suppose you're shelving mutable objects, such as dictionaries or lists. Naturally, you are quite likely to want to mutate some of those objectsfor example, by calling mutating methods (append on a list, update on a dictionary, etc.) or by assigning a new value to an item or attribute of the object. However, when you do this, the change doesn't occur in the shelve object. This is because we actually mutate a temporary object that the shelve object has given us as the result of shelve's own _ _getitem_ _ method, but the shelve object, by default, does not keep track of that temporary object, nor does it care about it once it returns it to us. As shown in the recipe, one solution is to bind a name to the temporary object obtained by keying into the shelf, doing whatever mutations are needed to the object via the name, then assigning the newly mutated object back to the appropriate item of the shelve object. When you assign to a shelve object's item, the shelve object's _ _setitem_ _ method gets invoked, and it appropriately updates the shelve object itself, so that the change does occur. Alternatively, you can add the flag writeback=True at the time you open the shelve object, and then shelve keeps track of every object it hands you, saving them all back to disk at the end. This approach may save you quite a bit of fussy and laborious coding, but take care: if you read many items of the shelve object and only modify a few of them, the writeback approach can be exceedingly costly, particularly in terms of memory consumption. When opened with writeback=True, shelve will keep in memory any item it has ever handed you, and save them all to disk at the end, since it doesn't have a reliable way to tell which items you may be about to modify, nor, in general, even which items you have actually modified by the time you close the shelve object. The recommended approach, unless you're going to modify just about every item you read (or unless the shelve object in question is small enough compared with your available memory that you don't really care), is the previous one: bind a name to the items that you get from a shelve object with intent to modify them, and assign each item back into the shelve object once you're done mutating that item. See AlsoRecipe 7.1 and Recipe 7.2 for alternative serialization approaches; documentation for the shelve standard library module in the Library Reference and Python in a Nutshell. |


Home
My Account
Orders
Log out
Welcome
New Car
Car Image:
Car Registration Number
Colour
Model
Make
Add new car


Concha Valley [ac01], plain, in Diamond Island, peasants: 101
Last updated Turn #128
Concha Valley [ac01], plain, in Diamond Island, peasants: 101
------------------------------------------------------------------------
3: The Savvy Aardvark [ha5r], ship, 2 hulls, 1 rowing port, 6 sails,
3: 16% damaged, arrived from Ocean [ad01], owner:
3: Phantasm [n4b], Imperial Empire, duke, with two workers,
3: eight sailors
4: The Savvy Aardvark [ha5r], ship, 2 hulls, 1 rowing port, 6 sails,
4: 16% damaged, departed for Ocean [ab01].
20: Stack of barbarians [go1n], barbarians, number: 26, arrived from the
20: east.
30: Stack of barbarians [go1n], barbarians, number: 26, went east.
Routes leaving Concha Valley:
North, to Ocean [ab01], Crystal Sea, 2 days
East, plain, to Concha Valley [ac02], 7 days
South, to Ocean [ad01], Crystal Sea, 2 days
West, to Ocean [ac00], Crystal Sea, 2 days
Inner locations:
Pasture [ad0i], pasture, 1 day, owner:
Minotaur [iv2h], minotaurs, number: 27
Minotaur [eg4s], minotaur
Seen here:
Stack of giant birds [ju7u], giant birds, number: 33
Stack of nazgul [hu1b], nazgul, number: 4
Stack of nazgul [fs2c], nazgul, number: 2
Stack of barbarians [go1n], barbarians, number: 25


Built with reveal.js
Focus on: deciding
Build a Python-based decider
The decider implements a decision rule.
$P(x)$: Probability of event $x$, range $[0,1]$
$P(x \mid y)$: Probability of event $x$ given event $y$
$P(x,y)$: Probability of events $x$ and $y$
$P(x,y) =$ $P(x) * P(y)$: For independent events $x$ and $y$
$\lvert X \rvert$: The number of elements in set $X$
Think of all words in a spam email or not spam email as a giant unordered set independent from each other within each email.
For us, we have two $c$ values in $C$: spam and not spam:
and,
where each $w_i$ is a unique word in a query document.
1. $P(\text{spam}) = $ $\frac{\lvert \text{spam} \rvert}{\lvert \text{spam} \rvert + \lvert \text{not spam} \rvert}$
2. $P(\text{not spam}) = $ $\frac{\lvert \text{not spam} \rvert}{\lvert \text{spam} \rvert + \lvert \text{not spam} \rvert}$
3. $P(F_i = w_i \mid \text{spam}) = $ $\frac{\lvert \text{spam containing } w_i\rvert}{\lvert \text{spam} \rvert}$
4. $P(F_i = w_i \mid \text{not spam}) = $ $\frac{\lvert \text{not spam containing } w_i \rvert}{\lvert \text{not spam} \rvert}$
#!/usr/bin/env python
import json
from math import log
from sys import argv
USAGE = '''%s <class 1 counts> <class 2 counts> <query tokens file>'''
if __name__ == '__main__':
if len(argv) != 4:
print USAGE % argv[0]
exit(1)
with open(argv[1]) as class1f:
class1counts = json.load(class1f)
with open(argv[2]) as class2f:
class2counts = json.load(class2f)
with open(argv[3]) as queryf:
queryf_tokens = json.load(queryf)
class1count = class1counts['total_examples']
class2count = class2counts['total_examples']
class1log = log(class1count)
class2log = log(class2count)
for token in queryf_tokens:
class1log += log(float(class1counts.get(token, 1)) / class1count)
class2log += log(float(class2counts.get(token, 1)) / class2count)
result = { 'log(p1)' : class1log,
'log(p2)' : class2log,
'file' : argv[3] }
if class1log > class2log:
result['chosen_class'] = 1
else:
result['chosen_class'] = 2
print json.dumps(result)
./nbayes_decider.py ham_counts.json spam_counts.json spam_extracted/TRAIN_XXXXX.eml


Education
University of California, San Diego B.S. Psychology (Cognitive and Social), Computer Science Minor relevant coursework in Cognitive Science Human-Computer Interaction2011-Present
University of Melbourne, AustraliaB.S. Psychology2013
Experience
UC San DiegoInstructional AssistantSept 2014-Dec 2014Teaching Assistant for Cognitive Psychology under Professor Angela Lowe
UCSD Perception and Cognition LabResearch AssistantMarch 2014-Presentstudy perceptual learning through behavioral and EEG studies using MATLAB, EEG, and eye tracker
Rainbow Art & Rainbow CanvasAssistant Art Instructor & UX DesignerJune 2010-Presentdesign art lessons and instruct children on drawing and paintingdesign company website, flyers, and logos
UCSD Academic Computing & Telecommunications HR & Admin DeptAdministrative Student AssistantNov 2012-June 2013assist with front desk and administration dutiesprepare monthly employee events for the officemanage, organize, and prepare various detailed documents for new hires, personnel files, and personnel database
Skills
PROGRAMMING
JavaC/C++HTML/CSSJavascript/JQuery
USER CENTERED METHODS
Contextual InquiryFlow ModelingVisioningAffinity DiagrammingPersona WritingWireframingCompetitive AnalysisPrototyping (High and Low)
OTHERS
Adobe Creative SuiteMicrosoft 365 OfficeProPresenterSound Checks
Relevant Coursework
Cognitive Design StudioUsability & Information ArchitectureEngineering PsychologyUbiquitous ComputingInformation Visualization (graduate class)
Intro to HCI
Cognitive PsychologySocial PsychologyIntroduction to Java ProgrammingData Structures and Object-Oriented ProgrammingSensation & PerceptionPositive Communities/Positive Psychology
Activities
Small Group Leader & A/V TechnicianLIFE Christian FellowshipAugust 2012-Presentorganize women's and community group eventsprepare extensively with a team to lead discussions every weekassist the Audio Visual Team with slideshows and sound checkstutor local and refugee children in the local community
DancerSan Marino Dance Company (San Marino, CA)
Flare Dance Ensemble (Melbourne, Australia)Sept 2009- Nov 2013
lead and teach choreographed dances with a team
choreograph and dance hip hop, jazz, lyrical, contemporary, and contemporary ballet pieces


Computes the difference between two lists of numbers or strings.
tf.compat.v1.setdiff1d( x, y, index_dtype=tf.dtypes.int32, name=None )
Given a list x
and a list y
, this operation returns a list out
that
represents all values that are in x
but not in y
. The returned list out
is sorted in the same order that the numbers appear in x
(duplicates are
preserved). This operation also returns a list idx
that represents the
position of each out
element in x
. In other words:
out[i] = x[idx[i]] for i in [0, 1, ..., len(out) - 1]
For example, given this input:
x = [1, 2, 3, 4, 5, 6] y = [1, 3, 5]
This operation would return:
out ==> [2, 4, 6] idx ==> [1, 3, 5]
x
: A Tensor
. 1-D. Values to keep.y
: A Tensor
. Must have the same type as x
. 1-D. Values to remove.out_idx
: An optional tf.DType
from: tf.int32, tf.int64
. Defaults to tf.int32
.name
: A name for the operation (optional).A tuple of Tensor
objects (out, idx).
out
: A Tensor
. Has the same type as x
.idx
: A Tensor
of type out_idx
.


Akan names are derived from Ghanian culture. Frequently in Ghana, children are given their first name as a 'day name' which corresponds to the day in the week they were born.
When you fill out the form it should generate the name you would be given as per the Ghanaian culture.
Fill the form below to find out your Akan name.


Arthur Morgan
Early Life
Arthur Morgan was born somewhere in the northern region of the United States in 1863. His exact date and place of birth is unknown. His parents were Beatrice and Lyle Morgan. Little is known of his early life, other than that his mother died when he was very young. His father was later arrested for larceny in 1874, when Arthur was only 11 years old. We also know that at some point between 1874 and 1876 Arthur witnessed his father's death. He was later picked up by outlaw Dutch van der Linde, and Hosea Matthews. He came to view Dutch as a surrogate father and quickly adapted his wild and free lifestyle.
Gaining Outlaw Status
As Arthur became older, he made the decision to fully initiate himself into the Van Der Linde Gang, which consisted of a small group of outlaws and runaways. Throughout his years he would commit many atrocities, including murder, multiple bank and train robberies, as well as intimidating others into paying debts owed to the gang. He earned a fierce reputation as both an avid hunter, and a deadly gunslinger. In fact, it is now believed that the stories of the legendary gunslinger Jim Boy Callaway, were actually the deeds of Arthur Morgan, who was paid hansomly to allow Calloway to take the credit.
Death
Arthur Morgan died in 1899 near the Roanoke Ridge area in the State of New Hanover. It is believed that he died of Tuberculosis, although this is unconfirmed.
If you would like to read more about the life of one of America's greatest outlaws, you can find information here


#ArmedNAware is a national call to action for individuals and organizations to participate in a National Black Gun Registry Day, where we hope to elevate awareness on the importance of self-defense and militant resistance in the Black liberation struggle. We are asking people to organize events in their respective communities on October 24th based on gun registry and self-defense for Black people. We are not only focusing on the “armed” aspect, but we emphasize the “aware” part as well. This is not a call for people to haphazardly arm themselves, or for wanton violence against whites. This is a call for Black people to become responsible gun owners and why it is important to the overall liberation struggle. Gun registry is the main action of this day, however elevating awareness on self-defense and militant resistance is the true purpose.
Feel free to email us to provide some feedback on our templates, give us suggestions for new templates and themes, or to just say hello!
If you have problems with the SASS version of the original template, please report it at the


!WARNING!
This creator has been flagged to be DELETED and BANNED during the purge. This pop-up message is a warning to allow you to save whatever you want from this creator before they are deleted forever, being unable to be re-imported. See the Telegram group and homepage for the date of the purge. We give you ONE MONTH from initial warning until the purge, so be quick. Thanks for understanding and we hope you carry on enjoying kemono.party.


German exports up 1.5% in September, stronger than expected
by Maria MartinezGerman exports rose in September, Germany’s statistics office Destatis said Friday, increasing more strongly than had been expected.
German exports were up 1.5% in September from August in adjusted terms, while imports increased 1.3% on the month, the statistics office said. The figures account for seasonal swings and calendar effects.
Economists had forecast a 0.5% increase in exports in the reporting month in adjusted terms, according to a Wall Street Journal poll.
The rise in German exports follows a sharp decrease in industrial output in September.
Germany’s trade surplus--the balance of exports and imports of goods--totaled 19.2 billion euros ($21.2 billion) in calendar and seasonally adjusted terms in September, according to Destatis. This exceeds The Wall Street Journal’s forecast of EUR18.3 billion.
Exports totaled EUR114.2 billion, while imports amounted to EUR93 billion, both in adjusted terms. Of the exports, EUR68.4 billion went to European Union member states and EUR45.7 billion to third countries, the office said.


@(params: Map[String, Any]) @uk.gov.hmrc.hmrcemailrenderer.templates.helpers.html.template_main(params, "Gateway Response Notification Mail") {
Gateway Automatic Response notification
Thank you for your electronic submission that was received at @params("receivedTime") on @params("receivedDate")
Your document has been transmitted to the service owner and will now be processed.
The identifiers for this submission are: @params("identifier")
You do not need to take any action in response to this e-mail.
Gateway Transaction Engine
}


--- # DO NOT EDIT! # This file is automatically generated by get-members. If you change it, bad # things will happen. layout: default title: "George Freeman" house: commons ---
George Freeman is the MP for Mid Norfolk.
What is a constituency?
George Freeman is an MP in the Conservative party.
What is a party?


Methods that follow
JavaBean
naming contract for accessors are expected to have no
side effects
. However, methods with a result type of
Unit
are only executed for their side effects.
* Refer to Programming in Scala, 2.3 Define some functions


It is often useful to be able to also monitor the progress of jobs that are carried out using multi-processing. There are two functions used for that in this package: set_progress_mp
and watch_progress_mp
that are used in conjunction with each other.
The code below uses the parallel
package, but in theory, it should work with any of the parallel architectures available for R.
To set up progress monitoring, you will again need to add a progress argument to your function. Notice that you can still use the update_progress
function to update your progress correctly.
library(knitrProgressBar)
library(parallel)
arduously_long_nchar <- function(input_var, .pb=NULL) {
update_progress(.pb) # this is a function provided by the package
Sys.sleep(0.1)
nchar(input_var)
}
Then you set-up the actual progress indicator function using set_progress_mp
:
set_kpb <- set_progress_mp("progress_file.log")
This object will write a “.” to the file progress_file.log each time it is called. Therefore, the file location should be accessible to all of the threads.
To use this, start your multi-processing code.
options(mc.cores = 2)
mclapply(seq(1, 100), arduously_long_nchar, .pb = set_kpb)
And then in a separate R process, setup the watcher:
kpb_watch <- watch_progress_mp(100, watch_location = "progress_file.log")
kpb_watch
In this separate process, you should see the progress indicator keeping up with the multi-processing code.


Psalms 99:8
Thou answeredst them, O LORD our God: thou wast a God that forgavest them, though thou tookest vengeance of their inventions.


--- layout: default title: Kali Tutorials ---
Welcom to the Kali Tutorials page! This is where you will learn about all things Kali Linux. We will discuss everything from staying anonymous to how to run programs in Kali.


Billionaire Ajay Piramal plans to step down from Shriram Capital
by BloombergHighlights
- Piramal, who was named chairman of unlisted Shriram Capital in 2014, is exiting the Chennai-based group after failing to consolidate his holdings into a non-banking financial behemoth
- Piramal is now planning two funds to invest in embattled realty projects and lend to retail borrowers after announcing a $770 million capital raise
NEW DELHI: Ajay Piramal said he plans to resign as chairman of Shriram Capital Ltd, the Indian non-bank finance company backed by South Africa’s Sanlam Group, as he works to sell his stake in Shriram’s parent group.
“I will step down in due course as I do not have much role in Shriram Capital," Piramal said in a recent interview in Mumbai. He declined to share details.
Piramal, who was named chairman of unlisted Shriram Capital in 2014, is exiting the Chennai-based group after failing to consolidate his holdings into a non-banking financial behemoth amid a cash crunch in India’s financial system. He is now planning two funds to invest in embattled realty projects and lend to retail borrowers after announcing a $770 million capital raise.
The Shriram Group is urging Piramal to continue as chairman even if he doesn’t hold any shares, founder R Thyagarajan said by phone.
The billionaire’s pharmaceuticals-to-real estate group Piramal Enterprises Ltd sold its 10% stake in truck financier Shriram Transport Finance Co in June and has started the process to sell its 20% in Shriram Capital.


--- layout: post title: Emily went for a walk date: '2011-02-06T16:10:00.000-05:00' author: Bob Sica tags: modified_time: '2011-12-21T12:48:50.279-05:00' blogger_id: tag:blogger.com,1999:blog-736339229338318027.post-2896470213451764733 blogger_orig_url: http://blog.purplecrowlidar.ca/2011/02/emily-went-for-walk.html ---
This wouldn't be noteworthy, except that it's my last walk in the sunshine for a few weeks, and it was a giant four-hour walk in frigid temperatures all the way around Frame Lake in Yellowknife. I (and my camera) are currently thawing out. Also, I heard a raven warble and sing today, and whistle, and he snapped his beak a lot - I hadn't realized before that they don't only "Caw!" (although, as usual, it turns out that Wikipedia could have told me that in advance). It was neat, anyways.


Hello {{.Username}},
An account has been created for you at CCS Loan.Please click the link below to verify your email and set up your password. Verify.


PPE {border-style px;} #ffffff;} hand virus Control contamination removal Centers HCWs healthcare protocol px; {font-family Disease font-size recovered Available Infect Prevention collab: double; glove hands skin use Dis Figure [cited border-color border-width gloves hygiene infection patient personal protective removing solid; study tracer {font-style {font-weight Advisory CDC Emerg Healthcare Practices Transfer Virus bold contaminated courier; em; equipment log participants prevent pt;} removed right spread transmission viral


Step 1
make sure your system has npm installed. Then open the command line
source of text and material: https://angular.io/tutorial/toh-pt0
ONE major note: My experience is that you cannot use Angular CLI in conjunction with using the Angular Template provided in Visual studio. It will not work. Pick one or the other.


Listbox Example
Notes
- Two widgets - the listbox itself and the toggle to hide/show
- Lots of keyboard handling required.
- Needs to track
activedescendant
so that focus can start at correct item - Why don't we just use a
<select>
activedescendant
so that focus can start at correct item<select>


EFCC Arrests Brothers For Using Commission’s Name To Extort 'Yahoo Boys'
“Items recovered from them include two cars, different brands of mobile phones and charms.”
by SaharaReporters, New YorkOperatives of the Economic and Financial Crimes Commission have arrested two brothers, Olatunji and Oluwayomi Beyioku for extorting Internet fraudsters with promises to shield them from possible arrest by the commission.
The siblings were arrested in Abeokuta, Ogun State capital, on Friday, November 15, 2019.
EFCC operatives had embarked on discreet investigations into the activities of the suspects when it was discovered that they were in the habit of extorting ‘Yahoo Boys’ to help them evade arrest by the anti-graft agency.
According to the EFCC, “The brothers claimed to be spy police officers with the rank of Deputy Superintendent of Police and have ‘assisted’ the commission with information on the whereabouts of Internet fraudsters within the town, but it was discovered that they only expose those who failed to meet their demands, while others willing and ready to play ball were shielded.
“It was also discovered that they had made several millions of naira sabotaging the commission’s efforts and live large therefrom.
“A search conducted on the younger brother’s palatial residence along Lagos-Abeokuta Expressway suggested that they may be living far above their means.
“Items recovered from them include two cars, different brands of mobile phones and charms.”


Don't believe me.
Not even when I'm (mis)quoting clever people.
Don't believe them either.
Try things for yourself.
Particularly those that seem revolting at first.
Would you seriously trust a bridge, let alone an airplane, built the way we build software?
That's a worthy goal, but it is far ahead.
There are no shortcuts.
Engineering comes from ingenuity.
I think that it's extraordinarily important that we in computer science keep fun in computing. [...] We began to feel as if we really were responsible for the successful, error-free perfect use of these machines. I don't think we are. I think we're responsible for stretching them, setting them off in new directions, and keeping fun in the house. [...]
The ones that are about programming often cause more problems than they solve.
The ones that add value are about communication.
List of all proven methods to avoid bugs in code:
The codebase becomes a terrible mess all by itself.
No need to accelarate the process.
Leave yourself the room to maneuvre.
It seems that perfection is attained not when there is nothing more to add, but when there is nothing more to remove.
Problem: You need to cut and pinch
Problem: You need to cut and pinch
There are two ways of constructing a software design: One way is to make it so simple that there are obviously no deficiencies, and the other way is to make it so complicated that there are no obvious deficiencies. The first method is far more difficult.
There is evidence to suggest it works.
The single responsibility principle states that every class should have a single responsibility, and that responsibility should be entirely encapsulated by the class.
In the beginner's mind there are many possibilities, in the expert's mind there are few.
Does Haxe deliver on the promise Java failed to keep?
(That's a serious question, but for now let's go with:)
Of course it does!!!
What's not in Haxe is as important as what is.
A continuous work in progess.
Many small, well documented packages.
Composability!!! Composability!!! Composability!!!
Example: tink.core.Signal
has a map
and a filter
method. Let's make it pausable!
function pausable<T>(s:Signal<T>) {
var paused = false;
return {
signal: s.filter(function (_) return !paused),
isPaused: function () return paused,
setPaused: function (param) paused = param,
}
}
typedef Button {
var clicked(default, null):Signal<MouseEvent>
}
var up:Button = ...,
down:Button = ...;
var delta = up.clicked.map(function (_) return -1).join(
down.clicked.map(function (_) return 1)
);
$type(delta);//Signal<Int>
Use in any class with implements tink.Lang
.
Extended syntax is applied to the class and all subclasses.
class Point implements tink.Lang {
public var x = (.0);
public var y = (.0);
@:calculated var length = Math.sqrt(x * x + y * y);
}
Do you hate it to have an expression end with })]})
?
Mysql.connect() => {
database : 'test',
user : 'user',
password : 'password',
}
[] => 4;
[x] => 2 * x;
[x, y] => x + y;
x => 2 * x;
@do body;
@do(x, y) trace(x + y);
@f value;
@f(x, y) (x + y);
function () return 4;
function (x) return 2 * x;
function (x, y) return x + y;
function (x) return 2 * x;
function () body;
function (x, y) trace(x + y);
function () return value;
function (x, y) return x + y;
switch _ {}
switch [_, _] {}
@do switch _ {}
@f switch _ {}
function (x) return switch x {}
function (x, y) return switch [x, y] {}
function (x) switch x {}
function (x) return switch x {}
myButton.clicked.handle() => @do {
trace('clicked!!!');
}
http.load(someUrl).handle() => @do switch _ {
case Success(data): trace('loaded $data');
case Failure(error): trace('ERROR: $error!');
}
for (i += .5 in 0...100) {}
for (i -= .5 in 100...0) {}
for ([b in bananas, m in monkeys]) m.eat(b);
for ([b in bananas, m in monkeys || monkey[0]]) m.eat(b);
for (key => value in map) {}
for ([m in monkeys, i++]) {}
@:tink_for({
var i = 0, a, l;
{
a = untyped __call__('array_values', @:privateAccess this.h);
l = untyped __call__('count', a);
}
}, i < l, a[i++])
function iterator():Iterator<T>;
Interfaces can have implementation
interface Enumerable<T> implements tink.Lang {
@:calc var length = fold(0, function (count, _) return count + 1);
function fold(init:A, calc:A->T->A):A {
forEach(function (v) init = calc(init, v));
return init;
}
function forEach(f:T->Void):Void
for (v in this) f(v);
function map(f:T->A):Array {
var ret = [];
forEach(ret.push);
return ret;
}
}
Partial implementation can have dependencies
interface Enumerable<T> implements tink.Lang {
/* ... */
@:usedOnlyBy(iterator)
var elements:Array<T> = [];
@:usedOnlyBy(forEach)
public function iterator():Iterator<T> {
return elements.iterator();
}
}
class Stack implements tink.Lang {
@:forward(push, pop, iterator, length) var elements:Array;
public function new() {
this.elements = [];
}
}
function connect<T>(
args = {
host: 'localhost',
port: 3306,
'database': 'test',
username: (_ : String),
password: (_ : String)
}
) {
return Mysql.connect(args);
}
Automatically connects. Creates missing tables and adds missing columns. Initializes SPOD.
Usage: -lib tinx_autospod tinx.AutoSpod.use()
(See #3037)
Configuration through dbconfig.uri
in working directory
mysql://user:password@host:port/dbname
sqlite:path/to/file.db
alias:path/to/directory
Largely haxe.Template
compatible compile time template language with rich syntax,
including switch
, while
, for
, var
, function
.
Templates become true Haxe classes on the fly, that can implement interfaces and extend classes.
Usage: -lib tinx_autospod tinx.AutoSpod.use()
No support for import
and using
(see #2868).
//Example.tpl
::static inline var TITLE = 'Awesome blog'::
::static function header(?title = TITLE)::
<!DOCTYPE html><title>::title</title>

::end::
::static function index(posts:Array<Post>)::
::header()::
::for p in posts:: ::excerpt(p):: ::end::
::footer()::
::end::
::static function excerpt(p:Post)::
::p.excerpt()::
Read more
::end::
::static function doDefault()
Sys.print(index(Post.manager.all()))
::
::static function main()
Dispatch.run(Web.getURI(), Web.getParams(), Example)
::
abstract Html {
public function new(s:String):Void;
@:from static public function escape(s:String):Html;
@:from static function ofMultiple(parts:Array):Html;
@:from static public function of(a:A):Html;
}


Commonly used email steps
To add your own steps make a custom_email_steps.rb The provided methods are:
last_email_address reset_mailer open_last_email visit_in_email unread_emails_for mailbox_for current_email open_email read_emails_for find_email
General form for email scenarios are:
- clear the email queue (done automatically by email_spec) - execute steps that sends an email - check the user received an/no/[0-9] emails - open the email - inspect the email contents - interact with the email (e.g. click links)
The Cucumber steps below are setup in this order.
Classes and Modules
- MODULE EmailHelpers


[Rubyforge Project page] [ChangeLog] [Authors] [License]
Gnuplot is a program that has a rich language for the generation of plots. It has a unique place in academia as it was one of the first freely available programs for plot generation. I started using gnuplot over 10 years ago while pursuing my Master's degree in Physics and have been using it actively ever since.
My first attempt at a Ruby interface to gnuplot was an object interface encapsulating gnuplot language. This was taken directly from the Python gnuplot interface. In spite of my being very familiar with Gnuplot and Ruby and being the author of the RGnuplot package, I found it non-intuitive to use the RGnuplot package. I found myself constantly looking at the code to figure out what I needed to do. This was not sufficient and did not sit well.
The second attempt at a Ruby interface was to do absolutely nothing but use Ruby's built in string manipulation methods. This meant that I could simply use my knowledge of Gnuplot without having to worry about objects. While in some ways an improvement over Version 0.9, it still did not sit well with me.
After attending RubyConf 2004 I was inspired by Rich Kilmer's use of Ruby to implement domain specific languages. That is the current implementation of Gnuplot and quite probably the one that I'll stick with for some time. This version combines the direct mapping of the gnuplot language without wrapping with the ruby syntax and mechanism of adding methods to existing classes to interface Ruby objects with gnuplot.
If the 'gnuplot' command is in your path then there is no required setup. If the gnuplot executable for your system is called something other than simply 'gnuplot' then set the RB_GNUPLOT environment variable to the name of the executable. This must either be a full path to the gnuplot command or an executable filename that exists in your PATH environment variable.
Gnuplot has a very simple conceptual model. Calls to Set are made to set parameters and either Plot or Splot is called to generate the actual plot. The dataset to be plotted can be specified in a number of ways, contained in a seperate file, generated from a function, read from standard input, or read immediately after the plot command.
The object model for the Ruby gnuplot wrapper directly mimics this layout and flow. The following are the standard steps for generating a plot:
Instantiate a Plot or Splot object and set parameters by gnuplot variable name.
Instantiate DataSet objects and attach Ruby objects containing the data to be plotted to the DataSet. Attach properties that modify the plot command using the modifier name.
Send the Plot/Splot object to a Gnuplot instance for plotting.
The Version 2.0 interface makes very heavy use of blocks leading to very readable code.
Gnuplot.open
Instantiates a new Gnuplot process. The path to the executable is determined on a Unix or MacOSX system using the which command. Windows users, I have no idea what to do. If a block is given to the function the opened process is passed into the block. This mimics the most common usage of the File.open method.
Plot.new
SPlot.new
Create a new Plot or Splot object. DataSets are attached to the object to specify the data and its properties. If a block is given to the function, the plot object is passed into the block.
DataSet.new
Associates a Ruby object containing the data to plot with the properties that will be passed to the plot command for that dataset. Any Ruby object can be associated with a DataSet as long as it understands the to_gplot method.
to_gplot
Within Gnuplot, plot data is read in very simple formats. The to_gplot method is expected to write the data of the object in a format that is understandable by Gnuplot. One of the many great things about Ruby is that methods can be added after the original declaration. The gnuplot module defines the to_gplot method on the following classes: Array, String, and Matrix. Simply define a to_gplot method on your own class to tie the class into gnuplot.
The following example simply plots the value of sin(x) between the ranges of -10 and 10. A few points to notice:
The code uses nested blocks to construct the plot. The newly created object is passed to the block so it can be modified in place.
Each of the gnuplot plot variables are modified using the variable name as a method name on the plot object or on the dataset object. The wrapper also takes care of the single quoting that is required on some of the variables like title, ylabel, and xlabel.
The plot object simply has an array of DataSets. The constructor initializes this empty array before yielding to the block. This method uses the << operator to add the DataSet to the plot.
When the plot block ends, if an IO object is given to the Plot constructor, the plot commands will be written to the IO object. Any object can be passed to the constructor as long as it understands the << operator.
Gnuplot.open do |gp| Gnuplot::Plot.new( gp ) do |plot| plot.xrange "[-10:10]" plot.title "Sin Wave Example" plot.ylabel "x" plot.xlabel "sin(x)" plot.data << Gnuplot::DataSet.new( "sin(x)" ) do |ds| ds.with = "lines" ds.linewidth = 4 end end end
Array data can be plotted quite easily since Arrays have a defined to_gplot method.
Simply pass an array of data to the constructor of the DataSet object or set the data property of the DataSet. In this example, because there are two arrays, each array will be a single column of data to the gnuplot process.
Gnuplot.open do |gp| Gnuplot::Plot.new( gp ) do |plot| plot.title "Array Plot Example" plot.ylabel "x" plot.xlabel "x^2" x = (0..50).collect { |v| v.to_f } y = x.collect { |v| v ** 2 } plot.data << Gnuplot::DataSet.new( [x, y] ) do |ds| ds.with = "linespoints" ds.notitle end end end
As many data sets as are desired can be attached to a plot. Each of these can have their own plot modifiers. Notice in this example how the data array is explicitly set instead of using the << operator.
Also in this example, the commands are not written to the Gnuplot process but are instead written to a File called gnuplot.dat. This file can later be run directly by a gnuplot process as it contains only the gnuplot commands.
File.open( "gnuplot.dat", "w") do |gp| Gnuplot::Plot.new( gp ) do |plot| plot.xrange "[-10:10]" plot.title "Sin Wave Example" plot.ylabel "x" plot.xlabel "sin(x)" x = (0..50).collect { |v| v.to_f } y = x.collect { |v| v ** 2 } plot.data = [ Gnuplot::DataSet.new( "sin(x)" ) { |ds| ds.with = "lines" ds.title = "String function" ds.linewidth = 4 }, Gnuplot::DataSet.new( [x, y] ) { |ds| ds.with = "linespoints" ds.title = "Array data" } ] end end


Try out our Premium Member services: Virtual Legal Assistant, Query Alert Service and an ad-free experience. Free for one month and pay only if you like it.
IN THE HIGH COURT OF JUDICATURE AT PATNA Civil Writ Jurisdiction Case No.13051 of 2014 ====================================================== Dr. Nand Kumar Mishra S/o Late Bashishth Narayan Mishra Resident of Village + Post + P.S. Bhagwanpur Hat, District Siwan. .... .... Petitioner/s Versus 1. The State of Bihar through the Principal Secretary, Environment Department, Govt. of Bihar, Patna. 2. The Chairman, Bihar State Pollution Control Board, Beltron Bhawan, Shastri Nagar, Patna. 3. The Regional Officer, Regional Pollution Board, Sarai Saiyad Ali Road, Technical Chauk, Muzaffarpur. 4. The District Magistrate, Siwan. 5. The Sub Divisional Officer, Mahrajganj, Siwan. 6. The Block Development Officer, Bhagwanpur Hat, Siwan. 7. Saroj Devi Chura Mill, Pro. Sri Putul Bihari Verma Resident of Village + P.S. Bhagwanpur Hat, District Siwan. 8. The Vishwakarma Chura Mill, Pro. Prem Nath Sah Resident of Village + P.S. Bhagwanpur Hat, District Siwan. .... .... Respondent/s ====================================================== Appearance : For the Petitioner/s : Mr Ajay Prasad Mr. Sanjay Kumar For respondent nos. 2 and 3 Mrs. Binita Singh For the State Mr. Raju Giri, G.P.30 ====================================================== CORAM: HONOURABLE MR. JUSTICE KISHORE KUMAR MANDAL ORAL ORDER
2 20-08-2015 Heard the parties.
The petitioner made a complaint against running of Chura Mills by the private respondents in a residential area before the Bihar State Pollution Control Board (for short 'the Board') (respondent no.2). The Board took notice of the said complaint and issued notices to the private respondents to furnish his response(s) and also caused a report to be submitted in this regard. Patna High Court CWJC No.13051 of 2014 (2) dt.20-08-2015 2/3 It is stated that the respondent-Board by a communication copy whereof has been enclosed along with the letter dated 14.07.2014 (Annexure-4) directed the private respondents to stop running of the mill which was emitting air pollutant and causing objectionable noise. Such direction was issued after making an inquiry into the matter. The Block Development Officer, Bhagwanpur was also directed to ensure compliance of the order. The grievance of the petitioner is that in spite of the aforesaid order passed by the respondent-Board and the steps taken by the BDO the private respondent continues to operate the mill.
A counter affidavit has been filed on behalf of the State respondents stating therein that in the light of the direction issued by the respondent-Board steps were taken to stop running of the Chura mills in question. When the private respondent did not pay heed to those steps. The officer-in-charge of the concerned police station has also been informed to ensure compliance of the order of the respondent-Board.
It appears to this Court that the grievance of the petitioner in substratum is non compliance of the order passed by the respondent-Board. The Air (Prevention and Control of Pollution) Act, 1981 (for short 'the Act') under which the Board has been created itself contemplates diverse penal provisions and Patna High Court CWJC No.13051 of 2014 (2) dt.20-08-2015 3/3 procedure to ensure due compliance of the order passed by the Board. Indisputably, the direction was issued to the private respondents under section 31-A of the Act. It appears on perusal of section 22-A and other provisions under Chapter VI of the Act that the Board can take steps for lodging of complaint in the court and also take punitive action against the person who has defied the order/direction issued by the respondent-Board.
In these circumstances, this Court would permit the petitioner to pursue the respondent-Board to take appropriate steps/action as required under law against the private respondent for his wilful defiance of the direction/order passed by the Board.
The writ application is disposed.
(Kishore Kumar Mandal, J) HR/-
U


Paths to Office
In this video series, current and former public servants discuss their backgrounds and motivations for pursuing public office. This series explores the variety of paths that women have taken before becoming involved in politics.
In this video series, current and former public servants discuss their backgrounds and motivations for pursuing public office. This series explores the variety of paths that women have taken before becoming involved in politics.
In this video series, current and former elected officials discuss what they learned while running for office and what other women should keep in mind before beginning their campaigns.
In this video, Bee Nguyen, the newly elected Representative for Georgia House District 89, and Anna Foote, a political consultant who has managed and advised on many Atlanta city and metro-area campaigns, discuss running a campaign as a business, staffing considerations, balancing volunteers and professionals, unique challenges women face in running for office, and strategies for raising campaign money.
In this video, Tippi Burch, an Atlanta Attorney specializing in political and election law who also has vast personal experience serving on statewide campaigns, and Karli Swift, an Atlanta Attorney who has worked on many campaigns in the Southeast, provide an overview of financial reporting requirements and some cautionary advice regarding campaign financing. They also have suggestions on governmental office resources.
In this video, Melanie Hammet, the Mayor of Pine Lake, one of the 500 small cities in Georgia, discusses some ideas of how to build a political career including how to build a political vocabulary and knowledge base about governing. Bee Nguyen, newly elected Representative for Georgia House District 89, renown political consultant, Anna Foote and political and election law specialist Tippi Burch, converse about networking strategies and fundraising challenges unique to women.


About
I am a motivated and driven Full Stack Web Developer with a passion for technology. Eager to learn new things, I pick up new libraries quickly. Not only do I think about the implementation, I also consider the process and the end result. I like to work according to the scrum method and develop solely what is neccessary: an application fulfulling a need.
Located near Rotterdam, also available to work remotely.
Skills
Technical Skills
- HTML5
- CSS3 (SCSS & LESS)
- JavaScript (ES6+)
- PHP
- NodeJS
- Python
- SQL
- AngularJS
- ReactJS
- Templating engines (e.g. Liquid and Nunjucks)
Currently learning Next.js, tinkering with Docker, and improving bash.
Development Skills
- Scrum/Agile
- Jira
- GIT
- REST API's
- Wireframing & Prototyping
- Responsive design
- Gulp, Grunt, Parcel, and WebPack
Experience
Webbify
Owner
Apr. 2015 - present
Ballonno.nl is a webshop in heliumballoons. The biggest challenge was designing an user-friendly ordering process without making assumptions about the preferred ordering method. JavaScript, NodeJS, AngularJS, Mocha, Chai, SinonJS, HTML5, CSS3, MySQL, Scrum, GIT, REST API's, Express, Nunjucks, Grunt, Strongloop Loopback, Bootstrap.
Coober.nl is an online platform for viewing and booking gyms and other sporting facilities. My major role was developing the front-end of Coober. The most important feature is the calendar for each facility, with draggable timeslots, to make the reservation. The platform also contains a shopping-like basket to finalize the order. JavaScript, NodeJS, AngularJS, Mocha, Chai, SinonJS, HTML5, CSS3, MySQL, MongoDB, Scrum, GIT, REST API's, Express, Nunjucks, Grunt, Strongloop Loopback, iDEAL, Bootstrap. Google Material Design, OAuth 2.0, SASS/SCSS.
Rankify.io is a web application allowing you to challenge your friends or coworkers for any game and keeping track of who is at the top of the leaderboard. My role was adding different functionalities (mostly front-end) to the application. PHP, Laravel, MySQL, JavaScript, AngularJS, HTML5, CSS3, LESS, Bootstrap, GIT, Grunt, REST API's, and Scrum.
More recent projects can be found on Webbify.nl.
Erudio
Developer
Feb. 2014 - Apr. 2015
At Erudio (organisation for tutoring high school students) I worked on an application containing all data coming from the business processes. In this application, called Grobo, all tutors and customers were stored. One feature would match both students and tutors at the right time and right location. PHP, Laravel, MySQL, JavaScript, AngularJS, HTML5, CSS3, LESS, Bootstrap, GIT, Grunt, REST API's, and Scrum.
Education
ICT in Business and the Public Sector - MSc
Leiden University
2019 - present
During my master I am expanding my knowledge of ICT and develop business and organisational skills that are essential to become a modern IT professional. I will get a deepter understanding of the issues, challenges, and opportunities in this area, with a specific focus on the management and alignment of ICT in a business and socio-technical context.
Computer Science and Economics - BSc
Leiden University & Erasmus University Rotterdam
2013 - 2019
During my study Computer Science & Economics I learned to solve complex business problems with informatics and improve economic processes with ICT. I acquired a strong foundation in computer science, I learned about the process of working with complex systems and large volumes of data, and discovered how they add value for organisations and companies.
Natuur & Techniek - VWO
Calvijn Groene Hart
2007 - 2013
Electives: computer science and economics.
Languages
Dutch (native) & English (proficient).
Interests
I am enthusiastic about film, video games, music, books, and food.


Class: Kharon::Validator
- Inherits:
-
Object
- Object
- Kharon::Validator
- Defined in:
- lib/kharon/validator.rb
Overview
The validator is the main class of Kharon, it validates a hash given a structure.
Instance Attribute Summary (collapse)
-
- (Hash) datas
readonly
The datas to filter, they shouldn't be modified to guarantee their integrity.
-
- (Hash) filtered
The filtered datas are the datas after they have been filtered (renamed keys for example) by the validator.
-
- (Object) handler
The error handler given to this instance of the validator.
-
- (Hash) processors
readonly
THe processors to process and validate the keys depending on their types.
Instance Method Summary (collapse)
-
- (Object) hash(key, options = {})
Checks if the given key is a hash or not.
-
- (Validator) initialize(datas)
constructor
Constructor of the classe, receiving the datas to validate and filter.
-
- (Object) method_missing(name, *arguments, &block)
Method used to not directly define the different type validation methods, but instead to look for it in the processors list.
- - (Boolean) respond_to?(name, search_private = false)
Constructor Details
- (Validator) initialize(datas)
Constructor of the classe, receiving the datas to validate and filter.
27 28 29 30 31 32 |
# File 'lib/kharon/validator.rb', line 27 def initialize(datas) @datas = Hash[datas.map { |k, v| [k.to_sym, v] }] @processors = Hash[Kharon.processors.map { |name, classname| [name, classname.new(self)] }] @filtered = Hash.new @handler = Kharon.errors_handler end |
Dynamic Method Handling
This class handles dynamic methods through the method_missing method
- (Object) method_missing(name, *arguments, &block)
Method used to not directly define the different type validation methods, but instead to look for it in the processors list.
38 39 40 41 42 43 44 45 46 47 48 |
# File 'lib/kharon/validator.rb', line 38 def method_missing(name, *arguments, &block) if respond_to? name if arguments.count == 1 processors[name].process(arguments[0]) elsif arguments.count == 2 processors[name].process(arguments[0], arguments[1]) end else super end end |
Instance Attribute Details
- (Hash) datas (readonly)
Returns The datas to filter, they shouldn’t be modified to guarantee their integrity.
|
|
# File 'lib/kharon/validator.rb', line 7
|
- (Hash) filtered
Returns The filtered datas are the datas after they have been filtered (renamed keys for example) by the validator.
|
|
# File 'lib/kharon/validator.rb', line 15
|
- (Object) handler
Returns the error handler given to this instance of the validator.
|
|
# File 'lib/kharon/validator.rb', line 19
|
- (Hash) processors (readonly)
Returns THe processors to process and validate the keys depending on their types.
|
|
# File 'lib/kharon/validator.rb', line 11
|
Instance Method Details
- (Object) hash(key, options = {})
Checks if the given key is a hash or not. This method MUST be defined to override the #hash method with these parameters.
60 61 62 |
# File 'lib/kharon/validator.rb', line 60 def hash(key, = {}) processors[:hash].process(key, ) end |
- (Boolean) respond_to?(name, search_private = false)
50 51 52 |
# File 'lib/kharon/validator.rb', line 50 def respond_to?(name, search_private = false) processors.keys.include?(name) ? true : super end |


The top amenity locations closest to you are displayed below.
Double click on the map to add a location to share with others.


| I l@ve RuBoard |
You have delighted us long enough.
Jane Austen, Pride and Prejudice
Pragmatic Programmers don't shirk from responsibility. Instead, we rejoice in accepting challenges and in making our expertise well known. If we are responsible for a design, or a piece of code, we do a job we can be proud of.
Tip 70
Sign Your Work
Craftsmen of an earlier age were proud to sign their work. You should be, too.
Project teams are still made up of people, however, and this rule can cause trouble. On some projects, the idea of code ownership can cause cooperation problems. People may become territorial, or unwilling to work on common foundation elements.
That's not what we want. You shouldn't jealously defend your code against interlopers; by the same token, you should treat other people's code with respect. The Golden Rule ("Do unto others as you would have them do unto you") and a foundation of mutual respect among the developers is critical to make this tip work.
Anonymity, especially on large projects, can provide a breeding ground for sloppiness, mistakes, sloth, and bad code. It becomes too easy to see yourself as just a cog in the wheel, producing lame excuses in endless status reports instead of good code.
While code must be owned, it doesn't have to be owned by an individual. In fact, Kent Beck's successful eXtreme Programming method [URL 45] recommends communal ownership of code (but this also requires additional practices, such as pair programming, to guard against the dangers of anonymity).
We want to see pride of ownership. "I wrote this, and I stand behind my work." Your signature should come to be recognized as an indicator of quality. People should see your name on a piece of code and expect it to be solid, well written, tested, and documented. A really professional job. Written by a real professional.
A Pragmatic Programmer.
| I l@ve RuBoard |


| HYTOOL Function Reference |
Creates a diagnostic plot of the data
diagnostic(t,s[[,d],m]) d = optional argument allowing to adjust the number of points used in the Spline by default or the distance between points depending on the option below m = optional argument allowing to select different methods of computation of the derivative 's' for spline resampling in that case d is the number of points for the spline 'd' for direct derivation in that case the value provided in the variable d is not used 'b' for the Bourdet et al. formula in that case d is the lag distance used to compute the derivative
This function allows to create rapidly a diagnostic plot (i.e. a log-log plot of the drawdown as a function of time together with its logarithmic derivative) of the data.
diagnostic(t,s) diagnostic(t,s,30) diagnostic(t,s,20,'d') - in that case the number 20 is not used
trial, ldf, ldiff, ldiffs, fit Published output in the Help browser showdemo diagnostic
| Hytool |
© 1998-2017 Philppe Renard and Co. Terms of Use Acknowledgments


Upcoming Events!!
Date
Event name
Event Duration
Winners
01/10
Knapsack 2.0
1 day
Raghav,Ritu,Om
42442
Jennifer Smith
$220
Pending
42257
John Smith
$341
Pending
42311
John Carpenter
$115
Pending


"The greatest glory in living lies not in never falling, but in rising every time we fall." - Nelson Mandela
Parents:
Siblings:
Likes:
Fields:
I'm currently 18 years old and live in Waterloo, IA with two brothers named Leif and Thomas. Leif is about 15 years old currently attending school as a Freshmen at Waterloo West High and Thomas is about 12 years old and is in 8th grade, currently at Hoover Middle School.  I also love to spend time indoors by the fire during Winter drinking hot chocolate, but you might also find me outside during the Summer enjoying the weather probably swimming.


GetTemporaryDirectory()
Syntax
Result$ = GetTemporaryDirectory()Description
Returns the temporary directory name.
Parameters
None.
Return value
Returns the full path to the temporary directory. It will end with a directory separator ('\' on Windows and '/' otherwise).
It's very unlikely, but if this function fails, it will return an empty string.
Remarks
This directory provides read and write access and should be used to store temporary files. Depending on the operating system and settings, the contents of this directory may be deleted on a regular basis. It is however better to delete temporary files when they are no longer needed and not rely on such automatic cleanup.
See Also
GetCurrentDirectory(), GetHomeDirectory()
Supported OS
All


Father of Edmond Dantès. Edmond's arrest left him grief-stricken and depressed. He isolated himself and, after nine days of fasting, passed away.


{% extends "base.html" %} {% load static %} {% block htmlclass %}{% endblock %} {% block title %}Learn Web Design Fundamentals and Shortcuts with Hello Web Design - {{ block.super }}{% endblock %} {% block header %} {% endblock %} {% block analytics %} analytics.page("Hello Web Design book landing page"); {% endblock %} {% block bodyclass %}
{% endblock %} {% block content %}Now being published by No Starch Press
Buy the book
Beginner design books assume you want to become an expert designer. What if you want to learn just enough to complement your existing work? Hello Web Design will teach you the basics about design (no history!) and give you shortcuts so you can immediately become a better designer.
Raised over $22,000 on Kickstarter from over 700 backers.
Learn the steps of designing to help you go from idea, to blank paper, to prototypes, to launched project.
Forget choosing colors randomly on a color wheel — find out the best shortcuts to get you a great color palette fast.
Learn the differences between fonts, basic typography, and where to find (and narrow down) great typefaces.
You know it's important, but how to use it? We'll go through where white space can help your design the most.
Great imagery can make a design. Learn some easy tips on how to use imagery and great resources on where to find it.
Design isn't how it looks it's how it works. Learn how your visual design ties into the user-experience.
This may have been my favorite talk of the convention. What I loved most was that Tracy didn't waste time talking about meaningless theory. She told me exactly why my website was shite to look at, and even more importantly, how to fix it.
— Mark Knapik at PHP[Tek] in May 2017
I can’t recommend “Hello Web Design” enough, short and sweet, by @tracymakes, check it out here: https://t.co/dmQFuPRNfb
— Tomek Paczkowski (@oinopion) May 18, 2018
Took my sweet time but I finally finished #HelloWebDesign.
— Froilán 🇵🇷 @ Playing with Twitch (@skfroi) June 17, 2018
Sooooo good! 100% worth it. Buy one if like me your in backend land and want a great intro https://t.co/WlUaEItkP5
Thank you @tracymakes pic.twitter.com/HkXfVdz3qe
Finished reading Hello Web Design by @tracymakes a few days ago. I already learned a ton thanks to this book. Easy to read but very instructive, I highly recommend!
— Quentin (@quentindty) March 8, 2018
Just got my hard copy of @tracymakes's book Hello Web Design (already was a few chapters into the PDF), which expands on the stuff in this talk but in book form. I recommend it. https://t.co/TKrHnmHdFO
— dustin king 👽 (@cathodion) November 16, 2017
Gave @tracymakes's Hello Web Design book to a client as I wrapped up walking them through the report on recent usability testing. They still want design help, but the more we can do to make our clients informed and independent, the better.
— мαттнєω σℓιρнαηт (@matto) April 24, 2018
Sun, sea, no sand, but @tracymakes’s brilliant HelloWebDesign book to keep my brain from melting. pic.twitter.com/IruQeZZIu0
— Ben Furfie (@frontendben) June 17, 2018
Five chapters, two mega sections, 170 pages, over a hundred examples and shortcuts.
(Want to buy another book as well? See all combo packages here.)
{% endcomment %} {# The FAQ area #}


The Value Pricing Pilot (VPP) Parking Pricing Regional Analysis Project is part of MTC’s 2014-2015 Parking Initiative. As part of this project, eleven policy questions are addressed through a range of best practices, case studies, technical analysis, and expert panel review. This site documents the research and findings for those eleven policy questions.
This Project is a two year regional initiative led by MTC, made possible by a $560,000 grant from the Federal Highway Administration (FHWA) through the VPP Program, which supports research and implementation of pricing approaches to address transportation issues. Key partners include FHWA, the California Department of Transportation (Caltrans), the Association of Bay Area Governments (ABAG), local jurisdictions, transit agencies, congestion management agencies, the development and business communities, and community stakeholders.


| BrandCreateEvent | Class BrandCreateEvent |
| BrandDeleteEvent | Class BrandDeleteEvent |
| BrandEvent | Class BrandEvent |
| BrandToggleVisibilityEvent | Class BrandToggleVisibilityEvent |
| BrandUpdateEvent | Class BrandUpdateEvent |
| BrandCreateEvent | Class BrandCreateEvent |
| BrandDeleteEvent | Class BrandDeleteEvent |
| BrandEvent | Class BrandEvent |
| BrandToggleVisibilityEvent | Class BrandToggleVisibilityEvent |
| BrandUpdateEvent | Class BrandUpdateEvent |


Percent Internet Users Data Visualization
Key for Colors:
0%
-
100%
*Data from International Telecommunication Union


This test case demonstrates functionality of the Web Forms 2.0 specification and tests the compliance of this cross-browser Web Forms 2.0 implementation.
The following test verifies whether or not the repetition template is initialized before the user's onload
fires.
Test result: loading page...


2017-10-10 - MALSPAM USING CVE-2017-0199 TO PUSH LOKI BOT
ASSOCIATED FILES:
- Zip archive of the pcap: 2017-10-10-Loki-bot-malspam-traffic.pcap.zip 350 kB (350,219 bytes)
- 2017-10-10-Loki-bot-malspam-traffic.pcap (633,297 bytes)
- Zip archive of the email and some associated artifacts: 2017-10-10-Loki-bot-malspam-and-artifacts.zip 589 kB (588,789 bytes)
- 2017-10-10-Loki-bot-malspam-1231-UTC.eml (370,939 bytes)
- 7571BA.exe (675,840 bytes)
- REQ. FOR QUOTATION.doc (221,271 bytes)
NOTES:
- Malicious spam (malspam) with an attachment.
- Attachment is an RTF document with a CVE-2017-0199 exploit, and it's disguised as Word document.
- The exploit is designed to infect Windows hosts with Loki Bot malware.
Shown above: Screenshot of the email.
EMAIL HEADERS:
- Date: Tuesday, 2017-10-10 12:31 UTC
- Message-ID<EMAIL_ADDRESS>- Subject: News about your order2105586505244
- From: "Ozean"<EMAIL_ADDRESS>- Reply-To: "Ozean"<EMAIL_ADDRESS>- Attachment name: REQ. FOR QUOTATION.doc
Shown above: Attachment is actually an RTF file with an exploit for CVE-2017-0199.
TRAFFIC
Shown above: Traffic from this infection filtered in Wireshark.
Shown above: Alerts on the infection traffic using the Emerging Threats and ETPRO rulesets in Sguil on Security Onion.
ASSOCIATED DOMAINS AND URLS:
- <IP_ADDRESS> port 80 - almahalliah.com - GET /images/htajem.hta
- <IP_ADDRESS> port 80 - almahalliah.com - GET /images/jem.exe
- <IP_ADDRESS> port 80 - www.lasihuolto.fi - POST /if/panel/five/fre.php
FILE HASHES
RTF WITH EXPLOIT FOR CVE-2017-0199:
- SHA256 hash: 34a19d2fb7e045bb1c985ed727beff59f169b3021ee67cfc462366a66ce14251
File size: 221,271 bytes
File name: REQ. FOR QUOTATION.doc
FOLLOW-UP MALWARE (LOKI-BOT):
- SHA256 hash: 54ef1c6df5b3b288366b560f7721f1cc5e556bd2fa3c8b0edee7fdb2fe871ffb
File size: 675,840 bytes
File location: C:\Users\[username]\AppData\Roaming\C72387\7571BA.exe
FINAL NOTES
Once again, here are the associated files:
- Zip archive of the pcap: 2017-10-10-Loki-bot-malspam-traffic.pcap.zip 350 kB (350,219 bytes)
- Zip archive of the email and some associated artifacts: 2017-10-10-Loki-bot-malspam-and-artifacts.zip 589 kB (588,789 bytes)
Zip files are password-protected with the standard password. If you don't know it, look at the "about" page of this website.
Click here to return to the main page.


the and influenza vaccine that about for with from older participants interview disease health were this Singapore among not misperceptions are {background []. The their vaccination was This also ;():–. they Available communication have adults margin may our Health vaccines {border-style healthcare information study Influenza px;} #ffffff;} (Male, Misperceptions reported data knowledge [Internet]. from: more uptake vaccine. (Female, between get participant perceptions should barriers its most participants’ than through Participants adults’ against but can how such who you Disease flu interviews into other used any been has noted only Centers Control Perceptions Singapore. immunity one personal population professionals public recommended significant some taken those toward when Medicine While approach before deaths don’t findings global identified people px; recommendations seasonal terms which {font-family (a) (b) Journal Many Our Prevention. Sciences Singapore, Vaccination all concerns font-size improve influenza, like message need preventive use vaccine, English Infectious Internet]. Mandarin Qualitative Research Vaccine [newspaper adults. aged analysis because challenges codes countries double; effects first future had including infection influenza. interviewers know language less many perceived prevention provide review severity taking theme then theory vaccination. very virus well where (c) (d) ./j.vaccine... Chinese However, Most Nanyang One United Vaccine. above adequate border-color border-width burden care cases coding conducted confusion could did direct diseases drugs during end field good having identify immune included informed little low medical notes pathogens pose prevention. provided qualitative rates rather reasons received risk solid; spread strong susceptibility take themes these understanding users vaccinated viral vivo work workers {font-style {font-weight "The "influenza & ./j.-...x Biology Clinical Communication Data Education Familiarity Given Immunization North Oct Older Orthomyxoviruses Personal Prevention SAGE SARS Singaporean Some Technological University, Viral access age antiviral audio bold cannot characteristics characteristics, comes common complications constant courier; describe developed doctors efforts em; familiarity following further general generally got grounded heard held high increase it’s knowledge. new nor original over participants. particularly poor practices pt;} reports risks role safety sciences semi-structured serious study. therefore think thus under usage using viruses: vulnerable will year you’re


Home
Sales
Store
Cart
Sales Data By Location
Add your own city
Enter city:
Enter minimum customers per hour:
Enter maximum customers per hour:
Enter average cookies per customer:


How To Setup Navigator Hugo
This is meta description
Check this link below for install hugo on your computer. hugo install documentation
Hugo provides a new
command to create a new website.
hugo new site <new_project>
STEP-3 : Install the theme
Run this command
hugo new site navigator-hugo
and then go to the themes folder inside of navigator-hugo folder. You can also use this command cd navigator-hugo/themes
for going to this folder.
Then run the command
git clone git@github.com:themefisher/navigator-hugo.git
Alternatively, you can download the theme as .zip file and extract it in the themes
directory
After that you need to go to the navigator-hugo/exampleSite
folder and copy or cut all the elements, and now go back to the root folder and paste it here.
open the command prompt again and run cd ../
command for go back to the root folder.
Launching the website locally by using the following command:
hugo serve
Go to http://localhost:1313
Or you can check this video documentation for installing this template:
When building the website, you can set a theme by using --theme
option. However, we suggest you modify the configuration file (config.toml
) and set the theme as the default.
# Change the default theme to be use when building the site with Hugo
theme = "navigator-hugo"


Uniforms
Apparently
vec4
which is used to add color to your shader is like the CSS rgba()
function. But uses 0-1.0 instead of 0-255 values.
https://thebookofshaders.com/05/
As a Creative Front-End Developer I wanted to learn more about WebGL. WebGL is generally used for 2D and 3D animation on the web because it enables GPU rendering, which makes it fast. This one-pager will contain all the information that I learn from the https://thebookofshaders.com/
Hover on a block with a canvas to reveal the Fragment Shader code that's used in the example.
Apparently
vec4
which is used to add color to your shader is like the CSS rgba()
function. But uses 0-1.0 instead of 0-255 values.
https://thebookofshaders.com/05/
u_time
(time in seconds since the shader started), u_resolution
(billboard size where the shader is being drawn) and u_mouse (mouse position inside the billboard in pixels).
gl_FragColor = vec4(abs(sin(u_time)),abs(u_mouse.x*0.001),abs(u_mouse.y*0.001) ,1.0);
This is where I got a headache. The x and y coordinates of the fragment get divided by the resolution which results in the fragment being diagonal which then are multiplied by the a function of passed time in second
vec2 st = gl_FragCoord.xy/u_resolution;
gl_FragColor = vec4(abs(cos(u_time * st.x)),abs(sin(u_time * st.y)),abs(sin(u_time * st.y * st.x)),1.0);
We visualize the normalized value of the x coordinate (st.x) in two ways: one with brightness (observe the nice gradient from black to white) and the other by plotting a green line on top (in that case the x value is assigned directly to y). The line visualizes the gradient. Updating float y
changes the line and gradient.
The fragment shader in lesson 5
float y = smoothstep(0.2,0.5,st.x) - smoothstep(0.5,0.8,st.x);
displays my own solution to the creation of a gradient that's white in the middle and black on the sides. The solution of a pro was given here
"The values of .x, .y and .z can also be called .r, .g and .b, and .s, .t and .p. (.s, .t and .p are usually used for spatial coordinates of a texture, which we'll see in a later chapter.) You can also access the data in a vector by using the index position, [0], [1] and [2]." - https://thebookofshaders.com/06/
vec4 vector;
vector[0] = vector.r = vector.x = vector.s;
vector[1] = vector.g = vector.y = vector.t;
vector[2] = vector.b = vector.z = vector.p;
vector[3] = vector.a = vector.w = vector.q;
"In GLSL there is a very useful function, mix()
, that lets you mix two values in percentages. Can you guess what the percentage range is? Yes, values between 0.0 and 1.0! Which is perfect for you, after those long hours practicing your karate moves with the fence - it is time to use them!" - https://thebookofshaders.com/edit.php#06/easing.frag
https://thebookofshaders.com/06/
I feel like this plot displays this lesson clearly. Colors are plotted on the canvas the same way as lines are. The colors all mix together.
pct.r = smoothstep(0.2,0.0, st.y);
pct.g = smoothstep(st.x*0.1,st.x*0.0,st.y*0.1);
pct.b = pow(st.y,0.5);
https://thebookofshaders.com/06/
To animate the circular rainbow I added the cosinus function of passed time which results in an ease that I can speed up or slow down by multiplying it.
color = hsb2rgb(vec3((angle/TWO_PI)+cos(u_time) * 0.5,radius,1.0));
In WebGL you can give the parameters of a function a type much like in TypeScript.
int newFunction(in vec4 aVec4, // read-only
out vec3 aVec3, // write-only
inout int aInt); // read-write
https://thebookofshaders.com/06/
Using Math to draw things is hard. This function contains the Math to draw a square. It makes a "step" from the bottom left to top left and bottom right. If we multiply the positions of bottom left with top right it returns the used space of the function.
// bottom-left
vec2 bl = step(vec2(0.1),st);
float pct = bl.x * bl.y;
// top-right
vec2 tr = step(vec2(0.1),1.0-st);
pct *= tr.x * tr.y;
https://thebookofshaders.com/07/
This circle is pretty much a radial gradient but I removed the gradient part to just end up with a circle. This was pretty much done with magic numbers. You can look at this circle and radial gradients as if you were hovering over a mountain and looking straight down onto it.
float pct = 0.0;
vec2 tC = vec2(15.5)-st*31.0;
pct = sqrt(tC.x*tC.x+tC.y*tC.y-15.5);
vec3 color = vec3(pct);
gl_FragColor = vec4( color, 1.0 );
https://thebookofshaders.com/07/
In Math creating a circle revolves around setting the radius from middle to side and multiplying this to PI*2. A lot of everyday functions like creating a circle are premade by people and shared by websites like Shadertoy.
This gradient is created by constantly updating the distance field of the gradient:
d = length( max(abs(st * abs(cos(u_time*0.5)))-.0,0.) );
And setting the strength the white and black gradient to different values, they are blurry because of smoothstep.
gl_FragColor = vec4(vec3( smoothstep(.1,.4,d)* smoothstep(.6,.55,d)) ,1.0);
vec2 pos = vec2(0.5)-st;
float r = length(pos)*2.0;
float a = atan(pos.y,pos.x);
"In the chapter about color we map the cartesian coordinates to polar coordinates by calculating the radius and angles of each pixel with the following formula:" - https://thebookofshaders.com/07/
The displayed function pretty much takes the radius and bends it from a certain degree to another with the mathematical atan function
So... This shape is a result of using:
f = smoothstep(-.5,1., cos(a*10.))*0.2+0.5;
Which results in a gear like form.
float q = abs(cos(a*12.)*sin(a*3.))*.8+.2;
color = 1.0 * color+pct * vec3(abs(sin(u_time*0.5)),abs(cos(u_time*0.5)),abs(tan(u_time*0.5)));
float a = atan(pos.y,pos.x) +PI*(u_time*0.25);
This is where I wrote my first ever (working) WebGL function! It works by returning a shape.
vec3 makeShape(vec2 st, int N){
float d = 0.0;
// Remap the space to -1. to 1.
st = st *2.-1.;
// Angle and radius from the current pixel
float a = atan(st.x,st.y)+PI;
float r = TWO_PI/float(N);
d = cos(floor(.5+a/r)*r-a)*length(st);
return vec3(1.0-smoothstep(.4,.41,d));
}
Updating the 3 in this line will update the shape, try it out!
color = makeShape(st, 3);
I can say that I have learned that fragment shaders are pretty much textures calculated by Math. The Math involved really feels like the Math I learned in Highschool, you are pretty much constantly calculating points and connections in a certain area.
For now this is where my journey through fragment shader land reaches to a halt. The Book of Shaders contains a lot of information about fragment shaders and apparently I made it through the rough part. After this little project I will be learning more from the Book of Shaders which I will document on my CodePen account: https://codepen.io/meesrutten