text:
Category Archives: 19c
What kinds of "topics" does topic modeling actually produce?
Posted on April 1, 2012 by tedunderwood
I'm having an interesting discussion with Lisa Rhody about the significance of topic modeling at different scales that I'd like to follow up with some examples.
I've been doing topic modeling on collections of eighteenth- and nineteenth-century volumes, using volumes themselves as the "documents" being modeled. Lisa has been pursuing topic modeling on a collection of poems, using individual poems as the documents being modeled.
The math we're using is probably similar. I believe Lisa is using MALLET. I'm using a version of Latent Dirichlet Allocation that I wrote in Java so I could tinker with it.
But the interesting question we're exploring is this: How does the meaning of LDA change when it's applied to writing at different scales of granularity? Lisa's documents (poems) are a typical size for LDA: this technique is often applied to identify topics in newspaper articles, for instance. This is a scale that seems roughly in keeping with the meaning of the word "topic." We often assume that the topic of written discourse changes from paragraph to paragraph, "topic sentence" to "topic sentence."
By contrast, I'm using documents (volumes) that are much larger than a paragraph, so how is it possible to produce topics as narrowly defined as this one?
This is based on a generically diverse collection of 1,782 19c volumes, not all of which are plotted here (only the volumes where the topic is most prominent are plotted; the gray line represents an aggregate frequency including unplotted volumes). The most prominent words in this topic are "mother, little, child, children, old, father, poor, boy, young, family." It's clearly a topic about familial relationships, and more specifically about parent-child relationships. But there aren't a whole lot of books in my collection specifically about parent-child relationships! True, the most prominent books in the topic are A. F. Chamberlain's The Child and Childhood in Folk Thought (1896) and Alice Earl Morse's Child Life in Colonial Days (1899), but most of the rest of the prominent volumes are novels — by, for instance, Catharine Sedgwick, William Thackeray, Louisa May Alcott, and so on. Since few novels are exclusively about parent-child relations, how can the differences between novels help LDA identify this topic?
The answer is that the LDA algorithm doesn't demand anything remotely like a one-to-one relationship between documents and topics. LDA uses the differences between documents to distinguish topics — but not by establishing a one-to-one mapping. On the contrary, every document contains a bit of every topic, although it contains them in different proportions. The numerical variation of topic proportions between documents provides a kind of mathematical leverage that distinguishes topics from each other.
The implication of this is that your documents can be considerably larger than the kind of granularity you're trying to model. As long as the documents are small enough that the proportions between topics vary significantly from one document to the next, you'll get the leverage you need to discriminate those topics. Thus you can model a collection of volumes and get topics that are not mere "subject classifications" for volumes.
Now, in the comments to an earlier post I also said that I thought "topic" was not always the right word to use for the categories that are produced by topic modeling. I suggested that "discourse" might be better, because topics are not always unified semantically. This is a place where Lisa starts to question my methodology a little, and I don't blame her for doing so; I'm making a claim that runs against the grain of a lot of existing discussion about "topic modeling." The computer scientists who invented this technique certainly thought they were designing it to identify semantically coherent "topics." If I'm not doing that, then, frankly, am I using it right? Let's consider this example:
This is based on the same generically diverse 19c collection. The most prominent words are "love, life, soul, world, god, death, things, heart, men, man, us, earth." Now, I would not call that a semantically coherent topic. There is some religious language in there, but it's not about religion as such. "Love" and "heart" are mixed in there; so are "men" and "man," "world" and "earth." It's clearly a kind of poetic diction (as you can tell from the color of the little circles), and one that increases in prominence as the nineteenth century goes on. But you would be hard pressed to identify this topic with a single concept.
Does that mean topic modeling isn't working well here? Does it mean that I should fix the system so that it would produce topics that are easier to label with a single concept? Or does it mean that LDA is telling me something interesting about Victorian poetry — something that might be roughly outlined as an emergent discourse of "spiritual earnestness" and "self-conscious simplicity"? It's an open question, but I lean toward the latter alternative. (By the way, the writers most prominently involved here include Christina Rossetti, Algernon Swinburne, and both Brownings.)
In an earlier comment I implied that the choice between "semantic" topics and "discourses" might be aligned with topic modeling at different scales, but I'm not really sure that's true. I'm sure that the document size we choose does affect the level of granularity we're modeling, but I'm not sure how radically it affects it. (I believe Matt Jockers has done some systematic work on that question, but I'll also be interested to see the results Lisa gets when she models differences between poems.)
I actually suspect that the topics identified by LDA probably always have the character of "discourses." They are, technically, "kinds of language that tend to occur in the same discursive contexts." But a "kind of language" may or may not really be a "topic." I suspect you're always going to get things like "art hath thy thou," which are better called a "register" or a "sociolect" than they are a "topic." For me, this is not a problem to be fixed. After all, if I really want to identify topics, I can open a thesaurus. The great thing about topic modeling is that it maps the actual discursive contours of a collection, which may or may not line up with "concepts" any writer ever consciously held in mind.
Computer scientists don't understand the technique that way.* But on this point, I think we literary scholars have something to teach them.
On the collective course blog for English 581 I have some other examples of topics produced at a volume level.
*[UPDATE April 3, 2012: Allen Riddell rightly points out in the comments below that Blei's original LDA article is elegantly agnostic about the significance of the "topics" — which are at bottom just "latent variables." The word "topic" may be misleading, but computer scientists themselves are often quite careful about interpretation.]
Documentation / open data:
I've put the topic model I used to produce these visualizations on github. It's in the subfolder 19th150topics under folder BrowseLDA. Each folder contains an R script that you run; it then prompts you to load the data files included in the same folder, and allows you to browse around in the topic model, visualizing each topic as you go.
I have also pushed my Java code for LDA up to github. But really, most people are better off with MALLET, which is infinitely faster and has hyperparameter optimization that I haven't added yet. I wrote this just so that I would be able to see all the moving parts and understand how they worked.
Posted in 19c, Bayesian topic modeling, methodology, poetic diction, topic modeling, Uncategorized	| 17 Replies
A touching detail produced by LDA …
Posted on March 25, 2012 by tedunderwood
I'm getting ahead of myself with this post, because I don't have time to explain everything I did to produce this. But it was just too striking not to share.
Basically, I'm experimenting with Latent Dirichlet Allocation, and I'm impressed. So first of all, thanks to Matt Jockers, Travis Brown, Neil Fraistat, and everyone else who tried to convince me that Bayesian methods are better. I've got to admit it. They are.
But anyway, in a class I'm teaching we're using LDA on a generically diverse collection of 1,853 volumes between 1751 and 1903. The collection includes fiction, poetry, drama, and a limited amount of nonfiction (just biography). We're stumbling on a lot of fascinating things, but this was slightly moving. Here's the graph for one particular topic.
The circles and X's are individual volumes. Blue is fiction, green is drama, pinkish purple is poetry, black biography. Only the volumes where this topic turned out to be prominent are plotted, because if you plot all 1,853 it's just a blurry line at the bottom of the image. The gray line is an aggregate frequency curve, which is not related in any very intelligible way to the y-axis. (Work in progress …) As you can see. this topic is mostly prominent in fiction around the year 1800. Here are the top 50 words in the topic:
But here's what I find slightly moving. The x's at the top of the graph are the 10 works in the collection where the topic was most prominent. They include, in order, Mary Wollstonecraft Shelley, Frankenstein, Mary Wollstonecraft, Mary, William Godwin, St. Leon, Mary Wollstonecraft Shelley, Lodore, William Godwin, Fleetwood, William Godwin, Mandeville, and Mary Wollstonecraft Shelley, Falkner.
In short, this topic is exemplified by a family! Mary Hays does intrude into the family circle with Memoirs of Emma Courtney, but otherwise, it's Mary Wollstonecraft, William Godwin, and their daughter.
Other critics have of course noticed that M. W. Shelley writes "Godwinian novels." And if you go further down the list of works, the picture becomes less familial (Helen Maria Williams and Thomas Holcroft butt in, as well as P. B. Shelley). Plus, there's another topic in the model ("myself these should situation") that links William Godwin more closely to Charles Brockden Brown than it does to his wife or daughter. And LDA isn't graven on stone; every time you run topic modeling you're going to get something slightly different. But still, this is kind of a cool one. "Mind feelings heart felt" indeed.
Posted in 18c, 19c, Bayesian topic modeling, fiction, Romantic-era writing	| 7 Replies
Posted in 18c, 19c, genre comparison, poetic diction	| 4 Replies
Literary and nonliterary diction, the sequel.
In my last post, I suggested that literary and nonliterary diction seem to have substantially diverged over the course of the eighteenth and nineteenth centuries. The vocabulary of fiction, for instance, becomes less like nonfiction prose at the same time as it becomes more like poetry.
It's impossible to interpret a comparative result like this purely as evidence about one side of the comparison. We're looking at a process of differentiation that involves changes on both sides: the language of nonfiction and fiction, for instance, may both have specialized in different ways.
This post is partly a response to very helpful suggestions I received from commenters, both on this blog and at Language Log. It's especially a response to Ben Schmidt's effort to reproduce my results using the Bookworm dataset. I also try two new measures of similarity toward the end of the post (cosine similarity and etymology) which I think interestingly sharpen the original hypothesis.
I have improved my number-crunching in four main ways (you can skip these if you're bored):
1) In order to normalize corpus size across time, I'm now comparing equal-sized samples. Because the sample sizes are small relative to the larger collection, I have been repeating the sampling process five times and averaging results with a Fisher's r-to-z transform. Repeated sampling doesn't make a huge difference, but it slightly reduces noise.
2) My original blog post used 39-year slices of time that overlapped with each other, producing a smoothing effect. Ben Schmidt persuasively suggests that it would be better to use non-overlapping samples, so in this post I'm using non-overlapping 20-year slices of time.
3) I'm now running comparisons on the top 5,000 words in each pair of samples, rather than the top 5,000 words in the collection as a whole. This is a crucial and substantive change.
4) Instead of plotting a genre's similarity to itself as a flat line of perfect similarity at the top of each plot, I plot self-similarity between two non-overlapping samples selected randomly from that genre. (Nick Lamb at Language Log recommended this approach.) This allows us to measure the internal homogeneity of a genre and use it as a control for the differentiation between genres.
Briefly, I think the central claims I was making in my original post hold up. But the constraints imposed by this newly-rigorous methodology have forced me to focus on nonfiction, fiction, and poetry. Our collections of biography and drama simply aren't large enough yet to support equal-sized random samples across the whole period.
Here are the results for fiction compared to nonfiction, and nonfiction compared to itself.
This strongly supports the conclusion that fiction was becoming less like nonfiction, but also reveals that the internal homogeneity of the nonfiction corpus was decreasing, especially in the 18c. So some of the differentiation between fiction and nonfiction may be due to the internal diversification of nonfiction prose.
By contrast, here are the results for poetry compared to fiction, and fiction compared to itself.
Poetry and fiction are becoming more similar in the period 1720-1900. I should note that I've dropped the first datapoint, for the period 1700-1719, because it seemed to be an outlier. Also, we're using a smaller sample size here, because my poetry collection won't support 1 million word samples across the whole period. (We have stripped the prose introduction and notes from volumes of poetry, so they're small.)
Another question that was raised, both by Ben and by Mark Liberman at Language Log, involved the relationship between "diction" and "topical content." The Spearman correlation coefficient gives common and uncommon words equal weight, which means (in effect) that it makes no effort to distinguish style from content.
But there are other ways of contrasting diction. And I thought I might try them, because I wanted to figure out how much of the growing distance between fiction and nonfiction was due simply to the topical differentiation of nonfiction in this period. So in the next graph, I'm comparing the cosine similarity of million-word samples selected from fiction and nonfiction to distinct samples selected from nonfiction. Cosine similarity is a measure that, in effect, gives more weight to common words.
I was surprised by this result. When I get very stable numbers for any variable I usually assume that something is broken. But I ran this twice, and used the same code to make different comparisons, and the upshot is that samples of nonfiction really are very similar to other samples of nonfiction in the same period (as measured by cosine similarity). I assume this is because the growing topical heterogeneity that becomes visible in Spearman's correlation makes less difference to a measure that focuses on common words. Fiction is much more diverse internally by this measure — which makes sense, frankly, because the most common words can be totally different in first-person and third-person fiction. But — to return to the theme of this post — the key thing is that there's a dramatic differentiation of fiction and nonfiction in this period. Here, by contrast, are the results for nonfiction and poetry compared to fiction, as well as fiction compared to itself.
This graph is a little wriggly, and the underlying data points are pretty bouncy — because fiction is internally diverse when measured by cosine similarity, and it makes a rather bouncy reference point. But through all of that I think one key fact does emerge: by this measure, fiction looks more similar to nonfiction prose in the eighteenth century, and more similar to poetry in the nineteenth.
There's a lot more to investigate here. In my original post I tried to identify some of the words that became more common in fiction as it became less like nonfiction. I'd like to run that again, in order to explain why fiction and poetry became more similar to each other. But I'll save that for another day. I do want to offer one specific metric that might help us explain the differentiation of "literary" and "nonliterary" diction: the changing etymological character of the vocabulary in these genres.
Measuring the ratio of "pre-1150" to "post-1150" words is roughly like measuring the ratio of "Germanic" to "Latinate" diction, except that there are a number of pre-1150 words (like "school" and "wall") that are technically "Latinate." So this is essentially a way of measuring the relative "familiarity" or "informality" of a genre (Bar-Ilan and Berman 2007). (This graph is based on the top 10k words in the whole collection. I have excluded proper nouns, words that entered the language after 1699, and stopwords — determiners, pronouns, conjunctions, and prepositions.)
I think this graph may help explain why we have the impression that literary language became less specialized in this period. It may indeed have become more informal — perhaps even closer to the spoken language. But in doing so it became more distinct from other kinds of writing.
I'd like to thank everyone who responded to the original post: I got a lot of good ideas for collection development as well as new ways of slicing the collection. Katherine Harris, for instance, has convinced me to add more women writers to the collection; I'm hoping that I can get texts from the Brown Women Writers Project. This may also be a good moment to reiterate that the nineteenth-century part of the collection I'm working with was selected by Jordan Sellers, and these results should be understood as built on his research. Finally, I have put the R code that I used for most of these plots in my Open Data page, but it's ugly and not commented yet; prettier code will appear later this weekend.
Posted in 18c, 19c, collection-building, genre comparison
The differentiation of literary and nonliterary diction, 1700-1900.
Posted on February 26, 2012 by tedunderwood
When you stumble on an interesting problem, the question arises: do you blog the problem itself — or wait until you have a full solution to publish as an article?
In this case, I think the problem is too big to be solved by a single person anyway, so I might as well get it out there where we can all chip away at it. At the end of this post, I include a link to a page where you can also download the data and code I'm using.
When we compare groups of texts, we're often interested in characterizing the contrast between them. But instead of characterizing the contrast, you could also just measure the distance between categories. For instance, you could generate a list of word frequencies for two genres, and then run a Spearman's correlation test, to measure the rank-order similarity of their diction.
In isolation, a measure of similarity between two genres is hard to interpret. But if you run the test repeatedly to compare genres at different points in time, the changes can tell you when the diction of the genres becomes more or less similar.
Spearman similarity to nonfiction, measured at 5-year intervals. At each interval, a 39-year chunk of the collection (19 years on either side of the midpoint) is being selected for comparison.
In the graph above, I've done that with four genres, in a collection of 3,724 eighteenth- and nineteenth-century volumes (constructed in part by TCP and in part by Jordan Sellers — see acknowledgments), using the 10,000 most frequent words in the collection, excluding proper nouns. The black line at the top is flat, because nonfiction is always similar to itself. But the other lines decline as poetry, drama, and fiction become progressively less similar to nonfiction where word choice is concerned. Unsurprisingly, prose fiction is always more similar to nonfiction than poetry is. But the steady decline in the similarity of all three genres to nonfiction is interesting. Literary histories of this period have tended to pivot on William Wordsworth's rebellion against a specialized "poetic diction" — a story that would seem to suggest that the diction of 19c poetry should be less different from prose than 18c poetry had been. But that's not the pattern we're seeing here: instead it appears that a differentiation was setting in between literary and nonliterary language.
This should be described as a differentiation of "diction" rather than style. To separate style from content (for instance to determine authorship) you need to focus on the frequencies of common words. But when critics discuss "diction," they're equally interested, I think, in common and less common words — and that's the kind of measure of similarity that Spearman's correlation will give you (Kilgarriff 2001).
The graph above makes it look as though nonfiction was remaining constant while other genres drifted away from it. But we are after all graphing a comparison with two sides. This raises the question: were poetry, fiction, and drama changing relative to nonfiction, or was nonfiction changing relative to them? But of course the answer is "both."
At each 5-year interval, the Spearman similarity is being measured between the 40-year span surrounding that point and the period 1700-1740.
Here we're comparing each genre to its own past. The language of nonfiction changes somewhat more rapidly than the language of the other genres, but none of them remain constant. There is no fixed reference point in this world, which is why I'm talking about the "differentiation" of two categories. But even granting that, we might want to pose another skeptical question: when literary genres become less like nonfiction, is that merely a sign of some instability in the definition of "nonfiction"? Did it happen mostly because, say, the nineteenth century started to publish on specialized scientific topics? We can address this question to some extent by selecting a more tightly defined subset of nonfiction as a reference point — say, biographies, letters, and orations.
The Spearman similarities here happen to be generated on the top 5000 words rather than the top 10000, but I have tried both wordsets and it makes very little difference.
Even when we focus on this relatively stable category, we see significant differentiation. Two final skeptical questions need addressing before I try to explain what happened. First, I've been graphing results so far as solid lines, because our eyes can't sort out individual data points for four different variables at once. But a numerically savvy reader will want to see some distributions and error bars before assessing the significance of these results. So here are yearly values for fiction. In some cases these are individual works of fiction, though when there are two or more works of fiction in a single year they have been summed and treated as a group. Each year of fiction is being compared against biographies, letters, and orations for 19 years on either side.
That's a fairly persuasive trend. You may, however, notice that the Spearman similarities for individual years on this graph are about .1 lower than they were when we graphed fiction as a 39-year moving window. In principle Spearman similarity is independent of corpus size, but it can be affected by the diversity of a corpus. The similarity between two individual texts is generally going to be lower than the similarity between two large and diverse corpora. So could the changes we've seen be produced by changes in corpus size? There could be some effect, but I don't think it's large enough to explain the phenomenon. [See update at the bottom of this post. The results are in fact even clearer when you keep corpus size constant. -Ed.] The sizes of the corpora for different genres don't change in a way that would produce the observed decreases in similarity; the fiction corpus, in particular, gets larger as it gets less like nonfiction. Meanwhile, it is at the same time becoming more like poetry. We're dealing with some factor beyond corpus size.
So how then do we explain the differentiation of literary and nonliterary diction? As I started by saying, I don't expect to provide a complete answer: I'm raising a question. But I can offer a few initial leads. In some ways it's not surprising that novels would gradually become less like biographies and letters. The novel began very much as faked biography and faked correspondence. Over the course of the period 1700-1900 the novel developed a sharper generic identity, and one might expect it to develop a distinct diction. But the fact that poetry and drama seem to have experienced a similar shift (together with the fact that literary genres don't seem to have diverged significantly from each other) begins to suggest that we're looking at the emergence of a distinctively "literary" diction in this period.
To investigate the character of that diction, we need to compare the vocabulary of genres at many different points. If we just compared late-nineteenth-century fiction to late-nineteenth-century nonfiction, we would get the vocabulary that characterized fiction at that moment, but we wouldn't know which aspects of it were really new. I've done that on the side here, using the Mann-Whitney rho test I described in an earlier post. As you'll see, the words that distinguish fiction from nonfiction from 1850 to 1900 are essentially a list of pronouns and verbs used to describe personal interaction. But that is true to some extent about fiction in any period. We want to know what aspects of diction had changed.
In other words, we want to find the words that became overrepresented in fiction as fiction was becoming less like nonfiction prose. To find them, I compared fiction to nonfiction at five-year intervals between 1720 and 1880. At each interval I selected a 39-year slice of the collection and ranked words according to the extent to which they were consistently more prominent in fiction than nonfiction (using Mann-Whitney rho). After moving through the whole timeline you end up with a curve for each word that plots the degree to which it is over or under-represented in fiction over time. Then you sort the words to find ones that tend to become more common in fiction as the whole genre becomes less like nonfiction. (Technically, you're looking for an inverse Pearson's correlation, over time, between the Mann-Whitney rho for this word and the Spearman's similarity between genres.) Here's a list of the top 60 words you find when you do that:
It's not hard to see that there are a lot of words for emotional conflict here ("horror, courage, confused, eager, anxious, despair, sorrow, dread, agony"). But I would say that emotion is just one aspect of a more general emphasis on subjectivity, ranging from verbs of perception ("listen, listened, watched, seemed, feel, felt") to explicitly psychological vocabulary ("nerves, mind, unconscious, image, perception") to questions about the accuracy of perception ("dream, real, sight, blind, forget, forgot, mystery, mistake"). To be sure, there are other kinds of words in the list ("cottage, boy, carriage"). But since we're looking at a change across a period of 200 years, I'm actually rather stunned by the thematic coherence of the list. For good measure, here are words that became relatively less common in fiction (or more common in nonfiction — that's the meaning of "relatively") as the two genres differentiated:
Looking at that list, I'm willing to venture out on a limb and suggest that fiction was specializing in subjectivity while nonfiction was tending to view the world from an increasingly social perspective ("executive, population, colonists, department, european, colonists, settlers, number, individuals, average.")
Now, I don't pretend to have solved this whole problem. First of all, the lists I just presented are based on fiction; I haven't yet assessed whether there's really a shared "literary diction" that unites fiction with poetry and drama. Jordan and I probably need to build up our collection a bit before we'll know. Also, the technique I just used to select lists of words looks for correlations across the whole period 1700-1900, so it's going to select words that have a relatively continuous pattern of change throughout this period. But it's also entirely possible that "the differentiation of literary and nonliterary diction" was a phenomenon composed of several different, overlapping changes with a smaller "wavelength" on the time axis. So I would say that there's lots of room here for alternate/additional explanations.
But really, this is a question that does need explanation. Literary scholars may hate the idea of "counting words," but arguments about a distinctively "literary" language have been central to literary criticism from John Dryden to the Russian Formalists. If we can historicize that phenomenon — if we can show that a systematic distinction between literary and nonliterary language emerged at a particular moment for particular reasons — it's a result that ought to have significance even for literary scholars who don't consider themselves digital humanists.
By the way, I think I do know why the results I'm presenting here don't line up with our received impression that "poetic diction" is an eighteenth-century phenomenon that fades in the 19c. There is a two-part answer. For one thing, part of what we perceive as poetic diction in the 18c is orthography ("o'er", "silv'ry"). In this collection, I have deliberately normalized orthography, so "silv'ry" is treated as equivalent to "silvery," and that aspect of "poetic diction" is factored out.
But we may also miss differentiation because we wrongly assume that plain or vivid language cannot be itself a form of specialization. Poetic diction probably did become more accessible in the 19c than it had been in the 18c. But this isn't the same thing as saying that it became less specialized! A self-consciously plain or restricted diction still counts as a mode of specialization relative to other written genres. More on this in a week or two …
Finally, let me acknowledge that the work I'm doing here is built on a collaborative foundation. Laura Mandell helped me obtain the TCP-ECCO volumes before they were public, and Jordan Sellers selected most of the nineteenth-century collection on which this work is based — something over 1,600 volumes. While Jordan and I were building this collection, we were also in conversation with Loretta Auvil, Boris Capitanu, Tanya Clement, Ryan Heuser, Matt Jockers, Long Le-Khac, Ben Schmidt, and John Unsworth, and were learning from them how to do this whole "text mining" thing. The R/MySQL infrastructure for this is pretty directly modeled on Ben's. Also, since the work was built on a collaborative foundation, I'm going to try to give back by sharing links to my data and code on this "Open Data" page.
Adam Kilgarriff, "Comparing Corpora," International Journal of Corpus Linguistics 6.1 (2001): 97-133.
[UPDATE Monday Feb 27th, 7 pm: After reading Ben Schmidt's comment below, I realized that I really had to normalize corpus size. "Probably not a problem" wasn't going to cut it. So I wrote a script that samples a million-word corpus for each genre every two years. As long as I was addressing that problem, I figured I would address another one that had been nagging at my conscience. I really ought to be comparing a different wordlist each time I run the comparison. It ought to be the top 5000 words in each pair of corpora that get compared — not the top 5000 words in the collection as a whole.
The first time I ran the improved version I got a cloud of meaningless dots, and for a moment I thought my whole hypothesis about genre had been produced by a 'loose optical cable.' Not a good moment. But it was a simple error, and once I fixed it I got results that were actually much clearer than my earlier graphs.
I suppose you could argue that, since document size varies across time, it's better to select corpora that have a fixed number of documents rather than a fixed word size. I ran the script that way too, and it produces results that are noisier but still unambiguous. The moral of the story is: it's good to have blog readers who keep you honest and force you to clean up your methodology!]
Posted in 18c, 19c, genre comparison, methodology
Exploring the relationship between topics and trends.
Posted on November 18, 2011 by tedunderwood
I've been talking about correlation since I started this blog. Actually, that was the reason why I did start it: I think literary scholars can get a huge amount of heuristic leverage out of the fact that thematically and socially-related words tend to rise and fall together. It's a simple observation, and one that stares you in the face as soon as you start to graph word frequencies on the time axis.1 But it happens to be useful for literary historians, because it tends to uncover topics that also pose periodizable kinds of puzzles. Sometimes the puzzle takes the form of a topic we intuitively recognize (say, the concept of "color") that increases or decreases in prominence for reasons that remain to be explained:
At other times, the connection between elements of the topic is not immediately intuitive, but the terms are related closely enough that their correlation suggests a pattern worthy of further exploration. The relationship between terms may be broadly historical:
Or it may involve a pattern of expression that characterizes a periodizable style:
Of course, as the semantic relationship between terms becomes less intuitively obvious, scholars are going to wonder whether they're looking at a real connection or merely an accidental correlation. "Ardent" and "tranquil" seem like opposites; can they really be related as elements of a single discourse? And what's the relationship to "bosom," anyway?
Ultimately, questions like this have to be addressed on a case-by-case basis; the significance of the lead has to be fleshed out both with further analysis, and with close reading.
But scholars who are wondering about the heuristic value of correlation may be reassured to know that this sort of lead does generally tend to pan out. Words that correlate with each other across the time axis do in practice tend to appear in the same kinds of volumes. For instance, if you randomly select pairs of words from the top 10,000 words in the Google English ngrams dataset 1700-1849,2 measure their correlation with each other in that dataset across the period 1700-1849, and then measure their tendency to appear in the same volumes in a different collection3 (taking the cosine similarity of term vectors in a term-document matrix), the different measures of association correlate with each other strongly. (Pearson's r is 0.265, significant at p < 0.0005.) Moreover, the relationship holds (less strongly, but still significantly) even in adjacent centuries: words that appear in the same eighteenth-century volumes still tend to rise and fall together in the nineteenth century.
Why should humanists care about the statistical relationship between two measures of association? It means that correlation-mining is in general going to be a useful way of identifying periodizable discourses. If you find a group of words that correlate with each other strongly, and that seem related at first glance, it's probably going to be worthwhile to follow up the hunch. You're probably looking at a discourse that is bound together both diachronically (in the sense that the terms rise and fall together) and topically (in the sense that they tend to appear in the same kinds of volumes).
Ultimately, literary historians are going to want to assess correlation within different genres; a dataset like Google's, which mixes all genres in a single pool, is not going to be an ideal tool. However, this is also a domain where size matters, and in that respect, at the moment, the ngrams dataset is very helpful. It becomes even more helpful if you correct some of the errors that vitiate it in the period before 1820. A team of researchers at Illinois and Stanford4, supported by the Andrew W. Mellon Foundation, has been doing that over the course of the last year, and we're now able to make an early version of the tool available on the web. Right now, this ngram viewer only covers the period 1700-1899, but we hope it will be useful for researchers in that period, because it has mostly corrected the long-s problem that confufes opt1cal charader readers in the 18c — as well as a host of other, less notorious problems. Moreover, it allows researchers to mine correlations in the top 10,000 words of the lexicon, instead of trying words one by one to see whether an interesting pattern emerges. In the near future, we hope to expand the correlation miner to cover the twentieth century as well.
For further discussion of the statistical relationship between topics and trends, see this paper submitted to DHCS 2011.
UPDATE Nov 22, 2011: At DHCS 2011, Travis Brown pointed out to me that Topics Over Time (Wang and McCallum) might mine very similar patterns in a more elegant, generative way. I hope to find a way to test that method, and may perhaps try to build an implementation for it myself.
1) Ryan Heuser and I both noticed this pattern last winter. Ryan and Long Le-Khac presented on a related topic at DH2011: Heuser, Ryan, and Le-Khac, Long. "Abstract Values in the 19th Century British Novel: Decline and Transformation of a Semantic Field," Digital Humanities 2011, Stanford University.
2) Jean-Baptiste Michel*, Yuan Kui Shen, Aviva Presser Aiden, Adrian Veres, Matthew K. Gray, William Brockman, The Google Books Team, Joseph P. Pickett, Dale Hoiberg, Dan Clancy, Peter Norvig, Jon Orwant, Steven Pinker, Martin A. Nowak, and Erez Lieberman Aiden*. "Quantitative Analysis of Culture Using Millions of Digitized Books." Science (Published online ahead of print: 12/16/2010)
3) The collection of 3134 documents (1700-1849) I used for this calculation was produced by combining ECCO-TCP volumes with nineteenth-century volumes selected and digitized by Jordan Sellers.
4) The SEASR Correlation Analysis and Ngrams Viewer was developed by Loretta Auvil and Boris Capitanu at the Illinois Informatics Institute, modeled on prototypes built by Ted Underwood, University of Illinois, and Ryan Heuser, Stanford.
Posted in 18c, 19c, math, methodology, ngrams	| 1 Reply
The challenges of digital work on early-19c collections.
Posted on October 7, 2011 by tedunderwood
I've been posting mostly about collections built by other people (TCP-ECCO and Google). But I'm also in the process of building a small (thousand-title) 19c collection myself, in collaboration with E. Jordan Sellers. Jordan is selecting titles for the collection; I'm writing the Python scripts that process the texts. This is a modest project intended to support research for a few years, not a model for long-term curatorial practice. But we've encountered a few problems specific to the early 19c, and I thought I might share some of our experience and tools in case they're useful for other early-19c scholars.
Literary and Characteristical Lives (1800), by William and Alexander Smellie. Note esp. the ligatures in 'first' and 'section.'
I originally wanted to create a larger collection, containing twenty or thirty thousand volumes, on the model of Ben Schmidt's impressive work with nineteenth-century volumes vacuumed up from the Open Library. But because I needed a collection that bridged the eighteenth and nineteenth centuries, I found I had to proceed more slowly. The eighteenth century itself wasn't the problem. Before 1800, archaic typography makes most optical character recognition unreliable — but for that very reason, TCP-ECCO has been producing clean, manually-keyed versions of 18c texts, enough at least for a small collection. The later 19c also isn't a problem, because after 1830 or so, OCR quality is mostly adequate.
OCR version of Smellie, contributed by Columbia University Libraries to the Internet Archive.
But between 1800 and (say) 1830, you fall between two stools. It's technically the nineteenth century, so people assume that OCR ought to work. But in practice, volumes from this period still have a lot of eighteenth-century typographical quirks, including loopy ligatures, the notorious "long s," and worn or broken type. So the OCR is often pretty vile. I'm willing to put up with background noise if it's evenly distributed. But these errors are distributed unevenly across the lexicon and across time, so they could actually distort conclusions if left unaddressed.
I decided to build a Python script to do post-processing correction of OCR. There are a lot of ways to do this; my approach was modeled on a paper written by Thomas A. Lasko and Susan E. Hauser for the National Library of Medicine. Briefly, what they show is that OCR correction becomes much more reliable when the program is given statistical information about the language, and errors, to be expected in a given domain. They're working with contemporary text, but the principle holds even more strongly when you're working in a different historical period. A generic spellchecker won't perform well with texts that contain period spellings ("despatch," "o'erflow'd"), systematic f/s substitution, and a much higher proportion of Latin and French than we're used to. If your system corrects every occurrence of "même" to "mime," you're going to end up with a surprising number of mimes; if you accept "foul" at face value as a correctly-spelled word, you're going to have very little "soul" in your collection.
Briefly, I customized my spellchecker for the early 19c in three ways:
• The underlying dictionary included period spellings as well as common French and Latin terms, and recorded the frequency of each term in the 18/19c domain. I used frequencies (lightly) to guide fuzzy matching.
• To calculate "edit distance," I used a weighted matrix that recorded the probability of specific character substitutions in early-19c OCR, learning as it went along.
• To resolve pairs like "foul/soul" and "flip/slip/ship," where common OCR errors produce a token that could also be a real word, I extracted 2gram frequencies from the Google ngram database so that the program could judge which word made more sense in context. I.e., in the case of "the flip sailed," the program can infer that a word before "sailed" is pretty likely to be "ship."
A few other tricks are needed to optimize speed, and to make sure the script doesn't over-correct proper nouns; anyone who's interested in doing this should drop me a line for a fuller description and a copy of the code.
Automatically corrected version.
The results aren't perfect, but they're good enough to be usable (I am also recording the number of corrections and uncorrectable tokens so that I can assess margins of error later on).
I haven't packaged this code yet for off-the-shelf use; it's still got a few trailing wires. But if you want to cannibalize/adapt it, I'd be happy to give you a copy. Perhaps more importantly, I'd like to share a couple of sets of rules that might be helpful for anyone who's attempting to normalize an 18/19c collection. Both of these rulesets are tab-delimited utf-8 .txt files. First, my list of 4600 rules for correcting 18/19c spellings, including syncopated past-tense forms like "bury'd" and "drop'd." (Note that syncope cannot always be fixed simply by adding back an "e." Rules for normalizing poetic syncope — "flow'ry," "ta'en" — are clustered at the end of the file, so you can delete them if desired.) This ruleset has been transformed by a long series of joins and filtering operations, and edited manually, but I should acknowledge that part of the original list was borrowed from the source files that accompany WordHoard, developed at Northwestern University. I should also warn potential users that these rules are designed to normalize spelling to modern British practice.
The other thing it might be useful to share is a list of 2grams extracted from the Google English corpus, that I use for contextual spellchecking. This includes only 2grams where one of the two elements is a token like "fix" or "flip" that could be read either as a valid word or as an OCR error caused by the long s. Since the long s is also a problem in the Google dataset itself up to 1820, this list was based on frequencies from 1825-50. That's not perfect for correcting texts in the 1800-1820 period, but I find that in practice it's adequate. There are two columns here: the 2gram itself, and the frequency.
Posted in 18c, 19c, collection-building


