[1]
the down side :/: i actually think the staff was helpful , but not very smiling .
[2]
ta-reviews -rrb-/-rrb- , but because i kind of had expected something older and more worn down .


Comparison Analysis
After clicking on the run subdirectory of the comparison analysis a dialogue box appears. This module compares two different nets. By pressing the compare button the module will compare two different circuits.
The results appear as sown below.
The nets used for the comparison module in this example are illustrated below.


investpy.funds
¶
-
investpy.funds.
get_fund_countries
()¶ This function retrieves all the country names indexed in Investing.com with available funds to retrieve data from, via reading the fund_countries.csv file from the resources directory. So on, this function will display a listing containing a set of countries, in order to let the user know which countries are taken into account and also the return listing from this function can be used for country param check if needed.
- Returns
The resulting
list
contains all the available countries with funds as indexed in Investing.com- Return type
list
- countries- Raises
FileNotFoundError – raised when the fund_countries.csv file was not found.
IndexError – raised if fund_countries.csv file was unavailable or not found.
-
investpy.funds.
get_fund_historical_data
(fund, country, from_date, to_date, as_json=False, order='ascending', interval='Daily')¶ This function retrieves historical data from the introduced fund from Investing via Web Scraping on the introduced date range. The resulting data can it either be stored in a
pandas.DataFrame
or in ajson
object with ascending or descending order.- Parameters
fund (
str
) – name of the fund to retrieve recent historical data from.country (
str
) – name of the country from where the introduced fund is.from_date (
str
) – date as str formatted as dd/mm/yyyy, from where data is going to be retrieved.to_date (
str
) – date as str formatted as dd/mm/yyyy, until where data is going to be retrieved.as_json (
bool
, optional) – to determine the format of the output data (pandas.DataFrame
orjson
).order (
str
, optional) – optional argument to define the order of the retrieved data (ascending, asc or descending, desc).interval (
str
, optional) – value to define the historical data interval to retrieve, by default Daily, but it can also be Weekly or Monthly.
- Returns
The function returns a either a
pandas.DataFrame
or ajson
file containing the retrieved recent data from the specified fund via argument. The dataset contains the open, high, low and close values for the selected fund on market days.The returned data is case we use default arguments will look like:
Date || Open | High | Low | Close | Currency -----||------|------|-----|-------|---------- xxxx || xxxx | xxxx | xxx | xxxxx | xxxxxxxx
but if we define as_json=True, then the output will be:
{ name: name, historical: [ { date: dd/mm/yyyy, open: x, high: x, low: x, close: x, currency: x }, ... ] }
- Return type
pandas.DataFrame
orjson
- Raises
ValueError – argument error.
IOError – funds object/file not found or unable to retrieve.
RuntimeError – introduced fund does not match any of the indexed ones.
ConnectionError – if GET requests does not return 200 status code.
IndexError – if fund information was unavailable or not found.
Examples
>>> data = investpy.get_fund_historical_data(fund='bbva multiactivo conservador pp', country='spain', from_date='01/01/2010', to_date='01/01/2019') >>> data.head() Open High Low Close Currency Date 2018-02-15 1.105 1.105 1.105 1.105 EUR 2018-02-16 1.113 1.113 1.113 1.113 EUR 2018-02-17 1.113 1.113 1.113 1.113 EUR 2018-02-18 1.113 1.113 1.113 1.113 EUR 2018-02-19 1.111 1.111 1.111 1.111 EUR
-
investpy.funds.
get_fund_information
(fund, country, as_json=False)¶ This function retrieves basic financial information from the specified fund. Retrieved information from the fund can be valuable as it is additional information that can be used combined with OHLC values, so to determine financial insights from the company which holds the specified fund.
- Parameters
fund (
str
) – name of the fund to retrieve the financial information from.country (
str
) – name of the country from where the introduced fund is.as_json (
bool
, optional) – optional argument to determine the format of the output data (dict
orjson
).
- Returns
The resulting
pandas.DataFrame
contains the information fields retrieved from Investing.com from the specified fund; it can also be returned as adict
, if argument as_json=True.If any of the information fields could not be retrieved, that field/s will be filled with None values. If the retrieval process succeeded, the resulting
dict
will look like:fund_information = { 'Fund Name': fund_name, 'Rating': rating, '1-Year Change': year_change, 'Previous Close': prev_close, 'Risk Rating': risk_rating, 'TTM Yield': ttm_yield, 'ROE': roe, 'Issuer': issuer, 'Turnover': turnover, 'ROA': row, 'Inception Date': inception_date, 'Total Assets': total_assets, 'Expenses': expenses, 'Min Investment': min_investment, 'Market Cap': market_cap, 'Category': category }
- Return type
pandas.DataFrame
ordict
- fund_information
-
investpy.funds.
get_fund_recent_data
(fund, country, as_json=False, order='ascending', interval='Daily')¶ This function retrieves recent historical data from the introduced fund from Investing via Web Scraping. The resulting data can it either be stored in a
pandas.DataFrame
or in ajson
file, with ascending or descending order.- Parameters
fund (
str
) – name of the fund to retrieve recent historical data from.country (
str
) – name of the country from where the introduced fund is.as_json (
bool
, optional) – optional argument to determine the format of the output data (pandas.DataFrame
orjson
).order (
str
, optional) – optional argument to define the order of the retrieved data (ascending, asc or descending, desc).interval (
str
, optional) – value to define the historical data interval to retrieve, by default Daily, but it can also be Weekly or Monthly.
- Returns
The function returns a either a
pandas.DataFrame
or ajson
file containing the retrieved recent data from the specified fund via argument. The dataset contains the open, high, low and close values for the selected fund on market days.The returned data is case we use default arguments will look like:
Date || Open | High | Low | Close | Currency -----||------|------|-----|-------|---------- xxxx || xxxx | xxxx | xxx | xxxxx | xxxxxxxx
but if we define as_json=True, then the output will be:
{ name: name, recent: [ { date: dd/mm/yyyy, open: x, high: x, low: x, close: x, currency: x }, ... ] }
- Return type
pandas.DataFrame
orjson
- Raises
ValueError – argument error.
IOError – funds object/file not found or unable to retrieve.
RuntimeError – introduced fund does not match any of the indexed ones.
ConnectionError – if GET requests does not return 200 status code.
IndexError – if fund information was unavailable or not found.
Examples
>>> data = investpy.get_fund_recent_data(fund='bbva multiactivo conservador pp', country='spain') >>> data.head() Open High Low Close Currency Date 2019-08-13 1.110 1.110 1.110 1.110 EUR 2019-08-16 1.109 1.109 1.109 1.109 EUR 2019-08-19 1.114 1.114 1.114 1.114 EUR 2019-08-20 1.112 1.112 1.112 1.112 EUR 2019-08-21 1.115 1.115 1.115 1.115 EUR
-
investpy.funds.
get_funds
(country=None)¶ This function retrieves all the available funds from Investing.com and returns them as a
pandas.DataFrame
, which contains not just the fund names, but all the fields contained on the funds.csv file. All the available funds can be found at: https://www.investing.com/funds/- Parameters
country (
str
, optional) – name of the country to retrieve all its available funds from.- Returns
The resulting
pandas.DataFrame
contains all the funds basic information retrieved from Investing.com, some of which is not useful for the user, but for the inner package functions, such as the id field, for example.In case the information was successfully retrieved, the
pandas.DataFrame
will look like:country | name | symbol | issuer | isin | asset_class | currency | underlying --------|------|--------|--------|------|-------------|----------|------------ xxxxxxx | xxxx | xxxxxx | xxxxxx | xxxx | xxxxxxxxxxx | xxxxxxxx | xxxxxxxxxx
- Return type
pandas.DataFrame
- funds_df- Raises
ValueError – raised whenever any of the introduced arguments is not valid or errored.
FileNotFoundError – raised when the funds.csv file was not found.
IOError – raised if the funds.csv file is missing or errored.
-
investpy.funds.
get_funds_dict
(country=None, columns=None, as_json=False)¶ This function retrieves all the available funds on Investing.com and returns them as a
dict
containing the country, name, symbol, tag, id, issuer, isin, asset_class, currency and underlying data. All the available funds can be found at: https://www.investing.com/funds/- Parameters
country (
str
, optional) – name of the country to retrieve all its available funds from.columns (
list
ofstr
, optional) – description alist
containing the column names from which the data is going to be retrieved.as_json (
bool
, optional) – description value to determine the format of the output data (dict
orjson
).
- Returns
The resulting
dict
contains the retrieved data if found, if not, the corresponding fields are filled with None values.In case the information was successfully retrieved, the
dict
will look like:{ 'country': country, 'name': name, 'symbol': symbol, 'issuer': issuer, 'isin': isin, 'asset_class': asset_class, 'currency': currency, 'underlying': underlying }
- Return type
dict
orjson
- funds_dict- Raises
ValueError – raised whenever any of the introduced arguments is not valid or errored.
FileNotFoundError – raised when the funds.csv file was not found.
IOError – raised if the funds.csv file is missing or errored.
-
investpy.funds.
get_funds_list
(country=None)¶ This function retrieves all the available funds and returns a list of each one of them. All the available funds can be found at: https://www.investing.com/funds/
- Parameters
country (
str
, optional) – name of the country to retrieve all its available funds from.- Returns
The resulting list contains the retrieved data, which corresponds to the fund names of every fund listed on Investing.com.
In case the information was successfully retrieved from the CSV file, the
list
will look like:funds = [ 'Blackrock Global Funds - Global Allocation Fund E2', 'Quality Inversión Conservadora Fi', 'Nordea 1 - Stable Return Fund E Eur', ... ]
- Return type
list
- funds_list- Raises
ValueError – raised whenever any of the introduced arguments is not valid or errored.
FileNotFoundError – raised when the funds.csv file was not found.
IOError – raised if the funds.csv file is missing or errored.
-
investpy.funds.
get_funds_overview
(country, as_json=False, n_results=100)¶ This function retrieves an overview containing all the real time data available for the main funds from a country, such as the names, symbols, current value, etc. as indexed in Investing.com. So on, the main usage of this function is to get an overview on the main funds from a country, so to get a general view. Note that since this function is retrieving a lot of information at once, by default just the overview of the Top 100 funds is being retrieved, but an additional parameter called n_results can be specified so to retrieve N results.
- Parameters
country (
str
) – name of the country to retrieve the funds overview from.as_json (
bool
, optional) – optional argument to determine the format of the output data (pandas.DataFrame
orjson
).n_results (
int
, optional) – number of results to be displayed on the overview table (0-1000).
- Returns
The resulting
pandas.DataFrame
contains all the data available in Investing.com of the main ETFs from a country in order to get an overview of it.If the retrieval process succeeded, the resulting
pandas.DataFrame
should look like:country | name | symbol | last | change | total_assets --------|------|--------|------|--------|-------------- xxxxxxx | xxxx | xxxxxx | xxxx | xxxxxx | xxxxxxxxxxxx
- Return type
pandas.DataFrame
- funds_overview- Raises
ValueError – raised if there was any argument error.
FileNotFoundError – raised when funds.csv file is missing.
IOError – raised if data could not be retrieved due to file error.
RuntimeError – raised either if the introduced country does not match any of the listed ones or if no overview results could be retrieved from Investing.com.
ConnectionError – raised if GET requests does not return 200 status code.
-
investpy.funds.
search_funds
(by, value)¶ This function searches funds by the introduced value for the specified field. This means that this function is going to search if there is a value that matches the introduced value for the specified field which is the funds.csv column name to search in. Available fields to search funds are ‘name’, ‘symbol’, ‘issuer’ and ‘isin’.
- Parameters
by (
str
) – name of the field to search for, which is the column name (‘name’, ‘symbol’, ‘issuer’ or ‘isin’).value (
str
) – value of the field to search for, which is the str that is going to be searched.
- Returns
The resulting pandas.DataFrame contains the search results from the given query (the specified value in the specified field). If there are no results and error will be raised, but otherwise this pandas.DataFrame will contain all the available field values that match the introduced query.
- Return type
pandas.DataFrame
- search_result- Raises
ValueError – raised if any of the introduced params is not valid or errored.
FileNotFoundError – raised if funds.csv file is missing.
IOError – raised if data could not be retrieved due to file error.
RuntimeError – raised if no results were found for the introduced value in the introduced field.


