Twisted code examples
Simple Echo server and client
Chat
Echo server & client variants
AMP server & client variants
Perspective Broker
Cred
- cred.py - Authenticate a user with an in-memory username/password
database
- dbcred.py - Using a database backend to authenticate a user
GUI
FTP examples
- ftpclient.py - example of using the FTP client
- ftpserver.py - create an FTP server which
serves files for anonymous users from the working directory and serves
files for authenticated users from
/home
.
Logging
POSIX Specific Tricks
Miscellaneous
- shaper.py - example of rate-limiting your web server
- stdiodemo.py - example using stdio, Deferreds, LineReceiver
and twisted.web.client.
- mouse.py - example using MouseMan protocol with the SerialPort
transport
- ptyserv.py - serve shells in pseudo-terminals over TCP
- courier.py - example of interfacing to Courier's mail filter
interface
- longex.py - example of doing arbitarily long calculations nicely
in Twisted
- longex2.py - using generators to do long calculations
- stdin.py - reading a line at a time from standard input
without blocking the reactor
- streaming.py - example of a push producer/consumer system
- filewatch.py - write the content of a file to standard out
one line at a time
- shoutcast.py - example Shoutcast client
- gpsfix.py - example using the SerialPort transport and GPS
protocols to display fix data as it is received from the device
- wxacceptance.py - acceptance tests for wxreactor
- postfix.py - test application for PostfixTCPMapServer
Index
Version: 12.2.0


Marketplace
Development
Learn to Code in Python 3: Programming beginner to advanced
Ivan Lourenço Gomes
$ 20.00
Development
iOS 13 & Swift 5 - The Complete iOS App Development Bootcamp
Dr. Angela Yung
$ 20.00
NLP Training
Cognitive Behavioural Therapy (CBT) Practitioner Certificate
Kain Ramsay
$ 30.00
Development
Angular - The Complete Guide (2020 Edition)
Maximilian Schwarzmüller
$ 20.00
Development
The Complete JavaScript Course 2020: Build Real Projects!
Jonas Schmedtmann
$ 20.00
Development
Vue JS 2 - The Complete Guide (incl. Vue Router & Vuex)
Maximilian Schwarzmüller
$ 20.00
Cryptocurrency, Development
Python, JS, & React | Build a Blockchain & Cryptocurrency
Kain Ramsay
$ 30.00
Design
Angular - The Complete Guide (2020 Edition)
Joe Natoli
$19.99
Development
Learn to Code in Python 3: Programming beginner to advanced
$ 20.00
Development
iOS 13 & Swift 5 - The Complete iOS App Development Bootcamp
$ 19.99
Development
iOS 13 & Swift 5 - The Complete iOS App Development Bootcamp
Created by: Dr. Angela Yung
Description
From Beginner to iOS App Developer with Just One Course! Fully Updated with a Comprehensive Module Dedicated to SwiftUI!
Who this course is for?
If you are an absolute beginner to coding, then take this course.
If you are a seasoned programmer, then take this course to to get up to speed quickly with Swift 5.1 and native app development. Start with the Xcode walkthrough lesson and we'll get you familiar with iOS development in no time!
If you are switching from Objective-C to Swift then this is a fast-track way of doing it. You can get started straight away with the Intermediate Swift Language module.
If you are a pro iOS developer and want to quickly get up to date with Apple's latest technology, then start with the modules on SwiftUI, ARKit and CoreML.
Content
- 58.5 Hours on-demand Video
- 147 Articles
- 11 Downloadable Resources
- 1 Coding Exercise
- Full Lifetime Access
- Certification of Completion


Top 5 digital streams of girl groups in 2019 (genie music)
by eottokeICY is amazing
original post: pann
1. [+90, -4] I read a post that talked about ‘ICY’ and TWICE flopping hardㅋㅋㅋ JYP girl groups are so popular and there are a lot of anticipations for their digital sales. But they get hate for no reason.
2. [+71, -6] DALLA DALLA is so good, I still listen to it these days
3. [+66, -3] ITZY should win the rookie of the year award
4. [+46, -3] I personally find ‘Feel Special’ to be the best song of TWICE. The song really classy.
5. [+39, -1] The antis kept saying that TWICE was flopping but they did well digitally on the charts full of ballad songs and their physical sales were big, too. What flop?ㅜㅜ
6. [+34, -19] I was the only one who was boycotting BLACKPINK?
7. [+32, -1] All those groups are amazing and their songs are good, stop trolling
8. [+30, -16] On the current top 100 of Melon chart, DALLA DALLA , Fancy, ICY and Feel Special are the only girl group songs there. JYP girl groups are amazing.
9. [+29, -1] JYP girl groups are the best
10. [+27, -10] BLACKPINK was the real flop but people were bashing JYP girl groups.
11. [+19, -0] JYP girl groups’ popularity is huge.
12. [+15, -2] Mamamoo from a small agency but it seems they’re really doing well … amazing


Handbrakewebcompiler
Presets (comma separated)
This should be a comma separated list of presets. See
Handbrake Documentation
for available preset options
Zip Archive
Upload
Depending on Video length, this may take a while. Result will be shown below once finished


FullTextRetrievalResponse
public struct FullTextRetrievalResponse : Codable
Undocumented
-
Undocumented
Declaration
Swift
public let scopusEid: String
-
Undocumented
Declaration
Swift
public let originalText: String
-
Undocumented
Declaration
Swift
public let scopusId: String
-
Undocumented
Declaration
Swift
public let pubmedId: String
-
Undocumented
Declaration
Swift
public let coredata: Coredata
-
Undocumented
Declaration
Swift
public let objects: Objects
-
Undocumented
Declaration
Swift
public let link: Link
-
Undocumented
See moreDeclaration
Swift
public struct Coredata : Codable
-
Undocumented
See moreDeclaration
Swift
public struct Objects : Codable
-
Undocumented
See moreDeclaration
Swift
public struct Link : Codable


This Galaxy is maintained by the IFB NNCR Cluster Task force, France.
For any questions regarding this Galaxy server: https://community.france-bioinformatique.fr/


--- title: DS Zero Core keywords: fastai sidebar: home_sidebar summary: "Unlike the other notebooks, this one will have some extra utitlity functions and code that we can use from anywhere. (Stll just a template for now)" description: "Unlike the other notebooks, this one will have some extra utitlity functions and code that we can use from anywhere. (Stll just a template for now)" nb_path: "00_core.ipynb" ---
example_function(6)


I have over 8 years of experience in the software field. My first personal website was in 2001, and I developed my first desktop program in 2002 using C++.
This site was built with AngularJS and runs on top of NodeJS locally with other front-end technologies such as HTML5, SCSS, jQuery, Grunt, etc.


"To reach and influence the world by building a large Christ-centered, Bible-based church, changing mindsets and empowering people to lead and impact in every sphere of life."