Show your appreciation this year with a gift they will enjoy and remember!
Temporary Employment agencies, and staffing firms – this could be very useful for you. Each year, in April – we celebrate Administrative Assistants' week! Get an early start this year on organizing gifts for your administrative assistants and for admin assistants at client offices. Your administrative assistants are so good about doing everything for you! Now is the time to show your special appreciation this year with a gift they will enjoy and remember! And we'll make it easy: we'll take care of everything for you! You can take them out to lunch – and then present them with one of these awesome gifts.
Last year, we suggested this idea to a client of ours, that had consultants posted at various client locations. They ordered gifts – with their logo imprinted – for all the administrative assistants at their client locations. Talk about a huge success. Not only did the admin assistants love the gift, the consulting company's logo was proudly displayed for days after. Talk about a neat way to spread goodwill – and subtly do a one-over on the competition.
Tilt the playing field … in your favor, baby. Yeah, that's what we're talking about!
This stylish tin is filled with one-dozen individually wrapped, creamy, Lindt-Lindor Chocolate Truffles; half Milk and half Dark Chocolate. For a final touch your logo is pad printed in one of eight standard colors on this nice, useful and re-usable tin. We can also custom-match to a specific Pantone or PMS color in your logo for an additional charge.


For those who live in or around Littleton, Colorado, we accept donations of gently used winter gear (hats, gloves, boots, snow pants or bibs, sleds), blankets or sleeping bags, outdoor gear, books and puzzles, sports equipment or like items that help with some of the environmental challenges.
Monetary donations are accepted to contribute to family support supplies, the toy drive, holiday community celebration, soup kit and toiletry kit creation, or other projects. 100% of any monetary donation goes directly to the organization and its charitable recipients. To make a monetary donation, please read the information below. Donations are tax deductible.
Our annual toy drive is a highlight of the year! The toy drive gives kids, age newborn to 18 years, a special gift for the holiday season. Please visit the projects page for more details!
Family support items such as new socks, underwear, hygiene items (soaps, toothbrushes, shampoo/conditioner), diapers, formula, wipes, school supplies, and other similar items can be dropped off locally or purchased from the Amazon Family Support Wishlist.
For questions about your donation, please fee free to contact us.
100% of monetary donations go directly to the organization and its charitable recipients. The organization founders, board members, and support staff are all volunteers. To make a monetary donation, please use the SQUARE or PAYPAL donation buttons. If you'd like to make an offline donation, please send a check made payable to Friends of the Lakota Nation to the address below. All donations are tax deductible. If you need an additional receipt for your donation, please contact us.