The PALETTE record describes the colors selected in the Options dialog box, Color tab. Each rgch field contains 4 bytes: rgbRed , rgbGreen , rgbBlue , and an unused byte. The 3 color bytes correspond to the Red, Green, and Blue values in the Color Picker dialog box, and the unused byte is don’t-care. The Color Picker dialog box appears when you click the Modify button on the Color tab. If the worksheet uses the default palette, the BIFF file does not contain the PALETTE record.
Record Data
|
Offset |
Name |
Size |
Contents |
|
4 |
ccv |
2 |
Count of color values that follow |
|
6 |
rgch |
4 |
Color value of the first color in the palette |
|
10 |
rgch |
4 |
Color value of the second color in the palette |
|
14 |
rgch |
4 |
Color value of the third color in the palette |
|
... |
... |
... |
... |
|
var |
rgch |
4 |
Color value of the last color ( =ccv ) in the palette |


Templating
Yesterday I created an index for all the posts. I did not deal with grouping posts according to published date, nor did I spend much time on getting a correct title for the corresponding link. As such creating the index did very similar to creating the posts.
So I took the time to refactor some of the code. I introduced the promised-io
module to the project and used it to create posts and the index. I don not
handle errors explicitly, which is something I need to look into in the future.
For now I really on the promise/A contract when there is a missing error
handler.
I now got the basic parts. I can create html files for the posts and the index, and I can deploy to GitHub pages. I want to focus on a nicer template so that the post fit right in with the website.


{% include '../includes/head.html' %}
Home
Products
Contact
{% block content %}{% endblock %}
{% include '../includes/foot.html' %}


%%HEADER%%
Search
Match:
All
Any
Boolean
Sort by:
Score
Time
Title
Reverse Score
Reverse Time
Reverse Title
Query:
Comments
Verbose
%%RESULTS%%
%%NAVIGATION%%
%%FOOTER%%


BeOS Sample Code: Interface Kit
The Interface Kit is used to build and run a graphical and interactive user interface.
It provides a way to create and manipulate windows, and defines a complete graphics environment
for drawing in windows. It also provides classes for common UI widgets such as menus, buttons,
and scroll bars.
For more information, see the corresponding category in the online
Developer Library.
Projects
| CDButton | A tiny window that allows you to play audio CDs. It can
be run as a replicant in the Deskbar. |
| Clock | A simple application that draws an analog clock. |
| dragme | Demonstrates the drag-and-drop protocol for dragging
images to the Tracker. |
| Dynadraw 3 | A classic application that draws calligraphic
pen strokes. This version includes an interface for tweaking the drawing algorithm's
operation. |
| imaging | Shows how to enlarge an image with smoothing. |
| Iterview | Demonstrates how to iterate through a BShape
object. |
| Magnify | The BeOS application that magnifies the screen
image. Demonstrates APIs that allow you to communicate with the screen. |
| MenuWorld | Thoroughly demonstrates how menus work. |
| pot | A simple application that shows how controls can
be implemented with asynchronous mouse handling. |
| scrollbarapp | Shows how scroll bars can be used with
text and image documents. |
Back to the Sample Code Category Index
BeOS Release 4.5
Copyright © 1999 Be, Inc.
|


TOM AND VIV A film review by James Berardinelli Copyright 1995 James Berardinelli
RATING (0 TO 10): 6.5
U.S. Availability: 12/94-2/95 limited release Running Length: 1:55 MPAA Classification: PG-13 (Mature themes, PMS, language)
Starring: Willem Dafoe, Miranda Richardson, Rosemary Harris, Tim Dutton, Nickolas Grace Director: Brian Gilbert Producers: Peter Samuelson, Marc Samuelson, and Harvey Kass Screenplay: Michael Hastings and Adrian Hodges based on the play by Michael Hastings Cinematography: Martin Fuhrer Music: Debbie Wiseman Released by Miramax Films
TOM AND VIV is culture. From the opening credits to the closing caption, this is never in doubt. Not designed for mass consumption, the examination of T.S. Eliot's tragic first marriage has all the marks of a "typical" British art film (or an extended MASTERPIECE THEATER episode): it's wonderfully acted (with one exception), nicely photographed, dryly scripted, and trudges along with the pace of a slug.
The film purports to chronicle the thirty-plus year marriage of T.S. Eliot (Willem Dafoe) and Vivienne Haigh-Wood Eliot (Miranda Richardson). Beginning with their 1915 courtship, when both were in their twenties, TOM AND VIV spans decades, finally coming to an unnecessarily drawn-out conclusion around the time of the second World War. Both Dafoe and Richardson have some difficulty giving credible performances when their characters are young. Richardson improves greatly as Vivienne ages. Sadly, the same can't be said for Dafoe.
Tom and Viv's courtship is a whirlwind affair, and the pair has eloped before Tom learns his wife's "dark secret." She is the victim of a misdiagnosed hormonal imbalance which causes wild mood swings. The affliction's supposed treatment--which includes massive doses of alcohol and morphine-based medications--serves only to further destabilize Vivienne. Nevertheless, despite his obvious distress, Tom sticks by his wife although few aspects of their union could be considered anything less than disastrous.
TOM AND VIV doesn't try very hard to make an emotional impact. Oh, there are moments when some humanity breaks through the production's icy crust, but the film largely chooses to stand on intellectual grounds. T.S. Eliot, as clinically portrayed by Dafoe, comes across as a cold fish -- all mind and no heart. When circumstances at last drive him to bleat, "I crave companionship, yet I am completely alone," there are few in the audience who will spare him more than an obligatory moment of sympathy. Actors such as Albert Finney and Anthony Hopkins have created memorable characters out of repressed personalities. The same cannot be said of Dafoe. Tom is never more than a generic poet, and the internal mechanisms of his greatness remain hidden.
Whatever emotional response we have is reserved for Vivienne--and that's largely the result of Miranda Richardson's performance (for which she received an Oscar nomination). She shines in this role, regardless of whether she's throwing a tantrum or begging Tom never to leave her. Had this film been a little more about Viv, with less emphasis on her partner, TOM AND VIV would likely have seemed less stagnant.
There are times when the melodrama of TOM AND VIV becomes too much, but the film's most serious flaw is its pacing--it drags, especially during the last half-hour. While there's an admitted fascination in observing the disintegration of a once-promising union, especially with a performance like Richardson's in the foreground, TOM AND VIV would have been more moving had the filmmakers done some judicious editing.
- James Berardinelli<EMAIL_ADDRESS>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