|
plibsys
0.0.4
|
Hash table. More...
Go to the source code of this file.
Typedefs | |
| typedef struct PHashTable_ | PHashTable |
| Opaque data structure for a hash table. More... | |
Functions | |
| P_LIB_API PHashTable * | p_hash_table_new (void) |
| Initializes a new hash table. More... | |
| P_LIB_API void | p_hash_table_insert (PHashTable *table, ppointer key, ppointer value) |
| Inserts a new key-value pair into a hash table. More... | |
| P_LIB_API ppointer | p_hash_table_lookup (const PHashTable *table, pconstpointer key) |
| Searches for a specifed key in the hash table. More... | |
| P_LIB_API PList * | p_hash_table_keys (const PHashTable *table) |
| Gives a list of all the stored keys in the hash table. More... | |
| P_LIB_API PList * | p_hash_table_values (const PHashTable *table) |
| Gives a list of all the stored values in the hash table. More... | |
| P_LIB_API void | p_hash_table_free (PHashTable *table) |
| Frees a previously initialized PHashTable. More... | |
| P_LIB_API void | p_hash_table_remove (PHashTable *table, pconstpointer key) |
| Removes key from a hash table. More... | |
| P_LIB_API PList * | p_hash_table_lookup_by_value (const PHashTable *table, pconstpointer val, PCompareFunc func) |
| Searches for a specifed key in the hash table by its value. More... | |
Hash table.
A hash table is a data structure used to map keys to values. The hash table consists of several internal slots which hold a list of values. A hash function is used to compute an index in the array of the slots from a given key. The hash function itself is fast and it takes a constant time to compute the internal slot index.
When the number of pairs in the hash table is small the lookup and insert (remove) operations are very fast and have average complexity O(1), because every slot holds almost the only one pair. As the number of internal slots is fixed, the increasing number of pairs will lead to degraded performance and the average complexity of the operations can drop to O(N) in the worst case. This is because the more pairs are inserted the more longer the list of values is placed in every slot.
This is a simple hash table implementation which is not intended for heavy usage (several thousands), see PTree if you need the best performance on large data sets. This implementation doesn't support multi-inserts when several values belong to the same key.
Note that PHashTable stores keys and values only as pointers, so you need to free used memory manually, p_hash_table_free() will not do it in any way.
Integers (up to 32 bits) can be stored in pointers using P_POINTER_TO_INT and P_INT_TO_POINTER macros.
Definition in file phashtable.h.
| typedef struct PHashTable_ PHashTable |
Opaque data structure for a hash table.
Definition at line 71 of file phashtable.h.
| P_LIB_API void p_hash_table_free | ( | PHashTable * | table | ) |
| P_LIB_API void p_hash_table_insert | ( | PHashTable * | table, |
| ppointer | key, | ||
| ppointer | value | ||
| ) |
Inserts a new key-value pair into a hash table.
| table | Initialized hash table. |
| key | Key to insert. |
| value | Value to insert. |
This function only stores pointers, so you need to manually free pointed data after using the hash table.
| P_LIB_API PList* p_hash_table_keys | ( | const PHashTable * | table | ) |
Gives a list of all the stored keys in the hash table.
| table | Hash table to collect the keys from. |
| P_LIB_API ppointer p_hash_table_lookup | ( | const PHashTable * | table, |
| pconstpointer | key | ||
| ) |
Searches for a specifed key in the hash table.
| table | Hash table to lookup in. |
| key | Key to lookup for. |
| P_LIB_API PList* p_hash_table_lookup_by_value | ( | const PHashTable * | table, |
| pconstpointer | val, | ||
| PCompareFunc | func | ||
| ) |
Searches for a specifed key in the hash table by its value.
| table | Hash table to lookup in. |
| val | Value to lookup keys for. |
| func | Function to compare table's values with val, if NULL then values will be compared as pointers. |
The compare function should return 0 if a value from the hash table (the first parameter) is accepted related to the given lookup value (the second parameter), and -1 or 1 otherwise.
| P_LIB_API PHashTable* p_hash_table_new | ( | void | ) |
Initializes a new hash table.
| P_LIB_API void p_hash_table_remove | ( | PHashTable * | table, |
| pconstpointer | key | ||
| ) |
Removes key from a hash table.
| table | Hash table to remove the key from. |
| key | Key to remove (if exists). |
| P_LIB_API PList* p_hash_table_values | ( | const PHashTable * | table | ) |
Gives a list of all the stored values in the hash table.
| table | Hash table to collect the values from. |


Authored by Baquer Zaidi
"Nigar Khana-e-Ghazal is the latest book by Baquer Zaidi. It is a compilation of his Ghazals"
"Lazzat-e-Guftar" is the first book by Baquer Zaidi which includes a collection of his Ghazals. It recieved the best book of the year prize by Urdu Markaz International USA.
"Hurmat-e-Hurf" is a collection of Hamd, Naat, Manqabat, Nouha, salam and Marsia written by Baquer Zaidi.
"Furat-e-Sukhn" contains a compilation of his first 10 Marsia. It recieved the 'Husn-e-Sukhn' Award by Aasar-o-Afkaar Academy Pakistan.
"Dur-e-Darya-e-Ghazal" as the name suggests is another collection of Ghazals by Baquer Zaidi.
Compiled by Baquer Zaidi
"Bazm-e-Rasa" is the collection of the unpublished Marsia of Hazrat Bazam Afandi Akbar Abadi. Baquer Zaidi's relationship to Hazrat Bazm Afandi is that of a student and also that he is the grandfather of Baquer Zaidi's wife.
Special thanks to Mr. Mujahid Hussain for his help in uploading this book.
"Chiragh Bazm ka hun" is a collection of poetry by Janab Suleiman Mirza Kokab Afandi Akbarabadi. He was the son of Janab Bazm Afandi and the younger brother of Janab Najm Afandi.
"Ik Silsila Sukhn ka" is a unique book in a way that it is a collection of poetry by three generations which include grandfather, father and brother of Baquer Zaidi. Special thanks to Mr. Mujahid Hussain for his help in uploading this book.
"Al Najm" is a book compiled by Baquer Zaidi on the rememberance of Janab Najm Afandi
"Faiz Bharatpuri" is a book compiled by Baquer Zaidi which is a collection of views by different personalities on Janab Faiz Bharatpuri who is the father of Baquer Zaidi


Authors: Mohammad S. Sharawi
Source: FERMAT, Volume 1, Article 10, Jul.-Aug., 2017
Abstract: Multiple-input-multiple-output (MIMO) technology has become an integral part of wireless systems nowadays. This technology depends on the use of multiple antenna elements at the mobile terminal as well as the base station. The design of compact printed MIMO antenna systems is a challenging task, especially when it is made for small factor mobile terminals. The introduction of MIMO brought with it several performance metrics and measurement methods to allow the designer gauge the performance of his antenna system in real environments. This paper will give an overview of such new metrics, it will give several recent example of printed MIMO antenna systems and will shine some light of some current challenges that designers face when dealing with such multi-antenna systems. Some future perspectives are also presented.
Index Terms: Printed Antennas, Multiple-input-multiple-output (MIMO), Multi-band, Isolation, Correlation, TARC, Capacity
View PDF
Printed MIMO Antenna Systems: Performance Metrics, Implementations and Challenges


Viewing Schedule History For A Task
How to view the history for any task within the Schedule module.
- Navigate to Host > Advanced Settings > Schedule.
- Locate the required task.
- In the Log column, click the View History button.
You are now located on the Schedule History page where the following details are displayed for each task:
- Description: Description of the task including any notes on the task. E.g. Completed re-indexing content.
- Ran On Server: The name of the server where the task was run.
- Duration (seconds): The number of seconds taken to complete the task.
- Succeeded: A True or False statement tells if the scheduled task was successfully completed.
- Start: Date and time the task began. E.g. S: 2/8/2012 4:00:00 PM
- End: Date and time the task ended. E.g. E: 2/8/2012 4:05:006 PM
- Next: Date and time that the task is next scheduled. E.g. N: 2/9/2012 4:00:00 PM
The Schedule History page for a scheduled task


LFD files contain various resources, mostly sound and graphics.
You don't need them to create a new level, but for things like cutscenes and briefings.
The Dark Forces LFD format is completely compatible with X-Wing and Tie Fighter LFD files.
LFD_Ix_Entry IS
{
| TYPE | char[4] | // type of the resource |
| NAME | char[8] | // name of the resource |
| LENGTH | long | // length of the resource |
}
Then LENGTH bytes follow the header.
The first index entry is of type RMAP, and contains the list of all the sections in the .LFD file.
This is similar to the GOB Master Index.
The other sections can be:
| Section | Description |
| ANIM | animation, this is a collection of DELT |
| DELT | static image in delta format |
| FILM | 'script' referencing the other resources in the LFD |
| FONT | font |
| GMID | General Midi music |
| PLTT | palette used for ANIM and DELT |
| VOIC | VOC (standard Creative Labs format) |


using [(ngModel)]
, dynamic readonly
{{ tags | json }}
controlled by TagifyService
and suggestions (Hello
, World
)
with Bootstrap form-control
class, form validation, and initial, predefined value between tagify element tags 'Reactive, Form'
Form is valid: {{ form.valid }}
{{ form.value | json }}
with mixed mode (mode: 'mix', pattern: /@|#/
) and string value for ngModel
Original input: {{originalText}}
Output: {{ mixedValue }}


Servic
App
Register a new membership
Department
Admin
Accounting
Human Resource
Housekeeping
Kitchen
Transportation
User Type
Admin
Driver
Client
Driver Type
I agree to the
terms
Register
- OR -
Sign up using Facebook
Sign up using Google+
I already have a membership