text:
Christian world
Theology of the Icon, and Recognizing Saints
A word from the Patriarch on unity, grace, and life after death
Life & Faith
Synaxis of the Holy Glorious Prophet, Forerunner and Baptist John
Feast of the Theophany of our Lord and Savior Jesus Christ
Archbishop of Athens is expected to be discharged from hospital by the end of the week
Archbishop Ieronymos of Athens and All Greece is expected to be discharged from "Evangelismos" hospital by the end of the week.
The course of the health of the Primate of the Church of Greece seems to be progressing very smoothly and, if everything continues as it is today, he may be discharged from the hospital on Thursday or Friday.
For the last 48 hours the Archbishop seems to respond very well to the treatment given to him by the treating doctors and the recovery process will continue at home, as there is always the risk of hospital-acquired infections.
Speaking to orthodoxtimes.com, people who are monitoring the Archbishop's health pointed out that in the last 48 hours, Archbishop Ieronymos has responded impressively to the treatment and does not show any worrying signs that could indicate deterioration.
In fact, the Archbishop has been without a fever since Sunday morning. "With God's help and the great efforts of the doctors, Archbishop Ieronymos can return to his home before the end of this week and, after the expected quarantine and rest, the Archbishop will be able to return to his duties," said a man who is by the side of the Archbishop at "Evangelismos" Hospital.
Asked if the Archbishop had received any special treatment in relation to the other patients, people from the medical staff who monitor Archbishop Ieronymos clarified that "all the protocols that have been implemented were the ones that are being followed for any patient with Covid-19".
Source: Orthodoxtimes.com
Serbian Orthodox Church
Theophany celebrated in Djurdjevi Stupovi
The Feast of Theophany in the Cathedral church in Novi Sad
Metropolitan Porfirije: There will be challenges, but we will never lose faith that God is with us
Bishop of Pozega and Bishop of Slavonia visited the Diocese of Gornji Karlovac
Bishop Irinej receives new Ambassador of Serbia to USA, Marko Djuric
The Feast of the Circumcision of the Lord and the Commemoration of Saint Basil in Jerusalem
First Maasai priest in Tanzania
Saint Stephen's feast in Jerusalem
Christians invited to join virtually in prayer for 54th Week of Prayer for Christian Unity
Pope Francis and the Pope emeritus receive Covid-19 vaccine
Christmas Visit of President Vucic to Chilandar Monastery
Pakistan's Christians and other faiths hold Christmas event
"Christians in Nigeria are Slaughtered Like Animals"
Copyright © 1999-2021 by The Information Service of the Serbian Orthodox Church
11000 Belgrade, Kralja Petra no.5 | +381.11.3025.112 | info@spc.rs

