[§115-8] Expending agency. The department of land and natural resources shall expend all sums appropriated for the purposes of this chapter and in accordance with section 115-7. [L 1974, c 244, §8]


The Walking Dead Character Quiz
Choose your traits and find out which one you are in this world of survival horror
Rick Grimes
Rick is a former sheriff deputy who was shot in the line of duty and fell into a coma, only to awaken and find himself in the midst of the apocalypse. He travels to Atlanta, Georgia, in search of his wife, Lori, and his son, Carl, who have traveled to Atlanta with his best friend, Shane Walsh. After reuniting with his family, along with discovering a group of survivors, he gradually becomes the de-facto leader in their search of a safe haven.
Hershel Greene
Despite his grumpy and cold demeanor, for a significant amount of time, he ultimately served as the moral center of the survivors, being quick to help people whenever they were in need, spreading his influence of hope/reassurance and wanting nothing, but, the best for most of the people around him.
 However, Merle is also extremely humorous in nature and is a thrill seeker, who gets joy by mentally and emotionally toying with others. Much like his younger brother, Merle is an expert tracker and hunter. He is deadly with firearms, and in the third season, his hand-blade attachment proves to be one of his deadliest weapons
Lori Grimes
Lori was a strong, selfless, independent, and emotional woman, but was also shown to be difficult and demanding at times. Having believed her husband to be dead, that the world was coming to an end, and trying her best to keep herself and Carl safe, Lori became extremely vulnerable and lonely.


Use right-hand truncation, typing as much or as little of the TITLE as you want, for example:
Omit initial articles from titles in all languages (e.g. A, The, Les, El, etc.).


The Justice Department announced Wednesday that cafeteria manager Bobby Paul Edwards was sentenced to federal prison for forced labor and mandated to pay nearly $273,000 in restitution to Christopher Smith.
The federal agency said in a statement that Edwards began managing the Conway, South Carolina, eatery where Smith worked in 2009.
The Justice Department added that Edwards is also accused of using torture to intimidate Smith into working without benefits, keeping him from speaking with family, hitting him with kitchen items and using racial slurs toward him.
A state assault charge wasn’t prosecuted.
Sign up for Daily Newsletters
Copyright © 2019 The Washington Times, LLC.
Please read our comment policy before commenting.


Shared on
www.MafiaShare.net
Parent Directory
magashop-black/
magashop-blue/
magashop-green/
magashop-megenta/
magashop-pink/
magashop-purple/
magashop/
themeIndex/


SHREC 2019 - 2D Scene Image-Based 3D Scene Retrieval FAQ
This page will be updated throughout the track
How do I submit the results of my method(s)?
You can find submission instructions here
How do I submit the results of my method(s)?
You can find submission instructions here


Mohamed Samael
Summary
Skilled at organizing complex projects, defining project priorities
Fluent in English, Arabic, Cham
Education
Seattle Central
Skillspire
Experience
Mobile BurgerZ LLC
Lyft Driver
Custom Control Concepts
Reference


Toggle navigation
Fab Academy 2015
Antonio Burrai
[WEEK 9]
Molding and casting
.
The weekly assignment focuses on the design and utilization of a 3D mold!
My final project is supposed to be a
robotic fish
! So I’d like to design a small object that will be a kind of commercial gadget for “
Piske
”.
MODELLING AND MOLDING PROCEDURE.
I’m very fast with Rhinoceros but at the same time I’d like a very simple design. I take note of the approx. 15° slopes in order to better extract the silicon resin. One thing that really block me is the long times required to mill the wax. I decided not to mill the two symmetrical side of the fish.
Once the STL file was ready, the following two software packages have been used in order to mill he wax:
Modela Player 4
and
Roland VPanel for SRM-20
. I set X,Y and Z coordinates for rough (1/64) and fine (1/32) procedure, and then I went away. The milling takes more or less 4 hours. Then I send the model to a Roland SRM-20. The following tasks have been performed.
Task 1: ROUGHING
tool (end mill) diameter: 3 mm
Task 2: FINISHING
tool (end mill) diameter: 1,5mm.
Task 1 settings:
X,Y speed 24 mm/s, Z speed 10 mm/s, spindle 7000 rpm, cutting-in amount 0.6 mm, path interval 1.8 mm and finish margin 0.2 mm.
Task 2 settings:
X,Y and Z speed 16.8 mm/s, spindle 7000 rpm, cutting-in amount 0.2 mm, path interval 0.2 mm and finish margin 0 mm.
The machine at work !
Something went wrong, probably for a misalignment of the Z-axis. It looks like that the final (fine) pass did not work correctly. The last layer of wax is not well smoothed. I will try to adjust it using a solder to smooth the irregularities.
The worst zone.
CASTING PROCEDURE.
Despite the problem we start our casting procedure, using the
Smooth-Sil
940 silicon rubber. The solderer, used to try to adjust the bad part of wax is visible in the image.
I mix the two components very slowly using the correct 1A to 1B proportion (namely ratio of
100:10 in weight
), probably it will be useful the help of a blender. To avoid bubbles a used a method well known in Civil Engineering for concrete: localized vibration. In this specific case I use a crayon.
The result is not so beautiful. The silicon rubber
copies everything of the mould
…including the adjustment made with the solder…I’m not satisfied at all even if I've decided to complete the procedure anyway.
So the polyurethane
resin
have been tested anyway (ratio A:B of 1:1). I’ve experienced the following
problems
: 1)
Not correct calculation of the casting volume
.Not having time to use Rhinoceros I made simple empirical calculation in order to evaluate the volume of the needed resin. The result is: too much resin. It's poured outside of the fish. 2)
Lots of small air bubbles
. I’m supposing they have been trapped in the small lined derived from the uncorrect 1/32 refining.
This is the
final result
!
Download area
The following files are downloadable:
Type of file
Description
Link (Type of file)
Fabrication files: vectors(s) / 3D model(s)
Rhinoceros file
(
3DM
)


Submissions: use associated acronyms Su1, Su2, ... in the email's Subject field.
Reading Assignment (due Jan 18, 6:00 PM)
- Su7: P. Caspi, A. Curic, A. Maignan, C. Sofronis, S. Tripakis, P. Niebert: From Simulink to SCADE/Lustre to TTA: A Layered Approach for Distributed Embedded Applications. LCTES 2003.
Click here for PDF file.
Comment: short summary (3-4 bullet items).
- Su6: N. Halbwachs, P. Caspi, P. Raymond, D. Pilaud: The synchronous dataflow programming language Lustre. In Proc. IEEE, vol. 79 (9), 1991.
Click here for PDF file.
- Su5: T.A. Henzinger, C.M. Kirsch, S. Matic: Schedule-Carrying Code. EMSOFT 2003.
Click here for PDF file.
- Su4: G.C. Buttazzo: Rate Monotonic vs. EDF: Judgment Day. In Proc. EMSOFT, October 2003, pp. 67-83.
Click here for PDF file.
- Su3: T.A. Henzinger, C.M. Kirsch, M.A.A. Sanvido, W. Pree: From Control Models to Real-Time Code using Giotto. IEEE Control Systems Magazine, February, 2003.
Click here for PDF file.
- Su2: T.A. Henzinger, C.M. Kirsch: The Embedded Machine: Predictable, Portable Real-Time Code. PLDI 2002.
Click here for PDF file.
- Su1: Edward A. Lee: What's Ahead for Embedded Software? IEEE Computer Magazine, September 2000, pp. 18-26.
Click here for PDF file.
List of Potential Papers
Papers on Programming Abstractions:
- T.A. Henzinger, C.M. Kirsch, B. Horowitz: Giotto: A Time-triggered Language for Embedded Programming. In Proc. IEEE, vol. 91 (1), 2003.
- Gérard Berry: The Foundations of Esterel. Proof, Language and Interaction: Essays in Honour of Robin Milner, MIT Press, 2000.
- N. Wirth: Toward a discipline of real-time programming. Communications of the ACM, vol. 20, 1977.
Papers on Runtime Abstractions:
- N. Wirth: Tasks versus threads: An alternative multiprocessing paradigm. Software: Concepts and Tools, vol. 17, Springer, 1996.
Papers on Model-Based Design:
- N. Scaife, C. Sofronis, P. Caspi, S. Tripakis, F. Maraninchi: Defining and translating a "safe" subset of Simulink/Stateflow into Lustre. EMSOFT 2004.
- P. Caspi, A. Curic, A. Maignan, C. Sofronis, S. Tripakis: Translating Discrete-Time Simulink to Lustre. EMSOFT 2003.
Papers on Clock Synchronization:
- Leslie Lamport: Time, clocks, and the ordering of events in a distributed system. Communications of the ACM, vol. 21 (7), 1978.
Papers on WCET Analysis:
- H. Theiling, C. Ferdinand, R. Wilhelm: Fast and precise WCET prediction by separated cache and path analyzes. Real-Time Systems, vol. 18 (2-3), 2000.


THE DISCOVERY OF TIN.
St Piran, or St Perran, leading his lonely life on the plains which now bear his name, devoted himself to the study of the objects which presented themselves to his notice. The good saint decorated the altar in his church with the choicest flowers, and his cell was adorned with the crystals which he could collect from the neighbouring rocks. In his wanderings on the sea-shore, St Perran could not but observe the numerous mineral, veins running through the slate-rocks forming the beautiful cliffs on this coast. Examples of every kind he collected; and on one occasion, when preparing his humble meal, a heavy black stone was employed to form a pan of the fireplace. The fire was more intense than usual, and a stream of beautiful white metal flowed out of the fire. Great was the joy of the saint; he perceived that God, in His goodness, had discovered to him something which would be useful to man. St Perran communicated his discovery to St Chiwidden. [a] They examined the shores together, and Chiwidden, who was learned in the learning of the East, soon devised a process for producing this metal in large quantities. The two saints called the Cornish men together. They told them of their treasures, and they taught them how to dig the ore from the earth, and how, by the agency of fire, to obtain the metal. Great was the joy in Cornwall, and many days of feasting followed the announcement. Mead and metheglin, with other drinks, flowed in abundance; and vile rumour says the saints and their people were rendered equally unstable thereby. "Drunk as a Perraner," has certainly passed into a proverb from that day.
The riot of joy at length came to an end, and steadily, seriously, the tribes of
Perran and St Agnes set to work. They soon accumulated a vast quantity of this precious metal; and when they carried it to the southern coasts, the merchants from Gaul eagerly purchased it of them. The noise of the discovery, even in those days, rapidly extended itself; and even the cities of Tyre learned that a metal, precious to them, was to be obtained in a country far to the west. The Phoenician navigators were not long in finding out the Tin Islands; and great was the alarm amidst the Cornish Britons lest the source of their treasure should be discovered. Then it was they intrenched the whole of St Agnes beacon; then it was they built the numerous hill castles which have puzzled the antiquarian; then it was that they constructed the rounds,--amongst which the Perran Round remains as a remarkable example, -- all of them to protect their tin ground. So resolved were the whole of the population of the district to preserve the tin workings, that they prevented any foreigner from landing on the mainland, and they established tin markets on the islands on the coast.  [b]
[a] See Appendix S.
[b] See Appendix T


