text:
Alfons Reckermann (* 8. April 1947 in Münster) ist ein deutscher Philosoph und Hochschullehrer.

Leben
Reckermann unterrichtet an der Ludwig-Maximilians-Universität München (LMU München), wo er seit 1988 eine Professur für Philosophie mit besonderer Berücksichtigung der Sozialphilosophie innehatte.

Reckermann studierte an der Universität Münster und an der Albert-Ludwigs-Universität Freiburg Philosophie, Geschichte, Germanistik und Soziologie. Den Dr. phil. erwarb er 1976 an der Universität Freiburg und habilitierte sich 1986 für das Fach Philosophie an der LMU München.

Er war verheiratet mit Ursula Reckermann (1942–2018) und wohnt in Eichenau.

Forschungsschwerpunkte
Die Schwerpunkte seiner wissenschaftlichen Arbeit sind in historischer Sicht die Philosophie der Antike und die Philosophie Nietzsches einschließlich ihrer Rezeptionsgeschichte in der gegenwärtigen Philosophie. Insbesondere interessiert er sich für Fragen der Theoriebildung und dabei für den Zusammenhang von Metaphysik und Ethik. Seine aktuelle Forschungstätigkeit gilt der antiken Polis als der ersten und bis heute paradigmatischen Form einer politischen Gemeinschaft.

Werke
 Sprache und Metaphysik: Zur Kritik der sprachlichen Vernunft bei Herder und Humboldt, München, 1979  (= Diss. Freiburg, 1976)
 Amor mutuus: Annibale Carraccis Galleria-Farnese-Fresken und das Bild-Denken der Renaissance, Köln, 1991, Reihe 'Pictura et Poesis - interdisziplinäre Studien zum Verhältnis von Literatur und Kunst, Bd. 3. ISBN 978-3-412-01589-3
 Lesarten der Philosophie Nietzsches. Ihre Rezeption und Diskussion in Frankreich, Italien und der angelsächsischen Welt, 1960 – 2000, Berlin und New York, 2003. ISBN 978-3-11-017452-6
 Den Anfang denken: Die Philosophie der Antike in den Texten und Darstellungen. Bd. I: Vom Mythos zur Rhetorik, Bd. II: Sokrates, Platon und Aristoteles, Bd. II: Vom Hellenismus zum Christentum, Hamburg, 2011. ISBN 978-3-7873-2151-3

Aufsätze (in Auswahl)
 "Sauver les Nouménes". Zur Interferenz von Kunsttheorie und Metaphysik bei Paul Valéry, Zeitschrift für philosophische Forschung, 34, 1980, 38–58.
 Nietzsche und Parmenides, Philosophisches Jahrbuch der Görres-Gesellschaft, 89, 1982, 325–346.
 gemeinsam mit Ursula Reckermann, Kunst als Modell des Kosmos, Zu Michel Butors Dialogue avec 33 variations de Ludwig van Beethoven sur une valse Diabelli, in: Arold Arens (Hrsg.), Text-Etymologie. Untersuchungen zu Textkörper und Textinhalt. Festschrift für Heinrich Lausberg zum 75. Geburtstag, Stuttgart, 1987, 315–327.
 Die "Schuld" der Form und Möglichkeiten zu ihrer Kompensation. Überlegungen zur Kritik der Rationalität bei Horkheimer und Adorno, Zeitschrift für Philosophische Forschung, 42, 1988, 417–432.
 Das Bild als Bedeutungsträger im philosophischen Diskurs. Ciceros Suche nach einem "optimum genius dicendi" und ihre Folgen für die klassizistische Kunsttheorie, konkretisiert am Beispiel der Galleria Farnese und ihre Deutung durch G. P. Bellori, in: Wolfgang Harms (Hrsg.), Text und Bild, Bild und Text, Stuttgart, 1990, 96–109.
 Ciceros Theorie der rhetorischen Rationalität, Synthesis Philosophica, Sonderheft zur antiken Philosophie, Zagreb, 1990, 507–530.
 Der göttliche "Dichter des Kosmos" als Vorbild menschlicher Kunst. Zum Verhältnis kosmologischer und künstlerischer Rationalität aus der Perspektive antiker Philosophie, in: Wolfgang Harms und Klaus Speckenbach (Hrsg.), Bildhafte Rede im Mittelalter und in der frühen Neuzeit. Probleme ihrer Legitimation und ihrer Funktion. Friederich Ohly zum 75. Geburtstag, Tübingen, 1992, 93–107.
 Pascal als Theoretiker religiöser Erfahrung, in: Walter Haug und Dietmar Mieth (Hrsg.), Modelle religiöser Erfahrung in christlicher Tradition, München, 1992, 305–331.
 Das Konzept kreativer "imitatio" im Kontext der Renaissance-Kunsttheorie, in: Walter Haug und Burghart Wachinger (Hrsg.), Innovation und Originalität im Spätmittelalter und in der frühen Neuzeit, Tübingen, 1993, 98–132.
 Nietzsches Philosophie als dionysische Rechtfertigung des Daseins, Ausblicke, 14, 2003, 87–96.
 Die Einheit der Polis als philosophisches Problem, in: Jean-Marc Narbonne et Alfons Reckermann (éd.), Pensées de l`Un dans l`histoire de la philosophie. Ètudes en hommage au Werner Beierwaltes, Paris et Quebec, 2001, 26–48.

Weblinks

 FAZ 29. April 2004 "Der beste Wegweiser durch die Gegenwartsphilosophie: Alfons Reckermann zeigt, wie Nietzsche bei heutigen Denkern verarbeitet wird"

Einzelnachweise

Philosoph (20. Jahrhundert)
Philosoph (21. Jahrhundert)
Hochschullehrer (Ludwig-Maximilians-Universität München)
Deutscher
Geboren 1947
Mann


"It comes as no surprise that Trump used the State of the Union as a platform to spread hate, racism, and fear. At a time of rising authoritarianism, our elected leaders must reject the Trump agenda and offer a powerful countervision built on true democratic principles.
"As Stacey Abrams said in her rebuttal address, 'The foundation of our moral leadership around the globe is free and fair elections, where voters pick their leaders–not where politicians pick their voters.' However, under Trump, voter suppression has become the rule rather than the exception, and big money interests continue to wield enormous power in Washington and around the country.


Dale Cunningham is a litigation lawyer primarily focused on the settlement of Indian Residential Schools claims. His Aboriginal Law practice concentrates on helping Indigenous clients throughout Alberta and the Northwest Territories obtain appropriate compensation after suffering physical, sexual and psychological abuse at the hands of teachers, supervisors or other students while attending an Indian Residential School during their childhood.
For the convenience of his clients, Dale works out of the firm's Edmonton and Yellowknife offices.
Dale is a regular speaker on a variety of Residential School issues and litigation trends at the University of Alberta Faculty of Law and at various conferences and workshops sponsored by Indigenous organizations and governments.
Before starting his legal career, Dale was a sessional lecturer at MacEwan University, and he also taught courses at the University of Alberta's Faculty of Business and the Department of Sociology.
Dale is passionate about playing a valuable role in helping abuse victims achieve some measure of closure to what are undoubtedly the most traumatic events in their lives. His small-town upbringing and calm demeanor help him relate to clients and put them at ease while reliving extremely difficult childhood memories. He excels at guiding abuse victims through every stage of a highly emotional and stressful litigation process, everything from initially making them comfortable discussing their abuse to fully preparing them to deliver strong testimony about their experiences before an Adjudicator at the Independent Assessment Process (IAP) hearing.
Dale keenly reads history, political economy, cultural studies and historical fiction. He also enjoys hiking and the occasional golf game and tennis match.


text:
Q: Multiple left joins (with multiple tables) with a condition I want to have a group list but only of those groups where the user is a member.
So I need multiple left joins (because I have multiple tables for groups, users, games...) and a condition because the I want only the groups where the user is member listed.
Here are my tables:
table users - PRIMARY KEY (user_id)
+---------+----------+-----------+
| user_id | username | realname  |
+---------+----------+-----------+
|       1 | peterpan | Peter Pan |
|       2 | bobfred  | Bod Fred  |
|       3 | sallybe  | Sally Be  |
|       6 | petersep | Peter Sep |
+---------+----------+-----------+

table users_groups - PRIMARY KEY (user_id, group_id)
+---------+----------+
| user_id | group_id |
+---------+----------+
| 1       | 1        |
| 1       | 2        |
| 2       | 1        |
| 2       | 2        |
| 3       | 6        |
| 3       | 9        |
| 6       | 6        |
| 6       | 9        |
+---------+----------+