redpajama_set_name: RedPajamaCommonCrawl


text:
Prendergast, J.A. et al.
Increased ubiquitin expression suppresses the cell cycle defect associated with the yeast ubiquitin conjugating enzyme, CDC34 (UBC3). Evidence for a noncovalent interaction between CDC34 and ubiquitin.
The yeast ubiquitin (Ub) conjugating enzyme CDC34 plays a crucial role in the progression of the cell cycle from the G1 to S phase. In an effort to identify proteins that interact with CDC34 we undertook a genetic screen to isolate genes whose increased expression suppressed the cell cycle defect associated with the cdc34-2 temperature-sensitive allele. From this screen, the poly-Ub gene UBI4 was identified as a moderately strong suppressor. The fact that the overexpression of a gene encoding a single Ub protein could also suppress the cdc34-2 allele indicated that suppression was related to the increased abundance of Ub. Ub overexpression was found to suppress two other structurally unrelated cdc34 mutations, in addition to the cdc34-2 allele. In all three cases, suppression depended on the expression of Ub with an intact carboxyl terminus. Only the cdc34-2 allele, however, could be suppressed by Ub with an amino acid substitution at lysine 48 which is known to be involved in multi-Ub chain assembly. Genetic results showing allele specific suppression of cdc34 mutations by various Ub derivatives suggested a specific noncovalent interaction between Ub and CDC34. Consistent with this prediction, we have shown by chemical cross-linking the existence of a specific noncovalent Ub binding site on CDC34. Together, these genetic and biochemical experiments indicate that Ub suppression of these cdc34 mutations results from the combined contributions of Ub-CDC34 thiol ester formation and a noncovalent interaction between Ub and CDC34 and therefore suggest that the correct positioning of Ub on a surface of the ubiquitin conjugating enzyme is a requirement of enzyme function.[1]
Increased ubiquitin expression suppresses the cell cycle defect associated with the yeast ubiquitin conjugating enzyme, CDC34 (UBC3). Evidence for a noncovalent interaction between CDC34 and ubiquitin. Prendergast, J.A., Ptak, C., Arnason, T.G., Ellison, M.J. J. Biol. Chem. (1995) [Pubmed]