|
MRSL DecompUtil Library
0.1
An implementaion of convex decomposition over point cloud
|
IterativeDecomp Class. More...
#include <iterative_decomp.h>
Public Member Functions | |
| IterativeDecomp () | |
| Simple constructor. | |
| IterativeDecomp (const Vecf< Dim > &origin, const Vecf< Dim > &dim) | |
| Basic constructor. More... | |
| void | dilate_iter (const vec_Vecf< Dim > &path_raw, int iter_num=5, decimal_t res=0, decimal_t offset_x=0) |
| Decomposition thread. More... | |
| Public Member Functions inherited from EllipsoidDecomp< Dim > | |
| EllipsoidDecomp () | |
| Simple constructor. | |
| EllipsoidDecomp (const Vecf< Dim > &origin, const Vecf< Dim > &dim) | |
| Basic constructor. More... | |
| void | set_obs (const vec_Vecf< Dim > &obs) |
| Set obstacle points. | |
| void | set_local_bbox (const Vecf< Dim > &bbox) |
| Set dimension of bounding box. | |
| vec_Vecf< Dim > | get_path () const |
| Get the path that is used for dilation. | |
| vec_E< Polyhedron< Dim > > | get_polyhedrons () const |
| Get the Safe Flight Corridor. | |
| vec_E< Ellipsoid< Dim > > | get_ellipsoids () const |
| Get the ellipsoids. | |
| vec_E< LinearConstraint< Dim > > | get_constraints () const |
| Get the constraints of SFC as . | |
| void | dilate (const vec_Vecf< Dim > &path, double offset_x=0) |
| Decomposition thread. More... | |
Protected Member Functions | |
| vec_Vecf< Dim > | downsample (const vec_Vecf< Dim > &ps, decimal_t d) |
| Uniformly sample path into many segments. | |
| decimal_t | cal_closest_dist (const Vecf< Dim > &pt, const Polyhedron< Dim > &vs) |
| Get closest distance. | |
| vec_Vecf< Dim > | simplify (const vec_Vecf< Dim > &path) |
| Remove redundant waypoints. | |
| Protected Member Functions inherited from EllipsoidDecomp< Dim > | |
| template<int U = Dim> | |
| std::enable_if< U==2 >::type | add_global_bbox (Polyhedron< Dim > &Vs) |
| template<int U = Dim> | |
| std::enable_if< U==3 >::type | add_global_bbox (Polyhedron< Dim > &Vs) |
Additional Inherited Members | |
| Protected Attributes inherited from EllipsoidDecomp< Dim > | |
| vec_Vecf< Dim > | path_ |
| vec_Vecf< Dim > | obs_ |
| vec_E< Ellipsoid< Dim > > | ellipsoids_ |
| vec_E< Polyhedron< Dim > > | polyhedrons_ |
| std::vector< std::shared_ptr< LineSegment< Dim > > > | lines_ |
| Vecf< Dim > | local_bbox_ {Vecf<Dim>::Zero()} |
| Vecf< Dim > | global_bbox_min_ {Vecf<Dim>::Zero()} |
| Vecf< Dim > | global_bbox_max_ {Vecf<Dim>::Zero()} |
IterativeDecomp Class.
Iteratively calls ElliseDecomp to form a safer Safe Flight Corridor that is away from obstacles
|
inline |
Basic constructor.
| origin | The origin of the global bounding box |
| dim | The dimension of the global bounding box |
|
inline |
Decomposition thread.
| path_raw | The path to dilate |
| iter_num | Max iteration number |
| offset_x | offset added to the long semi-axis, default is 0 |
| res | Resolution to downsample the path |


Joining Dev Bootcamp is not only a professional decision, but also a personal one. There is a wonderful framework that promotes giving, receiving, and integrating feedback. It all starts with pairing. Pairing is about trying to solve problems that can be challenging, with one of your peers. This can be intense, and it is important to give your whole self. At first, nervosity was all too present before pairing. After a few weeks, I am already more relaxed. However, I am still feeling drained after pairing...
And receiving feedback from my pair does help, because it is not intended to be good nor bad. It is actionable, specific, and kind. Specific is self-explanatory. Actionable demands that the feedback can be controlled by the recipient. Kind is about describing an impact on self, not projecting nor being nice. Being keen on criticizing myself, I was open to receiving constructive feedback. And some of it may be connecting to my need of being in control, when impatience can arise. I want to be a better pair so I will relinquish some control, and still be engaged. First order of business is to stop and listen even when I think I know better...
And not being the best listener leads me to mistrust my seeing. Consequently, giving feedback is the most difficult for me. For instance, I still feel that I point out details that are not the most important to my pair. However, this is where meta-feedback comes handy, by allowing others to rate the feedback I give.
It is all about having the desire to be better with others. If you don't, you won't! So far, it feels right to me. And the fun has just begun... together!


Lorem ipsum dolor sit amet, consectetur adipisicing elit. Rerum vel, suscipit hic asperiores est alias corporis facere dolorem, id atque! Provident officia, esse sequi, veniam ex possimus reiciendis nam ipsa.
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Rerum vel, suscipit hic asperiores est alias corporis facere dolorem, id atque! Provident officia, esse sequi, veniam ex possimus reiciendis nam ipsa.
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Cum ipsa iusto quod, sapiente necessitatibus dolorem, quidem dolorum libero dolores est non totam hic suscipit beatae illum quis. Iure, voluptates, illum?
You can use the mark tag to highlight text.
This line of text is meant to be treated as deleted text.
This line of text is meant to be treated as no longer accurate.
This line of text is meant to be treated as an addition to the document.
This line of text will render as underlined
This line of text is meant to be treated as fine print.
This line rendered as bold text.
This line rendered as italicized text.
attr
HTML
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.


 - LIS training - NHSBSA {% endblock %} {% block outerContent %} {% endblock %} {% block content %}
You don't have to tell us your NHS Number, but telling us helps us to identify you correctly and match your details to your health records.
Your NHS Number is a 10-digit number, like<PHONE_NUMBER>.
Your NHS Number is not the same as your National Insurance number, which has letters in it.
If you're registered with a GP, you'll have a 10-digit NHS Number that is unique to you.
It's usually on any letter or document you've received from the NHS, such as:


Any time you see a sequence of similar objects in a web site, it's probably a list. That goes for lists of articles on your favorite news app as well as things like videos on YouTube or Netflix.


{include file='public/head' /}
layout 后台大布局 - Layui
{include file='public/header' /}
{include file='public/left_menu_booknexus' /}
首页
B2B
编辑订单
{include file='admin_booking/menu' /}
Hotel Confrmation
Hotel First Day:
Hotel Last Day:
Hotel Both Day:
Update
{include file='public/foot_js' /}


Deleting Profile Settings
How to permanently delete one or more profile fields using the Site Settings page.
- Navigate to Admin > Site Settings.
- Select the User Account Settings tab.
- Expand the Profile Settings section.
- Optional. Click the Refresh Grid link located at the base of the module. This refreshes the grid with any recent updates.
- Click the Delete button beside a profile field. This displays the message "Are You Sure You Wish To Delete This Item?"
- Click the OK button to confirm.


For nearly 20 years MeadCo's ScriptX - now installed on many millions of Windows PCs - has
enabled document authors to script print-time attributes such as margin sizes, orientation,
HTML & standard headers and footers, paper source, target printer, prompt-free printing and much more ...


01453 836662
How to Find Us
LATEST SHOP NEWS
Click any of the links below for information on shop opening hours and special offers, plus other local news.


[gecode-users] Value branching heuristics
boysen at itu.dk
boysen at itu.dk
Tue Dec 9 13:58:26 CET 2008
Hi,
Thank you for the reply.
> I would suggest that you implement your own branching the same way
> some of the examples do it. You will need to implement some kind of
> variable selection yourself, but this is easy to do. While it is
> possible to implement a new value selection heuristic for
> ViewValBranch (and thus to reuse the variable selection part), the
> interfaces are not geared towards custom branchings. In particular,
> ViewValBranch will not give you the index of the variable the
> selection is to be made for.
Ok. I assume the way I can easily get the index of the variable that is
being branched on is because the heuristic also acts as a variable
heuristic, and hence knows which variable is being branched on. Is this
correct?
If this is the case, then what we want to do is to implement the
Minimum-Remaining-Value (also known as fail-first. See the section on
variable ordering:
http://ktiml.mff.cuni.cz/~bartak/constraints/ordering.html) heuristic as
the variable ordering (possibly using some way to break ties) and then use
the custom value selection heuristic afterwards. Is this the way to go
about it?
> I'm not sure what kind of least constraining value heuristic you are
> referring to in part three of your question. There is no such generic
> value selection heuristic in Gecode, since the information needed is
> not readily available in any propagator based constraint programming
> system. There might be some custom way for your specific problem to
> make such a heuristic though.
The heuristic I am referring to is the one Bartak calls "succeed first" in
the section on value ordering:
http://ktiml.mff.cuni.cz/~bartak/constraints/ordering.html. Is the
information for that heuristic missing in the solver?
Kind regards
Morten Boysen
> On Mon, Dec 8, 2008 at 11:41 PM, Morten Boysen <boysen at itu.dk> wrote:
>> Hi
>>
>> I have to program a value selection heuristic for a configurator that is
>> being implemented on top of the FlatZincGecode space. This means that
>> all variables are in an IntVarArray and in a BoolVarArray. What we need
>> to do is simply to choose the a value to branch on that has not been
>> verified as valid. Therefore, we have the following requirements:
>>
>> 1) We need to know the index of the specific value we are branching on,
>> when the heuristic is invoked. This is needed, because the index is used
>> as a key into a map that contains the valid domains computed so far.
>>
>> 2) We have no need to create any branching for variables (so we do not
>> need to modify the standard variable ordering).
>>
>> 3) It would be nice if the heuristic van easily be integrated with the
>> standard least-constraining-value heuristic, so the heuristic first
>> tries the least-constraining-value of the values that have not been
>> verified as valid, and if all values have always been verified as valid,
>> the heuristic should simply work as the standard
>> least-constraining-value heuristic.
>>
>> I have seen two examples on how to implement this: The first method is
>> to inherit from Gecode::Branching and implement a heuristic (Question:
>> If we use this, do we also have to implement a variable selection
>> heuristics?). The second method is to use the Gecode::ViewValBranching
>> class. Given the requirements above, what would you recommend as the way
>> to implement the heuristic?
>>
>> Kind regards
>> Morten Boysen
>>
>> _______________________________________________
>> Gecode users mailing list
>> users at gecode.org
>> https://www.gecode.org/mailman/listinfo/gecode-users
>>
>
>
>
> --
> Mikael Zayenz Lagerkvist, http://www.ict.kth.se/~zayenz/
>
More information about the gecode-users
mailing list


Game status: {{ gm.status }} ENDED
Game is ended
If all the players leaves the game, another one will start.
Players: {{ gm.playersNum }}
Name:
Player {{ $index + 1 }}
*you*
{{ player.name }}
Ready
No
Yes
It's turn
WIN
LOST
Score: {{ player.score }}
Dealer
Score: {{ gm.dealer.score }}