{{ partial "header.html" . }}
OWASP SAMM and the upcoming SAMM 2.0 release is the open source software security maturity model used to develop secure software for IT, application and software security technologists.
We are seeking sponsors to support OWASP SAMM. All proceeds from the sponsorship support the mission of the OWASP Foundation and the further development of SAMM. Supporting the project drives the funding for research grants, SAMM hosting, tools, templates, documents, promotion, and more.
By sponsoring SAMM, you not only support an important and flagship OWASP project, you will also get visibility during the next SAMM Summit (part of the Open Security Summit 2019) and recognition on our website and the next release of SAMM (version 2.0).
For more information: contact info@owaspsamm.org.


Week 1: January 9
Topics
- Introduction to the course
- Cases of scientific misconduct
- What is reproducibility? Are we in a crisis?
- Lecture notes. HTML. Markdown. PDF.
- Activity notes. HTML. Markdown. PDF.
Readings/webinars
- Cases of scientific misconduct (read 1 of 2)
- Reproducibility (read 2 of 3)
- Open Science Collaboration. (2015). Estimating the reproducibility of psychological science. Science, 349(6251), aac4716–aac4716. https://doi.org/10.1126/science.aac4716
- Gilbert, D. T., King, G., Pettigrew, S., & Wilson, T. D. (2016). Comment on “Estimating the reproducibility of psychological science.” Science, 351(6277), 1037–1037. https://doi.org/10.1126/science.aad7243
- Goodman, S. N., Fanelli, D., & Ioannidis, J. P. A. (2016). What does research reproducibility mean? Science Translational Medicine, 8(341), 341ps12–341ps12. https://doi.org/10.1126/scitranslmed.aaf5027
- Supplemental (not required) references.
Week 2: January 16
NO CLASS MEETING
Week 3: January 23
Readings/webinars
- Munafò, M. R., Nosek, B. A., Bishop, D. V. M., Button, K. S., Chambers, C. D., Sert, N. P. du, … Ioannidis, J. P. A. (2017). A manifesto for reproducible science. Nature Human Behaviour, 1, 0021. https://doi.org/10.1038/s41562-016-0021. (Required)
- Reproducible workflows (Optional)
- Tidy data (Optional)
- File naming (Optional)
- Spreadsheets (Optional)
Week 4: January 30
Topics
- Registration and registered reports
- Introduction to RStudio and R Markdown
- RStudio for research
- Lecture notes. HTML. Markdown. PDF.
- Activity notes. HTML. Markdown. PDF.
Readings/webinars
- Pre-registration and registered reports
- Chambers, C., Munafò, M., & signatories, more than 80. (2013, June 5). Trust in science would be improved by study pre-registration. The Guardian. Retrieved from https://www.theguardian.com/science/blog/2013/jun/05/trust-in-science-study-pre-registration
- Registered Reports. (n.d.). Retrieved January 24, 2017, from https://cos.io/rr/?_ga=1.163722943.1251838540.1458403228
- Mathot, S. (2013, March 26). The pros and cons of pre-registration in fundamental research. Retrieved January 24, 2017 from http://www.cogsci.nl/blog/miscellaneous/215-the-pros-and-cons-of-pre-registration-in-fundamental-research
- (Optional) Frank, M. (2016, July 22). Preregister everything. http://babieslearninglanguage.blogspot.com/2016/07/preregister-everything.html
- R Markdown exercise
- Optional
Week 6: February 13
Topics
- Simulation as a tool for reproducible and transparent science
- Visualization tools in R
- Lecture notes. HTML. Markdown. PDF.
- Activity notes. HTML. Markdown. PDF.
Week 7: February 20
Readings/webinars (recommended)
Week 8: February 27
NO CLASS
Spring Break March 6 - 10
NO CLASS
Week 9: March 13
Readings/webinars
- de Leeuw, J.R. (2015). jsPsych: A JavaScript library for creating behavioral experiments in a Web browser. Behavior Research Methods, 47(1), 1-12. doi:10.3758/s13428-014-0458-y
Week 10: March 20
Topics
- Python, the other language of data science
- Intro to Jupyter
- Jupyter for research, teaching, talks
- Lecture notes. HTML. Markdown.
- Week 10 Quest Template. HTML Markdown.
Week 11: March 27
Topics
- Reproducible neuroscience
- Reproducible practices in SPSS, Matlab, MS Office, etc.
- Lecture notes. HTML. Markdown.
- Week 11 Quest Template. HTML Markdown.
Readings
- Gilmore, R. O., Diaz, M., Wyble, B., & Yarkoni, T. (2017, February 10). Progress toward openness, transparency, and reproducibility in cognitive neuroscience. Retrieved from http://osf.io/yt3s4.
- Ascoli, G. A. (2006). The ups and downs of neuroscience shares. Neuroinformatics, 4(3), 213–215. https://doi.org/10.1385/NI:4:3:213
- Szucs, D., & Ioannidis, J. P. (2016). Empirical assessment of published effect sizes and power in the recent cognitive neuroscience and psychology literature. bioRxiv, 071530. https://doi.org/10.1101/071530
Week 12: April 3
Topics
- Where to share?
- Publishing data
- Your open science portfolio
- Funder policies
- Lecture notes. HTML. Markdown.
- Week 12 Quest Template. HTML Markdown.
Week 13: April 10
Topics
- The future of open science: The whole elephant
Week 14: April 17
Topics
- Preparation for student projects
Week 15: April 24
Topics
- Student project presentations
CC0 1.0 Universal License


Back
I did not take the traditional path to becoming a data scientist.
I studied ethics, politics, and economics and earned a PhD in Education
at Stanford.
My dissertation was on studying friend networks.
This was when I realized that I needed to learn computer science.
Click on the school to get resources to get started on data science.


Password Generator
Length:
Level 1: Letters
Level 2: Letters and Numbers
Level 3: Letters, Numbers, and Symbols
Generate!
Clear List