text:
Q: Bash eval replacement $() not always equivalent? Everybody says eval is evil, and you should use $() as a replacement.  But I've run into a situation where the unquoting isn't handled the same inside $().
Background is that I've been burned too often by file paths with spaces in them, and so like to quote all such paths.  More paranoia about wanting to know where all my executables are coming from.  Even more paranoid, not trusting myself, and so like being able to display the created commands I'm about to run.
Below I try variations on using eval vs. $(), and whether the command name is quoted (cuz it could contain spaces)
  BIN_LS="/bin/ls"
  thefile="arf"
  thecmd="\"${BIN_LS}\" -ld -- \"${thefile}\""

  echo -e "\n    Running command   '${thecmd}'"
  $($thecmd)

          Running command   '"/bin/ls" -ld -- "arf"'
      ./foo.sh: line 8: "/bin/ls": No such file or directory

  echo -e "\n    Eval'ing command  '${thecmd}'"
  eval $thecmd

          Eval'ing command  '"/bin/ls" -ld -- "arf"'
      /bin/ls: cannot access arf: No such file or directory

  thecmd="${BIN_LS} -ld -- \"${thefile}\""

  echo -e "\n    Running command   '${thecmd}'"
  $($thecmd)

          Running command   '/bin/ls -ld -- "arf"'
      /bin/ls: cannot access "arf": No such file or directory

  echo -e "\n    Eval'ing command  '${thecmd}'"
  eval $thecmd

          Eval'ing command  '/bin/ls -ld -- "arf"'
      /bin/ls: cannot access arf: No such file or directory

  $("/bin/ls" -ld -- "${thefile}")

      /bin/ls: cannot access arf: No such file or directory

So... this is confusing.  A quoted command path is valid everywhere except inside a $() construct?  A shorter, more direct example:
$ c="\"/bin/ls\" arf"
$ $($c)
-bash: "/bin/ls": No such file or directory
$ eval $c
/bin/ls: cannot access arf: No such file or directory
$ $("/bin/ls" arf)
/bin/ls: cannot access arf: No such file or directory
$ "/bin/ls" arf
/bin/ls: cannot access arf: No such file or directory

How does one explain the simple  $($c)  case?

A: With the fact that it doesn't make sense in the first place. Use an array instead.
$ c=("/bin/ls" arf)
$ "${c[@]}"
/bin/ls: cannot access arf: No such file or directory

A: From the man page for bash, regarding eval:

eval [arg ...]:
  The args are read and concatenated together into a single command.
  This command is then read and executed by the shell, and its exit
  status is returned as the value of eval.