6.5 : State and State Machines
What is state? Yes, it could perhaps be a place that you live in. However, I am notoriously bad at geography, so today, it is not. This may be the worst definition, but state defines the current state your program is in. What defines the current state of your program? The state is a snapshot in time. At any given moment in time, what are the variables in scope and what are their values?  State gets a little more complex than this in future classes. For the purpose of CS-164, this is as deep as you need to know it.
State Machines and Diagrams
One of the things that we work with in CS-164 is the concept of state machines. This is something we use to very basically explain the way a program functions, what the variables we have mean, and how they affect the way the program will run.
With One Variable
We create a state machine in typically the seventh lab. The state machine in this lab relies on one variable and a user input to determine how a program will run and react to the user input. In this state machine, there are three button user inputs. Based on which button is pressed in which state, you move to a different state. While there are three states and three buttons, each state is not directly tied to a specific button. I'm going to further disect what this state machine is doing and how we describe that behavior since the actual lab mainly deals with the coding part.
In this state machine, we have one variable named state
to
define what state we are currently in.
This variable has an integer range from 0-2 inclusively.
This means there are three states that our program can be in.
These three states have no analogy as to what's going on.
There is no "good" state to be in and no "bad" state to be in.
The code can have side affects based on what state we are currently in.
For example, the light will turn red when we move from state 2 to state
0 via the O button.
However, this red can be achieved through a variety of different pathways.
Obviously, this description of behavior gets unwieldy quickly.
To describe the behavior, we can use two different types of state diagrams.
| 0 | 1 | 2 | |
|---|---|---|---|
| O | 1/G | 0/G | 0/R |
| P | 0/R | 2/G | 1/R |
| W | 0/R | 1/R | 1/G |
Both of the above images describe the state machine from lab 7. In the table approach, we have the user inputs in one axis and the state in another axis. In the bubble approach, we have each state as a bubble, then the user input being an arrow from each to another. Which ever you choose to use is up to you and how you best interpret images.
With More Than One Variable
The final project for this class is a virtual pet project.
It's a really glorified state machine.
You interact with your pet via buttons and the pet responds accordingly with
emotions and actions.
Most people tend to do rather simple state machines with a single state
variable.
This is the most straight forward approach.
However, we tend to have students create pets with certain statistics like
hunger and happy levels, then have the emotion of the pet be a side effect of that.
I want to take the time to explain the complexity of a state machine with multiple
variables.
Let's think about a state machine where, instead of one state
variable,
our state is defined by two parts, valA
and valB
.
In our purposes, both variables can have values 1-3 inclusively.
This gives each variable three values each.
Now, there is no longer three states that our program can be in, there's actually many
more.
There are now nine states our state machine can be in.
There is a state for each combination of variables.
Below, I've created a table to give a letter to each combination of variables.
This way we can create an easier to understand state diagram.
| State | A | B | C | D | E | F | G | H | I |
|---|---|---|---|---|---|---|---|---|---|
| valA | 1 | 2 | 3 | 1 | 2 | 3 | 1 | 2 | 3 |
| valB | 1 | 1 | 1 | 2 | 2 | 2 | 3 | 3 | 3 |
Now that I've described the nine possible states my program can be in, let's think about possible user input. Let's say there's 4 buttons, labelled W, X, Y, and Z. Button W adds 1 to valA. Button X subtracts 1 from valA. Button Y adds 1 to valB. Button Z subtracts 1 from valB. For our ease, let's assume that there are strict upper and lower bounds. Adding to an upper bound will keep us there. Subtracting from a lower bound will keep us there. Now that we have a description of the states and the corresponding buttons, we can make a diagram that accurately describes this.
| A | B | C | D | E | F | G | H | I | |
|---|---|---|---|---|---|---|---|---|---|
| W | B | C | C | E | F | F | H | I | I |
| X | A | A | B | D | D | E | G | G | H |
| Y | D | E | F | G | H | I | G | H | I |
| Z | A | B | C | A | B | C | D | E | F |
Clearly, our state diagram has gotten very complex. Using our diagram, we can see that in order to get from state A to state H, we need to press the buttons, Y, then W, then Y in order. We really get to see the behavior of our program now. From here, we can have further side effects to our program. In states where valA is greater than valB (B, C, F) perhaps a yellow light turns on. While multiple states can have the same side effect, they are still separate states with separate values for their variables. As you increase the number of variables and the number of values for each variable, you exponentially increase the complexity of the program. Just something to keep in mind.