-- .. title: Sponsors .. slug: sponsors .. date: 2021-01-12 .. type: text -->
If you would like to sponsor the prizes for our Datathon, please get in touch with the organizers via<EMAIL_ADDRESS>Thank you to our sponsors:


Which of the following is not a javascript datatype
Which year was javascript invented
Which of the following is the javascript library
Which of the following is the correct javascript file extention
Which of the following is the correct statement?
Who created Javascript
Which input type refers to select boxes?
What is a string value
Which of the following would not contain information about functions
Which of the following shows single-line comments


{{ error }}
{% endif %} {% if success %}Success
{% endif %}This faucet pays out 0.0002 Nano every day (24 hours min between claims. We rely on community donations so please, please, donate some nano to the faucet (address: nano_3346kkobb11qqpo17imgiybmwrgibr7yi34mwn5j6uywyke8f7fnfp94uyps).
It took a lot of work to make and maintain the faucet, so please support my work by donating to me.
Alternatively, you can check out some of my work, such as GoBanMe, a browser extension that allows you to tip banano to participating websites. You can download it for chrome and chrome based browsers and for firefox.


See: Description
| Interface | Description |
|---|---|
| FxIndex |
An index of foreign exchange rates.
|
| IborIndex |
An inter-bank lending rate index, such as Libor or Euribor.
|
| Index |
An index of values, such as LIBOR, FED FUND or daily exchange rates.
|
| IndexObservation |
A single observation of an index.
|
| OvernightIndex |
An Overnight index, such as Sonia or Eonia.
|
| PriceIndex |
An index of prices.
|
| RateIndex |
A index of interest rates, such as an Overnight or Inter-Bank rate.
|
| Class | Description |
|---|---|
| FloatingRateName |
A floating rate index name, such as Libor, Euribor or US Fed Fund.
|
| FloatingRateName.Meta |
The meta-bean for
FloatingRateName . |
| FloatingRateNames |
Constants and implementations for standard Floating rate names.
|
| FxIndexObservation |
Information about a single observation of an FX index.
|
| FxIndexObservation.Meta |
The meta-bean for
FxIndexObservation . |
| FxIndices |
Constants and implementations for standard foreign exchange indices.
|
| IborIndexObservation |
Defines the observation of a rate of interest from a single Ibor index.
|
| IborIndexObservation.Meta |
The meta-bean for
IborIndexObservation . |
| IborIndices |
Constants and implementations for standard Ibor indices.
|
| ImmutableFxIndex |
A foreign exchange index implementation based on an immutable set of rules.
|
| ImmutableFxIndex.Builder |
The bean-builder for
ImmutableFxIndex . |
| ImmutableFxIndex.Meta |
The meta-bean for
ImmutableFxIndex . |
| ImmutableIborIndex |
An Ibor index implementation based on an immutable set of rules.
|
| ImmutableIborIndex.Builder |
The bean-builder for
ImmutableIborIndex . |
| ImmutableIborIndex.Meta |
The meta-bean for
ImmutableIborIndex . |
| ImmutableOvernightIndex |
An overnight index, such as Sonia or Eonia.
|
| ImmutableOvernightIndex.Builder |
The bean-builder for
ImmutableOvernightIndex . |
| ImmutableOvernightIndex.Meta |
The meta-bean for
ImmutableOvernightIndex . |
| ImmutablePriceIndex |
A price index implementation based on an immutable set of rules.
|
| ImmutablePriceIndex.Builder |
The bean-builder for
ImmutablePriceIndex . |
| ImmutablePriceIndex.Meta |
The meta-bean for
ImmutablePriceIndex . |
| OvernightIndexObservation |
Information about a single observation of an Overnight index.
|
| OvernightIndexObservation.Builder |
The bean-builder for
OvernightIndexObservation . |
| OvernightIndexObservation.Meta |
The meta-bean for
OvernightIndexObservation . |
| OvernightIndices |
Constants and implementations for standard Overnight rate indices.
|
| PriceIndexObservation |
Information about a single observation of a Price index.
|
| PriceIndexObservation.Meta |
The meta-bean for
PriceIndexObservation . |
| PriceIndices |
Constants and implementations for standard price indices.
|
| Enum | Description |
|---|---|
| FloatingRateType |
The type of a floating rate index.
|
An index is an agreed mechanism for determining certain financial indicators, such as exchange rate or interest rates. Most common indices are fixed daily.
Copyright 2009-Present by OpenGamma Inc. and individual contributors
Apache v2 licensed
Additional documentation can be found at opengamma.github.io/StrataDocs.


Two Poems
M. Brown / 2020-04-23
Tell all the truth but tell it slant — (1263)
BY EMILY DICKINSON
Tell all the truth but tell it slant —
Success in Circuit lies
Too bright for our infirm Delight
The Truth’s superb surprise
As Lightning to the Children eased
With explanation kind
The Truth must dazzle gradually
Or every man be blind —
Found from ref in this sermon by Richard Rohr.
blessing the boats
BY LUCILLE CLIFTON
(at St. Mary’s)
may the tide
that is entering even now
the lip of our understanding
carry you out
beyond the face of fear
may you kiss
the wind then turn from it
certain that it will
love your back may you
open your eyes to water
water waving forever
and may you in your innocence
sail through this to that
Found via Bill Murray on Spotify:


Over the years, I've experimented with many drugs: Marijuana, Ecstasy, Cocaine, Acid, Methamphetamine, Inhalants, GHB, DXM, and pills of all sorts, but never got to try the elusive Ketamine. I researched the drug thoroughly and began my search for it. I gave up months later because nobody could find any. Ketamine had disappeared almost completely from the club scene I was so new to.
Then a friend of mine called me up and said 'Hey, I got a hookup with some K, so I can make a little extra money.' I thought it was a joke, but when we went to pick it up, the empty Ketamine bottles were on the counter, and the powder was being scraped from the Pyrex. Fresh from the oven. We waited until we got home, doing a couple of bumps of meth to hold us over. My friend weighed out the bags of Ketamine to distribute to friends as a present, and set aside some for us. I did a line and wasn't sure what exactly I was supposed to expect. I waited and felt a little strange, and another line was laid out for me. This one was much bigger than the first, and as soon as I finished it my friend looks at me and says 'Go and wait in the car before you can't walk downstairs.'
I felt like I had jumped into the deep end of a swimming pool. I went outside and had a nice conversation with my friends dog, picked some violets to decorate my car with and had another line of K. I felt the distinct sensation that time had altered. Either it had slowed down, or sped up or both, simultaneously. There was a change in my perception of the world around me. It felt like a CG sequence in a video game of sorts-not quite real.
My friend came out to the car and took the keys-I wasn't driving anywhere. I sat enjoying the experience and realized only about 20 minutes had gone by since my first line. I remember saying how I wanted the universe to reveal its secrets to me. We stopped at a gas station, and my friend said to me 'I'm going to go in and pay-can you pump the gas?'
'Yes. I can do that. Yes,' I reply, knowing full well that I was incapable of really even moving from my passenger seat. I go around to the pump and desperately try to figure out how to even operate a gas pump, and convinced myself that if I could figure it out, I would have discovered the meaning of life. Then I heard a voice from behind the pump.
'How far is it to Knoxville from here?' the voice asked.
'Uhm, about 3 hours, I'd say.'
'How many miles is that?' came the voice's reply.
'I actually have no idea, because I've been to Knoxville maybe once. Wait-who are you?'
The voice revealed itself. From behind gas pump number 4 stepped a short, middle aged Native American shaman named Sky Hawk. I thought I had lost my mind.  I couldn't stop wondering where my friend was. It seemed like she'd been inside the gas station for about three years, so I excused myself and went in to look for her. Sky Hawk soon followed and started talking to the both of us this time. I was relieved to find that my friend (who was sober) could see him also, and that he wasn't an image I'd conjured up in my head.
Sky Hawk asked our names and our birthdays and after we told him he started to tell us things about ourselves and each other that a complete stranger should not know. I tried to comprehend what he was saying but kept realizing that I didn't know where I was, or even who I was-just that I was K-ed out of my mind and there was a very intuitive shaman telling me my darkest secrets. He warned us of Mercury's retrograde that started about an hour before we met him and to be careful for the next three weeks. Furthermore, he invited us to his sweatlodge in the mountains of North Carolina. By the end of the conversation, which lasted about 45 minutes or so, I could feel myself starting to come back to my own body.
I sobered up completely a few hours later, as we made our way back to my friends house and we spent the rest of the night finishing our half gram bags of K each. We had only black lights on in the dark room, and I noticed that my friend's face looked completely different every time I looked at her. We started swimming in her room after we decided we were living in a fish tank and then had a dance party where we threw things as hard as we could. It was our new superpower-'Power-Throwing' is what we called it.
When my bag was close to being finished, I did a large bump and then accepted the fact that I couldn't move. It became a fact of life that everything seemed to be in a tunnel and in slow-motion. I was afraid at first, but realized I was fine, and that I hadn't taken too much. It was very dreamlike and actually very hard to remember.
Experience Reports are the writings and opinions of the individual authors who submit them.
Some of the activities described are dangerous and/or illegal and none are recommended by Erowid.


--- title: Where to put the sixpence? excerpt: "The struggle is real: pretty and affordable wedding shoes are hard to come by" image_url: /img/blog/where-to-put-the-sixpence.jpg image_description: "A pair of elegant wedding shoes" categories: inspiration ---
I decided that once in a while I should bring upfront the most common topics when it comes to weddings; such as the wedding outfits, the bridesmaids, the wedding venues, the cake, shoes, hair and makeup etc. To give you an overview of my style or just where I am, aesthetically speaking.
I will start with ... shoes because that's the most terrible part for me at a wedding. So what you might end up with, instead of a nice enjoyable post about a girl's second love: shoes (first being the hubby, of course) will be a full-blown rant!
But first, let's enjoy this beautiful pair of bridal shoes:
Let's proceed. Why terrible, you say? Well ... Because they are ... aesthetically challenged. The affordable ones at least! All the soon-to-be brides are complaining about the options on the market.
And I feel with them. There is no middle way it seems. You either go with the all known "I need to be wearing something, this is not a beach wedding,
so going barefoot is not an option, and after soo, soo many hours on Amazon,
I give up and get these 90's looking pair of shoes. They won't see them from under my dress anyway … right??" Sigh.
I did that. My wedding shoes were so ugly that I don't think I will post a picture with them here, even if that would help me prove a point.
So then my question is why did every bridal shop stock up on these? From high-end bridal houses to just any bridal boutique. Everywhere, online and out in the world you find your pool of generic, "beautiful era but long gone" kind of shoes. And all is good if you choose the Victorian epoch to inspire yourself from. Oh, and I love vintage, but these are not it:
Or you get of course the higher road and walk straight into a Jimmy Choo shop. You get a state of art shoe, edgy, and so beautiful that you want your dress to show them off a bit.
But what if you are not a Jimmy Choo kind of girl, part of their lavish clientele? Or simply not ready to spend your savings on one pair of shoes pretty as they may be? Also, some wedding themes would be slightly off aesthetically if matched with a Jimmy Choo, like a barn, countryside wedding, or a harvest theme.
So what to do?
Of course, there is a third option which I think is not as trendy as it used to be just a few wedding seasons ago, the wedding Converse. I quite liked the idea when it came out, although now that I have seen its peak, I am less fond of it. I still think they are cute and quirky.
It was/is the perfect option if you want to be comfy, to be yourself, to go off the beaten path. Although I know a few unconventional brides that would not fit the sporty looking shoe for their wedding day. Again, what to do?
That being said, there's not much place to wiggle, in my opinion. Or I couldn't find it. But please share if you have found your search easier. Where? How much? By coming with suggestions, you will help out an entire community of brides that are ready to start off their wedding planning on the right foot.
However, I do love how things start to move in this direction where soon-to-be brides buy a pair of shoes that they like any colour, any embellishment and just make it work with your wedding dress.
Because for one, I think a red heel, or just any colour rather than ivory or champagne, bring in more character or a natural vibe.
Also, it is always advisable to get something that you will be able to wear again, not only to get your money's worth but to break off with
the consumerist extravaganza as well, unlike me. My wedding shoes are thrown somewhere in my mother-in-law's attic, to my shame.
And lastly, it is too tiring and time-consuming to look for the perfect but affordable bridal shoes. But here are just a few tips, that I think will narrow down your search:
So, my advice: just go with your girlfriends on your casual shoe shopping date, and whatever shoes you find pretty, a wee bit fancy and which you can afford on the spot, buy them then and there and give them the title "wedding shoes".
If you are still searching despair not, I have found some pairs through my frantic search, that got me head over heels. And I am ready to share them with you, though I will admit these are still worth a small percent of your savings.
For a more complete collection of my findings, check out my pinterest board.
I hope you liked or at least noticed my shoe puns! Wink.


@import controllers.sugar.Requests.OreRequest @import views.html.helper.CSPNonce @()(implicit messages: Messages, request: OreRequest[_], assetsFinder: AssetsFinder) @* Mostly copied from swagger-ui's index file *@


{% extends "non_sheet_page_small_logo.html" %} {% block title %} Login: Dirigible {% endblock %} {% block head %} {{ block.super }} {% endblock %} {% block content %}
Don't have a Dirigible account? {% if next %} Click here to sign up. {% else %} Click here to sign up. {% endif %}
The user name or password is incorrect. Please try again.
{% endif %}


The Basic Database Design workshop educates a user with the fundamental database design concepts and the best practices to achieve the same. This workshop aims at laying a sound foundational knowledge of databases before delving deep into the advanced features and their usage.
Every business, small or large, involves the use of a database which stores information of all kinds. The way a database is structured, affects every other action like ease of entering data into the database, efficiency of the database to trap inconsistencies and prevent duplicate records from being inserted, effective and flexible retrieval of information from the database, etc. Hence, the most crucial step in creating a sound database lies in designing the structure carefully.
The usage scenario pertains to an electronics store where a customer places an order for certain products he wishes to buy and the transaction is recorded in the database of the store. The database consists of tables that store the transaction information, product information as well as customer information.
The workshop aims to introduce some features that enable efficient creation of database tables and highlights some of the best practices associated with designing such a database and storing information.
The workshop demonstrates basic database concepts namely :


EditLive
Home
Editor
About us
Think and Code
A Place to code!
Start Coding
About us
Learn More About our Team
About us


The main purpose is to shorten SharpLab URLs, so the functionality is minimal at the moment.
For example, you can't update existing Gists.


Patternized contract type is the one that we use most frequently. In a Patternized contract type, we can define the options, the parameters, obtain the option values and define switches.
Some command line syntax includes the options and switches, like /type:library, /output:a.txt,b.txt and /silent. It can also include some parameters with which the application will process. For example, in the catool console application which is provided as an example along with the ACF package, it can print the subtraction result of the two numbers by using the command line like "catool.exe /method:sub 20 15", where 20 and 15 are the parameters with no option names. This kind of command line syntax matches a specific pattern. This is also why we call it Patternized.
In the first example we listed in Syntaxes and Option Contracts topic, all of the syntaxes provided by xsd.exe are the Patternized type. In order to use xsd.exe, users need to provide not only the file name that needs to be processed, but also additional options and switches.
Take the catool.exe as an example, it has the following Patternized contract:
| catool.exe </method|/m:> [/nologo|/n] p1 p2 |


Körner József ( Budapest , 1907 . March 17 - Budapest, 1971 . February 3rd ) Hungarian architect of CIAM member of the Hungarian team, later in the socialist realism representative, the Kossuth Prize (1959).
In the first phase of his career, he joined the efforts of modern architecture; he became a member of the Hungarian group of CIAM . As an artist not supported by the cultural policy of the age, he was only commissioned to design residential houses. After the Second World War, he received several state assignments: he designed the Dagály Street Bath (Budapest, 1948, with Lajos Darvas) and the headquarters of the Ministry of Foreign Trade on Honvéd Street (Budapest, 1948). In 1952, he designed the II. district party house, which later became the building of the council (now the district municipality). The building is a typical example of socialist realist architecture. In 1956, he took part in the planning of the first phase of the Lágymányos housing estate . His late works again show modern features, such as the Tatabányalibrary (1965) and a hotel building in Veszprém (1967)
Kossuth Prize (1959)
Ybl Award (1953)
Architect
JózsefKörner


Software development for the web aims to develop skills in advanced web programming and software development. This site is a playground to practice knowlage obtained during the course Course website Forked git Source git


Before Change
assert_allclose(actual, expected, rtol = rtol, atol = atol)
//Test residual != None
residual = np.random.randn(actual.size).reshape(actual.shape).astype(floating)
iut(delta_field, sigma_field, grad_G.astype(floating),
target, lambda_param, d, residual)
assert_allclose(actual, expected, rtol = rtol, atol = atol)
After Change
// Test Gauss-Seidel step with residual=None and residual=target
for residual in [None, target]:
expected = d.copy()
iterate_residual_field_ssd_2d(delta_field, sigma_field,
grad_G.astype(floating), residual, lambda_param, expected)
actual = d.copy()
ssd.iterate_residual_displacement_field_ssd_2d(delta_field,
sigma_field, grad_G.astype(floating), residual, lambda_param, actual)
assert_allclose(actual, expected, rtol = rtol, atol = atol)


Hirapp
Referral Validation Form
Please complete form below.
Your Full Name:
Candidate's Full Name:
Relationship to candidate:
Friend
Colleague
Neighbor
Years known candidate:
Upload your photo ID:
Do you recommend him/her?
Agree strongly
Somewhat agree
Neutral
Somewhat disagree
Strongly disagree
Is the candidate's info valid?
Completely valid
Somewhat valid
Don't know
Somewhat invalid
Totally valid
Next
Hirapp | Created for DZ United.


--- layout: page title: About OpenMM ---
Backed by researchers and developers from Stanford University, MSKCC, and others around the world.
Want a custom force between two atoms? No problem. Write your force expressions in string format, and OpenMM will generate blazing fast code to do just that. No more hand-writing GPU kernels.
OpenMM is optimized for the latest generation of compute hardware, including AMD (via OpenCL) and NVIDIA (via CUDA) GPUs. We also heavily optimize for CPUs using intrinsics.
We strive to make our binaries as portable as possible. We've tested OpenMM on many flavors of Linux, OS X, and even Windows.
from simtk.openmm.app import *
from simtk.openmm import *
from simtk.unit import *
from sys import stdout
pdb = PDBFile('input.pdb')
forcefield = ForceField('amber99sb.xml', 'tip3p.xml')
system = forcefield.createSystem(pdb.topology, nonbondedMethod=PME, nonbondedCutoff=1*nanometer, constraints=HBonds)
integrator = LangevinIntegrator(300*kelvin, 1/picosecond, 0.002*picoseconds)
simulation = Simulation(pdb.topology, system, integrator)
simulation.context.setPositions(pdb.positions)
simulation.minimizeEnergy()
simulation.reporters.append(PDBReporter('output.pdb', 1000))
simulation.reporters.append(StateDataReporter(stdout, 1000, step=True, potentialEnergy=True, temperature=True))
simulation.step(10000)
If you publish papers using OpenMM, we kindly ask you cite the following to help feed hungry grad students:
Peter Eastman, Jason Swails, John D. Chodera, Robert T. McGibbon, Yutong Zhao, Kyle A. Beauchamp, Lee-Ping Wang, Andrew C. Simmonett, Matthew P. Harrigan, Chaya D. Stern, Rafal P. Wiewiora, Bernard R. Brooks, Vijay S. Pande. OpenMM 7: Rapid Development of High Performance Algorithms for Molecular Dynamics. PLoS Comput. Biol. 13:e1005659, 2017.Trusted and used by scientists around the world.
Performance measured in ns/day. Details.
| Simulation Type | CUDA (Titan X Pascal) | OpenCL (Titan X Pascal) | CPU (Xeon E5-2697 v4) |
|---|---|---|---|
| Implicit, 2 fs | 863 | 665 | 19.8 |
| Implicit, 5 fs HMR | 1386 | 816 | 44.1 |
| Explicit-RF, 2 fs | 607 | 486 | 21.0 |
| Explicit-RF, 5 fs HMR | 1047 | 689 | 43.6 |
| Explicit-PME, 2 fs | 384 | 288 | 15.6 |
| Explicit-PME, 5 fs HMR | 762 | 430 | 34.8 |


Reports cases when a call to the super
constructor in a class is missed.
Example:
class Fruit:
def __init__(self):
pass
class Pear(Fruit):
def __init__(self):
pass
The Pear
class should have a super
call in the __init__
method.
When the quick-fix is applied, the code changes to:
class Fruit:
def __init__(self):
pass
class Pear(Fruit):
def __init__(self):
super().__init__()


--- layout: archive title: Zulip Chat Archive permalink: /stream/113488-general/topic/elan.20is.20broken.3F.html ---
Trying to fix the elan installation in the VS Code extension, I've discovered that elan itself is currently not working. Lo:
$ curl https://raw.githubusercontent.com/Kha/elan/master/elan-init.sh -sSf | sh info: downloading installer Welcome to Lean! This will download and install Elan, a tool for managing different Lean versions used in packages you create or download. It will also install a default version of Lean and its package manager, leanpkg, for editing files not belonging to any package. It will add the leanpkg, lean, and elan commands to Elan's bin directory, located at: /Users/scott/.elan/bin This path will then be added to your PATH environment variable by modifying the profile files located at: /Users/scott/.profile /Users/scott/.bash_profile You can uninstall at any time with elan self uninstall and these changes will be reverted. Current installation options: default toolchain: stable modify PATH variable: yes 1) Proceed with installation (default) 2) Customize installation 3) Cancel installation info: syncing channel updates for 'stable' info: latest update on stable, lean version v3.4.2","user_id":null}} info: downloading component 'lean' Error(Download(HttpStatus(404)), State { next_error: None, backtrace: None }) error: could not download nonexistent lean version `stable` info: caused by: could not download file from 'https://github.com/leanprover/lean/releases/tag/v3.4.2","user_id":null%7D%7D' to '/Users/scott/.elan/tmp/5dut6cfxwij0ymb0_file' info: caused by: http request returned an unsuccessful status code: 404
Any ideas, @Sebastian Ullrich?
Could anyone else (on OSX or otherwise) let me know if they are seeing similar behaviour?
Hmm, parsing Github HTML to retrieve the latest release might not be the most stable solution in retrospect
I have a 2-line fix which uses the github api pull requested :)
(Who needs a JSON parser anyway ;) )
That's what I did at first, until we ran into Github API's rate limits
merge in 3... 2... 1... :-)
ah...
:-(
Well, you could always just put an ampersand after the "
in the regex lol
I'm parsing the Location:
header now
That's the plan at least
Like HTTP header? From where?
But cool, sounds more legit
Done. Since elan's self-updater is broken as well, please reinstall elan via e.g.
curl https://raw.githubusercontent.com/Kha/elan/master/elan-init.sh -sSf | sh
@Sebastian Ullrich Is that a message for everyone?
@Johan Commelin Yes. Should we make it more prominent in a new all-caps topic or something?
Yes, and maybe this is one of those cases where you could use a global mention
Using @everyone
I don't know, sending notifications to 523 people seems kind of rude :) . If they notice something's wrong, I hope they'll find the Zulip topic by themselves.
It depends on the fraction of people that we think will find this message helpful.
I don't have a good estimate for the number of elan users out there. But I guess it might be >50%
At least of the active users. There may be inactive users with e-mail notifications, though I don't think that is the default.
I'm getting errors from the nightly toolchain after the update. elan update
gives me:
info: syncing channel updates for 'stable' info: latest update on stable, lean version v3.4.2 info: syncing channel updates for 'nightly' error: failed to resolve latest version of 'nightly' info: checking for self-updates stable unchanged - Lean (version 3.4.2, commit cbd2b6686ddb, Release) nightly update failed - Lean (version 3.4.2, nightly-2019-01-13, commit 95fa4cfb0a87, Release)
Running elan toolchain install nightly
gives me:
info: syncing channel updates for 'nightly' error: failed to resolve latest version of 'nightly' info: caused by: failed to parse latest release tag
Granted, this isn't a big deal for me personally since nightly hasn't changed since I last updated it.
Can you confirm that you followed the instructions at https://leanprover.zulipchat.com/#narrow/stream/113488-general/topic/ELAN.20IS.20BROKEN.20(AND.20FIXED) already?
Yes, that's what I meant by "after the update".
Oh of course. Did you do the "source" bit at the end?
and then try updating from the same window etc?
I didn't think I had to since I already had elan
in my path, but I just did it and I got the same results.
Yes, I guess all it does is changes the path. Then I can't help, sorry; it works for me on Ubuntu. what OS are you using?
I'm on macOS.
$ elan update info: syncing channel updates for 'stable' info: latest update on stable, lean version v3.4.2 info: checking for self-updates stable unchanged - Lean (version 3.4.2, commit cbd2b6686ddb, Release) buzzard@bob:~/Encfs/Computer_languages/Lean/lean-projects/mathlib-community-master$
Right, I have no problems with the "stable" toolchain. Could you try elan toolchain install nightly
?
$ elan toolchain install nightly info: syncing channel updates for 'nightly' error: failed to resolve latest version of 'nightly' info: caused by: failed to parse latest release tag buzzard@bob:~/Encfs/Computer_languages/Lean/lean-projects/mathlib-community-master$
Aah so I can reproduce your error for the nightly install. I've never typed that before though.
I only tested the stable toolchain :cry:
But currently nightly = stable, right?
I believe they differ, but only in the version string. However, it's possible that the underlying issue affects the usage of other versions of Lean in elan as well (have not checked).
Okay, I went back to the hackish code...
{% endraw %}Last updated: Apr 24 2020 at 19:02 UTC


For a given date_part, this function returns the first day of the time interval for the input date, following a standard Gregorian calendar.
Syntax
GetFirstDay ( date, date_part )
| Parameter | Description |
|---|---|
date |
A number representing the input date between January 1, 1970 and Dec 31, 2037. The number is the number of seconds elapsed since midnight, January 1, 1970. To retrieve this number, use any of the following functions: Today(), TodateEx(), GetFirstDate(), GetLastDate(), DateRoll(). Date-Time type attribute properties of a member can also be used to retrieve this number. For example: Product.currentmember.[Intro Date] returns the Introduction or release date for the current product in context. [Cola].[Intro Date] returns the Introduction or release date for the “Cola” product. |
date_part |
Defined time components of the standard calendar.
|
Notes
This function can be used for getting the truncated date of an input date for a given date part, following a standard Gregorian calendar.
Example
Assuming today’s date is April 15 2007, consider the following scenarios.
GetFirstDay(Today(), DP_YEAR)
returns the first day of the year, Jan 1 2007
GetFirstDay(Today(), DP_QUARTER)
returns the first day of the quarter, Apr 1 2007
GetFirstDay(Today(), DP_MONTH)
returns the first day of the month, Apr 1 2007
GetFirstDay(Today(), DP_WEEK)
returns the first day of the week, Apr 15 2007
See Also


The purpose of the Space Physics GitHub organization is to have a common place for people to work on programs related to geospace analysis, without having to use "personal" GitHub repos.
A similar organization with a different focus is the Geospace Code GitHub organization.


Verifying and troubleshooting¶
- Verifying that the System Manager is Running
- Troubleshooting a Failed System Manager
- Restarting the Server
Verifying That the System Manager Is Running
Because a properly running system manager is critical to using Google Earth Enterprise Fusion, as well as for converting your source data to Google Earth Enterprise Fusion assets, verify that the system manager is running after the initial installation of Google Earth Enterprise Fusion and whenever you encounter problems building assets.
To verify that the system manager is running, enter the following command at a shell prompt:
getop
A list of running processes appears. Two processes appear on the list:
gesystemmanager
This process is necessary to configure or build resources, projects, and databases with Google Earth Enterprise Fusion. If this process appears on the list, Google Earth Enterprise Fusion is running properly.
If you do not see this process on the list, follow the troubleshooting suggestions in the Troubleshooting section to correct it.
geresourceprovider
This process manages the workstation resources on the behalf of the system manager. It also monitors free disk space on the volumes for any connected workstations.
If you see a
connection refused
message, see the Troubleshooting section.
Troubleshooting a Failed System Manager
If the Google Earth Enterprise Fusion system manager fails to run, you can try stopping and restarting the it, which resolves most minor problems.
Restarting the system manager
Log in as root.
Stop the system manager:
/etc/init.d/gefusion stop
Start the system manager:
/etc/init.d/gefusion start
If you are still having problems starting the system manager after stopping and restarting the system manager, you can view the log file for the system manager to see what errors have been reported. The log file is located in:
/var/opt/google/log/gesystemmanager.log
Any errors are listed after the Started notice, which appears in the log for each time you started the system manager.
Note
If you see a Connection Refused
message when
running the getop
command, but do not see any error
messages in the log file, ensure that the log directory is
writable by Google Earth Enterprise Fusion users.
Likewise, if Google Earth Enterprise Server fails to run, you can try stopping and restarting it, which resolves most problems.
Restarting the Server
Log in as root.
Stop and restart the server.
/etc/init.d/geserver restart


What's your take on the DBC experience? What is your impression of DBC?
The DBC opportunity seems surreal to me, and I feel like going through this chapter of my life will be a humbling experience. I think that DBC makes tremendous efforts to really reach out to the students and to build this supporting network with the mindset ,"We're all in this together." I think it's amazing that DBC gathers people from all places who are taking a pause in different phases of their lives to commit to learning programming. On top of this, the DBC experience allows us to feel comfortable with one another and encourages us to help and learn from each another. Without the "DBC experience," this journey would not be as meaningful to me.
How do you see yourself engaging with this type of culture?
I am extremely excited to be engaging with DBC's culture. I think that applying to DBC was a scary step in the first place because I was switching career paths and was not even sure if I would ever be passionate about web development. But I am looking forward to it all: facing all sorts coding AND emotional challenges. I believe in having a growth mindset and that it is better to fail at something than to never try. I am excited to not only grow technically and culturally, but also to creat a habit of making a mess in the kitchen and not hesitating when I am curious or need help. I think DBC makes it clear that this is an experience you make for yourself, and I am willing to submerge myself and give it my all.
Have your expectations of DBC changed? If so, how?
My expectations of DBC have changed in that DBC offers so much more than I expected! I knew that DBC has a unique culture and creates an integrated learning experience for anyone to learn programming and eventually be able to create meaningful things. From week 0 and week 1, I have learned that DBC goes beyond what it promises. DBC instructors and guides make so much effort to create the best working environment possible. DBC offers all kinds of tips on coding, styles of learning, and on building EQ and I am glad to be a part of it.
Are you excited to participate in this kind of learning environment? Does it make you nervous?
I am very excited to participate in DBC's learning environment. DBC's curriculum is intense, challenging, and enriching, and this is exactly what I am looking for. I am a little nervous because I am a beginner programmer, but I am happy to be a part of this program and can't wait to to learn more!


Implements interfaces:
TStack class
TStack implements a stack.
The typical stack operations are implemented, which include push(), pop() and peek(). In addition, contains() can be used to check if an item is contained in the stack. To obtain the number of the items in the stack, check the Count property.
Items in the stack may be traversed using foreach as follows,
- foreach($stack as $item) ...
Located in /Collections/TStack.php (line 34)
TComponent | --TStack
Constructor.
Initializes the stack with an array or an iterable object.
Removes all items in the stack.
Copies iterable data into the stack.
Note, existing data in the list will be cleared first.
Returns the number of items in the stack.
This method is required by Countable interface.
Returns an iterator for traversing the items in the stack.
This method is required by the interface IteratorAggregate.
Returns the item at the top of the stack.
Unlike pop(), this method does not remove the item from the stack.
Pops up the item at the top of the stack.
Pushes an item into the stack.
Inherited From TComponent
TComponent::addParsedObject()
TComponent::attachEventHandler()
TComponent::canGetProperty()
TComponent::canSetProperty()
TComponent::createdOnTemplate()
TComponent::detachEventHandler()
TComponent::evaluateExpression()
TComponent::evaluateStatements()
TComponent::getEventHandlers()
TComponent::getSubProperty()
TComponent::hasEvent()
TComponent::hasEventHandler()
TComponent::hasProperty()
TComponent::raiseEvent()
TComponent::setSubProperty()
TComponent::__get()
TComponent::__set()
Documentation generated on Fri, 03 Jun 2011 16:26:01 +0200 by phpDocumentor 1.3.0RC4


As part of an incubator project in collaboration with IBM Research, my team was tasked with making airports more accessible for people who are blind or have low vision. We used design thinking to understand our user's needs and align with our key stakeholders. Our final solution consisted of a voice-first mobile app, which worked in conjunction with BLE beacons for accurate indoor location. During the project, we gathered insights from travelers who are blind and we were able to use our research findings to turn a touchscreen prototype into a voice-first solution.
We were given an existing research prototype app and were tasked with making it more usable and useful. The app had been used during a controlled study deployment in a shopping mall, but the focus was now shifted to airports. The redesigned app was targeted to be deployed at multiple airports and gradually expanded in the future to other venues, including the Tokyo 2020 Olympics. We were given the freedom to discover user needs and reimaging the user interface and features of the app.
As we were gearing up to redesign the existing prototype, we wanted to gain a good understanding of how it currently worked. To do that, we constructed an interaction map, while also marking the focus regions that would be used by a mobile screen reader. Since our users would use a screen reader, we wanted to get a realistic feel of what ti is like to use the prototype. One of the main issues with the current implementation that we encountered was that it is too reliant on touch gestures, which makes the app very hard to use with a screen reader.
We were able to leverage our organization's existing relations to get access to travelers who are blind or hard of seeing. For our initial exploratory research, we focused on understanding the needs of blind travelers and the current solutions they use. We conducted initial user interviews with 5 people who are blind or have low vision. We were able to learn about their challenges they face while traveling.
We created an empathy map to get a better understanding of who our target audience is and what their feelings and behaviors are. The empathy map was effective at aligning us on what we do and don't know about our users. It got us thinking about guide dog vs white cane users, as well as people who are blind vs low vision. These areas would become scoping challenges that we would have to address for our solution.
Then, we created a user persona to represent our target audience. Due to the time limitations of our project, we had to scope our focus to people who are blind and use a white cane as an aiding tool. We acknowledge that low vision and guide dog users were still to be targeted by our solution, but recommended that deeper focus be put onto those users in future iterations of the product. This decision was not easy, but we had to scope the project, as we only had 6 weeks to complete the work.
Part of the decision to focus on blind users, as opposed to low vision users was done, as focusing on people who are blind would also implicitly cover to some extent a user that is on the low vision spectrum. As per the white can vs guide dog users, that decision was primarily made, due to the fact that there are a lot more people using canes, then there are people that can afford a guide dog. In addition, the all guide dog users that we spoke to also used canes.
In addition to our user research, we also conducted a competitive analysis in a few important dimensions: accessibility solutions, airline and general navigation apps. Our findings showed us how the problems we are tackling are currently being addressed. This information was useful in helping guide our solution later.
To understand the current journey of our users, we constructed an As-is journey map of their independent travels. We focused on the end-to-end journey from deciding to go a trip, to reaching their final destination. We also worked with our research participants to identify pain points along the journey, which would become the focus of our solution. Due to time constraints, we had to work individually with each participant in parallel. This led to different degrees of data being available and steps missing from some journeys. Before we consolidated the data, we had to do quick verifications and clarifications with some participants and ensure we are not making assumptions.
To help decide on our design objectives and strategy, we wrote up hills, which aim to express the actionable, user-centered goals that our design would strive to achieve. Here are our 3 hills, which we used to scope and align around our design:
As as brainstorming exercise, we used big ideas. Through this activity, we were able to generate ideas that aimed to address design objectives. Then, we put our ideas on a prioritization grid, in order to the top concepts.
After ideating and prioritization, we didn't feel 100% confident in our concepts. That is why we conducted a concept validation session with our target users. We wanted to validate the following:
With our direction decided, we constructed a revised user journey, which featured our new design. This let us visualize what our target interaction flow and what our goal was for how our design would help the users.
Since our target audience is made up of people who are blind or hard of seeing, we chose a voice-first solution. The lack of visual screen as a primary interaction method allowed us to design a solution that mitigates the effects of users having low or no vision.
We knew that user testing would be a challenge, because we did not have an airport at our disposal, and we could not use a traditional click-through prototype. To overcome these challenges, we ended up constructing a fake airport at our design studio. We used voice dictation and a wizard of oz style instructions to guide our participants on their path to the "gate". Since participants followed the voice instructions, we were able to use invisible walls that didn't really exist in reality. We were able to simulate multiple turns, walls, points of interest, and airport announcements.
To conduct the test, we used a Mural that had pre-loaded all the system responses. We were able to do a Wizard of Oz exercise by using dictation from macOS. This allowed us to simulate the app's voice interface, responding to the participant's commands and movement. The test was very useful in informing us of the limitations of our navigation system and greatly aided our refinement efforts.
As our final deliverable, we created mid-fidelity prototypes. The voice interface prototype consisted of a mural that described the interaction flows. The Mural was designed with the Watson Assistant technology in mind.
We also designed a visual prototype for low-vision users. This was a secondary goal that we had the bandwidth to achieve, but the majority of our time ended up being spent on the voice design.


'Outrageous' - Birmingham City fans pick their player of the season so far
Who has stood out the most for you in a Blues shirt during the 2019-20 campaign to date?
by Chris WatsonThere have been both highs and lows for Birmingham City so far this season.
With just over a third of the campaign gone, Blues sit 13th in the Sky Bet Championship table.
They are six points adrift of a play-off spot and nine points clear of the relegation zone.
We asked Birmingham fans to pick their player of the season up to this point - and there were some interesting responses.
Maxime Colin and Ivan Sunjic received plenty of votes, with the likes of Dan Crowley, Jude Bellingham, Kristian Pedersen, Fran Villalba and Marc Roberts also getting an honourable mention.
Birmingham City latest
This is your round up of all things Birmingham City; the one-stop shop that will keep you updated on the latest goings on at the club and beyond.
Transfers, injuries, match-days and managers, we’ve got you covered.
We’ll be bringing the very latest on the Blues throughout the week and around the clock.
Make sure you keep yourself updated with our handy daily catch up...
Must reads...
- Ex-Birmingham City misfit's Cardiff City transfer blow - reports
- Sunjic, Colin, Camp - How Birmingham City's players rate this season
- 'Petrified' Geoff Horsfield lifts the lid on Birmingham City's legendary Aston Villa victory
- 'Shine for us' Birmingham City fans react to star's four-word message
For all your latest BCFC news, opinion, analysis and transfer gossip, click here
You can follow our Blues reporter Brian Dick on Twitter, and his email address is<EMAIL_ADDRESS>Here's what the Blues faithful had to say on our Facebook page...
Alan Hipkiss: Colin is the best right back in the league imo.
Jord Fisher: Colin is absolutely solid, but starting to love Dan Crowley aswell. Two massive players for us.
Mike Curtin: Pedersen being solid at the back, rocket header against Brentford and always in the right space at the right time.
Reece Wood: Colin has been outrageous but Sunjic the way he’s come in and just bossed every game, make him captain for the next couple of games, the bloke's class above everyone else in the league.
poll loading
Who is your Birmingham City player of the season so far?
0+ VOTES SO FAR
Maxime Colin Dan Crowley Ivan Sunjic Jude Bellingham Kristian Pedersen Fran Villalba Marc Roberts Other
Simon Hickson: For complete consistency Colin for me.
Stuart Bravington: Colin closely followed by Sunjic.
Corey Gibb: Colin, Sunjic and Bellingham.
Russell Beckett: Colin. Pederson. Sunjic and Villalba soon as he get on form he will be on fire. U can see his passion.
Ashley Steele: Can’t believe Villalba is hardly getting a shout!!! He’s been awesome IMO.
Carl Woods: Colin for me! Sunjic is a class act and best to come from Crowley.
Neil Kirby: Maxy Colin.
Anthony Bourke: Colin easily.
Mark Freedman: Colin/Sunjic without doubt. Considering the s*** he was given Marc Roberts is most improved. Still prone to the odd error but he seems a lot more comfortable playing than I’ve ever seen him.
Connor Pearmain: Colin or Pedersen.
James Bcfc Gough: Colin all day long.
Matt Ellis: Colin/Sunjic/Pederson!
Sun Sun: Colin Sunjic Pedersen Crowley.
Eric Bullock: Maxime Colin.
Kurt Tyler Williams: Colin, Sunjic, Pederson, Bellingham - probably that order.
Denny Graham: Colin, Bellingham, Sunjic.
Jamie Linton: Colin.
Adam Nicholas: Colin or Sunjic... Roberts has done well so far too.
Peter Davis: Sunjic.
Leighton Webster: Sunjic.
Tony Bracey: Sunjic.
Neil Morris: Max.
Aaron Oliver: Max.
Dan Paxton: Colin.


Get Out of the Building
Learning the Importance of Real-World Test
Overview
Full disclosure, this was a class project at Austin Community College for User Interface 1. This project taught me some important lessons about both myself and the UX design process. I realized that I love the loop of iterating and testing. It’s incredibly gratifying to create something that I know works based on user feedback. The biggest lesson, however, was that I hadn’t followed Steve Blank’s advice to “...get out of the building” to actually test. My final design only worked inside the building.
Problem Definition
The Brief
Design an interaction flow that allows a user to do one or more of the following:
- “Highlight” audio, analogous to highlighting text in a book. What else can the user do now that they’ve highlighted the content?
- Listen to the book with other listeners around the world. Share your emotions on the content with the other listeners.
- Take notes on parts of the audio book you find interesting.
Constraint: Work within the technical limitations of existing devices and features.
The REAL Goal
My initial goal was to follow the brief. I went head first into sketching out some flows for a tool to allow users to create a highlight, just designing features. Now, tools aren’t innately bad, but I hadn’t even considered the why. Why did users need this?
To answer this question, I conducted interviews and constructed a User Scenario. By doing this, I discovered the REAL reason people want to create a highlight: to share interesting things with their friends in order to have a conversation. Meeting this goal would would create a REAL and compelling solution, not just a tool.
Design Process
Before I started this project I outlined my general design process. Starting from this point gave me a high level idea of the flow of the project while remaining flexible. By keeping the schematic sort of intentionally vague, I gave myself some room to explore. In the sections below, I’ll show you a little bit more of what I did at each step.
Discover
Target Users
The target users weren’t specified in the initial brief, but I knew they had to be people who listened to long form spoken word content. Yes, that category is broad, but it served as a criterion for who I would interview. Talking to these users, I realized that they all listened to podcasts. I had discovered a more target user base: podcast listeners.
Interviews
Once I determined who the target users were I conducted three interviews. These were some of my first interviews as a designer. From these conversational investigations, I pulled a few key quotes that really inspired my design.
— User “K”“...I’ll quote [a podcast] but I’ll quote it really poorly...I can’t ever remember where I heard it from. I’m not very confident…”
— User “A”“...It was hard for me to articulate exactly what the episode was about... I couldn't do it justice by saying it...”
These key quotes informed the REAL goal, the why.
Persona VS Scenario
I chose to create a user scenario because it gave context to the whole user experience: where they were, what they were doing, when they listen, why they listen, and why they want to highlight. The specifics about the user that are generally part of a persona were less valuable in solving this problem.
User Scenario
I conducted interviews in order to turn that list of features into a validated user problem with a user scenario.
You’re listening to your favorite podcast and you hear something really interesting; like your whole life is different interesting. You try to take a mental note in hopes that you can share it with your friend so their life can be different too. The next day you see your friend and you try tell them about what you heard, but you don't remember the exact details; you don't even remember where you heard it.
The Loop
In this phase of the design process I ideated and got feedback on those ideas. My approach was to start pretty lo-fi and ramp up once I settled on a plan.
Sketches
This was a sketch exploring the rough idea of how the app would work. I used the term “Cupcake” to describe this sketch. I borrowed this metaphor from IBM: a cupcake is simple and small, but still delivers on the goods. Similarly, this idea was simple and small but still delivers and solves the user’s need.
Here was a sketch including using Voice to prompt the app to create a highlight. The “Cake” metaphor is useful again here. A wedding cake is much more difficult to make than a cupcake, but also has tremendous value. This VUI flow has tremendous value, but was also a huge undertaking that I was scared at the time to tackle.
Prototyping
My first prototype didn’t consider the flow. By conducting usability tests, I learned that users were confused by what they were seeing. They needed more context. This helped me improve my subsequent designs.
Usability Test | Feedback 01
Through usability testing I learned some valuable insights. This image represents a lesson in the value of context. On the left , you can see that my original design used blank label templates. As a result, users had no idea what they were even looking at. In my next iteration, I added real world data to give context.
Usability Test | Feedback 02
From a usability perspective, users weren’t familiar with the new icons I used. It didn’t help that they weren’t labeled. Responding to user feedback, the icons are now labeled.
Usability Test | Feedback 03
Here, I presented my users with a flow and pattern that most weren't familiar with. I have some audio editing experience and I designed this screen, so I knew what was happening, but the users didn't. Their feedback helped me design a screen that was intuitive to all users.
Retrospective
Outcome
So yes, my final prototype solved the problem, but only in the building. In other words; it worked in a vacuum that is a usability test; you and the user in a room with a device. But in my research I learned that that isn’t how my users actually listen to podcasts. They are usually doing something at the same time: exercising, driving, cleaning. The flow I created would require users to stop everything they are doing and walk step by step through my flow in order to achieve their goal. Now, I had a feeling from the beginning that the real way users would need to interact with this app would be with Voice UI, but it seemed like too huge of an undertaking. I was afraid to try something new.
Positives
- The faster you can get an idea tested the better.
- Improve based on feedback, don’t feature add.
- Give relevant context. Use actual information and data not just placeholders.
- Be aware of the user’s knowledge of icons.
- Be aware of when you ask users to do something new.
- Test outside of the building. Go to where your users actually use the product.
Not So Positives
- Don't design for yourself.
- Don’t exclude context in an effort to save time prototyping.
- Don't ignore the better solution because you’re afraid to try something new.
Next Steps
Sell it to the Apple Podcasts!
Ok, realistically:
- Implement Voice UI Screens.
- Tighten Up Visual Aspects.
- User test outside of the building.
Feedback
Share your thoughts, questions, or ideas.


Index
A B C D E G H I K L M N O P R S T U W X Y
All Classes All Packages
All Classes All Packages
All Classes All Packages
C
- calculateDirectionForNextMove(Point) - Method in class troop.Troop
-
Returns the next cell the troop should go.
- calculateDirectionForNextMove(Point, Point) - Method in class troop.Troop
-
Returns the next cell the troop should go.
- cancelAllProduction() - Method in class myGame.Castle
-
Removes all productions.
- cancelProduction() - Method in class myGame.Castle
-
Removes the first added element in production, meaning the oldest one.
- canMove() - Method in class troop.Troop
- Castle - Class in myGame
-
A castle is an object in the game Duke of the Realm It has a owner, some properties such as its treasury, level, position...
- Castle(String, Duke, int, int, List<Troop>, Point, Direction) - Constructor for class myGame.Castle
- castles - Static variable in class myGame.Main
-
The list of all castles
- CASTLES_SIZE - Static variable in class myGame.Settings
-
The size of the castles (in grid cells).
- Catapult - Class in troop
- Catapult() - Constructor for class troop.Catapult
- CHEAT_LAUNCH_ATTACK - Static variable in class myGame.Settings
-
The player will send an attack made of the tree type of soldier, to each other castle.
- CHEAT_MONEY - Static variable in class myGame.Settings
-
Gives 100000 gold to the player.
- CHEAT_TROOPS - Static variable in class myGame.Settings
-
Gives 100 troops of each type to the player.
- confirmButtonClicked() - Method in class popup.PopupTroop
- copy() - Method in class myGame.Direction
- copy() - Method in class myGame.Point
- costToLevel() - Method in class myGame.Castle
-
Returns the cost to level up the castle.
All Classes All Packages


Traditional Brazilian black beans (feijoada) can take quite some time to prepare. Considering I spend most of my time chasing after 2 small children, I've come up with this recipe for a very quick feijoada. This goes very well with white rice.
Necessary Ingredients:
2 strips bacon, diced
½ cup minced onion
½ cup minced green bell pepper
2 tablespoons chopped fresh cilantro (Optional)
2 cloves garlic, minced
1 bay leaf
2 (15 ounce) cans black beans, drained
½ cup chicken broth, or more as needed
1 teaspoon vinegar
Salt and ground black pepper to taste
1 dash hot sauce to taste (Optional)
Necessary Directions:
Cook bacon in a pot over medium heat until almost crisp, 3 to 5 minutes. Add onion and green pepper to the bacon; cook and stir until onion is translucent, about 5 minutes. Mix in cilantro, garlic, and bay leaf; cook and stir until flavors combine, 1 to 2 minutes.
Stir beans, chicken broth, vinegar, salt, pepper, and hot sauce into the onion mixture; cover and let simmer until the flavors combine, 10 to 15 minutes. Add more chicken broth if you would like the beans to be more soupy.