table game - PRIMARY KEY (id)
+----+-------+
| id | game  |
+----+-------+
| 1  | Game1 |
| 2  | Game2 |
| 6  | Game6 |
| 9  | Game9 |
+----+-------+

table groups - PRIMARY KEY(group_id)
+----------+--------------+---------------+
| group_id | group_name   | group_desc    |
+----------+--------------+---------------+
| 1        | Groupname1   | Description1  |
| 2        | Groupname2   | Description2  |
+----------+--------------+---------------+

table group_game - PRIMARY KEY(group_id, game_id)
+----------+----------+
| group_id | game_id  |
+----------+----------+
| 1        | 1        |
| 1        | 2        |
| 2        | 6        |
| 2        | 9        |
+----------+----------+

And now I want to display something like this (only the groups where Peter Pan is member, because Peter Pan is actually logged in):
+----+------------+--------------+---------------------+--------------+
| id | group name | group desc   | group members       | group games  |
+----+------------+--------------+---------------------+--------------+
|  1 | GroupName1 | Description1 | Peter Pan, Bob Fred | Game1, Game2 |
+----+------------+--------------+---------------------+--------------+

This is my query (I use prepared statements and the ? would be the userid of the user)
SELECT
    g.group_name,
    g.group_id,
    g.group_desc,
    GROUP_CONCAT(DISTINCT u.realname SEPARATOR ', ') AS users,
    GROUP_CONCAT(DISTINCT ga.game SEPARATOR ', ') AS games
FROM groups g
LEFT JOIN users_groups ug1
    ON g.group_id=ug1.group_id
LEFT JOIN users u
    ON ug1.user_id=u.user_id AND u.user_id = ?
LEFT JOIN group_game gg
    ON g.group_id=gg.group_id
LEFT JOIN game ga
    ON gg.game_id=ga.id
GROUP BY g.group_name

My query doesn't work because it lists all groups and not just the groups where the actual user is member. How can I solve this?

A: If you want the users in the groups that have the user as a member, then remove the condition on the user in the left join and add:
HAVING MAX(u.user_id = ?) > 0

This returns only the groups with the given member.
Note:  you probably don't need LEFT JOINs either.  The tales should have proper foreign key relationships, and need to have at least one member (the user in question).

redpajama_set_name: RedPajamaStackExchange