@* * Copyright 2023 HM Revenue & Customs * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. *@ @import include._ @import uk.gov.hmrc.thirdpartydeveloperfrontend.controllers.checkpages.TermsAndConditionsForm @import uk.gov.hmrc.thirdpartydeveloperfrontend.domain.models.views.BackButtonWithJavaScript @import play.api.data.Form @import uk.gov.hmrc.thirdpartydeveloperfrontend.domain.models.applications.Application @import uk.gov.hmrc.thirdpartydeveloperfrontend.domain.models.developers.DeveloperSession @import views.html.helper.CSPNonce @this(devMain: DevMainWithFormErrors) @(app: Application, form: Form[TermsAndConditionsForm], submitAction: Call)(implicit request: play.api.mvc.Request[Any], loggedIn: DeveloperSession, messages: Messages, applicationConfig: ApplicationConfig, navSection: String = "credentials") @pageHeading = @{ "Does your application have terms and conditions?" } @devMain( form, title = pageHeading, userFullName = loggedIn.loggedInName, back = BackButtonWithJavaScript, developerSession = Some(loggedIn) ) {
We'll show this link to users when you request access to their data. We recommend you have this statement in your software.
You can change this at any time.
@helper.form(action = submitAction, Symbol("class") -> "form") { @helper.CSRF.formField


Here's a little bit about us.
FundUs is an upcoming idea which connects altruists and social workers, who would like to bring change to a society by working on impacting projects for example making water accessible to a village by digging a borewell; but are struggling to get funds. Essentially, it is a kickstarter for social workers.
Social workers post their ideas and give an estimate on how much it is estimated to cost. Altruists browse through the list of projects and choose the project that is in line with their values and fund it. The funding could be ranging from as small as $5 (a small meal price) or hefty large sums.
Altruists are encouraged to donate more by getting rewards. Social workers reliability should be rate based on their execution and effectiveness on their earlier projects.
Our site is currently under construction, as we are a new venture, but we'll be up and running within no time!
To get notified when our site is functional, click below and subscribe to our mailing list for the latest updates.
Subscribe To Us.


The main button has a height of 32px
Add class taller
to the button to give it a height of 40px
Add class taller
to the button to give it a height of 48px
Add class dark
to a disabled basic button to make it look good on dark backgrounds
Automatically set new group to Self-Manage
Automatically set new group to Self-Manage
Automatically set new group to Self-Manage
Automatically set new group to Self-Manage
Myrtie Ryan
Pauline Wong
Gerald Gibson
Add an owner to this group to enable the Self-Managed mode
Add an owner to this group to enable the Self-Managed mode
Add an owner to this group to enable the Self-Managed mode
Add class border
to an input to add a border to it


HOME
MENU
RECEITAS
CONTATOS
Menu
Starters
Chestnut and Mushroom Goujons
Goat Cheese Salad
Honey Soy Chicken Kebabs
Seafood Salad
Back to top
Main courses
Spinach and Ricotta Roulade
Beef Tournados with Mustard and Dill Sauce
Roast Chicken Salad
Icelandic Cod with Parsley Sauce
Mushroom Wellington


@* * Copyright 2021 HM Revenue & Customs * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. *@ @import models.ui._ @import uk.gov.hmrc.hmrcfrontend.views.html.components._ @(name: String, option: models.ui.Text, idx: Int, exclusive: Boolean, form: Form[_])(implicit request: Request[_], messages: Messages, ctx: PageContext) @checkboxIdentifier(name:String, idx: Int) = @{s"$name-$idx"} @checkboxName(name:String, idx: Int) = @{s"$name[$idx]"} @itemChecked(idx: Int) = @{form.data.valuesIterator.exists(_ == idx.toString)}


Album example
Something short and leading about the collection below—its contents, the creator, etc. Make it short and sweet, but not too short so folks don’t simply skip over it entirely.
Add some information about the album below, the author, or any other background context. Make it a few sentences long so folks can pick up some informative tidbits. Then, link them off to some social networking sites or contact information.
Something short and leading about the collection below—its contents, the creator, etc. Make it short and sweet, but not too short so folks don’t simply skip over it entirely.


For help or more information about configuration and to setup Action on Google: Domoticz Google Assistant wiki or at Discord
bash <(curl -s https://raw.githubusercontent.com/DewGew/dzga-installer/master/install.sh)
Nicknames, rooms, ack and report_state can also be set in the Domoticz user interface. New function hide ,hide devices from Google Assistant still but can still see this in UI as type 'Hidden'. Simply put the device configuration in the device description, in a section between 'voicecontrol' tags like:
<voicecontrol>
nicknames = Kitchen Blind One, Left Blind, Blue Blind
room = Kitchen
ack = True
report_state = False
hide = True
</voicecontrol>
Other parts of the description are ignored, so you can still leave other useful descriptions. Every variable should be on a separate line. If there is no such configuration in the Domoticz device it will still try the config:
Device_Config:
123:
ack: true
room: 'Livingroom'
nicknames:
- 'Celing light'
- 'Smart light'
234:
room: 'Bedroom'
report_state: false
hide: true
Scene_Config:
3:
room: 'Kitchen'
nicknames:
- 'Cool scene'
Function to change device type, icon and some behavior depending on the device (e.g open/close instead of on/off).
<voicecontrol>
or in config.yaml:
devicetype = oven
</voicecontrol>
Device_Config:
456:
devicetype: 'oven'
Light or Switch devices can choose types from:
light, ac_unit, bathtub, coffeemaker, dishwasher, dryer, fan, heater, kettle, media,
.
microwave, outlet, oven, speaker, switch, vacuum, washer, waterheater, window, door, gate, garage
For heater, kettle, waterheater, oven you can still use merge_thermo_idx
to merge thermostat to control temperature.
Door Contact devices can choose window, gate or garage.
Blind devices can choose window, door, gate or garage.
Selector devices can choose only vacuum
For thermostat devices only.
Function to merge actual temperature from another temp device or modes from selector device to thermostat. Merged device will automaticly hidden. Levels from selector device supported is: Off - Heat - Cool - Auto - Eco.
Bug Thermostat idx must be a number above Temp/selector idx.
<voicecontrol>
or in config.yaml:
actual_temp_idx = 123
selector_modes_idx = 234
</voicecontrol>
Device_Config:
456:
actual_temp_idx: '123'
selector_modes_idx: '234'
For heater/waterheater/kettle/oven devices only.
Function to merge thermostat device to control temperature. Merged device will automaticly hidden.
Bug Thermostat idx must be a number above Temp/selector idx.
<voicecontrol>
or in config.yaml:
merge_thermo_idx = 123
</voicecontrol>
Device_Config:
456:
merge_thermo_idx: '123'
User-friendly name for the level in your language.. See: https://developers.google.com/actions/smarthome/traits/#supported-languages
Armhome:
level_synonym:
- 'zuhause und bewachen'
- 'Level 1'
- 'SL1'
lang: 'de'
Armaway:
level_synonym:
- 'weg und bewachen'
- 'Level 2'
- 'SL2'
lang: 'de'


A lot of cryptographic applications are password-based, e.g. login (authentication with passwords). A dictionary attack is a simple method of attacking such applications. The idea behind a dictionary attack is that the choice of passwords is not evenly distributed, as a rule. Typically, the user chooses a familiar term as the password, as such passwords are easy to remember. However, one should be aware that a modern computer can try out over a million terms from a dictionary in a matter of only a second. A password that is chosen from the dictionary is therefore a major security weakness. More sophisticated dictionary attack programs combine attacks from the dictionary with one or two other ASCII characters, enabling them to crack better selected passwords such as
not2bad
4you
KAT.ZE
Recommendation:
A good password has a length of at least eight characters, is alphanumeric and contains a mixture of upper and lower case letters.
Examples:
Almost good:
wInTer89
biLly2yoU
Better:
1FiaaoccbfothpEodkoa1
Further information about attacks on cryptosystems can be found on the help page Examples of different kinds of attacks.


#include "superlu_zdefs.h"
Defines | |
| #define | ISEND_IRECV |
Functions/Subroutines | |
| void | pzgstrs1 (int_t n, LUstruct_t *LUstruct, gridinfo_t *grid, doublecomplex *x, int nrhs, SuperLUStat_t *stat, int *info) |
-- Distributed SuperLU routine (version 2.3) -- Lawrence Berkeley National Lab, Univ. of California Berkeley. October 15, 2008
Modified: Feburary 7, 2001 use MPI_Isend/MPI_Irecv October 2, 2001 use MPI_Isend/MPI_Irecv with MPI_Test October 15, 2008 use fewer MPI_Reduce
| #define ISEND_IRECV |
| void pzgstrs1 | ( | int_t | n, | |
| LUstruct_t * | LUstruct, | |||
| gridinfo_t * | grid, | |||
| doublecomplex * | x, | |||
| int | nrhs, | |||
| SuperLUStat_t * | stat, | |||
| int * | info | |||
| ) |
Purpose =======
PZGSTRS1 solves a system of distributed linear equations
op( sub(A) ) * X = sub( B )
with a general N-by-N distributed matrix sub( A ) using the LU factorization computed by PZGSTRF.
This routine is used only in the iterative refinement routine pzgsrfs_ABXglobal, assuming that the right-hand side is already distributed in the diagonal processes.
Arguments =========
n (input) int (global) The order of the system of linear equations.
LUstruct (input) LUstruct_t* The distributed data structures to store L and U factors, and the permutation vectors. See superlu_ddefs.h for the definition of 'LUstruct_t' structure.
grid (input) gridinfo_t* The 2D process mesh.
x (input/output) doublecomplex* On entry, the right hand side matrix. On exit, the solution matrix if info = 0;
NOTE: the right-hand side matrix is already distributed on the diagonal processes.
nrhs (input) int (global) Number of right-hand sides.
stat (output) SuperLUStat_t* Record the statistics about the triangular solves; See SuperLUStat_t structure defined in util.h.
info (output) int* = 0: successful exit < 0: if info = -i, the i-th argument had an illegal value


You will be asked to answer your questions should you meet with an
Emergency Support Services (ESS) Responder again.
If you are unable to answer your security questions, you will be
asked to provide government issue identification to confirm your
identity.
Tips for creating strong security questions:
1. Choose answers that are easy to remember, but difficult for
others to guess.
2. Try not to choose questions that you have answered on public
sites or social media.
Please select 3 security questions from the list of options below.
Please Note: Your answers need to be greater than 2 characters and
should not include any special characters.
You may include numbers and letters. Your security answers are not
case sensitive.


The dataset uswages
is drawn as a sample from the Current Population Survey in 1988.
Hints: Useful R functions: data(), lm(), summary(), residuals(), fitted(), which.max(), mean(), median(), cor(), plot(). Note that the experience variable has some negative values which most likely indicate missing data. Those observations should be removed from the analysis.
1. Fit a regression model with weekly wages as the response and years of education and experience as predictors. Present the output.
Regressing weekly wages on years of experience and education gives the following output:
(Table)
1% level. This indicates that a one year increase in education, on average will increase weekly wages by $51.87. A one year increase in work experience will increase weekly wages by $9.33.
2. What percentage of variation in the response is explained by these predictors? (Percentage variance explained is the same as coefficient of determination).
3. Which observation has the largest (positive) residual? Give the case number.
4. Compute the mean and median of the residuals. Explain what the difference between the mean and the median indicates.
5. For two people with the same education and one year difference in experience, what would be the difference in predicted weekly wages?
6. Compute the correlation of the residuals with the fitted values. Plot residuals against fitted values. Explain the value of this correlation using the geometric (projection) interpretation of least squares.
Using R, create a \(10\times3\) matrix \(X\):
\[\begin{align*} X= & \left(\begin{array}{ccc} 1 & 2 & -2\\ 1 & -1 & -2\\ 1 & 3 & -2\\ 1 & 3 & 3\\ 1 & 2 & 3\\ 1 & 1 & 3\\ 1 & 0 & 0\\ 1 & 0 & 0\\ 1 & -1 & 0\\ 1 & 0 & 1 \end{array}\right) \end{align*}\]
Now create a \(3\times1\) matrix \(\beta\) whose entries are 1, -1, and 2. Next create a \(10\times1\) matrix \(\epsilon\) whose entries are IID standard normal (useful command: rnorm
). Finally, set \(Y=X\beta+\epsilon\).
1. Calculate \((X'X)^{-1}X'Y\) to estimate \(\beta\). What do you get? (Don’t use the lm
command. Do the computation directly. You can use the solve
command to compute a matrix inverse.)
2. What is the true variance of \(\hat{\beta}\)? (Remember that the variance of \(\hat{\beta}\) is a \(3\times3\) matrix.) (I say the “true” variance because, in this example, we know the true value of \(\sigma^2\), and so don’t need to estimate it using the residuals.)
3. Use the residuals to estimate \(\sigma^2\). What do you get?
4. Now create a new \(\epsilon\) and re-estimate \(\beta\). Do this 1,000 times, and save all the answers in memory. Make a histogram of the 1,000 values of \(\hat{\beta_1}\). Do the same for \(\hat{\beta_2}\) and \(\hat{\beta_3}\). Also calculate the variance for each of these. Do your answers match with question 2?
5. Once again, re-create \(\epsilon\) 1,000 times. Each time estimate \(\beta\), and also estimate \(\sigma^2\), too. Make a histogram of your 1,000 values of \(\hat{\sigma^2}\). Based on the histogram, does it look like \(\hat{\sigma^2}\) provides a reliable estimate of \(\sigma^2\)? Why do you think this is?
6. Repeat (4) and (5), but instead of using a normal distribution for \(\epsilon\) use some other distribution that also has expectation 0 and variance 1. Do your answers change much? Explain. You might want to experiment with a few different distributions.


pipe()
is always the beginning of the chain of operators.
The operators, in turn, are imported from the package 'rxjs/operators'
.
pipe()
. The modern but convoluted version allows for a better tree shaking. In other words:
your program is smaller and faster.


| rounding {pbdDMAT} | R Documentation |
Extensions of R rounding functions for distributed matrices.
## S4 method for signature 'ddmatrix' round(x, digits = 0) ## S4 method for signature 'ddmatrix' ceiling(x) ## S4 method for signature 'ddmatrix' floor(x)
x |
numeric distributed matrix |
digits |
integer indicating the number of decimal places
( |
Rounding to a negative number of digits means rounding to a power of ten, so
for example round(x, digits = -2)
rounds to the nearest hundred.
Returns a distributed matrix.
## Not run: # Save code in a file "demo.r" and run with 2 processors by # > mpiexec -np 2 Rscript demo.r library(pbdDMAT, quiet = TRUE) init.grid() # don't do this in production code x <- matrix(1:9, 3) x <- as.ddmatrix(x) y <- ceiling(x/3) print(y) finalize() ## End(Not run)


This is a app that scrapes www.terrascet.com urls, and stores the time stamp of pulls. On the left: New Scrape will automatically download a csv file, API is the latest pull, and History brings up pull history. Each new visit and scrape auto updates Show Scrape.


This is a demo of a webpage that will: 1. Accept user input for a service call 2. Take that user input and add it to a jaxrs api/request 3. It will persist the user input object using GRID into a Cassandra DB 4. Return the response from the jaxrs api/request with a message for the user including a current GRID of the request/response


AWS Auto Scaling ScalingPlan PredefinedLoadMetricSpecification
The PredefinedLoadMetricSpecification
property type specifies a predefined load
metric for predictive scaling to use with AWS Auto Scaling.
PredefinedLoadMetricSpecification
is a property of the ScalingInstruction
property type.
Syntax
To declare this entity in your AWS CloudFormation template, use the following syntax:
JSON
{ "PredefinedLoadMetricType" :
String
, "ResourceLabel" :String
}
YAML
PredefinedLoadMetricType:
String
ResourceLabel:String
Properties
PredefinedLoadMetricType
-
The metric type. For more information, see PredefinedLoadMetricSpecification in the AWS Auto Scaling API Reference.
Required: Yes
Type: String
Update requires: No interruption
ResourceLabel
-
Identifies the resource associated with the metric type. You can't specify a resource label unless the metric type is
ALBRequestCountPerTarget
and there is a target group for an Application Load Balancer attached to the Auto Scaling group.The format is app/<load-balancer-name>/<load-balancer-id>/targetgroup/<target-group-name>/<target-group-id>, where:
-
app/<load-balancer-name>/<load-balancer-id> is the final portion of the load balancer ARN.
-
targetgroup/<target-group-name>/<target-group-id> is the final portion of the target group ARN.
Required: No
Type: String
Update requires: No interruption
-


--- layout: post title: Beatbox no Google Translator published: true ---
Clique no link e depois em Listen =p


Frosan1450.github.io
View and Download Cisco SG 200-08 quick start manual online. 200 Series 8-Port Smart. SG 200-08 Switch pdf manual download. Also for: Sg 200-08p. Cisco Sg 200 Serie Administratorhandbuch. CISCO SG 200-08 QUICK START MANUAL Pdf Download.


This scenario demostrates how to filter profiles based on profile query options.


This site is typically for the greenbits team to stay in touch with each other.
Feel free to check out some cool pages at greenbits.com though!
We want to help you in any way we can. These links might help you if you're in a bind. If you're still stuck, Contact Us.


Last change: Frank Naumann<EMAIL_ADDRESS>Mon Dec 18 10:00:00 2000 UTC
- first release for Sparemint
Description:
This is a simple terminal mode program for configuring the directories in the X font server's path. It is mostly intended to be used `internally' by RPM when packages with fonts are added or removed, but it may be useful as a stand-alone utility in some instances.
Files:
-rwxr-xr-x 1 root root 107745 Dec 18 2000 /usr/sbin/chkfontpath
-rw-r--r-- 1 root root 875 Dec 18 2000 /usr/share/man/man8/chkfontpath.8.gz


qrLMM: Quantile Regression for Linear Mixed-Effects Models
Quantile regression (QR) for Linear
Mixed-Effects Models via the asymmetric Laplace distribution (ALD).
It uses the Stochastic Approximation of the EM (SAEM) algorithm for
deriving exact maximum likelihood estimates and full inference results
for the fixed-effects and variance components.
It also provides graphical summaries for assessing the algorithm
convergence and fitting results.
| Version: |
1.3 |
| Imports: |
matrixcalc, mvtnorm, ghyp, quantreg, psych, tcltk, ald |
| Published: |
2017-03-21 |
| Author: |
Christian E. Galarza and Victor H. Lachos |
| Maintainer: |
Christian E. Galarza <cgalarza88 at gmail.com> |
| License: |
GPL-2 | GPL-3 [expanded from: GPL (≥ 2)] |
| NeedsCompilation: |
no |
| CRAN checks: |
qrLMM results |
Downloads:
Reverse dependencies:
Linking:
Please use the canonical form
https://CRAN.R-project.org/package=qrLMM
to link to this page.


India preparing for nationwide NRC, but no-one should be worried, says Amit Shah
by bdnews24.comIndian Home Minister Amit Shah has announced that a citizen's list or National Register for Citizens (NRC) akin to the exercise in Assam will be carried out across the country.
But he asserted that 'no-one from any religion should be worried'.
Speaking in the Rajya Sabha, the minister said the NRC is 'just a process' to get everyone under the citizen's list on Wednesday, according to local media.
"The Assam exercise was carried out under a Supreme Court order. NRC will be carried out across the country, will be done in Assam again at the time, no one from any religion should be worried," Indian news channel NDTV quotes him as saying.
The Assam citizen's list, put out in August, left out 2 million, effectively rendering them 'stateless'.
Most of these people failed to produce adequate documents to prove their citizenship claims, according to officials. However, the government said they will not be declared illegal immediately as they have the option of appealing to Foreigners' Tribunals and subsequently approach the courts.
The Home Minister said people whose names did not appear on the NRC could approach tribunals and the Assam government will even provide financial help.
Earlier, Shah had said at a rally in Kolkata that the NRC was a matter of national security and 'no country can run smoothly under the weight of so many intruders'.
Accusing West Bengal's Chief Minister Mamata Banerjee of spreading lies about 'millions of Hindus' having to leave Bengal, he said, "I want to assure Hindu, Sikh, Jain, Buddhist and Christian refugees: you will not be forced to leave India by the government.
"Don't believe rumours. Before NRC, we will bring the Citizenship Amendment Bill, which will ensure these people get Indian citizenship."


Cool Links
Reddit -"Front page of the internet".  This website allows you to customize what content you view based on your interests, and then ranks the submissions by user vote!
Drinkify- Type in the music you're listening to, and the website will automatically recommend a drink!
StackOverflow- A community of programmers who submit questions and answer one-anothers questions about coding


Package for implementations of Pix Captchas : Captcha with pics chalenges.
It defines three abstract classes and a concrete one:
- PixCaptcha : ok we got it!
- PixCaptchaFactory : Base class for PixCaptcha generation
- PixCaptchaEngine : Base class for PixCaptchaFactory management
- DefaultPixCaptchaEngine : very simple implementation of the class below, using an array of PixCaptchaFactory to be
constructed and randomly returns one.


---
layout: layouts/post.njk
title: "Using Material Density on the Web"
permalink: /material-density/
date: '2020-01-16'
comments: true
tags:
- Material
- Material Design
- Theme
description: "The latest update to our density guidelines includes a new systematic approach to applying density and spacing in digital products."
link-out: https://medium.com/google-design/using-material-density-on-the-web-59d85f1918f0
---
If you are not redirected, please visit this think!


| Agents: | ||
| Agent speed: | ||
| Repulsion zone: | ||
| Alignment zone: | ||
| Attraction zone: | ||
| Attraction angle: | ||
| Repulsion strength: | ||
| Alignment strength: | ||
| Attraction strength: | ||
| Gravitation strength |
| Agents: | ||
| Agent speed: | ||
| Repulsion zone: | ||
| Alignment zone: | ||
| Attraction zone: | ||
| Attraction angle: | ||
| Repulsion strength: | ||
| Alignment strength: | ||
| Attraction strength: | ||
| Gravitation strength |


{% extends 'marketplace/proj.html' %} {% block tabcontents %} {% load markdown_deux_tags %}
Thank you for your interest in this project! Please fill out this form so the project owners can review your application and your volunteering background.
By applying to this volunteer position you agree to the below terms of this project:
{{ project.developer_agreement|markdown }}
{% endif %}


Import Clinic List
Close
Data Imported from VistA
Are you sure you want to import clinic lists data from VistA?
Yes
Cancel
Import Clinical Reminder List
Close
Data Imported from VistA
Are you sure you want to import Clinical Reminder Lists from VistA?
Yes
Cancel
Import Notes Titles List
Close
Data Imported from VistA
Are you sure you want to import Notes Titles List from VistA?
Yes
Cancel
Close
Average Scores for Veterans by Clinic
Average
Depression
Score
14.75
Moderate
PHQ-9
PCL-C
Period: From 09/10/2014 to 02/01/2015
VeteranOne, 1234
LI 2N PTSD Group
02/01/2015
LI 2N PTSD GROUP
6 - Mild
01/14/2015
LI 2N PTSD GROUP
15 - Moderate
10/10/2014
LI 2N PTSD GROUP
15 - Moderate
09/10/2014
LI 2N PTSD GROUP
23 - Severe
Score History by VistA Clinic
Average
Post-traumatic
Stress Disorder
Score
11.25
Mild
02/01/2015
LI 2N PTSD GROUP
6 - Mild
01/14/2015
LI 2N PTSD GROUP
15 - Moderate
10/10/2014
LI 2N PTSD GROUP
15 - Moderate
09/10/2014
LI 2N PTSD GROUP
23 - Severe
Score History by VistA Clinic
Average
Depression
Score
14.75
Moderate
PHQ-9
PCL-C
VeteranTwo, 2222
02/01/2015
LI 2N PTSD GROUP
6 - Mild
Score History by VistA Clinic
Average
Post-traumatic
Stress Disorder
Score
11.25
Mild
02/01/2015
LI 2N PTSD GROUP
6 - Mild
01/14/2015
LI 2N PTSD GROUP
15 - Moderate
10/10/2014
LI 2N PTSD GROUP
15 - Moderate
09/10/2014
LI 2N PTSD GROUP
23 - Severe
Score History by VistA Clinic


Module: Octokit::Authentication
| Relationships & Source Files | |
| Extension / Inclusion / Inheritance Descendants | |
|
Included In:
| |
| Defined in: | lib/octokit/authentication.rb |
Overview
Authentication
methods for Client
Constant Summary
-
FARADAY_BASIC_AUTH_KEYS =
# File 'lib/octokit/authentication.rb', line 7
In Faraday 2.x, the authorization middleware uses new interface
if Gem::Version.new(Faraday::VERSION) >= Gem::Version.new('2.0') %i[authorization basic] else [:basic_auth] end
Instance Attribute Summary
-
#application_authenticated? ⇒ Boolean
readonly
Indicates if the client has OAuth Application client_id and secret credentials to make anonymous requests at a higher rate limit.
-
#basic_authenticated? ⇒ Boolean
readonly
Indicates if the client was supplied Basic Auth username and password.
-
#bearer_authenticated? ⇒ Boolean
readonly
Indicates if the client was supplied a bearer token.
-
#token_authenticated? ⇒ Boolean
readonly
Indicates if the client was supplied an OAuth access token.
-
#user_authenticated? ⇒ Boolean
readonly
Indicates if the client was supplied an OAuth access token or Basic Auth username and password.
Instance Method Summary
- #login_from_netrc private
Instance Attribute Details
#application_authenticated? ⇒ Boolean
(readonly)
Indicates if the client has OAuth Application client_id and secret credentials to make anonymous requests at a higher rate limit
# File 'lib/octokit/authentication.rb', line 55
def application_authenticated? !!(@client_id && @client_secret) end
#basic_authenticated? ⇒ Boolean
(readonly)
Indicates if the client was supplied Basic Auth username and password
# File 'lib/octokit/authentication.rb', line 19
def basic_authenticated? !!(@login && @password) end
#bearer_authenticated? ⇒ Boolean
(readonly)
Indicates if the client was supplied a bearer token
# File 'lib/octokit/authentication.rb', line 36
def bearer_authenticated? !!@bearer_token end
#token_authenticated? ⇒ Boolean
(readonly)
Indicates if the client was supplied an OAuth access token
# File 'lib/octokit/authentication.rb', line 28
def token_authenticated? !!@access_token end
#user_authenticated? ⇒ Boolean
(readonly)
Indicates if the client was supplied an OAuth access token or Basic Auth username and password
# File 'lib/octokit/authentication.rb', line 45
def user_authenticated? basic_authenticated? || token_authenticated? end
Instance Method Details
#login_from_netrc (private)
[ GitHub ]# File 'lib/octokit/authentication.rb', line 61
def login_from_netrc return unless netrc? require 'netrc' info = Netrc.read netrc_file netrc_host = URI.parse(api_endpoint).host creds = info[netrc_host] if creds.nil? # creds will be nil if there is no netrc for this end point octokit_warn "Error loading credentials from netrc file for #{api_endpoint}" else creds = creds.to_a self.login = creds.shift self.password = creds.shift end rescue LoadError octokit_warn 'Please install netrc gem for .netrc support' end


|
||||||||||
| PREV NEXT | FRAMES NO FRAMES |
| Packages that use Receiver | |
|---|---|
| ussr.comm | An abstract communications model comprising transmitters, receivers, and packets. |
| ussr.model | An abstract model of a modular robot to be used from the controller. |
| ussr.physics.jme | A physics simulation implementation based on JME (JMonkeyEngine). |
| ussr.samples.atron | Simulation examples based on the ATRON modular self-reconfigurable robot. |
| ussr.samples.mtran | Preliminary simulations based on the M-TRAN modular self-reconfigurable robot |
| ussr.samples.odin | Defintion of the Odin modular, reconfigurable robot. |
| ussr.samples.white | Simple and very preliminary example of a reconfigurable robot with hinge-joints at the edges. |
| Uses of Receiver in ussr.comm |
|---|
| Classes in ussr.comm that implement Receiver | |
|---|---|
class |
GenericReceiver
An abstract implementation of the Receiver interface. |
class |
IRReceiver
An infrared receiver, which in currently means that it has a spreading angle of 30 degrees. |
class |
RadioReceiver
A radio omnidirectional reception device |
class |
WiredReceiver
A wired receiver, is always assumed to be in range once connected. |
| Methods in ussr.comm with parameters of type Receiver | |
|---|---|
boolean |
WiredTransmitter.canSendTo(Receiver receiver)
|
boolean |
Transmitter.canSendTo(Receiver receiver)
Test whether this transmitter can transmit to (is within range of) the designated receiver device |
boolean |
RadioTransmitter.canSendTo(Receiver receiver)
|
boolean |
IRTransmitter.canSendTo(Receiver receiver)
|
void |
PacketReceivedObserver.packetReceived(Receiver device)
Notification method called by a receiver to which this observer has been subscribed whenever a packet arrives |
| Uses of Receiver in ussr.model |
|---|
| Methods in ussr.model that return types with arguments of type Receiver | |
|---|---|
java.util.List<Receiver> |
Module.getReceivers()
|
| Methods in ussr.model with parameters of type Receiver | |
|---|---|
void |
Module.addReceivingDevice(Receiver receiver)
Add a communication receiver to the module |
| Uses of Receiver in ussr.physics.jme |
|---|
| Methods in ussr.physics.jme that return Receiver | |
|---|---|
static Receiver |
JMEGeometryHelper.createReceiver(Module module,
Entity hardware,
ReceivingDevice receiver)
|
| Uses of Receiver in ussr.samples.atron |
|---|
| Methods in ussr.samples.atron with parameters of type Receiver | |
|---|---|
void |
ATRONController.packetReceived(Receiver device)
Called when a packet is received by the module |
| Uses of Receiver in ussr.samples.mtran |
|---|
| Methods in ussr.samples.mtran with parameters of type Receiver | |
|---|---|
void |
MTRANController.packetReceived(Receiver device)
|
| Uses of Receiver in ussr.samples.odin |
|---|
| Methods in ussr.samples.odin with parameters of type Receiver | |
|---|---|
void |
OdinController.packetReceived(Receiver device)
|
| Uses of Receiver in ussr.samples.white |
|---|
| Methods in ussr.samples.white with parameters of type Receiver | |
|---|---|
void |
WhiteController.packetReceived(Receiver device)
|
|
||||||||||
| PREV NEXT | FRAMES NO FRAMES |


Change
Change Bancroft
Please use full, thoughtful sentences
Name your petiton
Describe your petiton
What is your goal
Created by
Submit


 This was the longest show I’ve done. We went from 8pm to midnight EST. I’m exhausted, but people have stories and I’m trying to get them out into the world.
I’m not sure this is a complete list, but here’s who came on the show-
@wandrnrose7 (former Make a Minnow Winner and active minnow in PALnet)
@rodeo670 (future radio show host, singer, and Greeter for PALnet/MSP)
@clayboyn (jr moderator, philosopher, poet, and sexy voice master of cuddles)
@intuitivejakob (Formerly dead, and came back from it with some pretty wild stories and viewpoints to share from it)
@kubbyelizabeth (she promises to read aggrotica and turn it into kubrotica!)
@limabeing (talented singer, manager of the girl power server)
@pennsif (web developer and internet community builder)
@yabapmatt (top 50 witness, manager of the Steem Bot Tracker, and creator of the post promoter bot)
@sunravelme (aka sunravageme, talented writer, MAM winner, and lovely lady extraordinaire)
@rhondak (Cofounder of the Writer’s Block with @gmuxx)
@r0nd0n (station manager for mspwaves, sr moderator, and @freezepeach owner and operator)
Winners
@msp-waves won 50 steem. @intuitivejakob won the 250SP delegation!
This post was created on mspsteem.com. It’s a clone of steemit.com, but managed by @netuoso and has a 5% beneficiary to @minnowsupport.
This page is synchronized from the post: ‘Minnow Mayor Town Hall Show Recording- 4 Hours of Steemian Interviews!!!!’


Bills |
Dashboard
|
Users
|
Cashbacks
|
Outlets
|
Offers
|
Bills By Outlet
{{data.referee}}
Search By Referee
S No
code
Referee
phone
points
{{ $index+1 }}
{{ data.code }}
{{ data.referee }}
{{ data.phone }}
{{ data.points }}


Guevarra declines SC nomination: 'Still in love with DOJ'
'I very much want to join the judiciary in some future time, but I just want to make sure that I'm able to do something more for the DOJ,' says Guevarra
by Lian BuanSubscribe
Email Address
Newsletters
- Glenda Gloria's Take this Tuesday
- Huddle by Miriam Grace Go
- The Newsbreak Agenda by Chay Hofileña
- Sometimes, all you need is video by Lilibeth Frondoso


We are a Music and Audio post production service who will help you, your band or even someone you know to record their music video or symphonies.
We help you create the best quality in acoustics in our rooms with diffrent dimentions and diffrent longitutdes of noise.
We have helpen many of well known artist to make the best out of their audio recordings.


Configuration
Enable the Module
Configuration of you module is available in Settings >> Modules >> Interfaces >> Splash
Connect to your Splash Account
First, you need to create access keys for you module in our website. To do so, on Splash workspace, go to Servers >> Add a Server and note your id & encryption keys.
Then, enter the keys on Module's configuration (take care not to forget any character).
Setup default Parameters
To work correctly, this module need few parameters to be selected. These defaults values will be used upon objects creation/modification.
Default Language
Select which language package module should use for communication with Splash Server.
Default User
Select which user will be used for all actions executed by Splash Module.
We highly recommend creation of a dedicated user for Splash.
Be aware Splash Module will take care of Users rights policy, this user must have appropriated right on Dolibarr.
Default Warehouse / Bank Account / Payment Method
Define these values to be used if no value is specified.
Check results of Self-Tests
Each time you update your configuration, module will verify your parameters and ensure communication with Splash is working fine. Ensure all tests are passed... this is critical!


TIL: Understanding git rebase so it sticks
I endlessly misremember how to use git rebase. That ends today. Here are my notes to help me remember.
Rebase is traditionally documented as:
git rebase [--onto newbase] [upstream [branch]]
This is confusing for several reasons. A slight improvement is to rename the args:
git rebase [--onto target] [exclude [include]]
Where:
-
include
is the tip of the branch to be transplanted. If omitted, it defaults to the current branch. -
exclude
excludes all its ancestors from being transplanted. Hence the transplanted branch will have its tip atinclude
, and its base at the common ancestor ofinclude
andexclude
. If--onto
isn't specified,exclude
is also used as the destination for the transplant. -
target
is the place to transplant the branch to. If not specified, it defaults to the value ofexclude
.
Hence, a simple before and after:
o---o---o---o---o---o exclude \ 1---2---3 current branch or include
git rebase exclude [include]
exclude v o---o---o---o---o---1---2---3 current branch or include
See how the commits to be transplanted start at include
and go back to
the common ancestor of that and exclude
. Since --onto
isn't
specified, exclude
is also used as the transplant destination.
Or a more complex one:
o---o---o---o---o target \ o---o---o exclude \ 1---2 current branch or include
git rebase --onto target exclude [include]
target v o---o---o---o---o---1---2 current branch \ or include o---o---o ^ exclude
Again, the commits to be transplanted are defined by include
and
exclude
, but this time a separate destination is specified using
--onto
.


Truck Load
Efficient Truck Loading System
Issues
Solutions
Solutions
Truck + Mobile Hopper = 3 hours
Save your time
Save your money
Fast and efficient Mobile Hopper


10 Things I Hate About You.
Starring Julia Stiles, Heath Ledger and Joseph Gordon-Levitt. Directed By Gil Junger Running Time: 1 hour 37 minutes.
(Touchstone Pictures)
Shakespeare's 'The Taming of the Shrew' gets transferred to 90's America in this fun tale of romance. Julia Stiles plays Katarina Stratford, a bitchy 'hate chick' who's sister, Bianca (Larisa Oleynik) desperately wants to date boys. However, daddy (Larry Miller) won't let Bianca date until Katarina dates, and there isn't much chance of that happening. Enter Cameron (Gordon-Levitt) who desperately wants to date Bianca. Of course, he can't date Bianca until Katarina dates, so Cameron and friend Michael (David Krumholtz) set in forth a plan to get weirdo Patrick (Ledger) to date Katarina. Not everything, however, goes to plan.
Writers Karen McCullah Lutz and Kirsten Smith have delivered a script that makes Shakespeare actually quite good fun. The dialogue is funny, and the film goes along at a cracking pace. In fact, the film moves a little too fast, because some plot developments occur in a hurried way that aren't entirely believable. The largest casualty of the fast paced script is Katarina, who goes from independent chick to soppy, big eyed typical teenager in the space of seemingly a few days. The film also gives the current Hollywood saying, which is "if you don't conform, you won't be popular." A worrying trend. Still, the dialogue is fresh, and the jokes come out at a steady rate which gives the film a lively feel, and doesn't sound like the writings of a forty year old desperately trying to sound cool.
The actors are obviously having a good time with the material. Most of the cast have transferred from television, and are less brattish than some of the brat pack appearing on the screen at the moment. Stiles has great fun playing the easy role of being a bitch, and has fun running off the endless insults. Her characters a little flat, however, and her transformation is more than a little shaky. Still, she looks great, acts well, and handles the main role with ease. The hulking Ledger is good fun as the seemingly braindead Patrick, who's charm increases throughout the movie, until he becomes the most likeable character in a likeable cast. Gordon-Levitt suffers from the 90m.p.h script, and his character is therefore lacking. He gives a decent performance, but he never has enough time to truly shine on the screen. He also looks about thirteen years old. David Krumholtz is hilarious as the typical geek, and this, following his performance in Slums of Beverly Hills, shows he has a great comic talent. The pretty if empty Larisa Oleynik (also known as Alex Mack) makes the least impression in the movie, her performance is a bit boring and two dimensional. Allison Janey pops up in a bit role as the horny school counsellor, and like most bit roles gets all the best lines and disappears with her pay cheque.
The rest of 10 Things I Hate About You follows the standard teen flick formula. There's a glaring rock sound track featuring a good selection of rock tunes. There's the 'hip' school teacher, overplayed by Daryl Mitchell. There's a performance or four by a live band. And the film ends at a prom, and the weather is always good. It all seems a little too perfect, and for some people watching spoiled kids live out their spoiled lives holds no opinion. But it's better made here, and thankfully the characters are fully likeable.
10 Things I Hate About You is a worthwhile teen flick, directed with a bouncy flair by Gil Junger which gives the film a light, fluffy feel. The ending is obvious, the sentiment piled on. But 10 Things I Hate About You is a worthwhile movie that is good for a matinee.
RATING=*** OUT OF *****
A David Wilcock Review ©1999
DAVID WILCOCK<EMAIL_ADDRESS>Visit the Wilcock Movie Page for U.K film reviews! http://www.wilcock54.freeserve.co.uk
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


Happiest anniversary to the cutiest patootie!!!
To celebrate the amazing 1 year we have spent together, I have made a game!!!
It's a 2048 variation with a slight twist - each number corresponds to an event/stage of our relationship.
The lower numbers correspond to earlier events/stages, and the higher numbers the later.
And instead of the number a picture is displayed!! You need to guess what it corresponds to :).
How to play: YOU KNOW HOW TO PLAY 2048 RIGHT!!! If you don't, use your arrow keys to move the tiles. When two tiles with the same image touch, they merge into one!


List your e-commerce service in the Vendor Directory prolifically with testimonials from your best
clients, editorial mentions, links to your website’s lead generating assets, and key information
where and when online retailers are looking to spend on e-commerce technology this year.
Join our community of vendors to reach an engaged audience in need of your services
A breakdown of all necessary categories needed
to successfully run and grow your e-commerce business


Note the grey background. The image does not cover the whole region, but it's fully contained.
Note the ducks/geese at the bottom of the image. Most of the water is
cut, as well as a part of the sky. You don't see the complete image
anymore, but neither do you see any background color; the image
covers all of the <div>
.


I'm a creative and strategic software developer with a passion for data visualization, code optimization, architecture, and machine engineering. I am a 2020 graduate with a B.A. in Computer Science and Minor in Applied Math. I have working and project experience in full-stack development, but I'm open to new opportunities!
Building supportive microservices for the platform
Created a interactive story mapping application
Developed a full-stack web applications for Threat Prevention Cloud Services
Built a Google Chrome Extension that alerts users to malicious files, hashes, and links
Conducted biostatistics research by developing correlation models to find subgroups of ovarian cancer
Involvement: Computer Science Club, ACLU, Hillel (Engagement Fellow), Phi Kappa Psi, Harwood Leadership Seminar, and Technology Advising Comittee.
The Open Field Maze(OFM) is a common method to study loco-motor ability and anxiety-like behavior in rats, and thus is being used for various psychology research. Automating behavioral observations is necessary to enable researchers to study behavior in more reliable and consistent ways and allow experiments to be conducted in longer periods of time. Therefore, this project used the Mask-Region-based Convolutional Neural Network model (Mask-RCNN) to develop a reliable program that tracks rat movement in the OFM.
(And MatLab)
Outside of coding, I enjoy music, art, and the outdoors. In my free time I collect/listen to records, DJ, and play the guitar. I'm a big fan of jazz, house, funk, and old hip hop music.
I also love photography. Here's some of my work:


--- layout: post title: Causality in Political Networks date: 2012-11-24 13:35:52.000000000 -05:00 categories: - Books - Data Science tags: - causal inference - political science - social network analysis status: publish type: post published: true meta: _publicize_pending: '1' _edit_last: '7106425' author: login: samarthbhaskar email<EMAIL_ADDRESS>display_name: samarthbhaskar first_name: '' last_name: '' ---
A 2011 paper in American Politics Research titled "Causality in Political Networks" discusses some important concerns about assigning causality to social network analysis studies, especially when it comes to political behavior and preferences. The basic definition of causality adopted by the authors is one put forward by Henry Brady in 2008 that basically says:
causal arguments are stronger to the extent that they demonstrate our elements: (a) “constant conjunction of causes and effects”; (b) No effect when the cause is absent in the most similar world to where the cause is present”; (c) “An effect after a cause is manipulated”; and (d) The identification of “Activities and processes [i.e., mechanisms] linking causes and effects”
The authors then go on to discuss, in five short essays, how causality may be assessed through social network analysis. From survey data, field experiments, socio-centric data to measurement errors and study-design, this paper is a pretty good place to start when thinking about how you can move past descriptive analysis to something closer to causal inference in social network analysis.
For the sake of disclosure: one of the authors of this paper is my former graduate advisor. Another was a professor during graduate school.
Citation: Causality in Political Networks. Fowler et al. American Politics Research 2011 39: 437.


{site_title}
Home
Features
Full Width
About Us
Our Team
Elements
Typography
Retina Icons
Footer Widgets
Portfolio
2 Columns
3 Columns
4 Columns
Single Project
3 Columns
4 Columns
Single Project
Blog
Single Post
Contact


objective-c This is when a CGFloat may be a double Protip: Unregistering a UICollectionView header/footer Cocoapods and resource_bundles Autolayout Is Hell on Earth Cocoapod Badges Documentation and Objective-C (part 1) NSStringMask: Simplifying masks The Best XCode Tip No One Ever Gave You


`Trail` is an internal mixin whose public methods are exposed on the `Environment` and `Index` classes.
Append a `path` to the `paths` list.
Paths at the beginning of the `Array` have a higher priority.
# File lib/sprockets/trail.rb, line 38 def append_path(path) expire_index! @trail.append_path(path) end
Clear all paths and start fresh.
There is no mechanism for reordering paths, so its best to completely wipe the paths list and reappend them in the order you want.
# File lib/sprockets/trail.rb, line 48 def clear_paths expire_index! @trail.paths.dup.each { |path| @trail.remove_path(path) } end
Returns an `Array` of extensions.
These extensions maybe omitted from logical path searches.
# => [".js", ".css", ".coffee", ".sass", ...]
# File lib/sprockets/trail.rb, line 59 def extensions trail.extensions.dup end
Returns an `Array` of path `String`s.
These paths will be used for asset logical path lookups.
Note that a copy of the `Array` is returned so mutating will have no affect on the environment. See `append_path`, `prepend_path`, and `clear_paths`.
# File lib/sprockets/trail.rb, line 23 def paths trail.paths.dup end
Prepend a `path` to the `paths` list.
Paths at the end of the `Array` have the least priority.
# File lib/sprockets/trail.rb, line 30 def prepend_path(path) expire_index! @trail.prepend_path(path) end
Finds the expanded real path for a given logical path by searching the environment’s paths.
resolve("application.js") # => "/path/to/app/javascripts/application.js.coffee"
A `FileNotFound` exception is raised if the file does not exist.
# File lib/sprockets/trail.rb, line 70 def resolve(logical_path, options = {}) # If a block is given, preform an iterable search if block_given? args = attributes_for(logical_path).search_paths + [options] trail.find(*args) do |path| yield Pathname.new(path) end else resolve(logical_path, options) do |pathname| return pathname end raise FileNotFound, "couldn't find file '#{logical_path}'" end end
Generated with the Darkfish Rdoc Generator 2.


Say hello! I'm always interested in talking with people building cool things or making tech a more equitable industry.
- rockym (at) bu (dot) edu
- connect on linkedin
-<PHONE_NUMBER>
Say hello! I'm always interested in talking with people building cool things or making tech a more equitable industry.


All Classes
AppleSpawn
Controller
Direction
Event
EventHandler
FreeSpaces
KeyPressedEvent
Model
Position
Snake
SwingFrame
TimerEvent
TimerEventTask
View


Serene Sitting with Sutil 🔗
von Martin Grotz, 2021-12-08
Preface
Today for the F# advent calendar we'll be building a very simple web-based meditation session timer with sounds with the help of F# and Sutil.
F# is a functional-first multiparadigm general-purpose programming language living in the .NET ecosystem. It's pragmatic, concise, relatively small and stable, yet very powerful.
Writing an interactive web application is usually done in JavaScript or TypeScript. But we can also use other languages, like F#. The Fable compiler allows us to write F# code (with some additional annotations and a few limitations) and compile it to JavaScript to run it in the browser (or in other places where JavaScript can be run, like Node.js or Electron apps). On top of the Fable compiler sit different other libraries, each with their own focus: For example if you want to get a React app as output there is Feliz.
But in JavaScript-land there's a new kind of framework (or more precisely: compiler) with Svelte: There the code you write is compiled by the Svelte compiler into reactive JavaScript code, and no big initial runtime file is required. Svelte also avoids a virtual DOM and thus gains improved performance. Only the parts explicitly marked as reactive are updated, and only when necessary.
Sutil brings these ideas into the F#/Fable world. The ideas and resulting web application follow the Svelte model, but we can write F# instead of JavaScript or TypeScript! Sutil borrows parts from other projects (e.g. the HTML engine is taken from Feliz) and combines them with its own ideas. Sutil is still very much in beta, and the documentation is incomplete and a lot of features are not implemented yet. I still wanted to take it out for a spin and see if my small idea can be done.
Warning: I am not an experienced F# programmer, and I have only dabbled in Fable a little bit. So some things can very likely be solved more elegantly than I did...
What are we building?
Our goal is a small website where we plan and run a personal meditation session: Steps can be added with a duration in minutes and one of two sounds that is played when the duration is up. Multiple steps can be queued before the session gets started.
In the end it will look like this:
We won't be doing any styling and will only do very basic functionality to keep the code size and complexity in check. We will also sacrifice writing tests (don't do this in any real project!) for brevity.
I'll be using Windows 10 and VSCode as an IDE with the Ionide plugin, node.js 16 and dotnet5.
The full code is accessible on Github.
The basic architecture
As I am a big fan of Elm we will use Sutil with the "Elmish" architecture. Apart from the official documentation of The Elm Architecture there also exists a very useful book that describes it in the Fable context.
In short it means that the data in our application flows only in one direction: The application state is stored in the model (an F# record), which in turn is given to the view function (a normal function returning a SutilElement). The view function can emit Messages via a dispatch function. These Messages are then sent to the update function that returns a changed model. The parts of the view we have marked as reactive are updated and the cycle starts anew. In Sutil the view function is only called once, but everything that is reactive within the view gets updated when the value it is bound to changes.
The empty project, but with all the resources we need, can be cloned most easily with
npx degit MATHEMA-GmbH/blog-fsharp-sutil-mgrotz#fresh-start blog-fsharp-sutil-mgrotz
.
Afterwards one run of dotnet tool restore && npm install
in the project folder
installs all the dependencies and starting it with npm run start
makes it accessible in the
browser at http://localhost:8080/
.
First increment: Duration input
All our changes are done in the same way: Think about what needs to change in the state (Model), then how it will be shown (View) and then how Messages from the view will change the state (Update). That's the beauty of the MVU architecture - it allows a very structured approach!
All code goes into the App.fs
file - the program is small enough to fit into one file! At
the very top we need a few imports in our module:
module App
open Sutil
open Sutil.DOM
open Sutil.Attr
open Sutil.Helpers
First we define our Model as a record and update its init function that is called once on program start and a helper function to get the value out of the record more easily:
type Model = { LastTimerValue : int }
let getLastTimerValue m = m.LastTimerValue
let init () : Model= ({ LastTimerValue = 1 })
Next we'll create a new function that returns a partial view. The store is a data structure used by Sutil to allow us to subscribe to value changes and thus add reactivity to our application. The dispatch function is needed to dispatch Messages from events in the view to the update function.
let planEditView model dispatch =
Html.ul [
Html.li [
Html.label [Html.text "How many minutes should the next timer last?"]
Html.input [
// we have to use type' here, because type is a reserved word in F#
type' "number"
Attr.value (model |> Store.map getLastTimerValue |> Store.distinct, LastTimerValueChanged >> dispatch)
Attr.min 1
Attr.max 15
Attr.placeholder "How many minutes?"
]
]
]
The Html namespace allows us to create HTML elements, and the list given to each element allows us to state both sub-elements and attributes.
Attr.value
creates a reactive binding from a store value to the input value, so the DOM part
gets updated whenever the given value changes. Store.map
allows us to map the store value
(in our case the complete Model) to something else, here just the LastTimerValue
. We then
pipe this into Store.distinct
to avoid updating the value every time anything in the model
changes. The second part of the tupled argument to Attr.value
is what should happen when
the value changes in the input field. Here we want to dispatch the Message
LastTimerValueChanged
.
Adding this Message subtype to the union type for all messages allows us to handle it in the update function and return a changed model with the new value:
type Message =
| LastTimerValueChanged of int
let update (msg : Message) (model : Model) : Model =
match msg with
| LastTimerValueChanged newValue -> { model with LastTimerValue = newValue }
Now we can add our sub-view to the main view of the application:
let view() =
// create the application with The Elm Architecture
let model, dispatch = () |> Store.makeElmishSimple init update ignore
Html.div [
Html.div [
planEditView model dispatch
]
]
And finally initialize the whole program with all the functions we created at the end of our App.fs file:
view() |> Program.mountElement "sutil-app"
With this code in place the app can be started via npm run start
and opened in the browser
at http://localhost:8080/
.
Second increment: Adding steps
But the minutes alone won't make a good meditation timer app. We also need to add multiple steps with a sound when their time is up.
We can use the same approach as in the first increment: Extend the Model, extend the view, extend the Message union type and the update function.
Our model gains a new field and a new value function:
type Model = {
(...)
TimerStepsReversed : TimerStep list
}
let getTimerSteps m = m.TimerStepsReversed |> List.rev
let init () : Model = ({
LastTimerValue = 1
TimerStepsReversed = []
})
We also need the new record type TimerStep
and a way to express the diffent possible sounds.
Oh, and a few helper functions for unique ID generation from Sutil. As F# is always parsed from top to
bottom these have to be placed before the Model type definition:
let idGenerator = makeIdGenerator ()
type Sound =
| SingleShortBell
| SingleLongBell
let soundToString sound =
match sound with
| SingleShortBell -> "A single short bell chime"
| SingleLongBell -> "A single long bell chime"
let soundToFile sound =
match sound with
| SingleShortBell -> "powerUp7.wav"
| SingleLongBell -> "FileLoad.wav"
type TimerStep = {
StepId : int
Minutes : int
Sound : Sound
}
let createStep minutes sound =
{StepId = idGenerator(); Minutes = minutes; Sound = sound;}
Next we extend our sub-view function and add some buttons, one for each of our two possible sounds after
the existing Html.li
element:
Html.li [
(...)
]
Html.li [
Html.button [
type' "button"
onClick (fun _ -> dispatch AddSingleShortBell) []
Html.text "Add single short bell"
]
Html.button [
type' "button"
onClick (fun _ -> dispatch AddSingleLongBell) []
Html.text "Add single long bell"
]
]
Each button dispatches a different Message when clicked. The list which is the second argument to
onClick
allows event modifiers for browser events, things like "stopPropagation"
or "preventDefault".
Of course we now need the two new Message cases and the update function to handle them:
type Message =
(...)
| AddSingleShortBell
| AddSingleLongBell
let update (msg : Message) (model : Model) : Model =
match msg with
(...)
| AddSingleShortBell ->
let withNewStep = (createStep model.LastTimerValue SingleShortBell) :: model.TimerStepsReversed
{ model with TimerStepsReversed = withNewStep }
| AddSingleLongBell ->
let withNewStep = (createStep model.LastTimerValue SingleLongBell) :: model.TimerStepsReversed
{ model with TimerStepsReversed = withNewStep }
We create the new step and prepend it to the existing steps - which is why we stored those in reverse in the model. Prepending to an existing list is cheap in F#, but appending is expensive. Thus it's often best to store things in reverse in a list and only get them in the "right" order when used.
By the way: If we want to log something to the browser console we can do this with a function from Fable (although this breaks the "side-effect freeness" of the normal Elm Architecture):
Browser.Dom.console.info(Fable.Core.JS.JSON.stringify withNewStep)
These changes are enough to allow us to add steps to our meditation timing plan. If the dev server is
still running we almost instantly see the code changes at http://localhost:8080
- if the
code compiles that is.
Third increment: Displaying the added steps
After adding steps we need to display them, and this will be the first time we will need reactive bindings for whole elements and lists of elements the first time.
What we won't need are changes to our Model and the update function, though. We already have everything we need, we just need a new sub-view function:
let meditationPlanView (model: IStore<Model>) dispatch =
fragment
[
Html.h2 "Meditation session plan"
Bind.el (model |> Store.map getTimerSteps, fun steps ->
if List.isEmpty steps then
Html.h3 "No steps planned yet"
else
Html.ul
[
Bind.each ((model |> Store.map getTimerSteps), (fun step ->
Html.li [
Html.span $"{soundToString step.Sound} after {step.Minutes} minute(s)"
] )
)
]
)
]
Four things are of interest here:
-
We need to wrap the list of HTML elements we want to return from a view function into
fragment [...]
so it can be inserted correctly in the parent view if we want to return multiple elements at the same nesting level. -
Bind.el
creates a reactive binding: The first part of the tupled argument is the store value we bind to, and the second is the code that gets executed everytime the value changes. In our case we bind to our list of timer steps and display either a text if the list is still empty, or a list of the steps. -
Bind.each
creates a reactive binding, too, but this time the value needs to be a list of things, and the executed function gets each element in turn and produces aSutilElement
for each element of the list. We use this to create a list of the steps whenever that list changes. -
Most HTML element functions allow a string as the only argument, this is shorthand for e.g.
Html.span [Html.text "our text"]
. We use the relatively new string interpolation feature in F# to display the name of the selected sound and the duration of the timer step with$"{soundToString step.Sound} after {step.Minutes} minute(s)"
.
Now all that's left is to add our new view function in the main view function of our app:
let view() =
(...)
Html.div [
Html.div [
(...)
meditationPlanView model dispatch
]
]
This makes the list of already added steps visible.
Fourth increment: Starting the session
Now comes the heart of our application and the most complicated part: Starting the timer, letting time pass and walking through the meditation plan step by step. Plus we want to remove some things from the DOM while our timer is running.
So, as usual, we start with extending the Model with quite some field:
type Model = {
(...)
Running : bool
StartTime : Ticks
ElapsedTimeSinceStart : Ticks
PlayPlan : PlayPlan option
}
let getRunning m = m.Running
let getElapsedTime m = m.ElapsedTimeSinceStart
let getPlayPlan m = m.PlayPlan
let init () : Model= ({
(...)
Running = false
StartTime = Ticks 0L // the L marks the 0 as an int64 ("long") in F#
ElapsedTimeSinceStart = Ticks 0L
PlayPlan = None
})
We also need new types: Ticks to give the int64 we get from .NET's DateTime's Ticks property a more semantic name and the PlayPlan record to store the steps with additional info:
type Ticks = Ticks of int64
let formatElapsedTime (Ticks elapsedTime) : string =
System.TimeSpan(elapsedTime).ToString()
type StepWithEndTime = {
Step: TimerStep
EndTime: Ticks
}
type PlayPlan = {
CurrentStep : StepWithEndTime
RemainingSteps : StepWithEndTime list
}
The helper function for Ticks' formatting shows that we can also call some .NET functionality directly via the Fable compiler's magic - but not everything is supported. For example we can't use a custom format string with TimeSpan's ToString() method, because Fable does not support this (yet).
Our PlayPlan consists of both the currently active step and all the remaining steps. This makes our intention clear that we always need a valid CurrentStep when running our timer. In our model it's optional - which means we wrap it in an Option type to explicitly state it can be missing while still avoiding the dreaded Null.
But at first we need a button to start our session, which should only be visible while there is at least one meditation timer step and our timer is not running, yet. We'll implement it in its own sub-view function. Oh, and we want another small function to render the elapsed time to the DOM.
let startSessionButton (model: IStore<Model>) dispatch =
Bind.el ((model |> Store.map (fun m -> (m.Running, List.isEmpty m.TimerStepsReversed)) |> Store.distinct),
fun (running, noSteps) ->
if running || noSteps then
Html.text ""
else
Html.button [
type' "button"
onClick (fun _ -> dispatch StartSession) []
Html.text "Start session"
]
)
let showElapsedTime (model: IStore<Model>) dispatch =
Bind.el ((model |> Store.map getElapsedTime), fun elapsedTime ->
Html.div (formatElapsedTime elapsedTime)
)
Now we need to add it to our main view function:
let view() =
(...)
Html.div [
Html.div [
(...)
startSessionButton model dispatch
showElapsedTime model dispatch
]
]
The last step here is to extend our Message type and handle the new StartSession
message in
the update function again:
type Message =
(...)
| StartSession
But now we run into a problem: We want to get the StartTime when starting the session, and we want there to be a tick each second to advance the timer and go through the steps. But our simple elmish architecture does not yet support side-effects!
For this there is the data type Cmd
(which stands for Command). We can tell Sutil that we
want to have Cmds now as additional possible return values from the update function instead of just the
model.
For this we need to change how our store is initialized:
// old
let model, dispatch = () |> Store.makeElmishSimple init update ignore
// new
let model, dispatch = () |> Store.makeElmish init update ignore
Now the compiler tells us about a lot of necessary changes: Our init function needs to return a tuple now
with a Cmd for when we want to do some side-effect right at the start of our program. We don't want to
do this, so we can use Cmd.none
.
let init () : Model * Cmd<Message>= ({
(...)
}, Cmd.none)
Next, the signature and all the return values in all branches of our update function need to change. Here just one branch is shown for brevity:
let update (msg : Message) (model : Model) : (Model * Cmd<Message>) =
(...)
| StartSession ->
(model, Cmd.none)
We now need to get the correct starting time within the update function. And as we define what the update function is and how it's called we can extend it with a function parameter that we can call to get the current time. This breaks the original Elm Architecture, because it's a side-effect hidden within the update function! In Elm we'd do this with a Subscription to get notified of time changes, but I have not found a way to do this in Sutil. We'll use partial application to give the time getter function into the update function and leave the rest of the arguments open for Sutil to fill, and we want to wrap our int64 Ticks property into our Ticks type to give it a more semantic name:
let update (getNow : unit -> Ticks) (msg : Message) (model : Model) : (Model * Cmd<Message>) =
(...)
| StartSession ->
let now = getNow ()
({model with Running = true; StartTime = now; }, Cmd.none)
let view() =
let model, dispatch = () |> Store.makeElmish init (update (fun () -> Ticks System.DateTime.UtcNow.Ticks)) ignore
(...)
Now we must extend StartSession to include our initial PlayPlan calculation. For this we go backwards
through the list of all steps with foldBack
and call a helper function that calculates the
end time of each step based on the initial starting time for the first one and the end time of the
previous step for each new step afterwards. We have to do some value unwrapping and rewrapping with our
Ticks type, but in general it's so easy and convenient to create types even for small things in F# I
recommend doing it a lot. I even created a new type just for the interim state in the
foldBack
!
type PlayPlanCalculation = {
PreviousStepEnd : Ticks
CalculatedSteps : StepWithEndTime list
}
let calculateNextTimerStep (timerStep : TimerStep) (state : PlayPlanCalculation) : PlayPlanCalculation =
// let minutesInTicks = (int64)timerStep.Minutes * System.TimeSpan.TicksPerMinute
let minutesInTicks = (int64)timerStep.Minutes * System.TimeSpan.TicksPerMinute / 10L // for DEBUG
// unwrap int64 value
let (Ticks previousStepEnd) = state.PreviousStepEnd
// calculate end and wrap again in Ticks type
let stepEndsAt = previousStepEnd + minutesInTicks |> Ticks
// update the state we thread through each iteration
let withEndTime = {Step = timerStep; EndTime = stepEndsAt}
{ state with PreviousStepEnd = stepEndsAt; CalculatedSteps = withEndTime :: state.CalculatedSteps}
let update getNow msg model : (Model * Cmd<Message>) =
(...)
| StartSession ->
let now = getNow ()
let calculatedSteps =
(List.foldBack calculateNextTimerStep
model.TimerStepsReversed
{ PreviousStepEnd = now; CalculatedSteps = []})
.CalculatedSteps // only take final result
|> List.rev // put them in the right order
// build initial PlayPlan
let playPlan = {
PlayPlan.CurrentStep = calculatedSteps |> List.head
RemainingSteps = calculatedSteps |> List.tail
}
({model with Running = true; StartTime = now; PlayPlan = Some playPlan}, Cmd.none)
Now we just need a way to create a new message each second. For this we can use one of the numerous Cmd helper
functions Sutil provides to replace the Cmd.none
we have been using until now from
our StartSession handler:
// build Cmd to dispatch TimerTick message after approximately 1 second (JavaScript is not exact in its timings)
let timerCmd = Cmd.OfAsync.perform (fun _ -> Async.Sleep 1_000) () (fun _ -> TimerTick)
({model with Running = true; StartTime = now; PlayPlan = Some playPlan}, timerCmd)
Sutil will then call our update function again after the Cmd executes and generates the new Message. We don't have to think about this. And as we express the side-effect we want as data instead of executing it directly we can also test for the correct result of the update function more easily!
We'll add TimerTick to our Message type and just do nothing in its update function for now - we will extend this in the next increment.
type Message =
(...)
| TimerTick
let update getNow msg model : (Model * Cmd<Message>) =
(...)
| TimerTick ->
(model, Cmd.none)
Fifth increment: Making the time pass
And now for the tricky bit: Making it tick again each second, but only if the timer is still running and there are steps left - and handling the different cases for what happens.
All of this is concentrated in the update function branch where we handle the TimerTick message. It's not complicated per se, but we do need to think about the cases:
- Our current step ends, but we don't have any steps left
- Our current step ends, and we have at least one other step left
- We are in the middle of a step
For case 1 we need to play the sound attached to the step and stop the passage of time. For case 2 we need to play the sound, update our PlayPlan and continue with the TimerTicks. And for case 3 we only need to continue when the timer ticks.
Oh, and all of this should only happen if our PlayPlan actually exists (the Option is not in the
"Nothing" case, but in the "Some PlayPlan" case instead). We use the fact that
Option is a Functor and thus gives us a nice map
function with Option.map
, which only applies its inner function if there is a value in the
Option. Plus we create a "do nothing at all"-fallback with the
Option.defaultValue
function.
let update getNow msg model : (Model * Cmd<Message>) =
(...)
| TimerTick ->
model.PlayPlan
|> Option.map (fun playPlan -> // only do something if the PlayPlan exists
// unwrap all the data
let (Ticks now) = getNow ()
let (Ticks currentStepEndTime) = playPlan.CurrentStep.EndTime
let (Ticks startTime) = model.StartTime
// Case 1: Our final step has just ended
if List.isEmpty playPlan.RemainingSteps && currentStepEndTime < now then
({model with Running = false; PlayingSound = Some playPlan.CurrentStep.Step.Sound}, Cmd.none)
else
// prepare the next tick
let tickCmd = Cmd.OfAsync.perform (fun _ -> Async.Sleep 1_000) () (fun _ -> TimerTick)
// update the elapsed time in the model here to avoid code duplication later
let elapsedTime = now - startTime
let modelWithNewElapsedTime = {model with ElapsedTimeSinceStart = Ticks elapsedTime}
if (currentStepEndTime < now) then
let newPlayPlan =
// Case 2: we have another step we need to move into our CurrentStep property
let newPlayPlan =
{
PlayPlan.CurrentStep = List.head playPlan.RemainingSteps;
RemainingSteps = List.tail playPlan.RemainingSteps
}
({modelWithNewElapsedTime with PlayPlan = Some newPlayPlan; PlayingSound = Some playPlan.CurrentStep.Step.Sound}, tickCmd)
else
// Case 3: just continue with another tick in 1 second
(modelWithNewElapsedTime, tickCmd)
)
// fall back to "do nothing" if the PlayPlan does not exist
|> Option.defaultValue (model, Cmd.none)
We also set a new property in our Model for when we want to play a sound. So naturally we need to extend said Model and its helper functions:
type Model = {
(...)
PlayingSound : Sound option
}
(...)
let getPlayingSound m = m.PlayingSound
let init () : Model * Cmd<Message> = ({
(...)
PlayingSound = None
}, Cmd.none)
Now our time advances after we start the session and we move through the steps one by one until none are left. Reminder: For debugging purposes we shorten each step by the factor of 10, so a one minute step is finished after six seconds.
Last increment: Playing a sound and cleanup
The final thing we have to add is audio playback. Luckily HTML has an element just for this, and Sutil directly supports it: The audio tag.
We already extended our Model in the last increment to be able to store the sound we want to play in
PlayingSound
, so we can add another sub-view function to create an audio tag on demand:
let audioPlayback (model: IStore<Model>) dispatch =
Bind.el ((model |> Store.map getPlayingSound |> Store.distinct), fun sound ->
match sound with
| None -> Html.text ""
| Some s -> Html.audio [
on "ended" (fun _ -> dispatch SoundEnded) []
Attr.autoPlay true
Attr.src (soundToFile s)
]
)
A few things are of note here: We need to pipe our transformed value from the store into
Store.distinct
, because otherwise the tag would be recreated every time the model changes,
because the store emits a new value even if it is the same as the last value. Combined with
Attr.autoPlay true
this would restart any running sound if anything in the model changes
while it is played back!
We also use the soundToFile
function we created earlier to map to filenames as the source.
And finally we register a custom event handler for the ended
event of the audio tag and
dispatch a new Message to clear the Model from the sound to be played back after playback has finished.
Of course that means we need to extend our Message type one final time and handle the new message in the update function:
type Message =
(...)
| SoundEnded
let update getNow msg model : (Model * Cmd<Message>) =
(...)
| SoundEnded ->
({model with PlayingSound = None}, Cmd.none)
Oh, and we need to add our new partial view to the main view to get it to actually render, too:
let view() =
(...)
Html.div [
Html.div [
(...)
audioPlayback model dispatch
]
]
Now our meditation session timer is feature complete! We can add steps with different durations and sounds, we can go through our session plan after starting it and when each step ends a sound is played. It's time for a final pass through our app to improve the User Experience a bit (and avoid needing to add more complicated cases to handle for us): Some parts of the page should not be rendered while the timer is running.
For this we'll use the awesomeness of F# and its type inference and partial application once more and write a small reusable helper function to only render a sub-view if our timer is not running:
let ifNotRunning model viewFn =
Bind.el ((model |> Store.map getRunning), fun running ->
if running then
Html.text ""
else
viewFn)
We don't need to write any verbose type definitions for the parameters, F# just knows what's up. And now we can partially apply this function in the main view and use it every where we need it, even if we extend the app later with more sub-views:
let view() =
(...)
let ifNotRunning' = ifNotRunning model
Html.div [
Html.div [
ifNotRunning' (planEditView model dispatch)
(...)
]
]
Now we are truly done! It's time to build our whole app for deployment, which we will do in our final chapter.
Prepare for deployment
The out-of-the-box tooling in Sutil allows us a production-ready build for our simple app with one
console command: We run npm run build
, wait a few seconds and then get the built JavaScript
as bundle.js
in the public
folder. The configuration for this is in the
webpack.config.js
file and can be extended with more Webpack configuration if needed.
The JavaScript is around 31 KB (minified and compressed) which I consider reasonable. We can now upload the whole public folder to a static web host of our choice, e.g. something like surge.sh or netlify. I did upload it to my own self-hosted website.
Conclusion
Overall F# has been a pleasure to work with, as usual. It's a beautiful and powerful language and the editor support via Ionide in VSCode has improved a lot in the last year. For commercial use I'd still prefer using JetBrains Rider because it is a bit more reliable in its F# support.
Working with Sutil was a mixed bag for me: It's still in beta, which mostly shows in the lack of documentation and in that a few things are not implemented yet. This was doubly true for me as I didn't have any experience working with Fable before starting this project. I like Svelte's ideas and of course I like writing F#. I think Sutil will be a great addition to the F#-to-JavaScript ecosystem once the documentation is updated.
As of now I personally will continue to use F# for server programming in my private projects. But for the frontend I'll probably use Svelte directly. Or if I have a lot of UI state and few library dependencies reach for Elm and get The Elm Architecture and all its guarantees in its purest form. Still I advise you to look into Fable and the libraries built on top of it at least once in a small toy project like the one we did here to get a feeling for what's possible and get a fresh perspective.
I wish you all a happy and healthy December, a merry christmas and many serene sitting sessions with our meditation timer written with Sutil!
Thanks
Thanks to Sergey Tihon for organizing the F# Advent calendar, and thanks to Patrick and Christian for proof-reading!


Ping! Pong!
An Epicodus Project by Cecile DeVera
Let's Play!
Rules:
Ping Pong will count up to your number from 1 with the following exceptions:
Numbers divisible by 3 will become "ping"
Numbers divisible by 5 will become "pong"
Numbers divisible by 3 and 5 will become "pingpong"


What is VueTippy?
A lightweight tooltip for VueJS. Based on tippy.js and powered by Popper.js
Tippy.js is a lightweight, vanilla JS tooltip library powered by Popper.js.
VueTippy is a VueJS wrapper for the Tippy.js library, which allows you to use the tooltips as a Vue component and as a directive.
It is designed to work friendly with VueJS


The goal of this assignment was to measure the usefulness of various search algorithms. In this example, we are using Breadth First Search, Depth First Search, and A* search with two heuristics (and combined) to allow the snake to find the food.
This application uses web workers to offload the processing, which allows the browser UI to remain responsive even though CPU intensive operations may be taking place. The results are drawn on the screen using a canvas element.
Breadth First Search - Results in low average moves, but must process many nodes (low number of moves at high CPU cost)
Depth First Search - Results in high average moves, but must process many nodes (high number of moves at high CPU cost, very bad)
A* Search - Results in low average moves, with low number of processed nodes (low number of moves at low CPU cost, very good)
It's the heuristics! A* search allows us to know what direction the food is closest to, so we search in that direction instead of randmonly wandering around the board. Sort of like if the snake had a sense of smell.


| First Name | Last Name | DOB | Username | Password | Other | ||
|---|---|---|---|---|---|---|---|
| {{student.firstName}} | {{student.lastName}} | {{student.dob}} | {{student.username}} | {{student.rawPassword}} | other | Edit |
| Course Name | Entrolled Students | Pasted Students | |
|---|---|---|---|
| {{course.name}} | {{getEnrolledStudents(course._id)}} | {{getPastStudents(course._id)}} | Assign Student |