When c is defined as "\"/bin/ls\" arf", the outer quotes will cause the entire thing to be processed as the first argument to eval, which is expected to be a command or program.  You need to pass your eval arguments in such a way that the target command and its arguments are listed separately.
The $(...) construct behaves differently than eval because it is not a command that takes arguments.  It can process the entire command at once instead of processing arguments one at a time.
A note on your original premise: The main reason that people say that eval is evil was because it is commonly used by scripts to execute a user-provided string as a shell command.  While handy at times, this is a major security problem (there's typically no practical way to safety-check the string before executing it).  The security problem doesn't apply if you are using eval on hard-coded strings inside your script, as you are doing.  However, it's typically easier and cleaner to use $(...) or `...` inside of scripts for command substitution, leaving no real use case left for eval.

A: The use of " to quote words is part of your interaction with Bash. When you type
$ "/bin/ls" arf

at the prompt, or in a script, you're telling Bash that the command consists of the words /bin/ls and arf, and the double-quotes are really emphasizing that /bin/ls is a single word.
When you type
$ eval '"/bin/ls" arf'

you're telling Bash that the command consists of the words eval and "/bin/ls" arf. Since the purpose of eval is to pretend that its argument is an actual human-input command, this is equivalent to running
$ "/bin/ls" arf

and the " gets processed just like at the prompt.
Note that this pretense is specific to eval; Bash doesn't usually go out of its way to pretend that something was an actual human-typed command.
When you type
$ c='"/bin/ls" arf'
$ $c

the $c gets substituted, and then undergoes word splitting (see §3.5.7 "Word Splitting" in the Bash Reference Manual), so the words of the command are "/bin/ls" (note the double-quotes!) and arf. Needless to say, this doesn't work. (It's also not very safe, since in addition to word-splitting, $c also undergoes filename-expansion and whatnot. Generally your parameter-expansions should always be in double-quotes, and if they can't be, then you should rewrite your code so they can be. Unquoted parameter-expansions are asking for trouble.)
When you type
$ c='"/bin/ls" arf'
$ $($c)

this is the same as before, except that now you're also trying to use the output of the nonworking command as a new command. Needless to say, that doesn't cause the nonworking command to suddenly work.
As Ignacio Vazquez-Abrams says in his answer, the right solution is to use an array, and handle the quoting properly:
$ c=("/bin/ls" arf)
$ "${c[@]}"

which sets c to an array with two elements, /bin/ls and arf, and uses those two elements as the word of a command.

A:
Using set -vx helps us understand how bash process the command string.
As seen in the picture, "command" works cause quotes will be stripped when processing. However, when $c(quoted twice) is used, only the outside single quotes are removed. eval can process the string as the argument and outside quotes are removed step by step.
It is probably just related to how bash semanticallly process the string and quotes.
Bash does have many weird behaviours about quotes processing:
Bash inserting quotes into string before execution
How do you stop bash from stripping quotes when running a variable as a command?
Bash stripping quotes - how to preserve quotes

redpajama_set_name: RedPajamaStackExchange


Thank you so much for being so patient with me. I have been promising to post this tutorial for a while but just couldn't get around to doing it for health reasons. But I'm glad to report that I'm back to the land of the breathing (I had an asthma flare up) and have a super long and super detailed blog post for you.
When I started crocheting a couple of years back, granny square was one of the first things I learned to make (like most of us do!). I found the repetitions involved in making the squares really soothing but one thing that kept annoying me was that right side slant of each and every square I ever made! At first I thought it was me, but after spending hours on Pinterest, Ravelry and YouTube, I realised that's just something the pattern makes the square do. So I let it be and moved on to explore the zillion ( ok, not zillion but pretty close to it!) other stitches crochet has to offer.
Last year, I again picked up the hook to make a granny square for a yarn bombing project and started experimenting with how to get the square to be as straight as possible. And the method below is what worked best for me.
So, if you follow the tutorial, you will end up with a nice square potholder.
The tutorial itself is also intended to help you make a granny square blanket of any size. I have put together a few details about the simple blanket I have made (the one in the pic below) at the end of this post.
So, gather your supplies and lets getting hooking!
Make a slip knot. Ch4 and sl st in the last ch from the hook to form a circle.
Ch3 (counts as a dc), 2dc, ch1 in the circle. (3dc, ch1 ) 3 times. Join with a sl st to in the 3rd ch of the ch3.
(Ch3, 2 dc, ch1, 3 dc) in the same ch1sp. (3dc, ch1, 3dc) in the next 3 ch1 sps. Join with a sl st in the 3rd ch of the ch 3.
This is where this granny square varies from the traditional way they are made. I do not ch in between the corners and only do 1 ch in the corners. This helps in making the granny straighter and not slanting to the right.
(Ch3, 2dc, ch1, 3dc) in the same ch1sp. Now make 3 dcs in the sp between the 3 dcs from round 2. [(3dc, ch1, 3dc) in the next ch1sp, 3 dc between the 3 dc from round 2] 3 times. Join with a sl st in the 3rd ch of the ch3. Cut yarn and weave in the ends.
For making a blanket, keep on increasing your granny square in the same way for as long as you want. But stop just before making the last round. We will make the last round of the square in the traditional way.
This is round 4 for me on this granny square but think of this as the last round on your granny square, however many rounds you decide to make. Also, keep in mind I'm making the changes to this round because I will be using the join as you go method for joining the granny squares. If this is not the method you intend to use, then just keep repeating round 3 and join with whatever method you like best.
Join new yarn with a sl st to any corner of the granny square.
(Ch3, 2dc, ch 2, 3dc) in the same ch1sp. [(Ch1, 3dc) in between the 3dc from round 3] 2 times.
[(3dc, ch2, 3dc) in the next corner. (ch1, 3dc) in between the 3 dcs from round 3.] 3 times. Ch1 and join with a sl st in the 3rd ch of ch3. Cut yarn and weave in the ends.
And your first granny square is ready!
Now comes the join as you go part.
Pick any one of the remaining 3 squares you made earlier (like the green one below). Attach the joining yarn with a sl st in any ch2sp. Ch3, 2dc in the same sp. Ch1, then sl st in any ch2sp corner of the yellow granny square. 3 dc in the same ch2sp of the green granny square. This completes the first corner join. Now sl st in the next ch1 sp of the yellow granny square and then make 3 dcs in the next ch1 sp of the green granny square. Once you reach the corner, make 3 dcs in the ch1sp, sl st in the corresponding ch1sp of the green granny square. Ch1 and make 3dcs in the same ch1sp. And just like that you have joined the 2 squares!
Continue along the rest of the 3 sides, making 3 dcs with ch1 in between them and 3dcs, ch2, 3dcs in the corner ch1sp.
Attach the 3rd square (the blue one in the top left pic below) exactly the same way as you did the second (the green one in the top left pic below).
You keep joining the orange square exactly the same way mentioned above but when you come to a corner, make 3dcs, sl st in the yellow granny square (marked by needles in the bottom left pic below) and then do the next sl st in the blue granny square (marked by needles in the botton left pic below) and make 3 dcs in the same ch1sp. And continue along nonchalantly!
And in no time you would have joined all your grannies together!
Now we make a border for our cheerful potholder.
Attach yarn to any corner of the granny square blanket. Ch1 (does not count as a st) and then make (2sc, ch2, 2sc) in the same ch2sp. Continue along the edge making 1sc in each stitch. Make (2sc, ch2, 2sc) in each of the remaining 3 corners. Join with a sl st in the back loop only (blo) of the first sc.
Note: I made an sc in the space between the joins of the 2 granny squares as well. You can see that closely in the top right side pic below. I now feel that it might not be needed. I did not make that stitch in the actual granny square blanket I made. So, its completely up to you whether you want to make that stitch or not.
Ch1 (does not count as a st). 1 sc in the blo of the same st as the join, in the next st and the ch1 from round1 corner sp. Then ch1 and 1 sc in the blo of the other ch1 of the same corner. Corner made for this round. Now sc across remembering to make the sts in the back loop only.
Ch1 (does not count as a st). Sc in the blo of the same st as the join and the next 2 sts, ch1, sk the ch1 from round 2 and continue around making sc in the blo. Join with a sl st in both the loops of the first sc.
I made the last round of the border using the reverse single crochet (also called the crab stitch). Now, I tried taking pictures for this tricky stitch but they just weren't coming out right. So, here is the link to the fabulous tutorial by Brittany of bhooked crochet, that I used to learn this stitch.
This square was a little wonky because I accidently used a 4mm hook while doing the crab stitch! So I had to block it to get it into shape.
For blocking, you pin the piece on the blocking mat and spray generously with water and then leave it alone to dry.
And here is our post blocked potholder.
Phew! I hope I have covered everything but if you have any doubts about any of the steps, feel free to leave me a comment below.
The blanket is made up of 12 squares consisting of 15 rounds each (this includes the last sorbet colour round too).
I used Bendigo Woollen Mills Luxury wool 8 ply yarn. 4 balls of colour Slate and 1 ball of colour sorbet.
I have not blocked the squares or the blanket. I felt it just didn't need it.
And this is everything I wanted to share with all you lovely crocheters out there.
I hope this tutorial is of help. The possibilities of a granny square are endless and I would LOVE to see the different colour recipes you cook up. If you share your makes on Instagram, then please do tag them using #simplegrannysquare or #knitpurlhook.
Thank you so much for stopping by and sticking to the end of this reaaally long post.
Thank you so much for your perfect tutorial. I have already had an eye on your blanket, it's so beautiful! I have had the same problem with my twisted grannies, tried many different ways that didn't work for me and ended up like Naomi turning my granny after every round, which actually looked very good. Next time I will try your method and see if that works better for me. Thanks again for sharing!
Love the blanket, do you have the pattern for the grey squares?
i have given a few points on how to make the same blanket. It's just granny squares with the last round done in a different colour and joined together. You see the notes above the last pic.
I would LOVE to know how to make the blanket. It is gorgeous.
Sorry for the late reply Dawn. Hope you were able to figure out how it's done. I have shown the entire process in the photo tutorial. Let me know if you need any further assistance. Happy to help.
Love the blanket. Do you have the pattern for the granny square blanket.
I 'm still trying to figure it out I try praticing every day but it's not coming out right but as they say practice makes perfect.


Electronic Design and development of consumer electronic devices such as sports audio video devices, OTT and personal portable devices.
Electronic Design and development of e-book readers.
Electronic Design and development of consumer electronic products such as audio visual devices for children. Baby can be safe with best tracking,monitoring by our smart baby devices.
Electronic Design and development of video player, touch cashier, POS cashier and other related products.
Electronic Design and development of GPS tracker, GPS locator, vehicle GPS tracker, GPS watch and other GPS positioning devices. You can visit it as GPS Tracker.
Electronic Design and development of a portable DLP projector. You can know more from DLP Projector.
Electronic Design and development of solar energy conversion, fast charging, wireless charging, UPS, inverter power supply, switching power supply. you can know more about this branch as UPS Power.
It can provide the development and design of embedded computer module COM, embedded single board computer SBC, embedded system module SOM,You can also customize embedded business and industrial control for you.


Trinity Silom Hotel situé à proximité des zones commerciales de la ville, des grandes ambassades et des plus grands complexes commerciaux. Trinity Silom Hotel assouvit tous les besoins du voyageur moderne. Facilité et commodité sont nos deux visions clés. Une simplicité revisitée qui vous surprendra. Le souci d'offrir à sa clientèle précisément ce dont elle a besoin. Chaque Trinity Silom Hotel se concentre sur 5 points essentiels pour le voyageur actif : lit et oreiller superbes, un excellent accès internet avec wifi dans chaque chambre, une salle de sport, un bon petit-déjeuner et une excellente douche. Le Trinity Silom Hotel et ses 104 chambres sont le premier hôtel de cette catégorie.
Trinity Silom Hotel is perfect for tourists and busy executives, located within easy walking distance to some of Bangkok's iconic and sought after shopping and entertainment districts. Silom is an action packed area in Bangkok and close to major international banks and embassies and the BTS Chong Nonsi Station is conveniently located for easy access to public transportation.
The hotel offers contemporary yet spacious rooms that embrace comfort and a sense of welcoming, within the hotel we offer a complete business center including fast internet access. Recreational options include a full-sized swimming pool, tennis court, basketball court and beautiful Thai massage rooms.
Experience the relaxing comforts and modern amenities that are brought together in an effortless & simplistic style. For your high tech enjoyment, iPod docking stations and flat screen TVs are provided in every room. Whether business or leisure, all your necessities are met at Trinity Silom.
Effortless room features King and Twin bed, 32" LCD TV, DVD player, iPod docking, mini-refrigerator with complimentary coffee, tea and water, electronic in-room safe and Wi-Fi access.
Stylish room offering both King and Twin bed with all needed facilities including sofa bed, convenient for short and long term stays. For technology enjoyment, iPod docking station with radio and speaker are also available.
Newly renovated and total smoke-free. Modern and spacious King and Twin room with wooden floor, working desk, day bed, bathroom with double door technique, 32" LCD TV and iPod docking station and speakers.
Award winning CHU Chocolate Bar & Café is a favorite with Bangkokians when it comes to Casual All-Day Brunch Cafe with homemade cakes, pastries and specialty chocolate drinks is located downstairs and provides a All-Day Brunch experience that is second to none.
Monday-Friday: 10.00 a.m. - 10.30 p.m.
Weekend & Holiday : 08.00 p.m. - 10.00 p.m.
The pounding of feet in motion. Swimming laps next to skyscrapers. The healing touch of a soothing massage to revitalize the body and soul. Whether to start off your morning or release the stress of a long day, be sure to enjoy one of the many activities available at Trinity Silom.
Just because you travel doesn't mean you have to give up your routines, like exercising. All guests of Trinity Silom have complimentary use of the gym, pool and sauna facilities in the Trinity Complex across from the hotel. The gym has cardio and weight machines as well as free weights, while the pool is a full-size outdoor lap pool. Other complimentary facilities include an outdoor running track, playground, and basketball court. For an additional reduced fee, guests may also use the tennis court.
Monday to Friday: 06.00 a.m. - 09.00 p.m.
Saturday, Sunday and public holidays: 08.00 a.m. - 08.00 p.m.
Located at the heart of the commercial and office area in downtown Bangkok, Trinity Silom is just off Silom Soi 3, near the Trinity Complex. The hotel can also be accessed through Naratiwas Soi 3 or Sathorn Soi 8. Trinity Silom is conveniently situated near both the Chong Nonsi BTS skytain station and the Silom MRT subway station.
Centrally located in a heart of Bangkok just off Silom Road. Escape the infamous Bangkok traffic with quick access to the city's efficient mass transit systems. Within a five minute walk from the hotel is the Chong Nonsi BTS sky train station, while the Silom MRT subway station is just 15 minutes walk away. Also, because Trinity Silom is located close to the expressway, the Suvarnabhumi International Airport is a mere 40 minutes away.
The hotel is conveniently located in the central business district and adjacent to the famous Silom dining and shopping district, including the famous night markets. With easy access to the Chao Praya river, Lumpini Park, Queen Sirikit National Convention Center, Bangkok Convention Center and many international embassies, major banks and businesses, Trinity Silom meets all of your needs for both business and leisure.
[Sawadee.com] [Bangkok info] [Bangkok hotels] [Trinity Silom Hotel ] © 1997-2017 Web Sawadee Plc.


text:
Q: How to convert protobuf to POJO/JSON in Android I am using "protobuf" format in place of JSON (as "protobuf" is optimized in comparison to JSON ) for fetching data from server.But my requirement is to convert protobuf to already existed POJO class(Mapped with realm entity).
I am using Protobuf-lite. There is any way to convert it in POJO/JSON in Android.
In android generated class is:
    public  static final class Person extends
                     com.google.protobuf.GeneratedMessageLite<
                          Person, Person.Builder> implements
                            PersonOrBuilder {
    }

And Protobuf-Converter does not support this type generated class.
So this converter is not helpful for me in android.


A little update rolls right now out for the Samsung Galaxy S6 and S6 Edge, which among other things improves your fingerprint reader.
A new, small update, right now the road to the two most recent top models from Samsung, Galaxy Galaxy S6 and S6 Edge which fills the 159.29 MB and has version number XXU1AOE3. It writes SamMobile.
The small update improves fingerprint reader ability to recognize fingerprints, like user interface on a couple of Samsung's own apps have gotten a little face lift. This applies, among other things, E-mail, Music and S Planner. In Photo editor app has added a new function, but which are still unclear.
Finally update brings improved compatibility with accessories, and when they included details about the update is extremely sparse, it is not known exactly what it covers.
At this stage it is unclear when and whether the update lands in Denmark. So far the update out in Strorbritannien and France, and when the two models (Galaxy S6: SM-G920F and Galaxy S6 Edge: SM-G925F) in these countries are similar to those in Denmark, it is not unlikely that the also come here.
Previous update for the two models, which aimed to rectify a ungoverned RAM usage was spreading, however, no longer than for Vodafone customers in the United Kingdom.
There is therefore nothing other than to see if a notification about a new update pops up in the near future.


MIDLAND - With the severe drought, residents are changing their ways, and sometimes that means taking drastic measures when it comes to conserving water. A Midland resident has now started her own waterless carwash to help with the drought.
"People are wasting water doing that, everybody who has luxury vehicles or oilfield trucks that they want to keep cleaned and maintained clean, we came up with the way to help that out," Melissa Milan, Owner of the Waterless Car Wash, said.
It's an eco friendly car wash, and get this it only takes about six ounces or product to wash your car, that's less than a coke bottle.
"Basically it's a spray on application. It just sprays on we wipe it off with a second towel and then we can just wipe it off with like a hand wash," Milan said.
It's as easy as spray and wipe and it leaves your car shiny with a protected finish.
"There's people who think because its eco or green, it's not going to work as well and they want the big high power wash. There is no difference, its just hand wash," Milan said.
Bottom line is they just want to cut back on water.
"To conserve water and to show people that there are other ways, we don't have to use water for everything and just to save the water," Milan said.
NewsWest 9 went online and we did find products that could help you clean your car without water but if you rather leave the hassle for others, you can contact Lone Star Eco Wash at 432-978-1263.


The previous owner was driving down the road and got broad sided hard which sheared springs and u bolts off. Rear end is not hooked at all. I tied it in place long enough to get it off the trailer. To bad really, 60k miles no rust other then roof rot. Bed was mint, no rust. The cab side, passengers door, bed sides ruined. I saw the accident in the paper and the tow company is a friend of mine. I called him up with interest and it worked out. Its a 318 halfer with a 5 speed. I needed drivers door, inner fenders, and a drivers outer fender for the red 92 so it will fit the bill for that. Its an island truck so thats why no rust from salt roads and the low miles. Island communities don't salt roads much as the delivery cost to get it there is high. If I needed a beater truck a new set of springs and a flat bed would fix it back to road worthy. I need it for parts, so thats the plan. By the way, I see the inner fender wells are no longer supported by the aftermarket companies. Got a price on a used one from some linked junk yard system and one inner was 250 bucks.
Dude! You got took! I paid $160 for my donor truck! I used the cab and fenders, traded the box for a set of buckets and $200, traded the engine (318) for an RC fuel tank, and core support for something else.
I am a worse jew than Bill sometimes!
I can sell the 318 for what I have in the truck. I made out just fine.
Cool! I forgot how thrifty you mainerds are.
Worst part is my son is building a 1977 1985 mixmatch w200 225 slant 6 and he is eyeing my parts.
Richie O wrote: Worst part is my son is building a 1977 1985 mixmatch w200 225 slant 6 and he is eyeing my parts.
Go ahead and give him the 318 a W200 is a total dog with a slant in it.
He really likes the 225's Something different and old school I guess.
Some Offenhauser intake/exhaust & a 2 barrel, and the leaning tower of power did surprisingly well.
Not to mention the best winter starts of any carbed vehicle I have owned.
Yup, maybe someday he will do some mods to it. Right now he just wants to get it on the road. I know they can be ok with good carb, exhaust and a cam. Cliffords Performance sells those goodies but ouch, they don't give them away.
Clifford's prices for the 225 are in line with 392 parts - outrageous for a 30 year old jig.
I used NOS Offy parts that I was lucky enough to have.
The carb? Regular old Holley 6-pack 500 cfm unit soon replaced by a 350 cfm Holley for slant driveability.


text:
Disaster Report 4: Summer Memories Nintendo Switch Review
Posted by GethN7 on March 31, 2020
NOTE: NIS America provided the review key to The Geek Getaway for this review.
When most people play games, it's to escape reality and be something they wouldn't be in the real world, because reality and all its flaws usually aren't as exciting as fantasy. However, our reality is a world we must live in, and some reality-based games can be insightful and compelling if done well, and Disaster Report 4: Summer Memories is based on a very serious question:
"How would you deal with being trapped in a crumbling city during an earthquake?"
From this premise, you can choose to be a male or female character (that you customize the appearance of prior) who is visiting Hisui City in Kanae Prefecture of a fictional (though based off real places) part of Japan for whatever reason you choose (and you get to choose one of several). While there, a severe earthquake rocks the city, ruining your plans for visiting, replacing them with something far direr: the need to escape and survive.
The game blends several interesting ideas. Using the attempt at realistic portrayals of actual real-world Japanese locations like the Yakuza series (or close approximations in this case), the adventures and puzzles (though not the combat) of Resident Evil and Silent Hill (albeit rendered in a more real-world plausible context), and scenes right out of an earthquake survival documentary, we get a game where you are given the freedom to do what you must to survive and escape.
On top of letting you explore several areas, you are given the option to be anything from a kind soul who helps others survive along the way to a ruthless person who only worries about saving themselves. Alternatively, you can be anything in between or be utterly schizophrenic how moral and immoral you choose to be while interacting with those in the disaster area. While the game keeps track of how moral and immoral you choose to be and it will affect later scenes based on earlier conduct, there is no wrong choice, survival is based on the player's interpretation of what they need to do to survive, and that could involve making pragmatic choices as opposed to moral ones or not, how you conduct yourself is up to you.
The game also reminds the player repeatedly they are NOT a superman or able to survive fatal incidents that would kill and maim in real life. You must eat, drink, rest, take bathroom breaks, and attend to injuries you incur. You are not able to take a lot of damage, keeping in line with the logic this is based on reality, so careful gameplay is essential to navigating a city of aftershocks, busted gas and water lines, and cut power. The quake damage can also cause buildings and other objects to fall at any time, meaning quick action to avoid and reduce the risk of injury or death is a constant concern.
There are some fun things, however. Your appearance, clothing, and various accessories like your compass and backpack can be customized by finding different clothes and accessories, and exploration is encouraged and rewarded. The backpacks can also increase or decrease storage for found items, adding another incentive to hunt them down. Further, some game scenes play out like a choose-your-own-adventure book, letting you decide how those scenes make you feel and what your personal and moral take on the situations at hand are. Overall, there is a strong element of "how would you feel and react in these situations" your character avatar can display.
On a technical level, this game uses the Unreal 4 Engine quite well. Physics and geometric detail are well detailed, with the city and people being beautifully rendered. There are some areas where the developers cut corners graphically (such are poorly detailed minor textures), though these tend to not be noticeable unless you go out of your way to look for them. The frame-rate is also less than 60 FPS, more along the lines of 20-30 FPS. This latter limitation, especially since I played the Switch port, seems to be a reasonable compromise to maintain stable frames and high detail for all the important stuff in the game engine. The music is sparse but nice, and the voice and sounds are very clear. Given listening for aftershocks and falling debris is a vital game-play element, this is very good news for the player.
It's worth noting this game can be quite tense and scary, and those who are claustrophobic will not be comfortable due to more than one instance of having to crawl for your life in very tight spaces where the fear being crushed is ever-present. The degree of realism in the presentation of earthquake damage and how they would affect various structures is such this game can serve an educational role for those who have never experienced such an event. Those that have are likely to get quite the deja vu.
FINAL VERDICT: RECOMMENDED
I usually play games because I want to be in a situation I wouldn't be able to experience in real life, but Disaster Report 4: Summer Memories is quite compelling because I very well could be in an earthquake someday. It never really crossed my mind how I would deal with that until I played it, but having done so, it's given me quite a bit of food for thought as well as a gaming experience I found unique and interesting.


Thanks Gh05tPT for reporting us the issue on our website, we check and solve. Very good work.
Thanks to @Gh05tPT for reported bug and helpful feedback to solve the vulnerability.
Thanks a lot for reported bug by Gh05tPT. Very fast response and very helpfully. Keep up the great work!
Gh05tPT found a security problem on one of our servers. I recommend him because he responded quickly and professionally. Thank you very much.
Gh05tPT found a XSS vulnerability on our websites and was quick to respond to an email with technical detail. Thank you for that.
Gh05tPT found a XSS vulnerability on our websites and was quick to respond to an email with tecnical detail.
Em nome da Animais de Rua, obrigado pela ajuda!
Gh05tPT encontrou um problema na página, respondeu rapidamente às perguntas colocadas e ajudou a resolver o problema.
Thanks a lot, it is great when people help each other.
Gh05tPT found a XSS vulnerability on our websites and was quick to respond to an email. We appreciated his help very much.
Thanks for the helpful and friendly communication with me on behalf of the web site owner I was checking this issue for with you. Keep up the good work.
Gh05tPT discovered an XSS vulnerability on our website and communicated the details to us very promptly. We are very grateful to him for his assistance and advice.
Gh05tPT was quick to respond, very polite and helpful during the resolution of the XSS vulnerability.
A kind thank you from the team.
We thank you for your colaboration and responsible disclosure!
Gh05tPT found an XSS bug on my website. Many Thanks!


He averaged 23 points and 20 rebounds as a senior on East Brady High School's basketball team in Pennsylvania.
He became the first Buffalo Bill to have his number (12) retired.
He married Jill Kelly in May of 1996, and they had three children together.
He was the 3rd quarterback drafted in 1983 and John Elway was the first.


text:
Q: How to kill a process whose pid keeps changing? I know I can use the trick if (fork()) exit(0); to change the pid of the current process. So, the following program would have a pid changing very quickly. How to kill a process like this? Is there some better method than executing a lot of killall procname until one get able to run kill() before it forks? I know it is not a 'process', but many processes that run for a few microseconds each.
#include <unistd.h>
#include <stdlib.h>
#include <stdio.h>

int main()
{
    pid_t self = getpid();
    while (1)
    {
        if (fork()) exit(0);
        if (self + 10000 < getpid()) break; // Just to kill it after some time
        usleep(1000);
    }
    return 0;
}

Also the only way I found to list the process was executing ps -A | grep procname a few times until one showed some output. Why isn't the process always listed?

A: Such a process is called a "comet" by systems administrators.
The process group ID (PGID) doesn't change on fork, so you can kill it (or SIGSTOP it) by sending a signal to the process group (you pass a negated PGID instead of a PID to kill).

A: The only reason I can see why you wouldn't see it is that the forked child has not been created yet but the parent has progressed far enough in it's death that it is no longer listed.
Unfortunately I don't think it's possible to kill this kind of process without some guessing. To do so would require knowing the next pid in advance. You can guess the next pid but not be certain that no other pid gets it assigned.


text:
New Projects, Wind
Deepwater Wind wins U.S. offshore wind power project site auction
Deepwater Wind New England LLC was selected as the provisional winner of two offshore wind energy site leases in federal waters off the coasts of Rhode Island and Massachusetts, bidding $3.8 million for the sites. The auction was the first-ever competitive lease sale for renewable energy in federal waters in the U.S.
Deepwater Wind plans to use the 164,750 acres granted in the leases to develop the Deepwater Wind Energy Center, a utility-scale wind farm of up to 200 turbines with a regional transmission system linking Long Island, N.Y to southeastern New England.
According to Deepwater, the project will have a capacity of up to 1,000 MW, with construction possibly beginning as early as 2017 and commercial operation beginning in 2018. Most turbines will be located 20 to 25 miles from the nearest landfall, and no turbine will be located closer than roughly 13 miles from land.
Deepwater Wind will pay annual rent payments of around $500,000 beginning this year until a wind farm is operational on the site, at which time the company will pay the federal government an annual royalty fee based on the value of the power produced by the project.
According to the U.S. Department of the Interior, the auction was the result of a "coordinated strategic plan to accelerate the development of offshore wind resources." The department has also approved 46 wind, solar and geothermal utility-scale projects on thermal land since 2009, which could provide more than 12,700 MW of power capacity when built.
Three companies participated in the auction, with Deepwater Wind outbidding Sea Breeze Energy LLC and US Wind Inc. The U.S. Attorney General, in consultation with the Federal Trade commission, will have 30 days to complete an antitrust review of the auction, after which the Bureau of Ocean Energy Management will send Deepwater Wind unsigned copies of the lease forms. Each lease will have a preliminary term of six months in which to submit a Site Assessment Plan to BOEM for approval, and 4.5 years to submit a Construction and Operations Plan after the Site Assessment Plan is approved.
The next competitive lease sale for offshore wind power sites, which will auction nearly 112,800 acres offshore Virginia, will be on Sept. 4, and the BOEM is expected to announce additional auctions for areas offshore Massachusetts, Maryland and New Jersey later this year.
Read more wind energy news
ENGIE announces beginning of work at fifth Texas wind farm
Sempra nets $2.5B in exit from U.S. renewables and gas storage biz


WordPress is a free and open source content management system (CMS) developed on PHP and MySQL. You can use wordpress to create your own website or blog without programming knowledge. It has many features including plug-in architecture and template system. WordPress is used by over 15% of "top 1 million" websites and is currently the most popular blogging system in use.
We cover each and every aspect of WordPress which are listed below.


Finding Women Who Really 'Have Your Back' And Let You Be YOU!
When we heard about Carolyn Hidalgo's Soul Sister Club, we wanted her to share the details of her intriguing concept. After you finish reading her essay, let us know if you'd like to become a Soul Sister.
Have you ever wanted to dive deeper into conversation with a few fascinating women, who would encourage you to be yourself? Where nothing is off limits for discussion because you have a safe space to show up, mentally and emotionally. I've often thought how wonderful it would be to engage with life at a deeper level, and grow more fully, with the support and courage of other women who wouldn't judge me. I could bring the 'good, the bad, and the ugly' into the space, although I'd prefer to call it 'my whole beautiful unique soul'.
Last fall, I found myself working towards my goal to create sacred spaces for groups of three or four women, so they could develop together over a period of time. I'd call it Soul Sister Club. As a certified life coach, I longed to take my work in a more spiritual direction, but with an overall focus on our emotional, mental, and physical wellbeing. I wanted to explore what brings meaning, joy, and purpose to our lives.
I started my career as an accountant, but there wasn't too much meaning, joy, or purpose in that! It was practical, and gave me a decade of corporate experience that I don't regret, but it just wasn't me. My husband, on the other hand, is right at home in the corporate financial world, where he enjoys the constant challenges of being a VP in the automotive industry.
Reconnecting with my own inner spirit began after we had our first child, and I had no desire to juggle corporate life with raising my son.
Twin girls soon followed, and I was already seeking a new career. It wasn't a coincidence when I ran into a mom, who also was searching for something more after leaving her corporate job. Together, we joined a small group of women led by a life coach. It was my first experience intimately sharing all aspects of my life, and looking to have more joy, fulfillment, and direction.
Have I Been Living Under a Rock?
The kids, at last, are adults! You're no longer working from dawn till dusk. You finally have time to rest…yeah right! Insomnia is driving you crazy. Maybe it's menopause, your husband's snoring, a pee call, or worrying about your daughter's new boyfriend with the nose piercing.
We asked how many hours of sleep you get, and these are some of your best answers.
Adults 65+ Don't Want A Surprise Visitor Like This!
What's Up With You and Your 'Adult Kids'?
Carolyn Hidalgo, one of the most passionate women we know, is a self-relationship coach who dreams how wonderful the world would be if we could all live "judgement free." We'd love for you to answer Carolyn's questions (anonymously, of course) to help her see what matters most to us.
FOF SURVEY: How Much Do You Know About The Supplements You Take?


text:
Garage and CRAFT SALE
BE IN OUR HALLOWEEN PARADE
Clubhouse Card
Get the 1360 Binghamton Phone App
Listen to 1360 Binghamton on Alexa
1360 Binghamton on Alexa
Rumble Ponies
Bearcats
After Hours with Amy LawrenceAfter Hours with Amy Lawrence
Class of 2014 Binghamton University Athletics Hall of Fame Honored
Roger Neel
WNBF News/Roger Neel Photo
The 19th Annual Induction Ceremony for the Binghamton University Athletics Hall of Fame was held December 7 at the Events Center. Four individuals and a team were honored at an awards dinner following the Binghamton versus Penn men's basketball game. The new inductees were introduced and welcomed back to campus at halftime of the game.
Among those honored was tennis standout Zeynep Altinay from the Class of 2007. Altinay was a two-time America East Player of the Year, was a four-time America East All-Conference selection and was named the Binghamton University Athlete of the Year in 2004-05.
Also inducted was Joe Garbarino from the Class of 1958. Garbarino is second on the University's career-scoring average chart with 22 points per game. He was a two-time team MVP and captain as a senior and was selected as the school's Athlete of the Year in 1956-57.
Lacrosse player Kevin McKeown from the Class of 2006 also was honored. McKeown was one of the finest lacrosse players in the school's history. He received numerous awards during his career including America East Player of the Year in 2004, three-time America East All-Conference selection and a Scholar All-American in 2004.
Helene Thomas from the Class of 1985 also becomes a member of BU's Hall of Fame based on her basketball career. Thomas was a four-year starter and a three-time team MVP. She became the program's first 1,000 point career scorer and was named the University's Athlete of the Year in 1984-85.
For the first time ever, an entire team was inducted. The 1983-84 wrestling team finished 3rd at the NCAA Championship which is the highest national finish of any team in school history. Coached by Hall of Fame member Steve Erber, the Colonials as they were known then, produced six All-Americans and one national champion in Tom Pillari.
The Binghamton University Athletics Hall of Fame was established in 1996. It is designed to honor those who have distinguished themselves and the University through the intercollegiate athletics program.
Source: Class of 2014 Binghamton University Athletics Hall of Fame Honored
Categories: Articles, Binghamton University, Local News, Local Sports, News, Sports
Bearcats Men's Basketball Names Three New Coaches
Binghamton Business Listings
2019 CBS Sports Radio 1360 AM, Townsquare Media, Inc. All rights reserved.