text:
Couple's Use of Support Set-Off Calculations Costs Husband His $15,000 Tax Credit
The husband and wife separated in 2011. Based on their respective yearly incomes, they amicably resolved their issues as to child support by way of an agreement and consent order that was filed with the court. They reached an agreement on child support by using a software program which, as the court put it, "introduce[d] various offsetting inputs and devise[d] a final unilateral payment from one spouse to the other."
The outcome of the calculations was that the husband owed a single payment to the wife, who acknowledged that he was not required to pay further support for a specified time-period. On this income tax return for the year, the husband then went ahead and claimed non-refundable child tax credits of almost $15,000 in respect of their two children.
As the court explained:
All of the usual stressful, difficult and emotional issues for this couple relating to child custody, financial support and raising a family within the constraints of marriage breakdown were resolved in a laudatory, sensible and agreeable fashion. [The husband] testified all issues settled amicably. Lawyers were involved to prepare all documents, undertake court proceedings and ensure all details complied with the parties' wishes and the law. All seemed to unfold accordingly until the Minister's reassessment disallowing the 2012 dependent deductions. Understandably, [the husband's] child support commitment was predicated upon his use of the dependent deductions to reduce his taxable income.
The problem was that the Income Tax Act provision under which the husband had purported to claim that tax credit, namely s. 118(5.1), was an exception to the general rule in another section of the Act that disallows a support-paying person from claiming a tax deduction for dependents in certain stipulated instances. Under the wording of that latter provision, the loss or non-use of the dependent deduction could be prevented only where both parents factually pay to the other an amount for child support.
In this case, since the spouses had essentially used a set-off procedure to come up with a single payment by the husband to the wife, there was no such payment by each of them separately, as the provision required.
Unfortunately, this meant that the Minister of National Revenue disallowed the $15,000 the husband purported to claim under s. 118(5.1) of the Act. Because the husband was the only spouse to pay "a support amount", the Minister concluded, he did not fall within the exception in s. 118(5.1) and was not eligible.
The husband appealed the Minister's decision, but was unsuccessful. The court pointed out that the case law precedent was uniform in its interpretation of the Act, and that the fact that the couple had used a set-off mechanism in the course of calculating their child support obligations to each other did not transform the respective and distinct values they used into "a support amount" as that term is used in the Act's provision. The Act, as worded, did not accommodate for the "expeditious use of a computer software program, the culmination of which is a unilateral payment of a support amount by only one parent to the other."
Despite this outcome arguably based on technicalities, the court said it had "no alternative but to dismiss" the husband's appeal, "however sympathetic it may be."
Harder v. The Queen
Could Mom Unilaterally Bump Up Kid's Ballet Lessons – And Ask Dad to Pay His Share?
Son Moves Closer to Support-Paying Dad, Who Slips Him Some Extra – Was Dad Now Overpaying?
Court Cases & Orders • Educational Resources
Proposed Family Law Act Amendments Broaden Support Obligations to Disabled Adults
Do common law spouses qualify for spousal support?

redpajama_set_name: RedPajamaCommonCrawl


Your Own Personal Individual Decor Information Home design is fairly exciting. All those material swatches, wall surface papers alternatives, fresh paint color and flooring possibilities might be mind-boggling occasionally. You can begin modest. Below are a few simple modifications you could start off today. When considering the sort of hues you would like to have in each and every area in your home you would like to synchronize using the fashion of your property and the color scheme outside the house your home. Try out your greatest to synchronize one scheme with all the current bedrooms in your home and strive to make every thing appearance enjoys it moves together. Make certain that each area has outstanding lights. Quality lights can help you show off your home, and can even help a room truly feel even bigger. If there's a room in your home containing dark sides even with the lights switched on, buy a fashionable new lamp. It'll create the entire area appearance better. One particular crucial tip regarding interior decorating is to ensure any room has a focal point. Whether it is a fireplace, furniture piece or whatever you want, it is important to have one point wherein the overall area involves to ensure that what ever piece you select may be the highlight from the area. You must make certain that every one of the hues you select work well together should you be beautifying a room in your home. Discovering how hues appearance and work together can certainly make the difference from a chaotic appearance and a stylish a single. Do not use a great deal of dazzling hues together. When carrying out interior decorating function in a reduced room or area, you would like to select furnishings that is certainly functional. For instance, select ottomans as opposed to a sofa or recliners. Now you not simply use a destination to sit down, you can also make use of it being a destination to establish things on. Products which are multi-objective let you create your room a lot more functional. Think of which includes some clean design elements to your room. They are a room truly feel modern day and classy. It is smart to restrict these fashionable decorations to modest things. When a particular factor goes out of design, swapping it will probably be easy. A trendy living area collection is more challenging to change than 1 or 2 special pillows. Don't neglect your flooring! More and more people spend some time fixing the walls and receiving furnishings that they can neglect a single element of a room that will convert it: the surface. If you have fatigued, worn carpet, consider altering onto an even, dazzling timber work surface. Timber laminate may also function. These supplies are gleaming, don't get as messy, and appear much more smooth. You might just have to do easy stuff round the kitchen and this will undertake a completely new appearance. Look at entrance doors that are made from glass, to present a wide open sensing on the kitchen and brighten the climate. You can even include accent items from the open glass cupboards to present a nice aesthetic physical appearance. Prevent catering to any style developments which can be at the moment preferred. These developments are often expensive, and they'll be away from fashion fairly quickly. Go with one thing timeless that you simply feel appearance excellent. Don't allow what existing developments say are good affect how you will would like destination to appearance. Comply with your heart, not much of a fashionable publication. Plants and flowers include attention, structure and color to any interior-style undertaking. Don't stress in the event you don't use a natural thumb. There are several on the internet distributors that sell artificial plants and floral agreements. You will find interestingly lifelike and practical specimens now available for individuals who don't hold the time or desire to increase the real thing. As you now see the post from previously mentioned, it is quite easy to change a regular area into a area that dazzles by adding some color through artwork. Adhere to the tips offered in this article to aid present you with some strategies to turning that uninteresting area into a area that nice comforting.


text:
Lena Dunham claims she lost weight because of Donald Trump, has not been able to eat since his election
Los Angeles, CA, United States (4E) – "Girls" actress Lena Dunham dropped by Howard Stern's SiriusXM radio show and she talked about losing weight due to Donald Trump.
The controversial actress shared, "Donald Trump became president and I stopped being able to eat food. Everyone's been asking like, 'What have you been doing?' And I'm like, 'Try soul-crushing pain and devastation and hopelessness and you, too, will lose weight.'" The actress has been out and about promoting the last season of "Girls," which is season 6.
Dunham continued to say on her SiriusXM visit that Trump once referred to her as a B-list actor with no mojo . She continued to ask if Trump just made a mistake in paying close attention to celebrities. She then answered, "Here's the funny thing. Of course, it's a mistake, but we're talking about him like he's a person who is operating in a sane way, we're talking about him like a person who doesn't have a personality disorder."
Dunham was one of the supporters of Democratic presidential candidate Hilary Clinton. She even pledged to move to Canada if Trump wins the presidential election. She clarified that she made that promise because she believed that Trump would never sit as the president.
Earlier this week, Dunham also criticized Trump saying that he talks about women like they are objects. She expressed that despite that fact, "It doesn't reclaim our power to talk about him like he's an object. It doesn't reclaim our power to insult his physicality."


Today is Halloween, the second favorite holiday for candy purveyors. It is that special time of year when holidays collide. This means you will see Halloween and Christmas candy sharing space on store shelves. There is probably a decent chance that we'll see some companies try to make their candy packaging work for both holidays. A witch wearing a Santa hat, perhaps.
As is often the case the weather is looking rather soggy and many of the little ghosts and ghouls out tonight will be carrying umbrellas, somewhat diminishing their terrifying aspect.
I will, as always, be at home, hiding away from everything and everyone, and will curse the late night fireworks because I hate fun in all its forms.


text:
Wildcard: Spreadsheet-Driven Customization of Web Applications
By Geoffrey Litt and Daniel Jackson
This paper will be presented at the Convivial Computing Salon 2020 workshop.
Also available in a PDF version.
Many Web applications do not meet the precise needs of their users. Browser extensions offer a way to customize web applications, but most people do not have the programming skills to implement their own extensions.
In this paper, we present spreadsheet-driven customization, a technique that enables end users to customize software without doing any traditional programming. The idea is to augment an application's UI with a spreadsheet that is synchronized with the application's data. When the user manipulates the spreadsheet, the underlying data is modified and the changes are propagated to the UI, and vice versa.
We have implemented this technique in a prototype browser extension called Wildcard. Through concrete examples, we demonstrate that Wildcard can support useful customizations—ranging from sorting lists of search results to showing related data from web APIs—on top of existing websites. We also present the design principles underlying our prototype.
Customization can lead to dramatically better experiences with software. We think that spreadsheet-driven customization offers a promising new approach to unlocking this benefit for all users, not just programmers.
2 Demos
3 System Implementation
4 Design Principles
6 Conclusion and Future Work
Web applications often don't meet the precise needs of their users. Sometimes there is a browser extension available to patch an issue, and if the user is a programmer they might be able to fix it themselves. But for most people, the only recourse is to complain to the developers, or, more likely, to simply give up. Back in 1977, in Personal Dynamic Media [13], Alan Kay envisioned personal computing as a medium that let a user "mold and channel its power to his own needs," but today, software behaves more like concrete than clay.
We have implemented this technique in a prototype browser extension called Wildcard and used it to build demos which suggest that this paradigm can support useful customizations, ranging from sorting lists of data to adding whole new features to applications (shown in Section 2).
Figure 1: An overview of spreadsheet-driven customization
Our approach requires extracting structured data from the user interfaces of existing applications, but we hide the complexity of data extraction from end users. Programmers write site adapters which use web scraping techniques to extract structured data from existing applications and map it to the spreadsheet table. Our prototype suggests that it is possible to implement site adapters for real websites; Section 3 describes some of the techniques and challenges involved.
Spreadsheet-driven customization is based on three design principles, described in Section 4:
Expose a universal structure: By mapping the data in all applications to the same universal table abstraction, Wildcard enables users to learn a generic customization toolkit that they can apply to any site.
Low floor, high ceiling: Wildcard provides an easy entry point for end users, since small tweaks like sorting data can be performed with a single click. At the same time, it also supports a variety of richer customizations, like adding private annotations to a webpage or joining in related data from a web API.
Design for an ecosystem of users: Spreadsheet-driven customization combines the efforts of programmers and end users, rather than putting the full burden on end users. We also envision a role for first party developers to help make their applications more customizable.
Prior work [3,5,18] has enabled end users to create "spreadsheet-driven applications" which use spreadsheets as a backing data layer. Spreadsheet-driven customization applies this idea in a different context: customizing existing software, rather than building new software from scratch. Our technique does not require that the application actually be backed by a spreadsheet; it merely uses the spreadsheet as an interface for viewing and modifying the internal state of the application. In Section 5, we describe further how Wildcard relates to existing work on spreadsheet-driven apps, as well as work in other areas like web customization and web scraping.
The Wildcard extension is currently an early research prototype. We plan to continue testing the system with our own use cases to explore how the spreadsheet abstraction maps to real websites and customization needs. Eventually we plan to release the tool publicly in order to learn from real use cases, discover usability challenges, and to test the feasibility of building and maintaining site adapters. Section 6 describes open questions we plan to continue exploring, as well as our future plans.
Here are some examples of using Wildcard to customize websites in useful ways.
2.1 Augmenting search results
In 2012, the travel site Airbnb removed the ability to sort accommodation searches by price. Users could still filter by price range, but could no longer view the cheapest listings first. Many users complained that the change seemed hostile to users. "It's so frustrating! What is the logic behind not having this function?" said one user on the Airbnb support forum. Alas, the feature remains missing to this day.
Using Wildcard, the user can fix this omission, while leaving the page's design and the rest of its functionality unchanged. First, the user opens up the Wildcard panel, which shows a table corresponding to the search results in the page. As they click around in the table, the corresponding row in the page is highlighted to indicate the mapping between the views.
Then, the user clicks on the price column header to sort the spreadsheet and the Airbnb UI by price. They also filter to listings with a user rating above 4.5 (another feature missing in the original Airbnb UI).
After manipulating the data, the user closes the table view and continues using the website. Because the application's UI usually has a nicer visual design than a spreadsheet, Wildcard does not aim to replace it—at any time, the user can use either the UI, the spreadsheet, or both together.
Many websites that show lists of data also offer actions on rows in the table, like adding an item to a shopping cart. Wildcard has the ability to make these "row actions" available in the data table through the site adapter. In the Airbnb UI, saving multiple listings to a Favorites list requires tediously clicking through them one by one. Using Wildcard row actions, the user can select multiple rows and favorite all of them with a single click. Similarly, the user can open the detailed pages for many listings at once.
Next, the user wants to jot down some notes about each listing. To do this, they type some notes into an additional column in each row, and the notes appear inside the listings in the original UI. The annotations are saved in the browser and associated with the backend ID of the listing, so they will appear in future browser sessions that display the same listing.
Wildcard also includes a formula language that enables more sophisticated customizations. When traveling without a car, it's useful to evaluate potential places to stay based on how walkable the surroundings are. Using a formula, the user can integrate Airbnb with Walkscore, an API that rates the walkability of any location on a 1-100 scale. When the user calls the walkscore formula with the listing's latitude and longitude as arguments, it returns the walk score for that location and shows it as the cell value. Because the cell's contents are injected into the page, the score also appears in the UI.
2.2 Snoozing todos
In addition to fetching data from other sources, Wildcard formulas can also perform computations. In this example, the user would like to augment the TodoMVC todo list app with a "snooze" feature, which will temporarily hide a todo from the list until a certain date.
The user opens the table view, which shows the text and completed status of each todo. They start the customization by adding a new column to store the snooze date for each todo.
The next step is to hide snoozed todos. The user creates a snoozed? column, which uses a formula to compute whether a todo is snoozed—i.e., whether it has a snooze date in the future. Then, they simply filter the table to hide the snoozed todos.
Because the built-in NOW() function always returns the current datetime, snoozed todos will automatically appear once their snooze date arrives.
Because this implementation of snoozing was built on the spreadsheet abstraction, it is completely decoupled from this particular todo list app. We envision that users could share these types of customizations as generic browser extensions, which could be applied to any site supported by Wildcard with no additional effort.
2.3 Adding a custom datepicker
It might seem that Wildcard is only useful on websites that display lists of tabular data, but the table metaphor is flexible enough to represent many types of data. For example, a flight search form on Expedia can be represented as a single row, with a column corresponding to each input.
In some of the previous examples, the table cells were read-only (because users can't, for example, change the name or price of an Airbnb listing). In this case, the cells are writable, which means that changes in the table are reflected in the form inputs. This becomes especially useful when combined with GUI widgets that can edit the value of a table cell.
Filling in dates for a flight search often requires a cumbersome workflow: open up a separate calendar app, find the dates for the trip, and then carefully copy them into the form. In Wildcard, the user can avoid this by using a datepicker widget that shows the user's personal calendar events. The user can directly click on the correct date, and it gets inserted into both the spreadsheet and the original form.
In this section we've presented just a few use cases for spreadsheet-driven customization, to suggest some possibilities of the paradigm. We think the spreadsheet model is flexible enough to support a wide range of other useful modifications while remaining familiar and easy to use.
Wildcard is written in Typescript. It is currently injected into pages using the Tampermonkey userscript manager, but in the future we plan to deploy it as a standalone browser extension to make it easier to install.
In order to promote extensibility, Wildcard is implemented as a small core program along with several types of plugins: site adapters, formulas, and cell editors. The core contains functionality for displaying the data table and handling user interactions, and is built on the Handsontable Javascript library.
Figure 2: The architecture of the Wildcard prototype
Site adapters are a key part of Wildcard, since they specify the bidirectional connection between the web page and its structured data representation. Wildcard represents data in a relational table with named and typed columns, and provides an interface for concisely expressing how the DOM should be mapped to this structure. For example, here is a code snippet for extracting the name of an Airbnb listing.
// Field metadata:
fieldName: "name",
type: "text",
readOnly: true,
// Function to extract DOM element:
el: (row) => row.querySelector("._1ebt2xej"),
Sometimes, more advanced scraping techniques are necessary to extract data from the application. For example, we have prototyped a mechanism for site adapters to observe AJAX requests made by the browser and extract data directly from JSON responses. This mechanism was used to implement the Airbnb Walkscore example, since latitude and longitude aren't shown in the Airbnb UI, but they are available in AJAX responses. This technique seems promising because AJAX responses already contain data in a structured form, and web applications are increasingly loading data using AJAX. Another technique we might consider is enabling site adapters to scrape data across multiple pages for paginated lists of results (as explored in [10]).
Because Wildcard requires a live bidirectional connection between the UI and the structured data, there are some additional challenges beyond those typically associated with web scraping.
First, the site adapter needs to support sending updates from the table to the original page. We have made this fairly straightforward, because most DOM manipulation is not performed directly by the site adapter. Instead, Wildcard automatically mutates the DOM to reflect the spreadsheet state, using the same specification that was used to extract the data. The only exception to this is row actions (like favoriting an Airbnb listing), which are implemented as Javascript functions that can perform arbitrary behaviors like simulating clicks on buttons or mutating the DOM.
Another challenge is triggering updates to the spreadsheet data in response to UI changes that happen after initial page load. Site adapters are responsible for recognizing these changes by observing the DOM. So far, we have been able to use event listeners and the MutationObserver API to successfully observe changes, but it may prove challenging to observe changes on some sites only through the DOM.
The idea of spreadsheet-driven customization is guided by three design principles, inspired by prior work and our own experimentation. We think these principles might also broadly inform the design of tools for end user software customization.
4.1 Expose a universal data structure
Today, most personal computing consists of using applications, which bundle together behavior and data to provide some set of functionality. While there are some limited points of interoperability, applications generally are designed to operate independently of one another.
Computing does not need to be organized this way. For example, UNIX offers a compelling alternative: many small single-purpose programs, all of which manipulate a universal format of text streams. Users get high leverage from mastering a text editor and other text manipulation tools, since they can be applied to a huge variety of tasks. A user's preferred text editor can even serve as an interactive input mechanism in shell programs, e.g. for editing git commit messages.
Spreadsheet-driven customization aims to bring some of this UNIX ethos to the world of isolated Web applications by creating a consistent data structure to represent the data inside many applications. In UNIX, the universal format is a text stream; in Wildcard, it is a relational table. Because Wildcard maps the data from all applications to the table format, users can master the tools provided by Wildcard and apply them to customize many different applications.
This idea relates to Beaudouin-Lafon and Mackay's notion of polymorphic interface instruments [2], which are UI elements that can be used in different contexts (for example, a color picker that can be used in many drawing applications). It also relates to ideas of literacy in a medium. DiSessa notes that textual literacy depends on the fact that writing can be adapted to many different genres [8]: if people needed to relearn reading and writing from scratch when switching from essays to emails, the medium would lose its potency. Generic tools are especially important for software customization, because a common barrier to customizing software is not having enough time [17]—it's more likely that people will customize software frequently if they can reuse the same tools across many applications.
This design principle leads to several challenges. First, any universal abstraction has its limits, and may not naturally express the data in every application. We plan to explore the limits of the table abstraction further by trying to build adapters for more sites with varied data formats. We expect that many types of data will fit easily into tables: lists of search results, news articles, and messages can all naturally be seen as relations. Documents (e.g. Google Docs) or graphs (e.g. social network friend graphs) may prove more challenging to map to the table abstraction.
4.2 Low floor, high ceiling
Seymour Papert advocated for programming systems to have a "low floor," making it easy for novices to get started, and a "high ceiling," providing a large range of possibilities for more sophisticated users [21]. Our goal is for spreadsheet-driven customization to meet both of these criteria.
One of the most interesting properties of spreadsheets is that users familiar with only a tiny sliver of their functionality (e.g., storing tables of numbers and computing simple sums) can still use them in valuable ways. This supports the user's natural motivation to continue using the tool, and to eventually learn its more powerful features if needed [20]. In contrast, many traditional programming systems require an enormous upfront time investment before someone is able to write a program that helps them achieve a useful task.
As part of ensuring a low floor, we have focused on including features that have immediate value for novices. For example, a user can sort a table with a single click, or simply type in some annotations. We would expect many Wildcard users to start by using these simpler features before moving on to more sophisticated features like formulas.
Another aspect of providing a low floor is providing an "in-place toolchain" [25]: minimizing the effort of moving from using to customizing by making customization tools available in the same environment where the user is already using the software. This quality is distinct from the level of technical skill needed to use the tool. For example, setting up a workflow in an end user programming system like IFTTT does not require much programming skill, but it does require leaving the user's normal software and entering a separate environment; conversely, running a Javascript snippet in the browser console requires programming skills, but can be done immediately in the flow of using a website.
In-place Not in-place
End user friendly Wildcard IFTTT
Requires programming browser JS console using Web APIs in Python
Wildcard provides an in-place toolchain because the spreadsheet can be instantly opened in the browser window while using any supported website. Once the user starts editing, Wildcard also provides live feedback, so that even if a user isn't yet totally familiar with Wildcard, they can learn to use the system through experimentation.
Since we have only built a few site adapters and demos so far, it is still too early to tell how high the ceiling is for the customizations that can be achieved with Wildcard. But we think that with enough built-in formulas (both standard spreadsheet formulas for computation, and formulas for fetching data from other sources), the language could support a wide variety of customizations. We plan to explore this aspect further by trying to solve real problems and observing where limitations emerge in practice (discussed more in Section 6).
4.3 Design for an ecosystem of users
Real-world spreadsheet usage is highly collaborative. Many users only perform simple changes, while their coworkers help with writing complex formulas or programming macros [19]. Inspired by this collaborative dynamic, we aim for spreadsheet-driven customization to bring together the abilities of different users.
The main way we do this is by separating website customization into two separate stages: structured data extraction, performed by programmers who code site adapters in Javascript, and then customization using the resulting spreadsheet, which is available to all end users. This architecture frees end users from needing to think about data extraction, and enables a community of end users to reuse the efforts of programmers building site adapters.
The group of users building adapters does not necessarily need to be limited only to programmers. In the future, we plan to explore enabling end users to also create site adapters, drawing on related work in this area [6,10]. But even then, we still envision a separation between highly motivated, tech-savvy end users building adapters, and more casual end users just using the spreadsheet view.
The first party developers of the original software can also play a role in enabling customization. Although spreadsheet-driven customization does not depend on cooperation from first party website developers, their participation in exposing structured data would eliminate the need for third party site adapters. The first parties could themselves benefit from such a system; providing Wildcard support—a fairly low-effort undertaking for a developer with direct access to the structured data—would allow users to build extensions to fulfill some of their own feature requests. There is also precedent for first parties implementing an official client extension API: for several years, Google maintained an official extension API in Gmail for Greasemonkey scripts to use.
Google no longer maintains its own API, but third parties have continued to maintain successful replacements—Gmail.js [22] is an open source wrapper API with over 70 contributors and hundreds of commits. This library demonstrates another benefit of designing for an ecosystem: it's easier for many programmers to collectively maintain a generic site adapter that can support many extensions, rather than each programmer creating custom scraping logic for their own single-purpose extension.
Spreadsheet-driven customization relates to existing work in four areas: malleable software, web customization, spreadsheet-driven applications, and web scraping.
5.1 Malleable software
In the broadest sense, Wildcard is inspired by systems aiming to make software into a dynamic medium where end users frequently create and modify software to meet their own needs, rather than only consuming applications built by programmers. These systems include Smalltalk [13], Hypercard [12], Boxer [7], Webstrates [14], and Dynamicland [23]. In fact, the name Wildcard comes from the internal pre-release name for Hypercard, a project which doubly inspired our work by promoting both software modification by end users and the ideas behind the Web.
Although Wildcard shares broad goals with these projects, it employs a different solution strategy. These other systems generally require building software from scratch in a new environment. On the other hand, Wildcard aims to maximize the malleability of software built with existing tools.
With substantial future work, we think Wildcard could become more similar to these other projects, growing from a platform for tweaking existing software into a platform for building new software from scratch. This would likely end up resembling existing tools for building spreadsheet-driven applications (discussed more below), but with an additional focus on customization by end users of the software.
5.2 Web customization
Wildcard's goals are closely shared with other systems that provide interfaces in the browser for end users to customize websites.
5.2.1 Structured augmentation
Wildcard's solution approach is most similar to other tools that identify structured data in a web page and then use that structure to support end user customization of the page.
Sifter [10] enables users to sort and filter lists of data on web pages, which resembles Wildcard's sorting functionality. The underlying mechanism is similar, since Sifter extracts structured data from the page to enable its user-facing functionality. However, the systems also have significant differences:
Wildcard hides data extraction from end users by having programmers develop site adapters, whereas Sifter uses a combination of automated heuristics and interactive user feedback to involve end users in extracting data. User studies of Sifter indicated that users were surprised by the need to participate in the data augmentation process, which influenced our decision to hide this process from the user. We suspect Wildcard's workflow results in a simpler end user experience, but at the cost of only working with a smaller subset of supported websites.
Wildcard supports a broad set of customizations. Sifter only supports sorting and filtering.
Wildcard shows the structured data table directly to the user. Sifter only shows sorting controls, and does not reveal the underlying data table.
Thresher [9] enables users to create wrappers which map unstructured website content to Semantic Web content. Like Wildcard and Sifter, Thresher augments the page: once semantic content has been identified, it creates context menus in the original website which allow users to take actions based on that content. Wildcard and Thresher focus on complementary parts of the customization process. Thresher aims to enable end users to create content wrappers, but the actions available on the structured data are determined in advance. Conversely, Wildcard delegates wrapper creation to programmers, but gives end users more flexibility to use the structured data in an open-ended way.
5.2.2 Sloppy augmentation
"Sloppy programming" [16] tools like Chickenfoot [4] and Coscripter [15] enable users to create web automation scripts without directly interacting with the DOM. The scripts can perform actions like filling in text boxes and clicking on buttons. Users express the desired page elements in natural, informal terms (e.g. writing "the username box" to represent the textbox closest to the label "username"), and then the system uses a set of heuristics to determine which elements most likely match the user's intent. This approach allows for expressing a wide variety of commands with minimal training, but it also has downsides [16]:
Reliability: It can be difficult to know whether a command will consistently work over time. Changes to the website or to the system's heuristics can cause unexpected changes in behavior.
Discoverability: it can be difficult for users to explore the space of possible commands.
Wildcard offers a sharp contrast to sloppy programming, instead choosing to expose a high degree of structure through the spreadsheet table. Wildcard offers more consistency; for example, clicking a sort header will always work correctly as long as the site adapter is maintained. Wildcard also offers clearer affordances for what types of actions are possible. On the other hand, Wildcard's explicit site adapter approach means that fewer websites can be customized, and also that users can't perform customizations if the relevant data is not exposed in the spreadsheet.
Another difference between Wildcard and these tools is that there is no way for users to express imperative workflows with sequences of actions in Wildcard. Chickenfoot and Coscripter have shown these types of workflows to be useful in practice so it might be worth considering how to incorporate them, but it's not obvious how such workflows could fit into Wildcard. Spreadsheets have a fundamentally different computation model, and site adapters created by programmers cannot easily account for every possible action a user might want to perform in a page.
5.3 Spreadsheet-driven applications
Many researchers and companies have explored the idea of spreadsheet-driven applications: using spreadsheets as a backing data store and computation layer for interactive web applications, enabling end users to create such applications more easily. Research projects like Object Spreadsheets [18], Quilt [3], Gneiss [5], and Marmite [24], as well as commercial tools like Airtable [26] and Glide [27] allow users to view data in a spreadsheet table, compute over the data using formulas, and then connect the table to a GUI. Because many users are already familiar with spreadsheets, this way of creating applications tends to be much easier than traditional software methods; for example, in a user study of Quilt, many users were able to create applications in under 10 minutes, even if they expected it would take them many hours.
Wildcard builds on this idea, but applies it to modifying existing applications, rather than building new applications from scratch. For many people, we suspect that tweaking existing applications provides more motivation as a starting point for programming than creating a new application from scratch.
An important design decision for tools in this space is how far to deviate from traditional spreadsheets like Microsoft Excel or Google Sheets. Quilt and Glide use existing spreadsheet software as a backend, providing maximum familiarity for users, and even compatibility with existing spreadsheets. Gneiss has its own spreadsheet implementation with additional features useful for building GUIs. Marmite provides a live data view that resembles a spreadsheet, but programming is actually done using a separate data flow pane rather than spreadsheet formulas. Marmite's approach led to some confusion in a user study, because users expected behavior more similar to spreadsheets [24]. Airtable deviates the furthest: although the user interface resembles a spreadsheet, the underlying structure is a relational database with typed columns. Wildcard's table is most similar to Airtable; the structure of a relational table is most appropriate for most data in websites, and we have not yet found a need for arbitrary untyped cells.
5.4 Web scraping / data extraction
Web scraping tools focus on extracting structured data out of unstructured web pages. Web scraping is closely related to the implementation of Wildcard, but has different end goals: web scraping generally extracts static data for processing in another environment, whereas Wildcard customizes the application's UI by maintaining a bidirectional connection between the extracted data and the page.
Web scraping tools differ in how much structure they attempt to map onto the data. Some tools like Rousillon [6] extract data in a minimally structured relational format; other tools like Piggy Bank [11] more ambitiously map the data to a rich semantic schema. In Wildcard, we chose to avoid semantic schemas, in order to minimize the work associated with creating a site adapter.
In the future, we might try to integrate existing web scraping tools, to help create more reliable site adapters for Wildcard with less work, and to open up adapter creation to end users. Although Wildcard has additional requirements beyond traditional web scraping as discussed in Section 3, there is still enough overlap that existing tools might prove helpful.
In this paper, we have presented spreadsheet-driven customization, a technique that enables end users to customize software by augmenting an application's UI with a spreadsheet. We still have many open questions which we hope to answer through targeted development and usage of Wildcard.
The most important question is: what are the limits of this computational model? What types of useful customizations can it support or not support? While initial demos suggest a variety of use cases, we plan to develop more site adapters and demos to explore this question further. We will start by privately testing the system with our own needs and then eventually deploy the tool publicly once it has a stable API and can support a critical mass of sites and use cases. We also plan to run usability studies to evaluate and improve the design of the tool.
We suspect that some areas of the current model may prove overly simplistic. For example, Wildcard's data model currently shows a single table at a time, without any notion of relationships between tables. A richer data model with foreign keys might help support certain use cases. For designing a spreadsheet interface on top of a richer relational model, we could learn from other systems with this design [1,18].
Another question is how easily site adapters can be created and maintained for real websites, which often include complex markup and change frequently. We plan to explore this question by creating adapters for sites with different data structures and in different domains, and perhaps running user tests with programmers. Possible future improvements we've considered include developing automated heuristics to assist with the adapter creation process and developing new abstractions that make it easier for programmers to efficiently create robust adapters.
Ultimately, we hope that spreadsheet-driven customization helps the Web reach its full potential as a dynamic medium that users can mold to their own needs.
Get project updates: Up to date information about Wildcard is available on the project website. To be notified when Wildcard is available for public use, sign up for the mailing list. If you're interested in being a private beta tester or you have feedback, please get in touch.
Acknowledgements: Thanks to Tarfah Alrashed, Glen Chiacchieri, David Karger, Steve Krouse, Rob Miller, Santiago Perez De Rosso, Arvind Satyanarayan, Daniel Windham, and Maggie Yellen for providing valuable feedback on this work.
[1] Eirik Bakke and David R. Karger. 2016. Expressive query construction through direct manipulation of nested relational results. In Proceedings of the 2016 international conference on management of data - SIGMOD '16, ACM Press, San Francisco, California, USA, 1377–1392. DOI:https://doi.org/10.1145/2882903.2915210
[2] Michel Beaudouin-Lafon and Wendy E. Mackay. 2000. Reification, polymorphism and reuse: Three principles for designing visual interfaces. In Proceedings of the working conference on advanced visual interfaces (AVI '00), ACM, New York, NY, USA, 102–109. DOI:https://doi.org/10.1145/345513.345267
[3] Edward Benson, Amy X. Zhang, and David R. Karger. 2014. Spreadsheet driven web applications. In Proceedings of the 27th annual ACM symposium on user interface software and technology - UIST '14, ACM Press, Honolulu, Hawaii, USA, 97–106. DOI:https://doi.org/10.1145/2642918.2647387
[4] Michael Bolin, Matthew Webber, Philip Rha, Tom Wilson, and Robert C. Miller. 2005. Automation and customization of rendered web pages. In Proceedings of the 18th annual ACM symposium on user interface software and technology - UIST '05, ACM Press, Seattle, WA, USA, 163. DOI:https://doi.org/10.1145/1095034.1095062
[5] Kerry Shih-Ping Chang and Brad A. Myers. 2014. Creating interactive web data applications with spreadsheets. In Proceedings of the 27th annual ACM symposium on user interface software and technology - UIST '14, ACM Press, Honolulu, Hawaii, USA, 87–96. DOI:https://doi.org/10.1145/2642918.2647371
[6] Sarah E. Chasins, Maria Mueller, and Rastislav Bodik. 2018. Rousillon: Scraping distributed hierarchical web data. In The 31st annual ACM symposium on user interface software and technology - UIST '18, ACM Press, Berlin, Germany, 963–975. DOI:https://doi.org/10.1145/3242587.3242661
[7] A. A diSessa and H. Abelson. 1986. Boxer: A reconstructible computational medium. Commun. ACM 29, 9 (September 1986), 859–868. DOI:https://doi.org/10.1145/6592.6595
[8] Andrea A. diSessa. 2000. Changing minds: Computers, learning, and literacy. MIT Press, Cambridge, MA, USA.
[9] Andrew Hogue and David Karger. 2005. Thresher: Automating the unwrapping of semantic content from the world wide web. In Proceedings of the 14th international conference on world wide web - WWW '05, ACM Press, Chiba, Japan, 86. DOI:https://doi.org/10.1145/1060745.1060762
[10] David F. Huynh, Robert C. Miller, and David R. Karger. 2006. Enabling web browsers to augment web sites' filtering and sorting functionalities. In Proceedings of the 19th annual ACM symposium on user interface software and technology - UIST '06, ACM Press, Montreux, Switzerland, 125. DOI:https://doi.org/10.1145/1166253.1166274
[11] David Huynh, Stefano Mazzocchi, and David Karger. 2005. Piggy bank: Experience the semantic web inside your web browser. In The semantic web – ISWC 2005 (Lecture notes in computer science), Springer, Berlin, Heidelberg, 413–430. DOI:https://doi.org/10.1007/11574620_31
[12] Hypercard. 2019. HyperCard. Wikipedia. Retrieved January 3, 2020 from https://en.wikipedia.org/w/index.php?title=HyperCard&oldid=931376685
[13] A. Kay and A. Goldberg. 1977. Personal dynamic media. Computer 10, 3 (March 1977), 31–41. DOI:https://doi.org/10.1109/C-M.1977.217672
[14] Clemens N. Klokmose, James R. Eagan, Siemen Baader, Wendy Mackay, and Michel Beaudouin-Lafon. 2015. Webstrates: Shareable dynamic media. In Proceedings of the 28th annual ACM symposium on user interface software & technology - UIST '15, ACM Press, Daegu, Kyungpook, Republic of Korea, 280–290. DOI:https://doi.org/10.1145/2807442.2807446
[15] Gilly Leshed, Eben M. Haber, Tara Matthews, and Tessa Lau. 2008. CoScripter: Automating & sharing how-to knowledge in the enterprise. In Proceedings of the SIGCHI conference on human factors in computing systems (CHI '08), ACM, New York, NY, USA, 1719–1728. DOI:https://doi.org/10.1145/1357054.1357323
[16] Greg Little, Robert C. Miller, Victoria H. Chou, Michael Bernstein, Tessa Lau, and Allen Cypher. 2010. Sloppy programming. In No code required. Elsevier, 289–307. DOI:https://doi.org/10.1016/B978-0-12-381541-5.00015-8
[17] Wendy E. Mackay. 1991. Triggers and barriers to customizing software. In Proceedings of the SIGCHI conference on human factors in computing systems reaching through technology - CHI '91, ACM Press, New Orleans, Louisiana, United States, 153–160. DOI:https://doi.org/10.1145/108844.108867
[18] Matt McCutchen, Shachar Itzhaky, and Daniel Jackson. 2016. Object spreadsheets: A new computational model for end-user development of data-centric web applications. In Proceedings of the 2016 ACM international symposium on new ideas, new paradigms, and reflections on programming and software - onward! 2016, ACM Press, Amsterdam, Netherlands, 112–127. DOI:https://doi.org/10.1145/2986012.2986018
[19] Bonnie A. Nardi and James R. Miller. 1990. An ethnographic study of distributed problem solving in spreadsheet development. ACM Press, 197–208.
[20] Bonnie A. Nardi and James R. Miller. 1991. Twinkling lights and nested loops: Distributed problem solving and spreadsheet development. International Journal of Man-Machine Studies 34, 2 (February 1991), 161–184. DOI:https://doi.org/10.1016/0020-7373(91)90040-E
[21] Mitchel Resnick. 2016. Designing for wide walls. Design.blog. Retrieved January 7, 2020 from https://design.blog/2016/08/25/mitchel-resnick-designing-for-wide-walls/
[22] Kartik Talwar. 2019. Gmail.js. GitHub. Retrieved December 28, 2019 from https://github.com/KartikTalwar/gmail.js
[23] Bret Victor. Dynamicland. Retrieved January 3, 2020 from https://dynamicland.org/
[24] Jeffrey Wong and Jason I. Hong. 2007. Making mashups with marmite: Towards end-user programming for the web. In Proceedings of the SIGCHI conference on human factors in computing systems - CHI '07, ACM Press, San Jose, California, USA, 1435–1444. DOI:https://doi.org/10.1145/1240624.1240842
[25] 2019. End-user programming. Ink and switch. Retrieved December 28, 2019 from https://www.inkandswitch.com/end-user-programming.html
[26] Airtable: Organize anything you can imagine. Airtable. Retrieved January 3, 2020 from https://airtable.com
[27] Create an app from a google sheet in minutes · glide. Retrieved January 3, 2020 from https://www.glideapps.com/


The California Medical Association House of Delegates today voted (Res. 118-13) to endorse the National Transportation Safety Board's 2013 recommendation that the legal blood alcohol limit for operating a motor vehicle be decreased from .08 percent to .05 percent or lower.
According to the National Transportation Safety Board, each year in the United States, nearly 10,000 people are killed in crashes involving alcohol-impaired drivers and more than 173,000 are injured, with 27,000 suffering incapacitating injuries. Since the mid-1990s, even as total highway fatalities have fallen, the proportion of deaths from accidents involving an alcohol-impaired driver has remained constant at around 30 percent.
Research shows that although impairment begins with the first drink, by .05 percent blood alcohol content most drivers experience a decline in both cognitive and visual functions, which significantly increases the risk of a serious crash. Currently, over 100 countries on six continents have limits set at 0.05 percent or lower. The NTSB has asked all 50 states to do the same.


text:
Randy Baruh Samson (born 19 June 1995) is a Malaysian professional footballer who plays as a defender.

Honour
Sabah
Malaysia Premier League: 2019

References

External links

1995 births
Living people
Malaysian footballers
People from Sabah
Sabah F.C. (Malaysia) players
Perak F.C. players
Association football defenders

redpajama_set_name: RedPajamaWikipedia


text:
Send Sympathy Gifts
Plant a Tree for Jo-Ann
Jo-Ann (Ducharme) Ferra
January 18, 1959 ~ January 21, 2023 (age 64) 64 Years Old
Read more about the life story of Jo-Ann and share your memory.
64, of Cranston passed away on Saturday January 21, 2023 at the home of her daughter Jovana surrounded by her loving family.
Born in Providence, she was the daughter of the late Peter and Joan (DelToro) Ducharme.
Jo-Ann was the devoted mother of Kristin Fullmer, Jovana Ferra, Michael M. Ferra and Anthony Ferra; loving grandmother of Adrianna, Averie and Harley. She was the beloved sister of Peter Ducharme, II his wife Fran, and a wonderful aunt to many nieces and nephews. She was the former wife of Michael F. Ferra.
She was a talented seamstress, avid reader, loved to travel and marched to the beat to her own drum.
Funeral from the Nardolillo Funeral Home & Crematory 1278 Park Ave. Cranston on Friday January 27, 2023 at 10 am. followed by a Mass of Christian Burial in St. Mary's Church 1525 Cranston Street Cranston at 11 am. Burial will be private. Visiting hours are Thursday January 26, 2023 from 4pm to 8 pm.
In lieu of flowers memorial contributions may be made to: St. Jude Children's Research Hospital 501 St. Jude Place Memphis, TN 38105.
To send flowers to the family or plant a tree in memory of Jo-Ann (Ducharme) Ferra, please visit our floral store.
Jo-Ann Ferra
January 18, 1959-January 21, 2023
You can still show your support by sending flowers directly to the family, or by planting a memorial tree in the memory of Jo-Ann (Ducharme) Ferra
Plant a tree in memory of Jo-Ann
© 2023 Nardolillo Funeral Home, Inc.. All Rights Reserved. Funeral Home website by CFS & TA | Terms of Use | Privacy Policy | Accessibility


text:
« TV ratings prove that a lot of people were ready for some football | Back to Main Page | Andre Reed's Hall of Fame chances assessed by The NFL Network »
76ers' Evan Turner is coming to Allentown
Categories: Current Affairs, Philadelphia Sixers
The Philadelphia 76ers' Evan Turner is coming to Allentown on Saturday, Sept. 21 from 7 to 9 p.m. at the East Side Youth Center to host a camp called "Funky Feet."
It is being presented by www.lvbasketballrankings.com with sponsorship assistance from the A-town Throwdown (the boys basketball tournament at SportsFest), the Select Competition Basketball League, the East Side Youth Center Elite program and several other organizations.
The camp is open to boys and girls in grades 3-12 and the cost is $65 per camper (prepaid) and $75 at the door. Campers will be separated by skill and age.
The East Side Youth Center is located at 1140 E. Clair St. in Allentown.
Turner is a former college All-American at Ohio State. He was the second pick overall in the 2010 NBA Draft.
In three seasons with the 76ers, he has averaged 10.1 points per game with his best season being last season when he averaged 13.3 ppg to go with 5.3 rebounds and 3.1 assists per game.
He started all 82 76ers games last year.
According to an event flyer, Turner will be lecturing, demonstrating and evaluating the campers and stressing the use of proper footwork to gain an advantage on the court. The camp is designed to help all players become more efficient and gain distance without necessarily becoming faster.
All campers will get a T-shirt, and a picture with Evan as well as his autograph.
To register and pay for the camp, go to www.lvbasketballrankings.com.
Trackback URL for this entry: https://www.typepad.com/services/trackback/6a00d8341c4fe353ef019aff577c20970c
Listed below are links to weblogs that reference 76ers' Evan Turner is coming to Allentown


text:
Dennis Heaney 40th Anniversary - statement from family
10th June 1978- 2018 | 06 June 2018
The family of Dennis Heaney (21), shot dead on the streets of his home town Derry by under-cover soldiers of the British Army's 14th Intelligence Company (a cover name for the SAS) on 10th June 1978. A series of events to remember Dennis on the 40th anniversary have been arranged by the Heaney...
Historical nonsense underpins UK's Brexit floundering. From Hastings to Dunkirk a past that blinds Britain to reality has been peddled
Irish Times | 25 September 2018
As Glasgow University owns up to slavery wealth, others urged to follow
The Guardian | 25 September 2018
The institution is making reparations after admitting it had made £200m from the transatlantic trade
MI5 sought immunity for agents' criminal acts, tribunal told
Investigatory Powers Tribunal | 04 October 2018
MI5 agents have been granted legal immunity to participate in murder, torture, sexual assaults and other criminality, a tribunal has heard. The secret policy may, for decades, have enabled the security service to conceal illegal activity, Ben Jaffey QC told the investigatory powers tribunal. Even...
PFC's response to the Consultation to deal with the Legacy of the Past
The Pat Finucane Centre have prepared an extensive response to the NIO's consultation to deal with the legacy of our past. It can be downloaded by clicking the link at the bottom of this past.
Britain should stop trying to pretend that its empire was benevolent
May 13, 2016 | 10 October 2018
Interesting 2016 article from Alan Lester, Professor of Historical Geography at the University of Sussex on Britain's attitude to empire and the racist underpinnings of the view that the empire was benevolent. Published in The Conversation.
Breaking the silence on partition and British Colonial history (Published 31 July 2017)
Reflections 70 years after the partition of the Indian sub-continent | 11 October 2018
Many British south Asian families were caught up in the violence of 1947 when Britain partitioned India. Seventy years on, some are telling their stories for the first time. Kavita Puri is the editor of Our World and presenter of Partition Voices on BBC Radio 4
MOD treating Kathleen Thompson family with 'contempt'
The family of a Derry mother-of-six, shot dead in her own back garden, says Britain's Ministry of Defence is treating them – and an inquest into her death - with complete contempt. Even the Coroner hearing the case has expressed deep disappointment at the MoD's failure to confirm the identities of...
PFC's 2018 Newsletter
| 07 December 2018
PFC's annual newsletter outlining the work of the PFF/ JFF over the last twelve months.
The Museum of British Colonialism
AN EXPLORATION OF BRITISH COLONIALISM The Museum of British Colonialism has been realised to creatively communicate a more truthful account of British colonialism. We have a documentary and a pilot exhibition in the works and will use this site to gather, share, present and comment on material and...
Criminal Conduct and Non-Accountability of soldiers in the North of Ireland
Madden & Finucane Submission to Bloody Sunday Enquiry | 26 September 2018
General submission from M&F concerning 1972 RMP/RUC 'Gentleman's Agreement', Shooting with Impunity, General Lawlessness of Soldiers, Modification of Plastic Bullets, Private Supplies of Bullets, Breaches of Yellow Card and the Reputation of the Paras.
The 'British Patriot', the UDA Gouger and MI5
PFC | 02 March 2017
The following incident gives a fascinating insight into MI5
Pat Finucane's widow loses appeal over inquiry into murder
The Irish Times | 21 February 2017
Court of appeal judges in Belfast rejected challenge to British government decision
Court Judgement in Finucane case
Download the judgements from Justices Horner, Gillen & Deeney.
Pat Finucane's family lose appeal over murder inquiry
RTE | 21 February 2017
Belfast's Court of Appeal has upheld the decision of the British government to not hold a public inquiry into the 1989 murder of solicitor Pat Finucane.


playroom furniture ideas playroom furniture ideas playroom ideas toddler room ideas playroom awesome children s furniture ideas playroom ideas .
playroom furniture ideas kids playroom furniture ideas kids playroom furniture ideas online playroom furniture ideas home design ideas toddler playroom furniture ideas best on storage kids and room idea playroom furniture ideas design of the kids for high wooden modular pattern ikea playroom furniture ideas.
playroom furniture ideas kids playroom furniture ideas kids jungle gym cool furniture ideas kids room furniture design playroom ideas kids playroom designs pictures unique furniture ideas for girls kids playroom designs pictures unique playroom furniture ideas for kids playroom girls playroom ideas small room.
playroom furniture ideas kids playroom decor ideas interior design ideas kids playroom rh southendgeneralstoreandrestaurant com kids playroom storage furniture playroom furniture ideas elegant kids playroom storage furniture playroom furniture ideas playroom ideas playroom furniture kids playroom storage ideas furniture.
playroom furniture ideas kids playroom furniture ideas kids playroom decor playroom wall decor ideas playroom decor ideas playroom decor playroom furniture ideas home sets kids playroom furniture kids playroom furniture ideas playroom furniture ideas toys storage furniture playroom furniture ideas playroom furniture ideas playroom playroom furniture.
playroom furniture ideas playroom furniture ideas affordable home playroom at attic ideas playroom storage furniture ideas dear lillie a very pink christmas playroom play room in dear lillie a very pink christmas playroom.
playroom furniture ideas kids playroom furniture ideas full version decorating for fall cheap stunning with white interior design playroom furniture ideas medium furniture of kids ideas room picture playroom furniture ideas image of playroom furniture ideas playroom storage furniture ideas playroom furniture ideas.
playroom furniture ideas image of kids playroom furniture ideas kids playroom furniture ideas kids playroom decor playroom wall kids playroom furniture ideas kids playroom decor playroom wall decor ideas playroom decor ideas playroom decor.
playroom furniture ideas light blue rug and brown furniture decor for kids room kids play room furniture ezen kids play room furniture children playroom furniture playroom furniture ideas playroom furniture ideas toddler playroom furniture.
playroom furniture ideas kids playroom furniture furniture for playroom kids playroom decor playroom furniture ideas kids playroom furniture ideas collection in childrens playroom furniture best ideas about brilliant childrens playroom furniture awesome kids playroom ideas home design and interior.
playroom furniture ideas fancy furniture amazing kids playroom furniture ideas 7 imposing kids luxuriate good towards personal residence storage furniture for childrens playroom playrooms for toddlers cool storage furniture for childrens playroom playroom furniture ideas playroom ideas for toddlers furniture playroom ideas for.
playroom furniture ideas kids playroom furniture ideas pottery barn best playrooms on kid basement decorating children playroom furniture playroom furniture beautiful kids children playroom furniture playroom furniture ideas attic playroom for kids home ideas magazine pdf children playroom furniture.
playroom furniture ideas playroom furniture ideas image of playroom furniture ideas playroom storage furniture ideas playroom furniture ideas furniture luxury plywood furniture ideas perfect plywood furniture perfect plywood furniture fresh kid playroom furniture new discount kids furniture new media cache.
playroom furniture ideas modern kids playroom furniture furniture with storage kids playroom furniture kids room furniture kids storage furniture modern kids playroom furniture kids playroom storage furniture playroom furniture ideas elegant kids playroom storage furniture playroom furniture ideas playroom ideas playroom furniture kids playroom storage ideas furniture.
playroom furniture ideas related post awesome kids playroom ideas home design and interior atticplayroomforkids.
playroom furniture ideas blue black white kids playroom decor boy playroom ideas baby playroom furniture modern playroom furniture boy playroom ideas playroom ideas for boys playroom furniture ideas kid playroom furniture playroom furniture ideas.
playroom furniture ideas playroom furniture ideas brilliant awesome kids creative of toy storage for color ikea playroom furniture ideas playroom furniture ikea source storage northmallowco playroom furniture ikea kids rniture ideas best on o uk playroom furniture.
playroom furniture ideas bookshelf ideas for the kidsroom peter pinterest playroom playroom storage and kids playroom storage children playroom furniture children mobile home outside ideas children playroom furniture playroom furniture playroom furniture beautiful a new e home renovation ideas outside.
playroom furniture ideas modern playroom furniture boys playroom design ideas kids r us furniture kids playroom ideas diy ikea kids furniture astonishing toddler playroom furniture playroom kids furniture toddler playroom furniture playroom furniture ideas good amazing interior cool inspiration playroom ideas.
playroom furniture ideas toddler playroom furniture toddler playroom playroom paint ideas route toddler playroom paint ideas furniture luxury plywood furniture ideas perfect plywood furniture perfect plywood furniture fresh kid playroom furniture new discount kids furniture new media cache.
playroom furniture ideas brilliant childrens playroom furniture 35 awesome kids playroom ideas home design and interior playroom furniture ideas home sets kids playroom furniture kids playroom furniture ideas playroom furniture ideas toys storage furniture playroom furniture ideas playroom furniture ideas playroom playroom furniture.
playroom furniture ideas playroom furniture ideas playroom furniture ideas toys storage furniture playroom furniture ideas playroom furniture ideas playroom playroom furniture incredibly creative playroom furniture and dcor ideas gorgeous curtains pretty room for kids.
playroom furniture ideas kids jungle gym playroom furniture ideas cool playroom furniture ikea source storage northmallowco playroom furniture ikea kids rniture ideas best on o uk playroom furniture.
playroom furniture ideas childrens playroom furniture playroom storage ideas elegant kids playroom storage furniture playroom storage units home playroom play room playroom furniture ideas lovely amazing furniture for playroom furniture ideas lovely amazing furniture for kids playroom ideas room of trend and.
playroom furniture ideas small nook becomes a playroom design best playroom ideas images on pinterest of kids playroom design best playroom ideas images on pinterest of kids playroom furniture.


Garbo is a sweet girl with very fine fleece. She is breeding to WoodsEdge The Red Baron for a July 2006 cria. She currently has a female cria at side who is copper in color! The luster on this cria is amazing! Garbo can throw color! She delivers without assistance and has plenty of milk. Get this three-in-one package at this great price!
Snickers has very fine penciling with high luster in a pretty copper color. Her dam is a great mom and has tons of milk! Snickers will be in the show ring in 2006! Great price!


Since the old jail system on Freenas is soon to be removed, they want users to migrate to iocage instead.
You can only administrate iocage jails via the new (beta) Web UI, with limited functionality however.
Here's a quick reference on how to create a new jail, add network and mount a dataset in it.
Before I started I created a test-jail in the new Web UI, which downloaded the template for FreeBSD 11.1.
After that has been done (the test jail can be removed) you can run the following commands via the CLI.
Do take note that the mount or jailname should Not have any spaces in the name, if there are spaces in the name the mount/fstab command does not work because nullfs does not support spaces at this moment.
If you've followed my earlier guide on how to install Arch Linux you've probably used GRUB to boot the system. Now it's time to step into the future even further with systemd-boot instead!
Run the command below to begin the installation, the path is your EFI-partition.
# array of mount points. Path must be in /etc/fstab with mount options.
# All mounts listed will be unmounted when the script completes.
I would recommend running the command manually once to see that it works as well.
If you changed the kernel version between that snapshot and the live image (so that your /boot and /boot/efi was modified), you also need to mount those partitions and re-run the kernel-installation.
This should make your OS bootable again with the kernel found in the snapshot you restored!
You might've followed the guide at my guide on how to install Arch, and would like to enable the Discard command on your shiny SSD, to keep it fresh!
Reboot and you are done! TRIM will now periodically run because of the discard mount-option in /etc/fstab. If you want to trigger a TRIM run manually first time, you can run fstrim -v / as root.
Didn't find any guide or tip how to enable joins/parts in Weechat for Twitch's IRC server, here's how to do it in Weechat!
/set irc.server.Twitch.command "/quote CAP REQ :twitch.tv/membership"
NOTE: This post has been updated 2017-05-30 to use systemd-boot instead of GRUB.
NOTE: This post has been updated 2019-03-08 to skip using LVM since Linux kernel 5.0 allows swap file on Btrfs. Also using systemd-init.
I did the steps below to install my Arch for the first time, because I wanted to use Btrfs and LUKS, and also enable swap.
And now the fun part, partitioning!
Run the command below to initialize systemd-boot, the path is your EFI-partition.
Look for "sda2" and take note of the UUID of this partition.
And finally the last reboot!
After reboot, change login shell in the top-left to Plasma, and login.
Not really techy-related, but I finished Shantae and the Pirate's Curse on the Wii U! Also completed a speedrun of it to unlock all wallpapers. Thank you WayForward for a fantastic game!
It is easy as pie!
– Have at least a 300 MB partition/free space before your Windows partition on the hard drive. The default Windows installation does this for you!
– Have a Windows 8.1 Installation USB/DVD available.
– Restart your computer from the Windows 8.1 Installation USB/DVD, click into "Repair your computer" -> "Troubleshoot" -> "Advanced Options" -> "Command Prompt".
– List all your disks with list disk.
– Select the disk you want to convert from BIOS to UEFI with select disk 0.
– List all partitions on the disk with list part.
– Select the 300 MB partition with select part 1.
– Delete the partition (if it's not already free space) with delete part.
– Create the EFI partitions with create part EFI size=100 offset=1.
– Format the EFI partition to FAT32 with format fs=fat32 label="System" quick.
– Assign a drive letter with assign letter=S.
– Create the System partition with create part msr size=128 offset=103424.
– Select your Windows partition with select part 2.
– Assign a drive letter with assign letter=C, this will be used later.
– Now we need to copy the UEFI files from the Windows installation to the EFI-partition.
– Exit diskpart with by typing exit.
– Run the command bcdboot C:\Windows /s S: /f UEFI.
– Restart your computer again, go into BIOS/UEFI and enable UEFI, and enjoy!
Saw that I had ext3 running on some of my SSDs which supposedly does Not support TRIM. Time to convert them to ext4!
Creating this post for future reference because I can never really remember how to firmware upgrade my raid card LSI MegaRAID SAS 9240-8i, which is now a LSI MegaRAID SAS 9211-8i.
Basically this guide is a rewrite of this forum post.
Created a standard bootable DOS USB Flash Drive.
Download the firmware tools (local mirror) and extract MegaRec.exe and empty.bin to the USB drive.
Download the latest 9211-8i firmware.
Restart machine and boot from USB again.
Done for this time! Enjoy your reflashed LSI 9240-8i which is now an LSI 9211-8i!
Download the latest firmware and installer package from LSI.