text:
www.edlin.org / Tom Holt
Biography of the author Tom Holt
During the 1990s there was a complete boom starting within the genre of sf/fantasy. Whatever reasons there might be for this sudden interest in the genre, it has made those of us who enjoys this genre quite happy. Within humorous fantasy there havn't been that many famous authors, in the eigthies the names one related to the genre was Robert Asprin and Terry Pratchett. In the later end of that decade a British man by the name of Tom Holt got a novel by the name Expecting Someone Taller published. This was the first novel in his series of humorous fantasy, he has now published twentysix books, of these fifteen are humorous fantasy and are well worth reading if you have the slighiest interest in this genre.
Tom Holt (i.e. Thomas Charles Louis Holt) was born in London on the 13th of September 1961, and studied at Westminster School, Wadham College, Oxford, and the College of Law. He produced his first book Poems by Tom Holt, at the age of thirteen, and was immediately hailed as an infant prodigy, to his horror. At Oxford Holt discovered bar billiards:
"When i was at university there was a pool table in the room behind the bar. We found that if we stuffed newspaper in the pockets, we could play all day for free. So we did, when we should have been working. The result of all this indolence was that when we came to take our final exams, the boys & girls who'd avoided the bar and stayed in the library working like hell all passed with flying colours; while the rest of us, whi'd done nothing but play pool and have a good time, also passed with flying colours. So let that be a lesson to you."
and at once changed from poetry to comic fiction, beginning with two sequels to E. F. Benson's Lucia series, and continuing with his own distinctive brand of comic fantasy. So far he has published a whole bunch of books. Most of them are comic fantasy, but there are also historical novels, fictional novels, a biography, a thriller, one poetry book and a collection with his filk songs.
He is often compared to Terry Pratchett, but they write in quite different styles. A wild guess is that he has been compared to Pratchett simply because they both are British and write humorous fantasy.
If you are mostly interested in his humorous fantasy-novels, I would like to recommend Flying Dutch as a good start. That novel was the first one I read, and it is still my favourite.
The humorous novels are free-standing, so you can read them in whatever order you would like, although his first humourous fantasy novel was Expecting Someone Taller. The two historical novels Goatsong and The Walled Orchard were meant to be one book from the beginning and the new edition of The Walled Orchard contains both books. The setting is the fifth century BC.
Tom Holt has also collaborated with Steven Nallon on I, Margaret, the (unauthorised) autobiography of Margaret Thatcher.
Among his favourite authors are Damon Runyon, Ernest Bramah, and P.G. Wodehouse (in that particularly order). Thinner and more cheerful than in his youth, Tom Holt is now married with (surprise: his wife!) Kim, and lives in Chard, Somerset (UK) together with their daughter, downwind of the meat-canning factory. Since he is an amateur engineer, among those items that bring joy into his life is two major things: his Myford ML7 and Bridgeport universal mill, and with these fine lathes he produces (according to himself) huge piles of iron filings. Which, is not entirely true.
His interest in music is filk music, medieval musc, and classical jazz.
B. de Ventadour, G. d'Ussel and B. Marti (all french) are his three favourite bards from the 12th century.
As the (well, close to) perfect tool to write he uses a Pentium with lots of MHz, and Word Perfect 7 (it's not Microsoft, that is the most important thing). He has also gained an interest in Iaido, read some more about that martial art here.
Mr. Holt used to be a lawyer but in 1995 it was time for a more proper job and he begun to work fulltime as an author.
More info about Tom Holt
Lucia and Me: A Conversation with Tom Holt, from November 2012 about the E.F. Bensons sequels.
Dave Langford about Tom Holt
An interview from a fanzine called USS Beagle, which was run by Paul Bines.
Wendy Grahams's Interview, for the FTL magazine.
SFFWorld's interview from 2000
A Q/A with Tom Holt regarding the book Doughnut, over at RT book reviews
Myself, I started this page at the end of 1996, I had thought about doing a page earlier, simply becuase I couldn't find any information about Tom Holt on the net. Finally during the break at christmas I pulled myself together and made a few pages with the little information I could gather from the books and from bookstores. Some three week later I received an email from a gentleman by the name of Tom Holt. It took a few mails back and forth before I was fully convinced that it actually was Tom that was typing at the other end :)
During the last years I have addded bits and ends of information that I bumped into, and have gathered quite much information related to him. The pages have looked pretty much the same since the beginning, but in July 1999, after finishing my master thesis in computing science, I finally pulled myself together and made a complete make-over, I hope you enjoy the new pages and find them better structured.
Quote from Nothing But Blue Skies
If you hadn't noticed, I'm the pub loony around here. This is my turf, and if there's any gibbering to be done,
I'm the one who does it. If you want to gibber, find another bar.
(Tom Holt, "Nothing But Blue Skies")


text:
Bruce and the Spider
If at first, you don't succeed: try, try, try again.
By Rebecca Brown
The tale of Bruce and the Spider is a well known one, perhaps due to it being a strong message in perseverance.
In 1306, Robert the Bruce murdered his competitor for the Scottish throne, John Comyn, and crowned himself King. Later that year, he met defeat at The Battle of Methven at the hands of the English. With almost his entire army destroyed, Bruce and what survivors remained fled through the Perthshire hills until they were met by a force from Clan MacDougall, who were loyal to the Comyn family. This led to a bloody battle known as The Battle of Dalrigh where it is said that Bruce was cornered and only just managed to fight his way to freedom.
Miraculously, the King survived but was driven into exile. Three of his brothers were executed, and his sister was captured by the English. He now found himself on the run, hiding in dark corners across his country to save his life.
Legend has it that while he was hiding out in a cave, Bruce took to watching a spider that was struggling to build a web. Whenever the little spider appeared to make progress, it would fall, only to climb back up again and attempt to weave a web once more. Eventually, after trying, and trying, and trying again, the spider managed to weave one single line of silk, and from there, was able to build its web.
Bruce took from this that 'if at first, you don't succeed, try, try, try again', and went on to defeat the English at the Battle of Bannockburn in 1314, despite the Scottish army being outnumbered around 7,000 to 13,000.
Many caves claim to be the legendary location where Bruce found renewed determination in his cause, from King's Cave at Drumadoon on Arran to Uamh-an-Righ in Craigruie, or perhaps, Bruce's Cave in Kirkpatrick-Fleming, Dumfriesshire.
Whether merely legend or a true tale of inspiration, it can be safe to say that we should all learn a lesson from Bruce's spider.
The Kelpie's Chimney
The De'il of Ardrossan
The Baobhan Sith

redpajama_set_name: RedPajamaCommonCrawl


Last week I had finally admit to myself that we, as a family, simply do not have enough room for a living room. We have to make due with our kitchen, two bedrooms, bathroom and studio.
For the last year, living in our tiny six hundred and forty four square feet, my creative urges have been tempered by the need to haul out the sewing machine and supplies from deep storage for every use. It has made the ten minutes here, half an hour there when the kids are momentary distracted mama sewing nearly impossible. The machine has grown dusty and I had almost forgotten about the ten tonnes of fabric hiding in bins our basement.
Girl child has this funny visceral response to the word 'studio'. It is as if, when she hears the word, every nerve in her petite body fires and she does an involuntary shutter while her eyes lit up with wonder.
Girl child believes that there is nothing greater in this world than having one's own private studio.
I agree with her. But, given our confined living space, we will both have to make due with making our common areas our shared studio slash living room. And visitors shall have to make themselves comfortable and take their coffee among the art in progress, sewing machines, fabric bolts and drawing pens.
Funny thing that happened, though, once I made room for creativity where once the tv stood. The sewing machine hummed to life and the glue, paper and scissors have sprung into action.
Perhaps now it is more of a living room than ever. A living studio?
The patterns for girl child's dress and capri pants came from Carefree Clothes for Girls by Junko Okawa. They are both in black broadcloth, with the bottom edges hemmed with the selvages from a pinstripe fabric and a patterned silk fabric. I also put a hint of the selvages asymetrically at the neckline to keep the top from becoming too fussy.
Okawa's patterns are straightforward to make, a real pleasure (though in the the spirit of honesty, I did not read the instruction), and girl child finds them terrifically comfortable.
And, just so you know, for a lady who hasn't done much sewing in over a year, I put on the 1/4" bias tape like a boss.
I knew if I waited long enough you'd be back!! Yeah!!
ha, no one is more pleased than I!
Good to see that creativity can still happen while living in a small space. We will be moving in October and the plan is to look for a smaller place for the three of us.


text:
Jubilee of Families
Jubilee of Families Homily John Paul II October 15, 2000 1. May the Lord, the source of life, bless us. The invocation we repeated in the Responsorial Psalm, dear brothers and sisters, sums up well the daily prayer of every Christian family, and today, during this Eucharistic celebration of the Jubilee, it vividly expresses the meaning of our gathering. You have come here not only as individuals but as families. You have come to Rome from every part of the world, bringing with you the deep conviction that the family is a great gift of God, an original gift, marked by his blessing. So it is indeed. From the dawn of creation, God has looked upon the family and blessed it. God created man and woman in his image and gave them a specific task for the growth of the human family: God blessed them and said to them, Be fruitful and multiply, and fill the earth' (Gn 1: 28). Your Jubilee, dear families, is a song of praise for this original blessing. It came upon you, Christian spouses, when, in celebrating your wedding, you pledged everlasting love to each other in God's sight. It will be received today by the eight couples from various parts of the world who have come to celebrate their wedding in the solemn setting of this Jubilee rite. Yes, may the Lord, the source of life, bless you! Open yourselves to the ever new flow of this blessing. It brings with it a creative and regenerative power that can banish all weariness and assure lasting freshness to your gift. 2. This original blessing is linked to a precise plan of God, which his word has just recalled: It is not good that the man should be alone; I will make him a helper fit for him (Gn 2: 18). So it is that in the Book of Genesis the sacred author describes the fundamental requirement on which the marital union of man and woman and, with it, the life of the family that flows from it, is based. It is a requirement of communion. Human beings were not made for solitude; they bear within themselves a relational vocation, rooted in their spiritual nature. Because of this vocation, they grow to the extent that they enter into relationships with others, fully discovering themselves only in a sincere giving of self (Gaudium et spes, n. 24). Purely functional relationships are not enough for human beings. They need interpersonal relationships that are rich in inner depth, gratuitousness and self-sacrifice. Fundamental among these are the relationships created in the family: between husband and wife, and between them and their children. The whole great network of human relationships flows from and is continuously reborn from that relationship by which a man and a woman recognize that they are made for one another and decide to join their individual lives in a single project of life: Therefore a man leaves his father and mother and cleaves to his wife, and they become one flesh (Gn 2: 24). 3. One flesh! How can we not see the power of this expression? The biblical term flesh calls to mind not only man's bodily nature, but his overall identity as body and spirit. What the spouses achieve is not only a joining of bodies, but a true union of their persons. A union which is so deep that it in some way makes them a reflection of the We of the three divine Persons in history (cf. Letter to Families, n. 8). Thus we can understand how much is at stake in Jesus' discussion with the Pharisees in Mark's Gospel, proclaimed a few moments ago. Those who were speaking with Jesus considered this a problem of interpretation of the Mosaic law, which permitted a man to put his wife away, leading to debates on the reasons that could justify it. Jesus rises totally above this legalistic view, going to the heart of God's plan. In the law of Moses he sees a concession to their skelerokardia, their hardness of heart. But it is to this hardness that Jesus is not resigned. And how could he be, having come precisely to dispel it and to offer to man, with Redemption, the strength to overcome the resistance due to sin? He is not afraid to remind them of the original plan: From the beginning of creation, God made them male and female' (Mk 10: 6). 4. From the beginning! Only he, Jesus, knows the Father from the beginning and also knows man from the beginning. He both reveals the Father and reveals man to himself (cf. Gaudium et spes, n. 22). For this reason, following in his footsteps, the Church has the task of bearing witness in history to this original plan and of showing its truth and feasibility. In doing so she does not hide the difficulties and tragedies which concrete historical experience records in the life of families. But she also knows that God's will, wholeheartedly accepted and fulfilled, is not a chain that enslaves, but the condition for a true freedom which achieves its fullness in love. The Church also knows-and our daily experience confirms it-that when this original plan is obscured in consciences, incalculable harm is done to society. Certainly, there are difficulties. But Jesus provided married couples with sufficient means of grace to overcome them. By his will marriage has acquired, in the baptized, the value and power of a sacramental sign, which strengthens its characteristics and prerogatives. For in sacramental marriage the spouses-as the young couples whose marriages I will bless will shortly be doing-commit themselves to expressing to each other and to bearing witness before the world to the powerful and indissoluble love with which Christ loves the Church. It is a great mystery, as the Apostle Paul calls it (cf. Eph 5: 32). 5. May the Lord, the source of life, bless you!. God's blessing is at the origin not only of marital communion, but also of a responsible and generous openness to life. Children really are the springtime of the family and society, as the motto of your Jubilee says. It is in children that marriage blossoms: they crown that total partnership of life (totius vitae consortium: CIC, can. 1055, 1), which makes husband and wife one flesh; this is true both of the children born from the natural relationship of the spouses and those desired through adoption. Children are not an accessory to the project of married life. They are not an option, but a supreme gift (Gaudium et spes, n. 50), inscribed in the very structure of the conjugal union. The Church, as you know, teaches an ethic of respect for this fundamental structure in both its unitive and procreative meaning. In all this, it expresses the proper regard for God's plan, sketching an image of conjugal relations that are marked by mutual and unreserved acceptance. Above all, it addresses the right of children to be born and to grow in a context of fully human love. In conforming to the word of God, families thus become a school of humanization and true solidarity. 6. Parents and children are called to this task, but, as I already wrote in 1994 for the Year of the Family, the we' of the parents, of husband and wife, develops into the we' of the family, which is grafted on to earlier generations and is open to gradual expansion (Letter to Families, n. 16). When roles are respected, so that the relationship between husband and wife and between parents and children develops fully and peacefully, it is natural for other relatives such as grandparents, uncles, aunts and cousins, also to become significant and important. In these relationships marked by sincere affection and mutual help, the family often plays a truly irreplaceable role, so that persons in difficulty, unmarried people, widows, widowers and orphans can find a place that is warm and welcoming. The family cannot be closed in on itself. The affectionate relationship with relatives is an initial sphere of that necessary openness which orients families to all of society. 7. So dear Christian families, welcome the Jubilee grace which is being poured out abundantly in this Eucharist. Welcome it by taking the family of Nazareth as your example: although called to an incomparable mission, it traveled the same path as you do, amid joys and sufferings, prayer and work, hopes and distressing trials, while always rooted in fidelity to God's will. May your families continue to grow as true domestic churches, offering praise to God every day and spreading a beneficial and regenerating flow of love throughout society. May the Lord, the source of life, bless us. May this Jubilee of Families be a great moment of grace for all of you who are celebrating it. May it also be an invitation for society to reflect on the meaning and value of this great gift which is the family, built according to God's heart. May Mary, Queen of the Family, always accompany you with her motherly hand.


text:
2007 a Busy Year for UArctic
Thu, May 29, 2008
2007 marked a major year for the University of the Arctic. The introduction of ten new members, the development of a Graduate Area, the inaugural meeting of the UArctic Rectors' Forum, the establishment of a Catalog Office, and increased student enrolment ín Circumpolar Studies are only a few highlights from this busy year...
UArctic Council Ready for Annual Meeting
The 11th annual UArctic Council meeting is drawing near. The 2008 meeting will take place at the University of Alberta in Edmonton, Canada, where over 110 Council Representatives, UArctic Program Officers, Students and Staff will congregate from June 2-5 for a busy week of meetings, presentations and celebrations!
UArctic President Featured in International Newspaper
Tue, May 27, 2008
UArctic President Lars Kullerud was recently featured in one of the UK's major newspapers, The Guardian. President Kullerud gave insight into one of the most topical issues in the Arctic today- disputes over resources and sovereignty in the Arctic Ocean.
News from Norden: Setting a good example on climate change
"Sustainable economic growth is an attainable objective. The Nordic Region has made great progress with solutions based on environmental technology, and some day it will be possible to stockpile energy generated from renewable sources such as windmills, and to run vehicles purely on excess energy," was the optimistic message...
International Polar Year (IPY) Book Release Announcement - "The Expeditions of the First International Polar Year 1882-1883"
The Arctic Institute of North America has released an updated version of a classic monograph that describes the expeditions of the First International Polar Year (IPY) of 1882-1883. "The Expeditions of the First International Polar Year 1882-83," by William Barr, focuses on the 14 expeditions that made up the first IPY. The f...
Master's Program in Polar Law Available - University of Akureyri, Iceland
Commencing in August 2008, the University of Akureyri will be offering a Master's Program in Polar Law. This program is designed for both lawyers and non-lawyers, and will prepare them for work in the public and private sector, in national and local governments and international organizations, with indigenous peoples of the C...
Call for Abstracts and Symposium Announcement - "International Symposium on Arctic Research - Drastic Change Under Global Warming"
The Science Council of Japan Subcommittees for the International Arctic Science Committee (IASC) and the Climate in the Cryosphere Program (CliC) announce a symposium, "International Symposium on Arctic Research - Drastic Change Under Global Warming " to be held 4-6 November 2008, in Tokyo, Japan. Abstracts are now being acce...
Catch-up with IASC!
The International Arctic Science Committee has produced a progress report with news about their upcoming conferences and changes to their organizational structure. The report has been made available in electronic form and all are welcome to view it!
High School Students from Around the World Meet in 'Pole-to-Pole' Videoconference
On April 8, 2008, 60 middle- and high-school students from both ends of the globe participated in a special "Pole-to-Pole" videoconference where they could share information directly with each other about seasonal change in their environments.
News from Norden: Local Actions in Global Climate Struggle
There is much that can be done to curb climate changes at a local level. This is the central theme for the third Nordic conference on sustainable development being organised in Odense, Denmark, in September. The aim of the conference is to debate and propose concrete measures which can be taken by, for example, local councils...
Program Announcement: PhD in Natural Resources and Sustainability
The University of Alaska Fairbanks is pleased to offer a doctoral program in Natural Resources and Sustainability commencing in the Fall 2008.
News from ITK: Update from the National Inuit Education Summit
April 2008 marked the implementation of a long envisioned Inuit Tapiriit Kanatami (ITK) Initiative on Inuit Education, the first ever National Inuit Education Summit. Under the guidance of the ITK's Education Advisory Group, a three phased project was launched with the commissioning of four background papers on Inuit educatio...
Live Webcast of ARCUS 20th Annual Meeting and Arctic Forum 2008
The ARCUS 20th Annual Meeting and Arctic Forum 2008, held at the National Association of Home Builders Conference Center in downtown Washington, DC, will be broadcast live via webstream. The theme of this year's Arctic Forum is: "Tipping Points-The Arctic and Global Change."
Meet two of Canada's First BCS Graduates
This semester marks a major milestone in UArctic history. 8 students from Northlands College in La Ronge Saskatchewan, will be celebrating their completion of the Circumpolar Studies Program (BCS), the first group of students from Canada to do so. UArctic will also be celebrating and honouring their distinguished accomplishme...
News from Nordic: Nordic Countries Unite to Find Climate Solutions
The Nordic Council of Ministers has entered into partnership with Nordic Climate Solutions. Copenhagen Climate Solutions which last year attracted 600 decision makers is expanding beyond the Danish borders. This year on the November 25th the two day conference and exhibition will bring together a crowd of Danish, Swedish, Nor...


text:
title: EasyRepro - UI Automated Tests in Dynamics 365 - Part 1
date: 2018-03-05
tags:
- Dynamics
- Testing
---

{% asset_img banner.png Post Banner %}
---

Many, perhaps most, software applications today are written as web-based applications to be run in an Internet browser. The effectiveness of testing these applications varies widely among companies and organizations. In an era of highly interactive and responsive software processes where many organizations are using some form of Agile methodology, test automation is frequently becoming a requirement for software projects. Test automation is often the answer. Test automation means using a software tool to run repeatable tests against the application to be tested. For regression testing this provides that responsiveness.

There are many advantages to test automation. Most are related to the repeatability of the tests and the speed at which the tests can be executed. There are a number of commercial and open source tools available for assisting with the development of test automation. [Selenium](https://www.seleniumhq.org/) is possibly the most widely-used open source solution.

<!-- more -->

There are other alternatives, some of them are tools built on top Selenium, others are simply frameworks that repeat the same concept; a programmable API that lets you control de Browser by faking the operations that a user would perform while navigating through the application pages. Some of these are:

- https://www.ranorex.com
- https://www.telerik.com/teststudio
- https://leaptest.com
- https://www.codeproject.com/Tips/658947/Watin-An-Automation-Testing-in-NET

# When to Automate UI Tests
It is not always advantageous to automate test cases. There are times when manual testing may be more appropriate. For instance, if the application's user interface will change considerably in the near future, then any automation might need to be rewritten anyway. Also, sometimes there simply is not enough time to build test automation. For the short term, manual testing may be more effective. If an application has a very tight deadline, there is currently no test automation available, and it's imperative that the testing get done within that time frame, then manual testing is the best solution.

# Selenium
[Selenium](https://www.seleniumhq.org/) is a set of tools and libraries meant to automate and run different browsers. It has different components, one of which is the WebDriver.

The [WebDriver](https://www.seleniumhq.org/projects/webdriver/) is a library, very well designed and easy to understand that provides access to the different components and actions that most browsers have available.

Probably the biggest challenge in designing such a tool is the overwhelming variety of Browsers and Platforms available in the market. So, how can we find the common ground among them so we can write test specifications once and run them in different browsers? But not only that, also several combinations of browsers and Operating Systems?

{% asset_img WebDriver_3.png WebDriver for different browsers %}

Even more, how can we make these libraries available to different coding languages, so we can write the tests in the same way no matter if we are using c#, Java or Python?

{% asset_img WebDriver_2.png WebDriver for different browsers %}

Selenium and the WebDriver tackle above problems providing an elegant API built in several layers.

# Example

Let's analyze this simple piece of code to see the different elements we are talking about

```c#
[Fact]
public void GoogleSearch()
{
    // 1. Initialize the Driver
    using (var driver = new ChromeDriver())
    {
        // 2. Go to the "Google" homepage
        driver.Navigate().GoToUrl("http://www.google.com");

        // 3. Find the search box on the page
        var searchBox = driver.FindElementById("lst-ib");

        // 4. Enter the text to search for
        searchBox.SendKeys("Selenium Test");

        // 5. Find the search button
        var searchButton = driver.FindElementByName("btnK");

        // 6. Click on it to start the search
        searchButton.Submit();

        // 7. Find the "Id" of the "Div" containing results stats,
        // located just above the results table.
        var searchResults = driver.FindElementById("resultStats");

        // 8. TODO: Perform any operations to make sure the behavior is correct
        Assert.Contains("seconds", searchResults.Text);
    }
}
```

First of all, Selenium is available to be coded using different languages. Each language/platform require you to download and reference the appropriate libraries. In this case, we are using Selenium for c# which is available as a nuget package for Visual Studio. You can download it from here: https://www.nuget.org/packages/Selenium.WebDriver/

If I run the test above I get the following result:

{% asset_img SeleniumBasicTest.gif Selenium execution result %}

Let's move onto analyzing the code. In summary, what this code does is opening a Chrome browser window, navigate to the Google page and perform a search. Easy, right?

```c#
// 1. Initialize the Driver
using(var driver = new ChromeDriver())
```
This is how you tell Visual Studio you want to automate the **Chrome** Browser. If we wanted to automate other browsers, there are specific Objects for them.

The line above initializes and gets the object that will let you interact with Chrome.

But wait, didn't we say before that we are able to write a test and run it in different browsers and operating systems?
Why do I need to reference Chrome specifically?
What if I want to run the same test in Internet Explorer? Do I need to write the same test again?

There is in fact a way to initialize a generic browser and only specify which particular one to use at runtime by a configuration file or any other mechanism.
For the sake of simplicity, I'm creating a specific reference to Chrome, but the same concepts apply to the other available drivers.

```c#
// 2. Go to the "Google" homepage
driver.Navigate().GoToUrl("http://www.google.com");
```
This is how we tell the browser to go an type a web address in the navigation bar and hit enter.

```c#
// 3. Find the search box on the page
var searchBox = driver.FindElementById("lst-ib");
```
Here we are saying, go find me the search text box.
If we were testing any other type of application, for instance a record form, this would be the way to go find a field in that form and type a value on it later.
If that text box that is not available, because is hidden, or it wasn't rendered, an error will be thrown and the test will fail.

```c#
// 4. Enter the text to search for
searchBox.SendKeys("Selenium Test");
```
Once we got the text box, we can type any value we want on it.

```c#
// 5. Find the search button
var searchButton = driver.FindElementByName("btnK");
```
The same way we had to find the search box, now we have to find the search button. This is a very common pattern in Selenium. You first search for the UI element you want to interact with, and then perform the interaction, for instance typing something, clicking on it, swipe, select a value from a drop-down list, or do whatever you need to. Every type of UI element offer different type of interactions.

```c#
// 6. Click on it to start the search
searchButton.Submit();
```
And Click on it. At this stage, the browser will connect to the server, send a request and render the results. Even though this sometimes happens very fast, especially in the Google search, it takes certain amount of time.
If I perform the next activity on the test immediately after clicking the button, the UI elements may not be present just yet, and my test would fail.
So, how do I make sure the page code has finished rendering or performing the operations before I continue running the tests?

Selenium provides a waiting mechanism that is transparent, but configurable. Every time it detects the browser is performing a task, like a server request, it waits until it is completed before moving to the next step.
Sometimes, this is not enough, and we need to wait longer.
For those cases, there are other available API functions exposed to perform waits.

```c#
// 7. Find the "Id" of the "Div" containing results stats,
// located just above the results table.
var searchResults = driver.FindElementById("resultStats");
```
Now that the search is completed, I can add code to check if the results are the ones that I expected.
At this point, I can use the normal Assert methods available in any test framework to make the test fail if there's something wrong in the result.
The way I make sure the page has the right values or the correct state is by the mechanism explained in #4: Search the page UI element, then get the contained value.

```c#
// 8. TODO: Perform any operations to make sure the behavior is correct
Assert.Contains("seconds", searchResults.Text);
```
Once I have the reference to the DIV element, I can read and check its contents.

The above code is available on Github. Feel free to send a Pull Request if you see any errors or want to suggest any improvements. You can also clone the repository and run the tests locally if you want to try it yourself.
https://github.com/crisfervil/EasyReproTest/blob/master/src/EasyReproTest/SeleniumBasicExample.cs

# EasyRepro

In this first part we covered an introduction of the main elements of the Browser User Interface Test. {% post_link EasyRepro-UI-Automated-Tests-in-Dynamics-365-Part-2 In the next chapter %} we are going to describe a library built on top of Selenium specifically designed to help us write UI tests for Dynamics CRM.

This library built by Microsoft takes advantage of the well defined structure of Entities, Attributes, SiteMap and all the different elements that are part of the platform.

{% post_link EasyRepro-UI-Automated-Tests-in-Dynamics-365-Part-2 Continue reading the second part... %}

# References
- https://msdn.microsoft.com/en-us/library/dd286726.aspx
- https://developer.mozilla.org/en-US/docs/Learn/Tools_and_testing/Cross_browser_testing/Automated_testing

redpajama_set_name: RedPajamaGithub


text:
Q: Python logging using custom timestamps (not current timestamp) I am using the logging module in the following way:
logging.basicConfig(level=logging.DEBUG,
                    format='%(asctime)s %(name)-12s %(levelname)-8s %(message)s',
                    filename=my_filename,
                    filemode='w')

and
logging.info("Set up logger")

for writing. The output is:
2017-11-05 19:10:22,762 root      INFO     Set up logger

QUESTION: instead of the current timestamp, I would like to have a past (or future, whatever) timestamp. So whenever I want to write something in the log, I can pass the date as argument with something like:
logging.info(msg="Set up logger", date='2010-01-01 19:10:22,762')

in order to have
2010-01-01 19:10:22,762 root      INFO    Set up logger

Any help?

A: @m1keil's answer will work for simple cases, but gets cumbersome if you want, for example, to have multiple handlers which format the time in different ways, or if you don't need/want to specify the time every time you make a logging call, etc.  Here is a solution which is slightly more complicated, but is the "more correct way", and integrates better with the logging system's normal timestamp handling:
First, you need to create a log filter (filters have the ability to modify log records that pass through loggers they're attached to):
class TimestampFilter (logging.Filter):
    """
    This is a logging filter which will check for a `timestamp` attribute on a
    given LogRecord, and if present it will override the LogRecord creation time
    to be that of the timestamp (specified as a time.time()-style value).
    This allows one to override the date/time output for log entries by specifying
    `timestamp` in the `extra` option to the logging call.
    """

    def filter(self, record):
        if hasattr(record, 'timestamp'):
            record.created = record.timestamp
        return True

Then, simply create an instance of the filter and add it to an appropriate logger instance:
logger = logging.getLogger(__name__)
filter = TimestampFilter()
logger.addFilter(filter)

Then when you want to override the date/time of a log entry, when making the logging call, supply a timestamp in extra:
my_timestamp = time.time() + 86400  # Let's pretend it's tomorrow already
logger.warn("I am a warning from the future!", extra={'timestamp': my_timestamp})

A: You can do that simply by:
logging.basicConfig(level=logging.DEBUG,
                    format='%(date)s %(name)-12s %(levelname)-8s %(message)s',
                    filename=my_filename,
                    filemode='w')

and logging with:
logging.info(msg="Set up logger", extra={'date':'2010-01-01 19:10:22,762'})

Do note that since you hardcoded the date argument in the format, a log message without one will fail. If you want to make it optional, you'll need to use something like filters to modify your log message on the fly.

redpajama_set_name: RedPajamaStackExchange


This is Chu-toro, or medium-fatty tuna. For the most interesting experience, wake up early like 4 am early and head to the Tsukiji Fish Market. The Holy Grail of tuna is followed by Kohada or Gizzard Shad, a type of herring. When I arrived, I found that four people where already waiting ahead of me: It turns out that they seat customers in the order that the customers arrive in. Of course, it goes without saying that the quality of the tane is incredibly high, and that the preparation techniques are flawless.
Sukiyabashi Jiro is not only one of the best sushi restaurants in the world, it's also one of the hardest to get into. So, is this uber-famous Tokyo restaurant worth the effort? The absolute highlight was the aji-su vinegared jack mackerel - a preparation technique that I had never experienced before for this particular fish. Add to this the somewhat sterile and cold ambiance and the fact that the meal is over so quickly, and it doesn't make for a good first experience at all. I've visited Sukiyabashi Jiro three times. As a matter of fact, you might actually find Jiro's strongly vinegared rice to be too intense in flavor. It is owned and operated by master. Of course, this made me even more determined to score a res.
Check out Sushi Dai or Daiwa Sushi for some of the best. Despite these negative reviews, not everyone experiences poor service at Sukiyabashi Jiro, and most people still agree that the food itself is superb. He's served a three Michelin star, 15-course tasting menu in just 20 minutes by the master himself,. He ate at Sukibashi Jiro back in 2008. When she confirmed our reservation and learned our table was ready, she beckoned us in.
To find out more or to opt-out, please read our. Concierges from prestigious hotels may be able to help, but not always. Next is Chu-toro, or medium-fatty tuna. Firefighters said that a sushi chef had been using straw to smoke bonito, and that the straw most likely ignited after he returned it to the storeroom. Yes, in my opinion it is worth every penny, and I cannot wait to go back. For most of his life, Jiro has been mastering the art of making sushi, but even at his age he sees himself still striving for perfection, working from sunrise to beyond sunset to taste every piece of fish, meticulously training his employees, and carefully molding and finessing the impeccable presentation of each sushi creation. Then it's time for the Tuna trifecta made with tuna nigiri, which is aged up to 10 days.
This is not a restaurant where one lingers. While first and last things cannot be so easily taught and the Sukiyabashi experience has stayed as unique as he warned with a wink, it is no exaggeration to call this book, finally available in English, the Bible of sushi chefs. The famous chef Jiro Ono in his restaurant Sukiyabashi Jiro. One of Jiro's three flights of tuna, from lean to fatty. But Japan is filled with fantastic restaurants. While first and last things cannot be so easily taught and the Sukiyabashi experience has stayed as unique as he warned with a wink, it is no exaggeration to call this book, finally available in English, the Bible of sushi chefs. It has a distinct sweet flavor and a fluffy texture.
Is Sukiyabashi Jiro Actually Worth It?
It almost tastes sweet, and the chefs encourage everyone to eat it without soy sauce. I was instructed by my hotel concierge to arrive 10 minutes before my reservation time, which I did. Roppongi Hills website in Japanese. Jiro Dreams of Sushi is his first full-length feature film. Lastly, nearby the Shinjuku Train Station is Sushi Tokyo Ten. Somehow, it works incredibly well with all the toppings, creating nigiri that is bold in flavor, yet perfectly balanced.
I ate 21 pieces counting the double pieces of kurumaebi in 22 minutes, but the pace felt fine to me. The chewy Hamaguri clam is lightly brushed with a sweet glaze and is rich in flavor. Jiro Ono's spot isn't even in the top 30 sushi restaurants in Tokyo , Japan's Yelp equivalent. Any unauthorized duplication, distribution, or exhibition of this motion picture including soundtrack is prohibited and could result in criminal prosecution as well as civil liability. Some Internet critics have said that Jiro's nigiri making abilities are still significantly better than Yoshikazu's.
The group after one of them published her account on the popular Chinese social media site, Weibo. He started working at a local restaurant from the age of seven, before moving to Tokyo to study as an apprentice. Personally, I also have to book through a Japanese friend who is a regular here and so I can't attest to the level of difficulty to book a seat at Jiro as a new customer, especially from overseas. I sensed reluctance on the phone. They spent their time glowering at us throughout. But the chefs also carefully observe each customer, and further adjust the nigiri to each customer's need. After a few failed attempts to secure a reservation on previous trips, I finally was able to get a lunch booking at what is probably the most famous sushi shop in the world.
My wife, as yet unseen, suggested she try herself — being Japanese — and sure enough, she was treated as if a new guest had come in. Jiro-san did make two of my 21 pieces, and I could not discern any difference whatsoever between his nigiri molding technique versus his son's. Foreigners who don't speak Japanese are known as gaijin, and may have a hard time getting a reservation at Sukiybashi Jiro or being served once they do. This motion picture is protected under laws of the united states and other countries. Since Chef Ono doesn't speak English and his son speaks very little, their explanations and any diner questions or requests are often completely lost in translation. Many of his readers agreed with his assessment of the service in the comments section, describing their own experiences with Chef Ono.


Orion Power Dhaka-2 Ltd. (OPDL-2) is one of the largest single unit coal based Ultra Super-Critical power plant (IPP) being implemented at Gozaria, Munshiganj with a net capacity of 635 MW (Gross 700 MW). Advisory and Engineering consultancies obtained from world famous Ramboll, Denmark as Owner's engineer, with the financial participation of KUKE and Sinosure. OPDL-2 has already started implementation of the project at site. It's using technology and equipment e.g. Boiler, Turbine & Generator (BTG) from Europe. This power project is backed by one of the most renowned electronic products and machineries corporation General Electric (GE). The plant has been designed with state-of-the-art Clean Coal Technology to ensure efficient operations complying with all environmental regulations and confirming zero emission.


text:
Articles Posted in Theft and Property Crimes
by Grabel & Associates
Original Case Details
The defendant in this case was convicted at trial of armed robbery. This conviction occurred after two previous trials that both ended in mistrials due to hung juries. According to court records, in early August 2016, a man went for a walk and met a woman on the street. They talked and he invited her back to his house. At the house, the woman offered to perform sexual acts on the man for $50. The man agreed and opened a safe containing $4,200 in cash and other valuables and pulled out a $50 for the woman, telling her he would give it to her after the night was over. The woman then called a drug dealer to come over and sell her and the man drugs. The defendant then allegedly came over later and sold them crack cocaine and left. Later, the defendant allegedly returned with a gun and stole the man's safe.
About a week after this, a detective got a warrant to search the defendant's property for evidence related to separate criminal allegations of drug trafficking. Upon executing the warrant, the police seized the defendant's phone. The phone's data was extracted and categorized, resulting in a 600-page report on the defendant's phone. Evidence related to drug trafficking was searched. The phone was later searched again when the prosecutor in the armed robbery case asked the police to search the report using different search terms related only to the armed robbery case. Using information gained from the search of the phone information, the prosecutor was able to get a conviction at the third trial. This resulted in a sentence of 25-60 years in prison.
Posted in: Theft and Property Crimes
Updated: July 9, 2021 12:05 pm
Will Corporate Prosecutions be the Wave of the Future?
In the field of criminal defense, especially that of theft crimes, we find individuals facing prosecutions at an alarming rate. A question that many people wonder is why aren't there more corporate prosecutions? Do the likes of companies such as "Enron" and "WorldCom" get somehow of a free pass while those charged with Retail Fraud (shoplifting) face continual prosecutions? To discuss this matter in greater detail, we spoke to 3 of the top criminal defense lawyers in the state of Michigan to gain their insight.
Scott Grabel is the founder of Grabel and Associates and is known to have the top criminal defense team across the state of Michigan. When asked about criminal prosecutions, Grabel stated, "We really do not see a lot of this and the reality is that when a corporation is facing criminal charges they tend to engage a big named civil defense firm which is confusing. It is almost as if the corporate defendants' stay with firms that they work with as opposed to engaging a firm that specializes in criminal law. It can truly set the defendant up for failure."
William Amadeo is a Partner for McManus and Amadeo in Washtenaw County and a Senior Associate for Grabel and Associates in Ingham and Shiawassee County, Michigan. Amadeo, who is known as the top criminal defense lawyer in Washtenaw County added his insight when he said, "Different judges have different hotspots. Many times when dealing with theft there is a lot of confusion. Quite often, we see Presentence Investigation Reports that make the case seem far worse than it is. The reality is that where we stand in the criminal justice system, if you steal $1 million you get the benefit of the doubt but if you steal groceries from "Meijer" you face stiff prosecution. It's a bizarre system that we need to fix. If you want to prosecute go after the true criminal, not the single mother trying to feed her family."
Updated: December 12, 2020 11:16 am
Man Charged with Home Invasion for Breaking into Eminem's Home Bound Over for Trial
On April 5th of this year, the rapper Eminem woke up to find a man standing behind him in his Clinton Township home. Investigators say that Eminem initially thought the person standing behind him was his nephew but was surprised to find out that it was a complete stranger. Eminem asked him why he was there, and the man, identified as Matthew David Hughes, said he was there to kill him. During the preliminary exam hearing, Clinton Township police officer Adam Hackstock testified that when he arrived at Eminem's home in Clinton Township, he found Eminem's security guard fighting with Hughes. Police were able to take Hughes into custody without much incident or struggle. Police testified that a brick was found inside the house next to a broken window where Hughes is said to have entered the home. Security footage is said to show that Hughes was on the premises of Eminem's home for a while before he entered the house through the broken window. Hughes was unarmed when he was taken into custody and did not use or attempt to use any weapons during the alleged crime. Hughes was scheduled to take a competency evaluation but later turned it down. His defense attorney has stated on the record that he thinks there are mental health issues involved in the case.
Charges and Potential Penalties for Eminem's Alleged Home Invader
Former Macomb County Clerk Pleads No Contest to Larceny
Former Macomb County Clerk Karen Spranger was accused of stealing money from a bank account of a 78-year-old woman that she was supposed to be taking care of. Spranger was alleged to have taken money from the woman's account on eight separate occasions in January of 2019 without proper permission. It was alleged that she took a total of $1,660 from the woman by accessing her bank account and making withdrawals. Spranger was originally charged with felony larceny, as well as disturbing the peace for allegedly pulling the alleged victim from Spranger's car, causing them both to fall. Spranger has since pled no contest to the disturbing the peace charge. Spranger was first accused of these charges in February of 2019, it took authorities until May of 2019 to catch up to Spranger and formally arraign her on the charges. Previously, Spranger was elected as the Macomb County Clerk in 2016 but was removed from the post in March of 2018 after St. Clair County Circuit Court judge ruled that Spranger lied about her actual residency which required her to be a Macomb County resident.
Criminal Charges and Potential Penalties
Feds Raid Alleged Art Forgery Factory in North Michigan
Federal authorities raided a house in northern Michigan that they believe is tied to an art forgery scheme that tricks art collectors into buying fake paintings claimed to be painted by top American artists. These artists include Ralston Crawford, Gertrude Abercrombie, and George Ault. Ault was an artist active mainly in the 1940s, while Crawford was mainly active in the 1970s but also had a similar artistic style to Ault. Abercrombie was a surrealist artist mainly active in the 1970s as well. Those involved in the scheme are also believed to be in the business of selling counterfeit sports memorabilia falsely advertised as belonging to baseball hall of famers Babe Ruth, Will Mays, and Lou Gehrig. Investigators believe this is a national crime ring which has conspirators operating in the Detroit area. It is alleged that this ring targeted major galleries with its scheme. Hirschl & Adler, a top American art gallery in New York City, spent nearly half a million dollars in paintings that were part of the alleged scheme. The managing director of the gallery, Elizabeth Feld stated that, "this is every (art) dealer's nightmare." Feld also pointed out that the artwork they bought was still beautiful art, even if not painted by the artists claimed. It is important to note that the artwork that is alleged to have been sold are not said to be photocopies of other famous pieces. These are pieces that art claimed to have been unknown pieces of art coming from these famous artists. In order for any of this alleged scheme to work, they have to convince art collectors and art galleries that these pieces were actually painted by a famous artist, something they seem to have done pretty well.
Ongoing Investigation
Wayne County Prosecutor To Testify Over Former Senator Virgil Smith Case
Wayne County Prosecutor Kym Worthy is set to testify over her handling of Former state senator Virgil Smith's criminal case. Smith was sentenced to ten months in the Wayne County Jail back in 2016 for a felony charge of malicious destruction of property along with admitting that he brandished a gun and fired shots at his ex-wife's car. An initial plea deal with negotiated where the Wayne County Prosecutors Office agreed to drop three charges if Smith agreed to resign from the Senate along with agreeing to not hold elected office during his probation period, which would have been set for five years. When the negotiated plea deal went in front of Wayne County Circuit Court Judge Lawrence Talon, the judge removed both requirements relating Smith's ability to hold elected office from the deal, stating that the terms were unconstitutional. Prosecutors didn't agree with a deal that did not include resignation and no elected office so they attempted to withdraw the deal, but Judge Talon would not allow the withdrawal. Prosecutors appealed the Judge's decision and won at the Michigan Supreme Court in 2018, where the ruling said that the judge should have allowed prosecutors to withdraw from the deal since key parts of it were removed by the judge. After the deal was successfully withdrawn, Wayne County Prosecutor Kym Worthy then offered Smith a new deal if he pled to two felonies, which included the previous malicious destruction of property charge in addition to felonious assault. Seeing as Smith had already served his jail time in 2016, and had no new charges or violations, he found this to be vindictive on Worthy's part since Smith had a deal that included only one felony conviction previously. Smith had also unsuccessfully attempted a run for a seat on Detroit City Council after serving his jail time.
What Is The Current Situation?
Posted in: Violent Crime and Theft and Property Crimes
Updated: May 18, 2020 12:40 pm
Repeat Embezzler Gets Case Adjourned
A woman facing embezzlement charges has just gotten another adjournment much to the judge's chagrin. The judge asked, "what are we doing with this case? This is the ninth adjournment in this case." While the judge holds the ultimate authority over giving adjournments, there is an interest in working towards a resolution if it is possible. The defense attorney stated that this adjournment was to finalize plea negotiations. Sometimes an adjournment is exactly what is needed, just a little more time. If both the prosecutor and defense attorney are in agreement in asking for an adjournment, it is rarely denied.
The woman, 64, is accused of embezzling over $20,000 from the Eastpointe chapter of the International Order of Odd Fellows. She was hired as secretary to the club back in June 2018. She has been accused of stealing the money over a period of time. Investigators believe that she would write duplicate checks to herself, listing things like "vacation" and "hotel reservation" on the memo lines. Additional, out of numerical order checks were also made out to her totaling over $12,000. This woman's rap sheet goes back to 1990 where she had her first conviction for a false identification in the use of a financial transaction device. She has been convicted of embezzlement previously in 2015 and in 2008 where she embezzled more than $35,000 between both cases. In 2003, she was convicted of theft for stealing over $20,000.
Posted in: Theft and Property Crimes and Embezzlement
Man Found Not Guilty in Bad Axe Boat Destruction Case
After a 3-day jury trial, a Huron County Circuit Court jury returned a verdict of not guilty on a man charged with two felonies. The defendant, Travis M. Kosinski, was found not guilty of one county of breaking and entering a building with intent, and one count of malicious destruction of personal property.
The charges stemmed from a June 2016 allegation, Konsinski was accused of doing thousands of dollars of damage to a 1974 24-foot Sea Ray boat that belonged to his relative. Peter Samouris of Grabel and Associates led Kosinski's defense.
Samouris provided commentary on the trial when he said, "I'm glad that justice was served in Travis's case. My client has always maintained his innocence-and as one of the jurors told me afterwards-he was wondering why it was even charged in the first place. Travis is delighted to put all of this behind him. Justice was served with this verdict."
Updated: March 20, 2020 8:37 am
Drug Unit Probe Could Lead To Overturned Convictions
Alleged Corruption At Detroit Police Department
An ongoing investigation into the Detroit police department narcotics unit has turned up some serious problems within the unit. The investigation has looked into allegations of corruption and continues to investigate. The investigation has uncovered possible false affidavits that led to convictions. Because of these false affidavits, these convictions might be getting overturned and for some people, will mean their freedom. Investigators have also uncovered more alleged corruption in the forms of planting evidence, robbing drug dealers, and embezzling money. There have also been numerous instances where suspects were turned into confidential police informants without the proper approval. The team of investigators is comprised of Detroit police officers, Michigan state police troopers, and FBI agents. This 17-person investigation team is looking within a 10-year period of narcotics unit activity. It is estimated the investigation will be looking into as many as 10,000 police drug raids. This specific drug unit was disbanded in 2014 because of rampant internal problems in how evidence and drugs were handled.
The Current Investigation
Updated: March 2, 2020 1:14 pm
Home Invasion is on the Rise in the State of Michigan
by Bill Amadeo
In the last 5 years, one crime that has become the center of controversy is that of Home Invasion. While the statute provides one aspect of the crime, the practicality of the statute has been up for debate in courtrooms across the state of Michigan. In reviewing the statute, we learn that Home Invasion in the First Degree states:
A person who breaks and enters a dwelling with intent to commit a felony, larceny, or assault in the dwelling, a person who enters a dwelling without permission with intent to commit a felony, larceny, or assault in the dwelling, or a person who breaks and enters a dwelling or enters a dwelling without permission and, at any time while he or she is entering, present in, or exiting the dwelling, commits a felony, larceny, or assault is guilty of home invasion in the first degree if at any time while the person is entering, present in, or exiting the dwelling either of the following circumstances exists:
(a) The person is armed with a dangerous weapon.
Posted in: Criminal Defense Overview and Theft and Property Crimes


text:
Q: Overlay not drawing on the right spot I have an extremely weird issue.
First of all, when I zoom in and out of a MapView, the marker (overlay) moves to incorrect places (doesn't work well with scaling).
Secondly, the market is being drawn at the wrong position!
I'll post code below but first listen to this:
I'm in Islamabad. The GeoCoder also tells me I'm in Islamabad. But when I draw a circle around my location using overlays, it draws it in a city that's 100s of kilometers away.
Kindly help me with both the problems.
Here's the activity:
public class LocatePickup extends MapActivity implements LocationListener {
    Geocoder gc;

    MapView mapView;
    MapController mc;
    GeoPoint p;

    double lat = 0;
    double lng = 0;

    LocationManager lm;

    WebMethods wm;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.locate_pickup);

        mapView = (MapView) findViewById(R.id.mapView);
        mapView.setBuiltInZoomControls(true);
        mapView.setStreetView(true);

        lm = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
        lm.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 1000L, 500.0f, this);

        Location l = new Location(LocationManager.NETWORK_PROVIDER);
        l = lm.getLastKnownLocation(LocationManager.NETWORK_PROVIDER);

        mc = mapView.getController();
        p = new GeoPoint((int) (l.getLatitude()), (int) (l.getLongitude()));
        mc.setCenter(p);
        mc.setZoom(14);

        MapOverlay myLocationOverlay = new MapOverlay();
        List<Overlay> list = mapView.getOverlays();
        list.add(myLocationOverlay);

        gc = new Geocoder(this);
        try {
            List<Address> address = gc.getFromLocation(l.getLatitude(), l.getLongitude(), 1);
            Toast.makeText(this, ""+address.get(0).getAddressLine(1), 1).show();
        }
        catch (IOException e) {
            e.printStackTrace();
        }
    }

    @Override
    protected boolean isRouteDisplayed() {
        return false;
    }

    class MapOverlay extends com.google.android.maps.Overlay {
        Paint paint = new Paint();
        @Override
        public boolean draw(Canvas canvas, MapView mapView, boolean shadow, long when) {
            super.draw(canvas, mapView, shadow);

            Point myScreenCoords = new Point();
            mapView.getProjection().toPixels(p, myScreenCoords);

            paint.setStrokeWidth(1);
            paint.setARGB(255, 218, 28, 28);
            paint.setStyle(Paint.Style.STROKE);

            //Bitmap bmp = BitmapFactory.decodeResource(getResources(), R.drawable.pin);

            canvas.drawCircle(myScreenCoords.x, myScreenCoords.y, 15, paint);
            //(bmp, myScreenCoords.x, myScreenCoords.y - 256, paint);
            canvas.drawText("Hey!", myScreenCoords.x, myScreenCoords.y, paint);
            return true;
        }
    }

    @Override
    public void onLocationChanged(Location arg0) {
        if(arg0 != null) {
            Log.d("New Location: ", arg0.getLatitude() + " - " + arg0.getLongitude());
            lat = arg0.getLatitude();
            lng = arg0.getLongitude();

            p = new GeoPoint((int) lat * 1000000, (int) lng * 1000000);
            mc.animateTo(p);
        }
    }

    @Override
    public void onProviderDisabled(String provider) {
        // empty
    }

    @Override
    public void onProviderEnabled(String provider) {
        // empty
    }

    @Override
    public void onStatusChanged(String provider, int status, Bundle extras) {
        //empty
    }
}

Once the code is complete, I'd like the user to be able to tap a spot on the map and get its address (the marker should move to that spot as well). But it should be accurate.

A: Since no one answered this question correctly..
For some reason, the normal Overlay class wasn't working for me the way it should have. I switched to ItemizedOverlay and now everything is perfect.
I'm no Android expert so I'd like someone with better experience to comment on this but, I feel that ItemizedOverlay is much better than the simple Overlay. With itemizedoverlay, zooming in and out of the mapview with an object drawn at a fixed point works the way it should, the pin (object) stays exactly where it should stay (that wasn't the case previously).
Here's some code for those who are looking for it. This is of course incomplete, and for a specific purpose, but you get the general idea.
`class CustomOverlay extends com.google.android.maps.ItemizedOverlay
    {
        private ArrayList mOverlays = new ArrayList();
        Context mContext;
    public CustomOverlay(Drawable defaultMarker)
    {
        super(defaultMarker);

    }

    public void addOverlay(OverlayItem overlay)
    {
        mOverlays.add(overlay);
        populate();
    }

    @Override
    protected OverlayItem createItem(int i)
    {
        return mOverlays.get(i);
    }

    @Override
    public int size()
    {
        return mOverlays.size();
    }

    public CustomOverlay(Drawable defaultMarker, Context context)
    {
        super(boundCenterBottom(defaultMarker));
        mContext = context;
    }

    @Override
    public boolean onTouchEvent(MotionEvent event, MapView mapView)
    {
        if (event.getAction() == 1)
        {
            p = mapView.getProjection().fromPixels((int) event.getX(),
                    (int) event.getY());

            gc = new Geocoder(getBaseContext(), Locale.getDefault());
            try
            {
                address = gc.getFromLocation(
                        (double) p.getLatitudeE6() / 1E6,
                        (double) p.getLongitudeE6() / 1E6, 1);

                addressfound = true;
            }
            catch (IOException e)
            {
                addressfound = false;
                e.printStackTrace();
            }

            if (address.size() != 0)
            {
                l1 = address.get(0).getAddressLine(0);
                l2 = address.get(0).getAddressLine(1);
                l3 = address.get(0).getAddressLine(2);
            }

            OverlayItem point = new OverlayItem(p, "Location", l1 + ", "
                    + l2 + ", " + l3);
            List<Overlay> mapOverlays = mapView.getOverlays();
            Drawable drawable = getBaseContext().getResources()
                    .getDrawable(R.drawable.androidmarker);
            CustomOverlay itemizedoverlay = new CustomOverlay(drawable,
                    getBaseContext());

            itemizedoverlay.addOverlay(point);
            mapOverlays.clear();
            mapOverlays.add(itemizedoverlay);

            mapView.invalidate();
        }`


Ok, so this is partly just a shameless plug. But, I have never been to OKC and am told I simply MUST go. Truth is, I'd love to. But I just haven't yet been able to afford it. So, advertise on Above Level, help fill my coffers. OR, better yet, send some business my way. Need a website, or know someone who does? Get in touch with Rae of Light, yeah, that's me. Check out the website for more information and work samples. I've recently gotten back in touch with a few designer and developer friends from college so I have a broader base of expertise to pull from. And this isn't just for equine related sites, any small business or local group can benefit from having a website. If I can keep busy enough for the next few months maybe you'll see me walking around at OKC. Would love to see you all there!


Plastic magazine racks and brochure holders hold up well, are durable and make it easy for patients, customers and clients to view material. These thermoformed racks are easy to use and hang up. Our clear plastic racks are very safe to use and have no sharp corners. That makes them great to use in lobbies, waiting rooms and more! Choose from a variety of magazine, brochure and literature rack configurations. These plastic racks include both PETG plastic and acrylic designs. Our prices are low, customer service is excellent and shipping is fast. Order your plastic magazine rack today!
Description: The Safco 5621CL Reveal 1 pocket wall-mounted magazine rack may very well be one of the most popular magazine racks we offer. There are many reasons for this. To begin with, it's affordable. It is also popular because it is small enough to be put just about anywhere on the wall, yet versatile enough that multiple units can be easily placed next to each other.
Description: Few display racks have the look and durability of the Safco 5667CL Clear2c 6 pocket wall-mounted magazine rack. This 6-pocket rack features two stacked horizontal rows of 3 pockets.
Description: The Safco 5666CL Clear2c 3 pocket magazine rack and 6 pocket pamphlet holder is made from break resistant polycarbonate and includes a clear plastic PETG plastic. Not only is this material safe, it is also extremely durable and won't fade with time. The 5666CL features 2" deep pockets that can be used to hold a wide range of material.
Description: Give your brochures the class and style they deserve by using the Safco 5608CL Reveal 8 pocket pamphlet display. This clear plastic brochure holder makes your literature more appealing to customers, clients and patients.
Description: The Safco 5604CL Reveal 12 pocket wall-mounted brochure rack is the perfect way to provide your customers and patients with the literature they need most. The thermoformed clear plastic body of this display rack is extremely durable and looks classy when hung on a wall.
Description: One great way to professionally present material is by using the Safco 5605CL Reveal wall-mounted literature rack. This rack features 3 magazine pockets and 6 pamphlet pockets.
Description: With 9 pockets and a wall-mounted design, the Safco 5665CL Clear2c 9 pocket magazine rack is a classy piece of furniture in any waiting room, lobby or office.
Description: The Safco 5607CL Reveal 6 pocket wall-mounted magazine rack has 6 pockets that are each 1 ¾" deep, which is more than enough space to provide your customers, clients and patients with adequate reading material.
Description: The Safco 5603CL Reveal wall-mounted 9 pocket magazine rack can hold up to 1 ¼" of material per individual pocket. The thermoformed design of the 5603CL Reveal eliminates sharp edges and also makes this rack extremely durable.
Description: Few multi-literature display racks are as classy or as professional as the Safco 5606CL Reveal 6 magazine / 6 pamphlet display rack. This thermoformed literature rack is made from impact resistant clear plastic.
Description: The Safco 5601CL Reveal 24 pamphlet wall-mounted display may be just what you need. This wall-mounted brochure rack is one of the best out there and with 24 pockets (each 1 ¾" deep), it can hold a lot of stuff.
Description: One durable and affordable option you may want to consider using is the Safco 5600CL Reveal magazine and brochure rack. This display has 6 magazine pockets and 12 pamphlet pockets.
Description: Put your literature and magazines on display! Keep them organized and easy to see with this magazine display. Great for any shared or first impression areas, this display will impress all of your guests.
Description: The Safco 5673CL Clear2c 8 pocket pamphlet display is a classy way to display brochures. The 8 pocket design has an almost floating look that makes brochures easy to see and even easier to access.
Description: The Safco 5671CL Cear2c 12-pocket wall-mounted brochure rack is stunning. It is made from break-resistant polycarbonate plastic combined with a clear PETG backing. Each of these pockets hold up to 2" of material!
Description: The Safco 5612CL Reveal magazine and pamphlet display is thermoformed plastic literature rack has 2 magazine pockets and 4 brochure pockets. Each pocket is 1 ¾" deep, able to hold a lot of literature. Because this rack is made as one solid piece, no assembly is required and corners are safe and rounded.
Description: Consider using the break-resistant Safco 5668CL Clear2c 6 pocket magazine rack and 6-pocket pamphlet display. This rack is made out of tough polycarbonate plastic and features a crystal-clear PETG plastic backing.
Description: Rounded corners, a thermoformed clear plastic design and multiple pockets make the Safco 5610CL Reveal 12 pocket wall-mounted booklet display an excellent option for visitor's centers, churches, schools and other organizations.
Description: Vertical literature holders make excellent use of wall space while making literature look attractive and keeping it accessible. The Safco 5609CL Reveal 4 pocket magazine and 8 pocket pamphlet display rack is a prime example of engineering excellence.
Description: You probably need a wall-mounted display like the Safco 5611CL Reveal 8 pocket magazine and 8 pocket pamphlet display rack. This rack makes the organization and display of literature easy. The magazines are arranged in a 2 x 4 horizontal layout and the brochures (pamphlets) are laid out horizontally 8 across the top.


text:
Chessy Prout, Owen Labrie's Sexual Assault Victim, Gives First Interview
Screenshot via Today.
"It's been two years now since the whole ordeal. I feel ready to stand up and own what happened to me and I'm going to make sure other people—other boys and girls—know they don't have to be ashamed either," Chessy Prout told Savannah Guthrie on Tuesday morning's Today. Prout was 15 years old when she was sexually assaulted by Owen Labrie at the St. Paul's School. Labrie was later convicted of misdemeanor sexual assault as well as felony computer-related crimes.
Open www.today.com
Labrie was accused of raping Prout during a "Senior Salute," what some students identified as a tradition in which senior boys try to have sex with younger girls. Prout told Today that after the assault:
We had been prepared to just receive an apology letter. We had been prepared to finish this and just move forward with our lives and let them move forward with their lives, but, you know what, in the pursuit of justice I would've done anything.
Prout testified for three days at the trial. She recalled Labrie's defense attorney picking apart her recount of events: "[I remember him asking], 'Why were you so hazy during this period?' I looked at the defense attorney in disbelief and said 'I was raped!'"
Prout also said that she was "frustrated" by the verdict. Labrie, she said, was able to convince the jury that he didn't knowingly rape her, thus being convicted of the lesser misdemeanor assault charges. "He definitely did it knowingly," Prout said. When Guthrie asked her about Labrie, Prout said, "I hope he learns and I hope he gets help. If he doesn't learn, he will do it to another woman."
Alleged St. Paul's School Rape Victim: 'I Tried to Be as Polite as Possible'
Wednesday marked the second day of testimony in the trial of Owen Labrie, a 19-year-old former St.…
Earlier this year, Prout's family filed a lawsuit against St. Paul's School. The lawsuit contends that the New Hampshire prep school facilitated a "warped culture of sexual misconduct" that led to Prout's sexual assault. The school vocally denies the accusation.
Labrie meanwhile is appealing his conviction. After curfew violations landed him in jail in March, he was released in May.
weebleswobble
Apparently the $100K+ defense Labrie got that tore this child apart on the stand and got her rapist off with barely a slap on the wrist? In large part funded by alumni and donors to the school.
I'm sure you'll all be surprised to hear that no funds were raised to help her family with fees related to the case and the personal fall out.


text:
Business Health Marlborough Source
Hologic & Mary J. Blige Launch 'Good Morning Gorgeous' Sweepstakes To Increase Awareness of Preventive Care
August 14, 2022 August 14, 2022 editor Hologic, Hologic Inc., Marlborough company, Marlborough Source, Mary J. Blige
In full transparency, the following press release was submitted to SOURCE media through its business wire service. (Hologic photo)
MARLBOROUGH – Hologic, Inc., a women's health company in Marlborough, and Grammy award-winning and Oscar-nominated artist and entrepreneur Mary J. Blige announced the launch of the "Good Morning Gorgeous" sweepstakes.
The sweepstakes is an element of Hologic's role as presenting sponsor of Blige's "Good Morning Gorgeous" tour, which is presented in partnership with The Black Promoters Collective (BPC) and will take place September 17 through October 29, 2022.
There are no stops in Massachusetts.
The sponsorship is the latest effort from Hologic to reinforce the importance of preventive care and Well Woman Exams. In addition to the sweepstakes, Hologic has also produced a public service announcement featuring Blige, which will be shown throughout each concert venue prior to the show, sharing more about what it means for women to make their health a priority.
The company will also work with Blige during the tour to shine a light on the need to increase access to screening for all women, including those who live in communities in need of resources like 3D mammography.
"Over the past two years, we've been proud to partner with Mary on a number of initiatives to encourage women to prioritize life-saving screenings," said Steve MacMillan, the company's Chairman, President and Chief Executive Officer. "We're thrilled to extend our partnership as the presenting sponsor of the 2022 'Good Morning Gorgeous'tour as it's a powerful way to reach millions of women — both online and in-person — with our message about the critical importance of screenings."
Fans are encouraged to visit Screeningsforher.com to learn more about routine screenings and to enter to win a pair of tickets to one of twenty tour stops, in cities including:
Greensboro, NC (9/17/22)
Washington, DC (9/18/22)
Charlotte, NC (9/21/22)
Philadelphia, PA (9/22/22)
Detroit, MI (9/24/22)
Chicago, IL (9/25/22)
Birmingham, AL (9/28/22)
Atlanta, GA (9/29/22)
Houston, TX (10/1/22)
Fort Worth, TX (10/2/22)
Oakland, CA (10/6/22)
Las Vegas, NV (10/8/22)
St. Louis, MO (10/12/22)
New Orleans, LA (10/15/22)
Memphis, TN (10/16/22)
Cleveland, OH (10/19/22)
Hampton, VA (10/22/22)
Newark, NJ (10/23/22)
Nashville, TN (10/26/22)
Cincinnati, OH (10/27/22)
For more information, official rules and to enter the sweepstakes, visit ScreeningsforHer.com.
Hologic, Inc. is a Marlborough-based medical technology innovator primarily focused on improving women's health and well-being through early detection and treatment. Its advancements include invention of the world's first commercial 3D mammography system to fight breast cancer; leadership in testing for cervical cancer, sexually transmitted infections, respiratory illnesses, and the virus that causes COVID-19; and minimally invasive surgical technologies for uterine fibroids and abnormal uterine bleeding.
The company also champions women through the Hologic Global Women's Health Index, which provides a science-backed data roadmap for improving women's well-being, and Project Health Equality, which elevates awareness, research insights and access to quality care for underserved women.
The Black Promoters Collective (BPC) is a coalition of six of the nation's top independent concert promotion and event production companies. Officially launching in 2022 with their first two live entertainment offerings, the headlining tours for R&B legends New Edition and Maxwell, both landed in the Top 10 of the Pollstar "Live 75″ chart. As a 100% Black-owned business, its mission is to be the world's leading producer and provider of culturally relevant live entertainment experiences.
← Mass State Police: Man Killed After Struck By Multiple Vehicles on Route 290
Home of the Week: Ranch Home on 5.2 Acres in Framingham at $980,000 →
Linda (Stevens) Driscoll, 71, Rocket Cleaners Office Manager
July 9, 2020 July 9, 2020 editor
November Had Highest Number of COVID Cases Since Pandemic Began
November 30, 2020 December 1, 2020 editor
Sen. Warren Urges Student Loan Companies to Immediately Provide Relief to Private Student Loan Borrowers During the Coronavirus Pandemic
April 8, 2020 April 8, 2020 editor


I finished the Ofelia / Lua Markov Generator abstraction / patch.
The markov generator is part of two patches but can easily be used as an abstraction.
I want to use it for pattern variations of a sequencer for example.
It just needs a Pure Data list as input and outputs a markov chain of variable order and length.
Or draw into the array and submit it to the markov generator.
The first patch is an experiment trying to create interesting sounds with the markov algorithm.
The second patch creates markov chains at audio rate, it is quite cpu heavy but works until the 10th markov order.
And here is the Lua code.
@Jona Hi, Thanks for sharing your patch. it looks great!
I just tried your patch but I get the following errors.
I get the same errors on Windows too. Do you know how to fix these?
@Cuinjune Hi. Thanks for trying. The error tells that there is no list in the generator yet. It should be already fixed, it was because of the order creation of Pure Data "Inits". Tell me if not.
@Jona Hi, I downloaded "list-abs" from Deken and copied "list-drip.pd" into the directory of your patch and now it works fine without the errors.


text:
namespace sharp.Serene.BasicSamples {

    @Serenity.Decorators.registerClass()
    @Serenity.Decorators.responsive()
    export class DragDropSampleDialog extends Serenity.EntityDialog<DragDropSampleRow, any> {
        protected getFormKey() { return DragDropSampleForm.formKey; }
        protected getIdProperty() { return DragDropSampleRow.idProperty; }
        protected getLocalTextPrefix() { return DragDropSampleRow.localTextPrefix; }
        protected getNameProperty() { return DragDropSampleRow.nameProperty; }
        protected getService() { return DragDropSampleService.baseUrl; }

        protected form = new DragDropSampleForm(this.idPrefix);

    }
}


FDA REGISTERED HUMAN GROWTH HORMONE!
New U Life™ Homeopathic SOMADERM™ Gel is the ONLY transdermal, FDA registered human growth hormone (HGH) product available without a prescription. The molecular breakdown of HGH found in SOMADERM™ Gel is a synthetic USP human growth hormone (somatropin).
Human Growth Hormone (HGH) is a single-chain peptide hormone produced from the pituitary gland, the master gland in the body. This is the hormone that helps you grow throughout childhood, hence the word "growth". Around the age of 20 HGH is at it's peak, and then plummets around the age of 25. This is when the dreadful aging process begins, as this hormone slowly declines for the rest of your life. But don't worry, growing isn't the only thing HGH is good for. Many experts say that elevating growth hormone when you are older can bring back your levels to when you were in your 20's. Most people experience these benefits in as little as two weeks.
What If You Could Look & Feel 20 Years Younger?
Get Our FREE Somaderm HGH eBook!
Get Our FREE Somaderm™ HGH eBook!
Does #TheGel work???? I have been on this for about 4 weeks.
✔I have not changed my diet OR been to the gym in 2+ years.
✔ I have #Hashimotos disease and always had an afternoon crash around 1 p.m. I no longer have that!
I dunno 🤷. Does it work????
Left was taken prior and Right is today!
I can see a brightness, less pores, a few less wrinkles and much softer! Age 57!
First week, Sleep was better, muscular and cardio endurance was noticeably better, and recovery time was cut in half after workouts and athletic competition. Baseball, Basketball, Hockey.
Currently I'm down 30lbs of body fat at 188 and feel better than I have in decades. I sleep deeply through the night and my mood is much calmer, although the inventory issue is putting that to the test.
Pics are at 6 weeks at 209 lbs and 10 weeks at 191 lbs. I regret not taking the before pic at 218, but honestly I didn't think results would come this quickly.
6 weeks on the gel. Down 30 lbs! The energy I have and the gains I'm seeing are amazing! I feel like I'm in my 20s again! I am in the best shape of my life! I cannot wait to see long term results.
*I am an independent business owner and this page is in no way associated with New U Life, Inc.


text:
Per Johnsson
Name: Per Johnsson
Nationality: Swedish
Date of birth: 22 November 1978
2002: MSc in Engineering Physics, Lund University, Sweden
2006: PhD in atomic physics, Lund University, Sweden
2006-2008: Postdoctoral fellow at the FOM Institute for Atomic and Molecular Physics, Amsterdam, the Netherlands
Associate professor in Physics, Atomic Physics Division, Lund University, Sweden
I completed my Master of Science in Engineering Physics at the Lund University in Sweden with a partly experimental Master's project on femtosecond laser pulse shaping. Through this project, I got a glimpse of ultrafast experimental physics with lasers, and wanted more.
Thus, I decided to stay as a PhD student in the field. My PhD project involved the generation, characterization and application of attosecond pulses. During my time as a PhD student we built up the attosecond laboratory at the Lund High-Power Laser Facility where, at that time, the shortest attosecond pulses in the world were generated in 2003.
Following this I spent two years as a postdoctoral fellow at the FOM Institute for Atomic and Molecular Physics (AMOLF) in Amsterdam, switching gears by changing my previous focus on electron dynamics in atoms to electron dynamics in molecules. In Amsterdam we designed and built up an attosecond pump-probe setup as well as a velocity map imaging spectrometer tailored for experiments on attosecond dynamics in molecules. The main effort during my postdoctoral time was however to initiate, plan and coordinate an experimental programme at the free electron laser (FEL) in Hamburg (FLASH), aiming to study structural dynamics in molecules using novel pump-probe techniques together with photoelectron diffraction and interference in XUV photionization of laser-aligned molecules.
In 2009 I returned to Sweden and Lund University for a position as a Research Associate. In the years that followed I received two national grants which made it possible for me to start building my own research group, and in 2013 I got a qualification as Associate Professor in Physics, and obtained a position as University Lecturer.
The aim of my current research is to perform combined imaging of charge localization and molecular structure, seeking to study the interplay between electron dynamics and changes in the molecular structure. Currently, my group focuses on experiments carried out at the high-intensity HHG beamline of the Terawatt laser system at the Lund High-Power Facility. Intense efforts on beamline development during the last few years, as well as an expansion of the laboratory, have led to an optimized HHG source where, at the moment, harmonic pulse energies in the microjoule range can be achieved, and where we have recently managed to observe two-photon double ionization of neon, indicative of intensities in the range needed for realizing XUV pump-XUV probe experiments.
My group collaborates with the groups of Anne L'Huillier, Mathieu Gisselbrecht and Johan Mauritsson within the Lund Attosecond Science Centre (LASC), with a broad approach to attosecond physics in different systems, e.g. atoms, molecules, surfaces and clusters. In addition to the high-intensity HHG beamline mentioned above, LASC routinely operates sources of attosecond pulse trains at 1 kHz and uses them for attosecond physics, e.g. in interferometric measurements of photoemission time delays. The latest addition to LASC is an optical parametric chirped pulse amplification (OPCPA) system delivering few-cycle CEP-stable laser pulses at 200 kHz. These pulses are used to drive an HHG attosecond source ideal for experiments requiring low peak powers and high repetition rates, e.g. surface studies and applications with detection based on coincidence techniques.
← Charalambidis Dimitris	Olga Smirnova →