COLORMGR(1) COLORMGR(1) NAME colormgr - Color Manager Testing Tool SYNOPSIS colormgr [ --verbose ] DESCRIPTION This manual page documents briefly the colormgr command. colormgr allows an administrator to view and change color profile to device mappings. OPTIONS This program follows the usual GNU command line syntax, with long options starting with two dashes (`-'). A summary of options is included below. --help Show summary of options. COMMANDS This program takes commands with a variable number of arguments. create-device Creates a color managed device create-profile Create a color profile delete-device Deletes a color managed device delete-profile Deletes a color profile device-add-profile Add a profile to a device that already exists device-get-default-profile Gets the default color profile for a device device-get-profile-for-qualifier Returns all the profiles that match a given qualifier device-make-profile-default Makes a profile default for a specific device device-set-kind Sets the device kind device-set-model Sets the device model device-set-serial Sets the device serial device-set-vendor Sets the device vendor find-device Find a device from the device ID find-device-by-property Find a device with a given property value find-profile Find a profile from the profile ID find-profile-by-filename Find a profile from the filename get-devices Gets all the color managed devices get-devices-by-kind Gets all the color managed devices of a specific kind get-profiles Gets all the available color profiles profile-set-filename Sets the profile filename profile-set-qualifier Sets the profile qualifier AUTHOR This manual page was written by Richard Hughes<EMAIL_ADDRESS>20 December,2008 COLORMGR(1)


Office:
Email:
Phone:
Biography
No Information
Research
No Information
Committees
No Information
Students
No Information
Publications
No Information
Awards
No Information
Courses
No Information
Office Hours
No Information
Links
No Information
No Information
Education
No Information
Curriculum Vitae
No Information


AI | Influence Map | Navmesh Baking | Learning | Troop Formation
TLDR: With help of an Influence Map that could modify a navmesh in runtime, a God AI would send troops in formation towards a fortress with a goal of breaching the defense and attacking it's runestone.
The specialisation was the final course at The Game Assembly where we had 100 hours to specialise ourselves in a game programming field and create our webpages. I put around 80 hours into the specialisation.
I have the project on Github if it is of interest.
When deciding on what I wanted to do for my specialisation, I knew it was AI. But what I wanted to do was unknown. I was in this spotify period where I was mostly listening to soundtracks from Lord of the Rings and World of Warcraft. This inspired me, with the picture of Uruk-hais attacking Helm's Deep, to create a "God AI" that could send units running in formation, trying to breach a fortress. I wanted to make something that looked neat.
I decided to use Unity as game engine. Since I was quite experienced with Unity, the engine would not hinder me in my work. I was keen on trying out Unreal again, but then there was a risk of my specialisation turning into trying out Unreal more than AI. As I wanted it to be somewhat cool and not code with capsules, I used assets from the previous project, Spite - Ragnars Mjöd, and created some own models in Maya.
The god AI didn't have a Saruman telling weakpoints in the defence and ladders to climb over walls with. I needed something for the AI to figure out which part of the defense was weak and better to attack, something to read from when "learning". The solution would be to use an influence/heat map to collect data from. I created a grid for the Influence Map to store data whenever a unit damage an object, a unit died or an object was destroyed. This data was transported via a postmaster system that I also created for the project.
After each attack made by the god AI, the influence map would place out navmesh modifiers on areas that are unwanted or prefered to walk upon. After placing, the influence map would rebake the navmesh in runtime, creating these areas.
Although I've had issues with Unity's navmesh in the past, I decided to use it as it would save me a lot of time. The scene had two navmeshes, one for the formation generals that would move the formation, and one for the units to walk upon. The difference was for the formation generals navmesh, as it was for a broader agent and would rebake depending on the influence maps data. When rebaking the navmesh, the troops would either avoid and walk around areas where there previously had been a lot of casualties, or walk through an area that had shown success.
Unity however didn't have an option to calculate the cost of a path with the areas crossed, so I had to do that calculation myself, with help of the influence objects (boxes in image) placed by the influence map. At each corner of the path to available targets, I would raycast to the next corner when calculating the length, adding modifier values depending on the area cost.
The God AI would do the grind work. It would tell the influence map to bake the navmesh, send out troops and do data calculations. The AI would send out two formation generals with 30 units each to the best target. The calculation of the best target was the part that took the longest to work on. There were a lot of numbers and different "fitness" values that needed to be tweaked. And then I was a bit silly and created a big map, which could have long distances to run. This resulted in longer simulation times.
The final recipe for the best target was the one that had the least amount of failure, biggest threat, most damaged, highest value, best area value and the shortest path cost.
Whenever the troops succeeded or failed (they all died), the God AI would do a new calculation to determine which target to attack. The algorithm was as follows. Influence Navmesh -> Rebake Navmesh -> Calculate best target -> Send out Troops -> Wait for result.
As my main focus wasn't formations, I started of creating them early with simple positioning. I had a Formation General that handleded the pathfinding to targets. The formation general had a list of units, and depending on which formation the general used, it determined their positioning and made them move to those positions. I tried a bit with steering behaviours making them avoid each other, but decided to only use it while attacking, as it looked better and more smooth when they could clip into each other when running to their formation slot.
Unity has a built in Agent obstacle avoidance, but I turned it off as it freaked out the general when the units were close by, which was always. This caused units to detect obstacles only when close by, trying to move around them afterwards. I didn't see it as a big issue, as my simulation map didn't have really tight areas and much collision avoidance.
The result of the project was a God AI that eventually would crack the gates and reach its target. I am overall pleased with the result, most happy of reaching my goal of creating something that looked neat! I had a lot of fun moving around and following the characters whilest listening to epic music. When I added the final touch with night time, it got even better!
I've once again learnt that working with AI takes a lot of time balancing, trying to find the values that make it look good. Especially with the "learning" AI, I could have been tweaking variables for ages. I found it difficult finding a balance of what the correct behaviour should be. Honestly, the troops could run into the same direction over and over again, eventually cracking the base, with no casualties taken into consideration. That, however, would not have been fun at all.
If I had more time, I would have definitely created some troops on the defending side, creating close combat battles. My initial plan was also to have ranged units, but I cut them from the plan quite early as the project already had a high scope. When the enemies attack, they all kinda clump together, fighting to find a spot where they could attack. This could have been solved with a feature where they would wait for their turn to attack. Also, it would have been nice and more of a "battle simulation" to send out troops in intervals, instead of only sending out two troops at a time and wait. And finally, of course, tweaked a lot more on the decision making variables.


@* * Copyright 2022 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. *@ @this( confirmation: components.confirmation, h1: components.h1 ) @(claimPeriod: Period, calculation: PhaseTwoFurloughCalculationResult, percentage: FurloughGrantRate = EightyPercent)(implicit messages: Messages) @confirmation { @h1("confirmation.no.nic.pension.heading", classes = Some(""))
@messages("confirmation.heading.percent", percentage.value)
@messages("confirmation.heading.claimPeriod", dateToStringWithoutYear(claimPeriod.start), dateToString(claimPeriod.end))
£@calculation.atRate(percentage).formatted("%.2f")


--- layout: default --- {{ page.title }} {{content}} {% include photoswipe.html %} {% include post_scripts.html %}


Lots of easy to use component blocks for fast Bootstrap site development
Etsy ethnic actually hella Odd Future meggings shabby chic leggings salvia master cleanse stumptown.
Etsy ethnic actually hella Odd Future meggings shabby chic leggings salvia master cleanse stumptown.
Etsy ethnic actually hella Odd Future meggings shabby chic leggings salvia master cleanse stumptown.
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam.
Try the demoWe are easy to find in the heart of London's business district, just a short walk from several Tube Stations.


Tanapa to introduce 3 national parks
by Hellen NachilongoDar es Salaam. The Tanzania National Parks Authority(Tanapa) said yesterday that it was in final stages of establishing three national parks that will cover a total of 47,000 square meters.
Tanapa conservation commissioner Dr Allan Kijazi made the revelation when briefing journalists in Dar es Salaam yesterday on the achievements they have recorded in the past four years of President John Magufuli’s leadership.
He named the new parks as Nyerere, Ugola and Kigosi.
The Selous Game Reserve will be upgraded to Nyerere National Park as Tanzania endeavours to create the largest national park in Africa.
“The aim is to use our own natural resources in boosting Tanzania’s economy through attraction of tourists,” he said.
The three national parks will bring the total number of such conservation areas in Tanzania to 22.
Advertisement
A total of 850 people will get employment through the establishment of the three national parks, he said.
This will bring the total number of direct employment under Tanapa to 1,500.
So far, he said, a total of 100,000 people are indirectly employed in Tanzania’s national parks.
He also said Tanapa was working on an action plan on land use that will seek to reduce conflicts between itself and people who share boundaries with national parks. The project will cost a total of Sh5 billion.
He stressed that they used to have several boundary conflicts with wananchi but, so far they have sorted more than 80 per cent conflicts concerning boundaries therefore, coming up with a land use plan will create awareness to wananchi on restricted areas.
Explaining on the achievement, he said since 2015/19 they improved revenue collection at larger scale.
“Tanapa collected Sh3.5 billion during the 2015/16 financial year but the amount rose Sh42 billion during the 2018/19 financial year,” he said.


Six killed in Tanzania attack near border with Mozambique
Six Tanzanians were shot dead and seven others injured in an attack carried out by unidentified assailants in a village bordering a region in Mozambique known for jihadist activity, a police official said on Wednesday.
For nearly two years, jihadists have carried out numerous raids in the Mozambique's Cabo Delgado province bordering Tanzania, killing at least 300 civilians and displacing tens of thousands of people.
"The attackers, presumably from Mozambique, gathered the villagers together before opening fire," said Robert Boaz, criminal investigations chief for the Tanzanian police, during a meeting near the attack site in the southeastern district of Tandahima.
"Six were killed and seven were injured," he said.
The attack targeted the village of Ngongo on the Tanzanian side of an island in the Ruvuma river, which forms part of the border between Tanzania and Mozambique, Boaz said.
"The police and other security organs are doing everything to ensure that everyone involved is arrested and brought to justice," he said. "No drop of Tanzanian blood can be spilled with impunity."
According to Mozambican media reports, Tanzanians are among the jihadists operating in the Mozambique's Cabo Delgado.
Tanzanian police chief Simon Sirro said in October last year that Tanzanian "criminals" had fled "to establish their base in Mozambique".
These "criminals", he said at the time, were implicated in multiple killings in 2016 and 2017 targeting police and administrative officials in the eastern district of Kibiti.
The motive for the killings remains unknown, but Tanzanian President John Magufuli suggested in June 2017 that they were religiously motivated, and some blame them on Islamist extremists.


{% include head.html %}
Subscribe via email, and get invitations for our beta test and launch.
How are they to believe in one of whom they have never heard?And how are they to hear without someone to proclaim him?— Romans Ten:14


--- layout: rustwasm title: wasm-bindgen description: wasm-bindgen for facilitting high-level interactions between wasm modules and JavaScript keyword: wasm-bindgen, rustwasm ---
wasm-bindgen is used for facilitting high-level interactions between wasm modules and JavaScript. You can use it to import Javascript functions/Web APIs for use in Rust or export WASM functions defined in Rust for use in Javascript. This interoperability is useful in ensuring that a rustwasm program have access to all the available APIs of the browser and existing Javascript applications can flexibly plug in a wasm module to speed up performance.
The following lib.rs import the 'window.alert' function from the web to rustwasm.
use wasm_bindgen::prelude::*;
#[wasm_bindgen]
extern "C" {
fn alert(s: &str);
}
#[wasm_bindgen(start)]
pub fn main() -> Result<(), JsValue> {
alert("Hello World");
Ok(())
}
After compiling the above, simply use the following HTML to run the wasm-bindgen 'Hello World' example.
<html>
<head>
<meta content="text/html;charset=utf-8" http-equiv="Content-Type"/>
</head>
<body>
<script type="module">
import init from './pkg/hello_web.js';
async function run() {
await init();
}
run();
</script>
</body>
</html>
use wasm_bindgen::prelude::*;
#[wasm_bindgen]
extern "C" {
fn alert(s: &str);
}
#[wasm_bindgen]
pub fn add(a: u32, b: u32) -> u32
{
a + b
}
#[wasm_bindgen(start)]
pub fn main() -> Result<(), JsValue> {
alert("Hello World");
Ok(())
}
Use exported Rust things from JavaScript with ECMAScript modules!
<html>
<head>
<meta content="text/html;charset=utf-8" http-equiv="Content-Type"/>
</head>
<body>
<script type="module">
import init from './pkg/hello_web.js';
async function run() {
await init();
const result = add(1, 2);
console.log(`1 + 2 = ${result}`);
if (result !== 3)
throw new Error("wasm addition doesn't work!");
}
run();
</script>
</body>
</html>


Github
Blog
Alignment
Chaotic Lazy
Programming Languages
- Python 3.x/2.7+ (Fluent)
- Javascript (Fluent)
- Go (Proficient)
- Kotlin (Deployed)
- PHP (Deployed)
- Java (Competent)
- C (Competent)
- C++ (Competent)
RDBMS Systems
TSDB Systems
NoSQL System
An Unordered list of DevOps and SysAdmin Experience
- Amazon Web Services (EC2, Lambda, S3)
- Google Cloud (Compute Engine, Ethereum)
- Linode
- OpenShift
- Heroku
- Linux (Debian, Ubuntu, Ubuntu Server, Mint, Red Hat)
An Unordered List of Various Frameworks & Libraries
- Django.py
- Web.py
- Flask.py
- Pandas.py
- Node.js
- Express.js
- Sails.js
- Angular.js (1 & 2+)
- JQuery.js
- React.js (Begrudgingly)
- Redux.js
Blockchain Stuff
- Web3.js
- ethereum.js
- Geth
- Quorum & Klayton
- Hyperledger
- Corda
- Solidity (Fluent)
- Vyper (Proficient)
Selected Projects
This resume page follows a design philosophy.
Go Home


ES6 superset
From their website:
Learning typescript is not much more than learning ES6, so let's first have a look at ES6.


COVID-19 ESTIMATOR
STAY SAFE!!!
STAY HOME!!!
Total Hospital Beds
Population
CI:
Currently Infected
IBRT :
Infected By Requested Time
Time to Elapse
Reported Cases
DIF:
Dollars In Flight
SCBRT :
Severe Case By Requested Time
Period Type
days
weeks
months
Get Estimation
Submit
SI:
Severe Impact
HBBRT :
Hospital Bed By Requested Time
ESTIMATION
Impact CI
Impact IBRT
Impact SCBRT
Impact HBBRT
Impact CFIBRT
Impact CFVBRT
Impact DIF
SI CI
SI IBRT
SI SCBRT
SI HBBRT
SI CFIBRT
SI CFVBRT
SI DIF


This tests double clicking after the last character in the last cell of a block table. The paragraph break (the space between the last character and the first character in the next paragraph) should be selected. Selection painting problems might prevent the paragraph break from appearing as selected even though it is. To test manually, double click inside the table cell, after the last character, and hit delete. Afterward, the table should contain 'foobar'.
| foo |


Sam Warburton joins Wayne Pivac's Welsh coaching team
by Will O'CallaghanFormer Lions captain Sam Warburton has joined Wales' new-look coaching team under new boss Wayne Pivac.
The former Welsh international flanker was forced to retire at the age of 29 last season after failing to recover from knee and neck injuries and his new role will be his experience of coaching.
Warburton will work alongside Byron Hayward on defence in the new setup and says it's a huge honour to land the role:
“I’m delighted to be part of the senior national coaching team."
“It is a genuine privilege to be considered for such a role and I can’t wait to do my upmost to contribute to help improve the team and players. With such a great group of players and management it is an amazing opportunity which I am very proud to be given”
“Sam is one of the most experienced leaders in rugby with excellent knowledge and communication skills and having only recently retired he has a full grasp on the international game,” former Scarlets boss Pivac said of the appointment.
“We looked at the coaching structure and the roles of each coach and believed by adding a second defensive role into the team adds value, adds a point of difference and allows a specialist to work in the contact area and I believe Byron and Sam will compliment each other in the roles.”
Everyone’s in the Team Of Us.
Vodafone. The Official Sponsor of the Irish Rugby Team.


Confirm
Add
🛈 Drag and drop players between teams
Total Overs:
4
🏏 Team A
Toss
🏏 Team B
0
1
2
3
4
6
Wide
No-Ball
Wicket
Re-Ball
Rotate


Name: {{user.name}}
Username: {{user.login}}
Followers:{{user.followers}}
Following:{{user.following}}
Number of public repositories: {{user.public_repos}}
Bio: {{user.bio}}
Created: {{user.created_at|date}} {{user.created_at|timePassed}} day(s) ago.
We couldn't find any users matching with that name
Please enter a valid user name


NATIONAL SERVICE
Celtic star Forrest reckons Scotland players would welcome Brown back with open arms
by Gareth LawCELTIC star James Forrest reckons Scotland’s players would welcome back Scott Brown with open arms.
Hoops skipper Broony refused to rule out a return to the national set-up if Steve Clarke’s side make it to the Euro 2020 finals next summer.
He has retired twice before but has left the door open to a shock comeback if we make it through March’s play-offs.
Hoops boss Neil Lennon has dampened down those expectations.
But Forrest, who has 34 caps, thinks the entire Scotland squad would be over the moon to see veteran Brown, 34, step back in.
He said: “We all know how much Scott does at club level, day in and day out. So if he’s saying that, if he did come back then the staff and players would welcome it.
“That’s twice he has retired, but he kind of cast a wee bit of doubt on whether he actually retired the second time!
“But if he came back this time it would be great. It’ll be up to him and the manager to see how everyone is feeling about it, though.”
Friday’s draw saw Scotland handed a play-off tie with Israel at Hampden on March 26.
Win that one-off game and a trip to either Norway or Serbia will stand between us and a return to a finals for the first time since 1998.
Forrest hit a hat-trick to fire Scotland to a 3-2 win over Israel to seal qualification from the Nations League group and into the play-offs when they last faced each other at Hampden a year ago.
Asked about his treble, Forrest said: “It was a great night for me and for the team. It was the game that got us into the play-offs.
“When this game comes around we’ll take confidence from that, as we will from the last couple of wins. I got my first Scotland goals in the game against Albania before that match.
“We had to beat Israel to go through and I was buzzing to get the hat-trick that did it.
“One of the goals, the one I flicked up and volleyed in, is one of the best I’ve scored — for Celtic or Scotland.
“It was always going to be a hard game, no matter who we got. We’re at home and we’ll have the fans behind us, so hopefully we can get the same result.
“There was a bit of banter with Nir Bitton and Hatem Elhamed as soon as our physio Tim Williamson came out and told us the draw! Nir missed the games before so he’s excited about it.
“They have struggled a wee bit recently but it’s a one-off game and they’ll be right up for it, so it’s still dangerous for us.
“That’s quite exciting as well. We’ve not had many games for Scotland against some of the other guys who play with us at club level. So there’s a fair bit of banter flying about.
“Nir’s giving us a bit and big Kris Ajer is quite outspoken, too. They are all wanting to get there, the same as we do.
“We know Norway and Serbia are both decent but it would be massive if we got there and won.


|
|
#define | COMMAND_GEN_IMG 0X01 |
| |
|
#define | COMMAND_IMG2TZ 0X02 |
| |
|
#define | COMMAND_MATCH 0X03 |
| |
|
#define | COMMAND_SEARCH 0X04 |
| |
|
#define | COMMAND_REG_MODEL 0X05 |
| |
|
#define | COMMAND_STORE 0X06 |
| |
|
#define | COMMAND_LOAD_CHAR 0X07 |
| |
|
#define | COMMAND_UP_CHAR 0X08 |
| |
|
#define | COMMAND_DOWN_CHAR 0X09 |
| |
|
#define | COMMAND_UP_IMAGE 0X0A |
| |
|
#define | COMMAND_DOWN_IMAGE 0X0B |
| |
|
#define | COMMAND_DELETE_CHAR 0X0C |
| |
|
#define | COMMAND_EMPTY 0X0D |
| |
|
#define | COMMAND_SET_SYS_PARA 0X0E |
| |
|
#define | COMMAND_READ_SYS_PARA 0X0F |
| |
|
#define | COMMAND_SET_PWD 0X12 |
| |
|
#define | COMMAND_VFY_PWD 0X13 |
| |
|
#define | COMMAND_GET_RANDOM_CODE 0X14 |
| |
|
#define | COMMAND_SET_ADDER 0X15 |
| |
|
#define | COMMAND_CONTROL 0X17 |
| |
|
#define | COMMAND_WRITE_NOTEPAD 0X18 |
| |
|
#define | COMMAND_READ_NOTEPAD 0X19 |
| |
|
#define | COMMAND_HI_SPEED_SEARCH 0X1B |
| |
|
#define | COMMAND_TEMPLETE_NUM 0X1D |
| |
Command Codes.


menu
search
Search
Sign in
arrow_drop_down
Sign in
Register
shopping_cart
search
Search
Sign in
arrow_drop_down
Sign in
Register
LUGGAGE
TRAVEL ACCESSORIES
CLOTHINGS
SPECIAL PACKAGES
PACKING TIPS
LUGGAGE
TRAVEL ACCESSORIES
CLOTHINGS
SPECIAL PACKAGES
PACKING TIPS
Contact Us
First Name
Last Name
Email
Textarea
Submit
send
Information
Phone: 555-555-555
Location: 1001 1st Ave, Seattle, WA 98101
Email: customerservice@pack.com


scshow collects your Google Account ID and G Suite group-name for analyzing usage.
scshow uses Skyway that is provided by NTT Communications.
This application does NOT expect using from EU / by people protected GDPR.


All the inventory from Recreation USA can be filtered in this page, the result will be shown in the table.


Apache Lucene - Building and Installing the Basic Demo
About this Document
This document is intended as a "getting started" guide to installing and running the Lucene web application demo. This guide assumes that you have read the information in the previous two examples. We'll use Tomcat as our reference web container. These demos should work with nearly any container, but you may have to adapt them appropriately.
About the Demos
The Lucene Web Application demo is a template web application intended for deployment on Tomcat or a similar web container. It's NOT designed as a "best practices" implementation by ANY means. It's more of a "hello world" type Lucene Web App. The purpose of this application is to demonstrate Lucene. With that being said, it should be relatively simple to create a small searchable website in Tomcat or a similar application server.
Indexing Files
Once you've gotten this far you're probably itching to go. Let's start by creating the index you'll need for the web examples. Since you've already set your CLASSPATH in the previous examples, all you need to do is type:
java org.apache.lucene.demo.IndexHTML -create -index {index-dir} ..You'll need to do this from a (any) subdirectory of your {tomcat}/webapps directory (make sure you didn't leave off the .. or you'll get a null pointer exception). {index-dir} should be a directory that Tomcat has permission to read and write, but is outside of a web accessible context. By default the webapp is configured to look in /opt/lucene/index for this index.
Deploying the Demos
Located in your distribution directory you should see a war file called luceneweb.war. If you're working with a Subversion checkout, this will be under the build subdirectory. Copy this to your {tomcat-home}/webapps directory. You may need to restart Tomcat.
Configuration
From your Tomcat directory look in the webapps/luceneweb subdirectory. If it's not present, try browsing to http://localhost:8080/luceneweb (which causes Tomcat to deploy the webapp), then look again. Edit a file called configuration.jsp. Ensure that the indexLocation is equal to the location you used for your index. You may also customize the appTitle and appFooter strings as you see fit. Once you have finished altering the configuration you may need to restart Tomcat. You may also wish to update the war file by typing jar -uf luceneweb.war configuration.jsp from the luceneweb subdirectory. (The -u option is not available in all versions of jar. In this case recreate the war file).
Running the Demos
Now you're ready to roll. In your browser set the url to http://localhost:8080/luceneweb enter test and the number of items per page and press search.
You should now be looking either at a number of results (provided you didn't erase the Tomcat examples) or nothing. If you get an error regarding opening the index, then you probably set the path in configuration.jsp incorrectly or Tomcat doesn't have permissions to the index (or you skipped the step of creating it). Try other search terms. Depending on the number of items per page you set and results returned, there may be a link at the bottom that says More Results>>; clicking it takes you to subsequent pages.
About the code...
If you want to know more about how this web app works or how to customize it then read on>>>.


Categorical Time-Series Analysis
Introduction
CategoricalTimeSeries.jl is a Julia package regrouping methods of categorical time-series analysis. The term categorical commonly refers to two types of data: nominal and ordinal.
Nominal, or labeled values represent discrete units that have no intrinsic order, like common types of pet:
- Cat
- Dog
- Bird
Ordinal values on the other hand represent discrete and ordered units, like the size of a coffee cup:
- Small
- Medium
- Large
When categorical data is layed out in function of time, one speaks of categorical time-series.
Often, especially when dealing with ordinal time-series, it is enough to map the different values to a set of integers to carry the analysis. However, when it is not sufficient CategoricalTimeSeries.jl is here to help.
Overview
The package lets you carry four main kind of analysis: Spectral analysis, Data clustering, correlations analysis and motif recognition. Other functionnalities are also avalaible (see misc.). These methods are agnostic to the type of data used (ordinal or nominal) as they do not rely on a pre-established ordering. Here is a quick overview of these methods, for more details go to the specific sections.
Spectral analysis
The standard approach to study spectral properties in categorical time-series is to map the different values to a set of numbers. While the overall shape of the spectrum is usually unaffected by this operation, peaks representing cyclic behaviors in the time-series can completely disappear depending on the choice of mapping. To tackle this issue, one can use the spectral envelope method. It was developed by David S. Stoffer in order to identify optimal mappings.
Data clustering
A categorical time-series might have many different possible values, but these values are rarely independant. Some categories can be loosely equivalent to one-another. For example, among the values "male"
, "female"
, "house"
and "car"
, it is evident that "male"
and "female"
refer to similar concepts and could be grouped in one single category. Data clustering is the task of identifying such relationships in the time-series in order to reduce it to a more efficient representation. Here, an implementation of the information bottleneck concept is used to this end.
Motif recognition
Time-series sometimes present repeating motifs (or patterns) that are worthwhile identifying. In categorical time-series, the lack of proper distance measurement complicates this task, nonetheless several methods have been developed to this end. An implementation using the concept of random projection is used here.
Correlation analysis
The notion of autocorrelation function is formally not defined for a categorical time-series. Yet, it might be of interest to know how inter-dependent the values of the time-series are. Efforts have been made to generalize the concept of linear correlations to categorical time-series. This package implements several of these methods.
Installation
The source code is available on GitHub, otherwise, CategoricalTimeSeries.jl can be installed with
using Pkg
Pkg.add("CategoricalTimeSeries")
To use it, you need to import it:
using CategoricalTimeSeries


22 January 1999
Disease Outbreak Reported
Meningococcal meningitis has been reported from the following communities in the Northern Darfur region: El Fashir (population 657 852) - 21 cases, 4 deaths; Kutum (population 348 000) - 135 cases, 11 deaths; Kabkabiyya (population 240 017) 43 cases, 15 deaths. Cases have continued to be reported, reaching a total of 199 cases and 30 deaths by 20 January.
A WHO team is assisting with the assessment of the epidemiological situation and needs. Team members visited the areas affected by the outbreak together with the Sudanese health authorities and other international partners, including UNICEF, Médecins sans frontières and the International Federation of Red Cross and Red Crescent Societies. So far, 91 000 people have been vaccinated by 40 vaccination teams. While it appears that the number of new cases has diminished over the last few days, plans are being drawn up to strengthen surveillance and control measures throughout the country in preparation for any further outbreaks of the disease.


Form Input Text
Text input are most used input in forms. For that reason, there are various layouts and options
Append / Prepend Input
Add icons inside your input to explain which type of data is required. You can add all icons available, at the beginning or at the end of input.
Here is basic markup for append and prepend input:

 <input type="text" class="form-control">

 <input type="text" class="form-control">

Size of Input
You can change input size by adding input-sm
class for small input or input-lg
for large input.
You can choose various sizes: small, medium and large input.
Here is basic text input markup for small and large input:
<input type="text" class="form-control input-sm"> <input type="text" class="form-control input-lg">
Input Color
By default, background color is light gray. But you can change input color if you want to white or dark.
Markup of colored input text:
<input class="form-control form-white" type="text"> <input class="form-control form-dark" type="text">
It's possible to apply all background colors to input too:
For example, for a blue style input, you will have this markup:
<input class="form-control bg-blue" type="text">


Who doesn't love a good Marvel hero?!? Test your knowledge of Marvel's Universe and discover new characters and stories.
Let's play!


--- layout: post title: A Curriculum for 2010 category: Education ---
I'm writing this in late August, so maybe not so much a plan as a report.
The most exciting new thing for this year has been finding the Classical Liberal Arts Academy(CLAA). It is a distance education program delivered at your own pace over the internet. The framework comes from old Classical teaching - the trivium and quadrivium. Although it seems beyond our abilities at the moment, it is good to know it is there.
This year our second son made his first Holy Communion. He had to go through the St Joseph's Baltimore Catechism for First Communicants. We are also getting through the Faith and Life series. Weekday Masses help too - at least once a month. Researching saints is good for history as well as spirituality. Saint of the Day stories for children are available at J Club by the Sisters of St Paul.
I'm still referring to CMIT's Maths Enhancement Program from time to time. Instead of following their program we do a little arithmetic drill. Addition grids have been a handy way to get more arithmetic practice for minimal writing. Each boy has a half a 10mm grid exercise book to write in. We cut a regular book in half to make smaller books so hopefully we can have a little work done well.
Each day each child writes a little - we're creeping up to one sentence a day. Instead of preprinted texts its just Mum's best printing (descended from NSW foundation) copied, making sure to form letters from top to bottom. Again we cut the exercise books to make smaller books to help focus on doing a small bit well.
For learning grammar we have Grammar-land by M L Nesbit. It seems like a fun way to start. The book has been scanned and the text read by computer. The pdf is quite readable, but the text version is awful. A project would be to fix up the text and add in printable worksheets for each chapter.
Reading aloud. Peter is reliving Swallows and Amazons for bedtime stories. Veronica's reading Robin Hood - or one version thereof (SC Johnson, abridged).
The Blue Mountains City Library is a great source of books. The feeling of selecting a bagful of books with no charge, and no obligation to find permanent shelf space for them cheers me up no end. They will even consider requests to purchase new books. I have taken in book reviews from the Journal of Catholic Culture AD2000 and a few months later they have the book.
Our not very local homeschoolers group has excursions too. We've been to Manly Oceanworld and a children's concert with the Sydney Symphonia.
So that is what our homeschooling looks like at the moment. The boys are learning and our family is hanging together.
My goals for education were to make sure they knew they didn't know everything and to know that they could learn anything. That came from when I was tutoring. I guess it's about the balance between presumption and despair.
Why not add a section for the parents?
Veronica likes studying and so she's doing a course about The Billings Ovulation Method of Natural Family Planning. Also stalled somewhere in the Latin Mass Society, Simplicissimus course.


svgOutputService
axisJsApp
Service in the axisJsApp. TODO move the SVG creation code from exportChart directive to here.


[gecode-users] gecode gpu support
Christian Schulte
cschulte at kth.se
Mon Mar 23 21:13:47 CET 2015
Gecode does not support GPUs. Christian
--
Christian Schulte, www.ict.kth.se/~cschulte/
From: users-bounces at gecode.org [mailto:users-bounces at gecode.org] On Behalf Of Abc ZU
Sent: Monday, March 23, 2015 8:38 PM
To: users at gecode.org
Subject: [gecode-users] gecode gpu support
Hi guys,
How to enable gecode gpu support?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.gecode.org/pipermail/users/attachments/20150323/351dece6/attachment.html>
More information about the users
mailing list


NumPy forms an essential basis for astropy, and astropy’s development has led to the identification of problems with some of numpy’s functionality. Often, these are corrected in later versions of numpy, but in order for astropy not to depend on these, work-arounds are made, usually in the code. If functions are used in more than one place, however, it can be more convenient to provide patched routines. Hence, astropy.utils.compat.numpy.
To ensure that patched code is only used when required, and that it will be easy to remove it if it is no longer needed for any supported version of NumPy, the following procedure should be used to add a patched routine:
For an example, see numpy/lib/stride_tricks.py and the corresponding numpy/tests/test_broadcast_arrays.py.
Note that patched routines will normally only be considered if they are part of NumPy. Thus, if the patch concerns a new bug discovered in numpy, a pull request should first be made to NumPy (which can of course form the basis of a pull request to astropy).
NumPy functions and classes needed for astropy but not available in all supported NumPy versions. See docs/utils/numpy.rst for details.
| broadcast_arrays(*args, **kwargs) | Broadcast any number of arrays against each other. |


Configuration versioning and backup
During setup of the system, BeoLiving Intelligence has a live configuration: every time the installer makes a change in any of the configuration screens, this change takes effect immediately. This configuration is called the current configuration.
An auto-save version of the configuration is also saved automatically whenever changes have been made.
You can save up to 10 revisions of the configuration, so you can recall a previous revision if necessary.
You can also download or upload a configuration to your computer for backup purposes.
All this functionality is available under the Configuration menu at the top right of the screen.
Revision history
BeoLiving Intelligence keeps a record of the last 10 configuration versions.
You can explicitly save a new version by selecting Configuration ->
Save revision
.
Every time you save your configuration, the following happens:
- You are prompted for a short description of this revision.
- The current configuration is copied to the head of the revision history.
- If the history already contained 10 revisions, the oldest revision is discarded, in order to leave space for the new revision.
- If there was an auto-save version, it is discarded.
So, if the system has the following revision history:
| Rev | Date saved | Name |
|---|---|---|
| r1 | Dec 20, 2013 9:31:59 AM | Basic integration |
| r2 | Dec 27, 2013 6:41:52 PM | Macros for cinema mode |
| Jan 12, 2014 7:03:17 PM | Auto save |
After pressing SAVE, the current configuration will be copied into a new revision (rev 3 in this example), and the auto-save configuration will be discarded:
| Rev | Date saved | Name |
|---|---|---|
| r1 | Dec 20, 2013 9:31:59 AM | Basic integration |
| r2 | Dec 27, 2013 6:41:52 PM | Macros for cinema mode |
| r3 | Jan 12, 2014 7:05:25 PM | Lighting scenes and automation |
You need not save a revision for every change you make. Auto-save takes care of small changes (see below).
Use revisions for major changes that you may wish to revert as a group (by recalling a previous revision), or after a day’s work at the installation.
Also, saving (or auto saving) revisions serves as synchronization points for all the clients connected to the gateway. For example, when you are making changes and want to test them immediately on the BeoLiving App, you can press [Shift+Ctrl+S] to create an auto-save revision (see below).
Auto-save configuration
When you are making changes, BeoLiving Intelligence will automatically save a revision called auto-save configuration in the following situations:
- If you have made changes and then you’ve been idle for 30 seconds, or
- If you are still working on the configuration but there are unsaved changes for more than 5 minutes.
This means that while you are working on the current configuration, BeoLiving Intelligence will ensure that your recent changes will be periodically saved into the auto-save configuration.
An auto-save configuration can also be generated by selecting Quick save revision on the Configuration menu, or by pressing [Shift+Ctrl+S] while navigating the administration interface.
Remember that explicitly saving a new revision will remove the auto-save configuration, since the saved revision is up to date with the current configuration.
Restarting BeoLiving Intelligence
If BeoLiving Intelligence is restarted (for example, after a power failure), the configuration will be taken from the auto-save configuration if it exists, or else from the newest revision.
Therefore, if you are working on the configuration and there is a power cut, the most that you can lose are the latest 5 minutes of changes.
Recalling a saved revision
You can revert to any of the 10 saved revisions, or to the auto-save configuration.
Select Configuration --> Revision history
and choose one of the
revisions.
The selected revision will be copied into the current configuration, and become active immediately. It will be also saved as a new auto-save configuration, named appropriately.
Uploading a configuration from your computer
By selecting Configuration -> Load from file
, you can upload a
configuration into BeoLiving Intelligence.
This uploaded configuration will substitute the current configuration and become active immediately. It will be also saved as a new auto-save configuration named “Upload”.
Saving a revision to your computer
By selecting Configuration --> Download to file
you can download the
current configuration to you computer.
It is recommended that you take a copy of the configuration when leaving the installation:
- It serves as a reference should the customer report a problem, or require help with the actual configuration.
- It is a backup of your work in case BeoLiving Intelligence is damaged.


Overview
Some experienced developers don’t use protected since it cannot provide clean data hiding.
Why is that?
background
Remembering in the post [Java OOP] Java modifier and Access Level, we got this:
Note: Java default access setting is ‘No modifier’, which is also called ‘Package Private’.
Another note: by saying ‘subclass’, it means subclass declared in another package.
And in [Design] Composition Over Inheritance, we know that basically inheritance breaks encapsulation.
the reason
inheritance is seldom the best tool and is not as flexible
the protected members form an interface towards subclasses (which is bad)
interfaces are tricky to get right and document properly
So, it’s better not to make the class inheritable and instead make sure it’s as flexible as possible (and no more) by using other means.
A excellent answer
A excellent answer from Sam Brand:
They tend to lead to YAGNI issues. Unless you have a descendant class that actually does stuff with the protected member, make it private.
“You aren’t gonna need it” (acronym: YAGNI) is a principle of extreme programming (XP) that states a programmer should not add functionality until deemed necessary.
They tend to lead to LSP issues. Protected variables generally have some intrinsic invariance associated with them (or else they’d be public). Inheritors then need to maintain those properties, which people can screw up or willfully violate.
Substitutability is a principle in OOP. It states that if S is a subtype of T, then objects of type T may be replaced with objects of type S without altering any of the desirable properties of that program
Liskov substitution principle (LSP) is a particular definition of a subtyping relation introduced by Barbara Liskov in 1987
They tend to violate OCP. If the base class makes too many assumptions about the protected member, or the inheritor is too flexible with the behavior of the class, it can lead to the base class' behavior being modified by that extension.
open/closed principle states “software entities (classes, modules, functions, etc.) should be open for extension, but closed for modification”.
That is, such an entity can allow its behaviour to be extended without modifying its source code.
This is especially valuable in a production environment, where changes to source code may necessitate code reviews, unit tests, and other such procedures to qualify it for use in a product
They tend to lead to inheritance for extension rather than composition. This tends to lead to tighter coupling, more violations of SRP, more difficult testing, and a slew of other things that fall within the ‘favor composition over inheritance’ discussion.
single responsibility principle states that every class should have responsibility over a single part of the functionality provided by the software, and that responsibility should be entirely encapsulated by the class. All its services should be narrowly aligned with that responsibility
An example
ClassA in packageA:
package packA;
import packB.ClassB;
public class ClassA {
protected int val = 10;
protected String getColor() {
return "colored";
}
public static void main(String[] args) {
ClassA ins = new ClassA();
System.out.println("val is " + ins.val);
System.out.println("color is " + ins.getColor());
System.out.println();
ClassB ins2 = new ClassB();
System.out.println("val is " + ins2.val);
System.out.println("color is " + ins2.getColor());
}
}
ClassB in packageB:
package packB;
import packA.ClassA;
public class ClassB extends ClassA {
public ClassB() {
val = 5;
}
public String getColor() {
return super.getColor();
}
}
Execution result:
val is 10
color is colored
val is 5
color is colored
The code shows how ClassB is able to access 1 protected variable and 1 protected method.


Create a mechanism by which DOM nodes can derive values needed for presentation from one or more model values. Further, create a mechanism by which user input can be assigned to model values.

<template instantiate>
{{ relationship }}
</template>

<template instantiate>
{{ relationship }}
</template>
Friend

A Binding is a connection between a node (target) value and one or more model values (sources). A binding is composed of:
Define clearly what a value means...property vs attribute.
model
property.format
method which combines them into a single value which can be assigned to the target.When a source is a DOM model, the path can reference values in ancestor element's model. E.g. {{ ../../someValue }} or {{ /someValue }}. Spec how this works.
Transforms primarily serve the function of converting model values between the most convenient internal representation and (possibly locale and context dependent) display representation. They can also serve the purpose of being tolerant of multiple user input formats.
A Transform must implement two methods:
function toTarget(value)
function toSource(value)
Ideally, a set of broadly useful transforms can be provided as a part of the MDV feature. Additionally, applications are free to implement their own, as well as register custom Transforms by name for use in declarative bindings. The MDV prototype implements a handful of Transforms which were useful for implementing many of the examples and use-cases.
Transform declarative registry API.
In general, the expected direction of data flow in bindings is from source to target. The binding directionality is determined by the Target:
Spec the behavior of one and two-way bindings
Needs to be formalized
Bindings can be declared in markup inline within a template declaration or via the bind
attribute.
Syntax needs improving. The transform separator looks like an *or* operator.
{{ product.name }}: {{ amount | current }}
Bindings can be declared inline only within a template element because the contents of template is not live within the document.
Inline bindings:
A simple binding declaration just specifies a path:
{{ path.to.value }}
A transform can be specified by name, and optionally be passed zero or more string arguments
{{ path.to.value | transformName }}
{{ path.to.value | transformName("arg1", "arg2") }}
Spec how transform names are registered.
More than one binding can be specified for a given target value:

Expressions must use the expr
prefix and declare their inputs:
{{ expr(symbol, stock.amount, stock.lastTrade @ price) symbol + ': ' + (amount * price) }}
bind
attributeNeeds to be designed
The bind
is the serialization of the bindings declared for an element:
bind
attribute for each template instance.


As if talking to a non-tech friend, discuss:
How does Javascript compare to HTML and CSS
HTML creates the content structure within a website and CSS makes the website look great with visual styling. Both of these are great tools to create static websites but if you want your website to come alive and interact with its users you will need to add some JavaScript. JavaScript gives websites the capabilty have some of the following exciting features: # Listen to events like pressing a keyboard key and do something. # Modify the HTML and CSS of a webpage after the page has loaded. # Make things move around the screen in interesting ways. # Create interactive games that work in the browser. # Allow you to interact with a webcam, microphone, and other things. JavaScript works alongside HTML and CSS to create really interactive websites.
Explain control flow and loops using an example process from everyday life, for example 'waking up' or 'brushing your teeth'
In JavaScript, control flow statements make decisions about what happens in a computer program. If, Else and Switch are all examples of control flow statements. In everyday life every decision we make can be modeled as a series of true and false statements. For example: "If the fuel tank in my car is empty today -TRUE: I go to the garage and fill it with petrol. FALSE: I will not go to the garage and fill it with petrol." This everyday example applies to everything your computer does. Control flow statements are the digital equivalents of the decisions we make where ythe computer code does something different depending on whether something is true or false. Loops in JavaScript repeat an action you want to do again and again based on a condition that is created along with the loop. An everyday example to explain this could be a timer on a lamp in your living room. For the set conditions e.g the hours set on the lamp timer, the light will switch on at the set time and remain on for the set hours and eventually turn off at the set finish time. This cycle will be repeated until the hours set on the timer are changed.
Explain the difference between accessing data from arrays and object literals
In JavaScript both objects and arrays can be described as boxes that can store information. Accessing information from an object box is slightly different to accessing information from the array box. This is because as the information gets stored in each box in a slightly differently. For example, if we take the object box and say we want to store cookbooks in the box. The only thing is we have lots of cookbooks from all over the world on different types of cuisine so in order to access or find a particular cookbook easily we must store them in a way that is easy to access them. So we will label the box 'cookbooks' and in the box we are going to store the books by 'country' so if I want to find my Jamie Oliver cookbook I go to the 'cookbook box' go to the 'England' and find my 'Jamie Oliver'book - easy - Cookbooks.England.JamieOliver!To access the values on the object, we use “dot notation”, that is, the name of the object, a dot, and the name of the property followed by its value. Arrays store information slightly differently to objects. So for example if I want to store all my wine bottles in wineboxes in my cupboard. So like my cookbooks I want to store my wine bottles in some order. So I take all my Chardonnays and store them in a 12 bottle wine box. So each bottle of Chardonnay has a position in the wine box so I know my Gibbston Valley Chardonnay is in position #1 and my Odyssey Chardonnay is in position #2 etc so all my Chardonanay bottles are found by referencing their position in the wine box -this is called numerical indexing and it is what Arrays use.
Explain what functions are and why they are useful
Functions in JavaScript are like quick, easy go to recipes in a cookbook. For example if you want to make a tomato sauce for your pasta dinner you can go to your recipe book and find your go to tomato sauce recipe, plug in your ingredients and there you have it - your finished sauce. This recipe is one you use every week so its re-useable, groups the same ingredients together - sometimes the volumes are different but you know exactly what the recipe produces everytime you use it. At a very basic level, a JavaSCript function is nothing more than a wrapper for some code. Functions are really useful as they group statements together and makes code reusable.


Last build change: {{ build.last_update.ctime }} Last page update: {{ build.current_time.ctime }}
See instructions - passed ? - failed ?