text:
Robustly Testing Version Control at MozillaOctober 14, 2014 at 12:00 PM | categories: Mercurial, Mozilla | View Comments
Version control services and interaction with them play an important role at any company. Despite version control being a critical part of your infrastructure, my experience from working at a few companies and talking with others is that version control often doesn't get the testing love that other services do. Hooks get written, spot-tested by the author, and deployed. Tools that interact with version control often rely on behavior that may or may not change over time, especially when the version of your version control software is upgraded.
We've seen this pattern at Mozilla. Mercurial hooks and extensions were written and deployed to the server without test coverage. As a result, things break when we try to upgrade the server. This happens a few times and you naturally develop an attitude of fear, uncertainty, and doubt around touching anything on the server (or the clients for that matter). If it isn't broken, why fix it prevails for months or years. Then one an enthusiastic individual comes around wanting to deploy some hot new functionality. You tell them the path is arduous because the server is running antiquated versions of software and nothing is tested. The individual realizes the amazing change isn't worth the effort and justifiably throws up their hands and gives up. This is almost a textbook definition of how not having test coverage can result in technical debt. This is the position Mozilla is trying to recover from.
One of the biggest impacts I've had since joining the Developer Services Team at Mozilla a little over a month ago has been changing the story about how we test version control at Mozilla.
I'm proud to say that Mozilla now has a robust enough testing infrastructure in place around our Mercurial server that we're feeling pretty good about silencing the doubters when it comes to changing server behavior. Here's how we did it.
The genesis of this project was likely me getting involved with the hg-git and Mercurial projects. For hg-git, I learned a bit about Mercurial internals and how extensions work. When I looked at Mercurial extensions and hooks used by Mozilla, I started to realize what parts were good and what parts were bad. I realized what parts would likely break after upgrades. When I started contributing patches to Mercurial itself, I took notice of how Mercurial is tested. When I discovered T Tests, I thought, wow, that's pretty cool: we should use them to test Mozilla's Mercurial customizations!
After some frustrations with Mercurial extensions breaking after Mercurial upgrades, I wanted to do something about it to prevent this from happening again. I'm a huge fan of unified repositories. So earlier this year, I reached out to the various parties who maintain all the different components and convinced nearly everyone that establishing a single repository for all the version control code was a good idea. The version-control-tools repository was born. Things were slow at first. It was initially pretty much my playground for hosting Mercurial extensions that I authored. Fast forward a few months, and the version-control-tools repository now contains full history imports of our Mercurial hooks that are deployed on hg.mozilla.org, the templates used to render HTML on hg.mozilla.org, and pretty much every Mercurial extension authored by Mozillians, including pushlog. Having all the code in one repository has been very useful. It has simplified server deployments: we now pull 1 repository instead of 3. If there is a dependency between different components, we can do the update atomically. These are all benefits of using a single repository instead of N>1.
While version-control-tools was still pretty much my personal playground, I introduced a short script for running tests. It was pretty basic: just find test files and invoke them with Mercurial's test harness. It served my needs pretty well. Over time, as more and more functionality was rolled into version-control-tools, we expanded the scope of the test harness.
We can now run Python unit tests (in addition to Mercurial .t tests). Test all of the things!
We set up continuous integration with Jenkins so tests run after check-in and alert us when things fail.
We added code coverage so we can see what is and isn't being tested. Using code coverage data, we've identified a server upgrade bug before it happens. We're also using the data to ensure that code is tested as thoroughly as it needs to be. The code coverage data has been invaluable at assessing the quality of our tests. I'm still shocked that Firefox developers tolerate not having JavaScript code coverage when developing Firefox features. (I'm not saying code coverage is perfect, merely that it is a valuable tool in your arsenal.)
We added support for running tests against multiple versions of Mercurial. We even test the bleeding edge of Mercurial so we know when an upstream Mercurial change breaks our code. So, no more surprises on Mercurial release day. I can tell you today that we have a handful of extensions that are broken in Mercurial 3.2, due for release around November 1. (Hopefully we'll fix them before release.)
We have Vagrant configurations so you can start a virtual machine that runs the tests the same way Jenkins does.
The latest addition to the test harness is the ability to spin up Docker containers as part of tests. Right now, this is limited to running Bugzilla during tests. But I imagine the scope will only increase over time.
Before I go on, I want to quickly explain how amazing Mercurial's .t tests are. These are a flavor of tests used by Mercurial and the dominant form of new tests added to the version-control-tools repository. These tests are glorified shell scripts annotated with expected command output and other metadata. It might be easier to explain by showing. Take bzpost's tests as an example. The bzpost extension automatically posts commit URLs to Bugzilla during push. Read more if you are interested. What I like so much about .t tests is that they are actually testing the user experience. The test actually runs hg push and verifies the output is exactly what is intended. Furthermore, since we're running a Dockerized Bugzilla server during the test, we're able to verify that the bzpost extension actually resulted in Bugzilla comments being added to the appropriate bug(s). Contrast this with unit tests that only test a subset of functionality. Or, contrast with writing a lot of boilerplate and often hard-to-read code that invokes processes and uses regular expressions, etc to compare output. I find .t tests are more concise and they do a better job of testing user experience. More than once I've written a .t test and thought this user experience doesn't feel right, I should change the behavior to be more user friendly. This happened because I was writing actual end-user commands as part of writing tests and seeing the exact output the user would see. It is much harder to attain this sense of understanding when writing unit tests. I can name a few projects with poor command line interfaces that could benefit from this approach... I'm not saying .t tests are perfect or that they should replace other testing methodologies such as unit tests. I just think they are very useful for accurately testing higher-level functionality and for assessing user experience. I really wish we had these tests for mach commands...
Anyway, with a proper testing harness in place for our version control code, we've been pretty good about ensuring new code is properly tested. When people submit new hooks or patches to existing hooks, we can push back and refuse to grant review unless tests are included. When someone requests a new deployment to the server, we can look at what changed, cross-reference to test coverage, and assess the riskiness of the deployment. We're getting to the point where we just trust our tests and server deployments are minor events. Concerns over accidental regressions due to server changes are waning. We can tell people if you really care about this not breaking, you need a test and if you add a test, we'll support it for you. People are often more than happy to write tests to ensure them peace of mind, especially when that test's presence shifts maintenance responsibility away from them. We're happy because we don't have many surprises (and fire drills) at deployment time. It's a win-win!
So, what's next? Good question! We still have a number of large gaps in our test coverage. Our code to synchronize repositories from the master server to read-only slaves is likely the most critical omission. We also don't yet have a good way of reproducing our server environment. Ideally, we'd run the continuous integration in an environment that's very similar to production. Same package versions and everything. This would also allow us to simulate the actual hg.mozilla.org server topology during tests. Currently, our tests are more unit-style than integration-style. We rely on the consistent behavior of Mercurial and other tools as sufficient proxies for test accuracy and we back those up with running the tests on the staging server before production deployment. But these aren't a substitute for an accurate reproduction of the production servers, especially when it comes to things like the replication tests. We'll get there some day. I also have plans to improve Mercurial's test harness to better facilitate some of our advanced use cases. I would absolutely love to make Mercurial's .t test harness more consumable outside the context of Mercurial. (cram is one such attempt at this.) We also need to incorporate the Git server code into this repository. Currently, I'm pretty sure everything Git at Mozilla is untested. Challenge accepted!
In summary, our story for testing version control at Mozilla has gone from a cobbled together mess to something cohesive and comprehensive. This has given us confidence to move fast without breaking things. I think the weeks of people time invested into improving the state of testing was well spent and will pay enormous dividends going forward. Looking back, the mountain of technical debt now looks like a mole hill. I feel good knowing that I played a part in making this change.
Deterministic and Minimal Docker ImagesOctober 13, 2014 at 04:50 PM | categories: sysadmin, Docker, Mozilla | View Comments
Docker is a really nifty tool. It vastly lowers the barrier to distributing and executing applications. It forces people to think about building server side code as a collection of discrete applications and services. When it was released, I instantly realized its potential, including for uses it wasn't primary intended for, such as applications in automated build and test environments.
Over the months, Docker's feature set has grown and many of its shortcomings have been addressed. It's more usable than ever. Most of my early complaints and concerns have been addressed or are actively being addressed.
But one supposedly solved part of Docker still bothers me: image creation.
One of the properties that gets people excited about Docker is the ability to ship execution environments around as data. Simply produce an image once, transfer it to a central server, pull it down from anywhere, and execute. That's pretty damn elegant. I dare say Docker has solved the image distribution problem. (Ignore for a minute that the implementation detail of how images map to filesystems still has a few quirks to work out. But they'll solve that.)
The ease at which Docker manages images is brilliant. I, like many, was overcome with joy and marvelled at how amazing it was. But as I started producing more and more images, my initial excitement turned to frustration.
The thing that bothers me most about images is that the de facto and recommended method for producing images is neither deterministic nor results in minimal images. I strongly believe that the current recommended and applied approach is far from optimal and has too many drawbacks. Let me explain.
If you look at the Dockerfiles from the official Docker library (examples: Node, MySQL), you notice something in common: they tend to use apt-get update as one of their first steps. For those not familiar with Apt, that command will synchronize the package repository indexes with a remote server. In other words, depending on when you run the command, different versions of packages will be pulled down and the result of image creation will differ. The same thing happens when you clone a Git repository. Depending on when you run the command - when you create the image - you may get different output. If you create an image from scratch today, it could have a different version of say Python than it did the day before. This can be a big deal, especially if you are trying to use Docker to accurately reproduce environments.
This non-determinism of building Docker images really bothers me. It seems to run counter to Docker's goal of facilitating reliable environments for running applications. Sure, one person can produce an image once, upload it to a Docker Registry server, and have others pull it. But there are applications where independent production of the same base image is important.
One area is the security arena. There are many people who are justifiably paranoid about running binaries produced by others and pre-built Docker images set off all kinds of alarms. So, these people would rather build an image from source, from a Dockerfile, than pull binaries. Except then they build the image from a Dockerfile and the application doesn't run because of an incompatibility with a new version of some random package whose version wasn't pinned. Of course, you probably lost numerous hours tracing down this obscure reason. How frustrating! Determinism and verifiability as part of Docker image creation help solve this problem.
Deterministic image building is also important for disaster recovery. What happens if your Docker Registry and all hosts with copies of its images go down? If you go to build the images from scratch again, what guarantee do you have that things will behave the same? Without determinism, you are taking a risk that things will be different and your images won't work as intended. That's scary. (Yes, Docker is no different here from existing tools that attempt to solve this problem.)
What if your open source product relies on a proprietary component that can't be legally distributed? So much for Docker image distribution. The best you can do is provide a base image and instructions for completing the process. But if that doesn't work deterministically, your users now have varying Docker images, again undermining Docker's goal of increasing consistency.
My other main concern about Docker images is that they tend to be large, both in size and in scope. Many Docker images use a full Linux install as their base. A lot of people start with a base e.g. Ubuntu or Debian install, apt-get install the required packages, do some extra configuration, and call it a day. Simple and straightforward, yes. But this practice makes me more than a bit uneasy.
One of the themes surrounding Docker is minimalism. Containers are lighter than VMs; just ship your containers around; deploy dozens or hundreds of containers simultaneously; compose your applications of many, smaller containers instead of larger, monolithic ones. I get it and am totally on board. So why are Docker images built on top of the bloaty excess of a full operating system (modulo the kernel)? Do I really need a package manager in my Docker image? Do I need a compiler or header files so I can e.g. build binary Python extensions? No, I don't, thank you.
As a security-minded person, I want my Docker images to consist of only the files they need, especially binary files. By leaving out non-critical elements from your image and your run-time environment, you are reducing the surface area to attack. If your application doesn't need a shell, don't include a shell and don't leave yourself potentially vulnerable to shellshock. I want the attacker who inevitably breaks out of my application into the outer container to get nothing, not something that looks like an operating system and has access to tools like curl and wget that could potentially be used to craft a more advanced attack (which might even be able to exploit a kernel vulnerability to break out of the container). Of course, you can and should pursue additional security protections in addition to attack surface reduction to secure your execution environment. Defense in depth. But that doesn't give Docker images a free pass on being bloated.
Another reason I want smaller containers is... because they are smaller. People tend to have relatively slow upload bandwidth. Pushing Docker images that can be hundreds of megabytes clogs my tubes. However, I'll gladly push 10, 20, or even 50 megabytes of only the necessary data. When you factor in that Docker image creation isn't deterministic, you also realize that different people are producing different versions of images from the same Dockerfiles and that you have to spend extra bandwidth transferring the different versions around. This bites me all the time when I'm creating new images and am experimenting with the creation steps. I tend to bypass the fake caching mechanism (fake because the output isn't deterministic) and this really results in data explosion.
I understand why Docker images are neither deterministic nor minimal: making them so is a hard problem. I think Docker was right to prioritize solving distribution (it opens up many new possibilities). But I really wish some effort could be put into making images deterministic (and thus verifiable) and more minimal. I think it would make Docker an even more appealing platform, especially for the security conscious. (As an aside, I would absolutely love if we could ship a verifiable Firefox build, for example.)
These are hard problems. But they are solvable. Here's how I would do it.
First, let's tackle deterministic image creation. Despite computers and software being ideally deterministic, building software tends not to be, so deterministic image creation is a hard problem. Even tools like Puppet and Chef which claim to solve aspects of this problem don't do a very good job with determinism. Read my post on The Importance of Time on Machine Provisioning for more on the topic. But there are solutions. NixOS and the Nix package manager have the potential to be used as the basis of a deterministic image building platform. The high-level overview of Nix is that the inputs and contents of a package determine the package ID. If you know how Git or Mercurial get their commit SHA-1's, it's pretty much the same concept. In theory, two people on different machines start with the same environment and bootstrap the exact same packages, all from source. Gitian is a similar solution. Although I prefer Nix's content-based approach and how it goes about managing packages and environments. Nix feels so right as a base for deterministically building software. Anyway, yes, fully verifiable build environments are turtles all the way down (I recommend reading Tor's overview of the problem and their approach. However, Nix's approach addresses many of the turtles and silences most of the critics. I would absolutely love if more and more Docker images were the result of a deterministic build process like Nix. Perhaps you could define the full set of packages (with versions) that would be used. Let's call this the package manifest. You would then PGP sign and distribute your manifest. You could then have Nix step through all the dependencies, compiling everything from source. If PGP verification fails, compilation output changes, or extra files are needed, the build aborts or issues a warning. I have a feeling the security-minded community would go crazy over this. I know I would.
OK, so now you can use Nix to produce packages (and thus images) (more) deterministically. How do you make them minimal? Well, instead of just packaging the entire environment, I'd employ tools like makejail. The purpose of makejail is to create minimal chroot jail environments. These are very similar to Docker/LXC containers. In fact, you can often take a tarball of a chroot directory tree and convert it into a Docker container! With makejail, you define a configuration file saying among other things what binaries to run inside the jail. makejail will trace file I/O of that binary and copy over accessed files. The result is an execution environment that (hopefully) contains only what you need. Then, create an archive of that environment and pipe it into docker build to create a minimal Docker image.
In summary, Nix provides you with a reliable and verifiable build environment. Tools like makejail pair down the produced packages into something minimal, which you then turn into your Docker image. Regular people can still pull binary images, but they are much smaller and more in tune with Docker's principles of minimalism. The paranoid among us can produce the same bits from source (after verifying the inputs look credible and waiting through a few hours of compiling). Or, perhaps the individual files in the image could be signed and thus verified via trust somehow? The company deploying Docker can have peace of mind that disaster scenarios resulting in Docker image loss should not result in total loss of the image (just rebuild it exactly as it was before).
You'll note that my proposed solution does not involve Dockerfiles as they exist today. I just don't think Dockerfile's design of stackable layers of commands is the right model, at least for people who care about determinism and minimalism. You really want a recipe that knows how to create a set of relevant files and some metadata like what ports to expose, what command to run on container start, etc and turn that into your Docker image. I suppose you could accomplish this all inside Dockerfiles. But that's a pretty radical departure from how Dockerfiles work today. I'm not sure the two solutions are compatible. Something to think about.
I'm pretty sure of what it would take to add deterministic and verifiable building of minimal and more secure Docker images. And, if someone solved this problem, it could be applicable outside of Docker (again, Docker images are essentially chroot environments plus metadata). As I was putting the finishing touches on this article, I discovered nix-docker. It looks very promising! I hope the Docker community latches on to these ideas and makes deterministic, verifiable, and minimal images the default, not the exception.
Mozilla Mercurial StatisticsSeptember 30, 2014 at 01:17 PM | categories: Mercurial, Mozilla | View Comments
I recently gained SSH access to Mozilla's Mercurial servers. This allows me to run some custom queries directly against the data. I was interested in some high-level numbers and thought I'd share the results.
hg.mozilla.org hosts a total of 3,445 repositories. Of these, there are 1,223 distinct root commits (i.e. distinct graphs). Altogether, there are 32,123,211 commits. Of those, there are 865,594 distinct commits (not double counting commits that appear in multiple repositories).
We have a high ratio of total commits to distinct commits (about 37:1). This means we have high duplication of data on disk. This basically means a lot of repos are clones/forks of existing ones. No big surprise there.
What is surprising to me is the low number of total distinct commits. I was expecting the number to run into the millions. (Firefox itself accounts for ~240,000 commits.) Perhaps a lot of the data is sitting in Git, Bitbucket, and GitHub. Sounds like a good data mining expedition...
On Monolithic RepositoriesSeptember 09, 2014 at 10:00 AM | categories: Git, Mercurial, Mozilla | View Comments
When companies or organizations deploy version control, they have to make many choices. One of them is how many repositories to create. Your choices are essentially a) a single, monolithic repository that holds everything b) many separate, smaller repositories that hold all the individual parts c) something in between.
The prevailing convention today (especially in the open source realm) is to create many separate and loosely coupled repositories, each repository mapping to a specific product or service. That does seem reasonable: if you were organizing files on your filesystem, you would group them by functionality or role (photos, music, documents, etc). And, version control tools are functionally filesystems. So it makes sense to draw repository boundaries at directory/role levels.
Further reinforcing the separate repository convention is the scaling behavior of our version control tools. Git, the popular tool in open source these days, doesn't scale well to very large repositories due to - among other things - not having narrow clones (fetching a subset of files). It scales well enough to the overwhelming majority of projects. But if you are a large organization generating lots of data (read: gigabytes of data over hundreds of thousands of files and commits) for version control, Git is unsuitable in its current form. Other tools (like Mercurial) don't currently fare that much better (although Mercurial has plans to tackle these scaling vectors).
Despite popular convention and even limitations in tools, companies like Google and Facebook opt to run large, monolithic repositories. Google runs Perforce. Facebook is on Mercurial, or at least is in the process of migrating to Mercurial.
Why do these companies run monolithic repositories? In Google's words:
We have a single large depot with almost all of Google's projects on it. This aids agile development and is much loved by our users, since it allows almost anyone to easily view almost any code, allows projects to share code, and allows engineers to move freely from project to project. Documentation and data is stored on the server as well as code.
So, monolithic repositories are all about moving fast and getting things done more efficiently. In other words, monolithic repositories increase developer productivity.
Furthermore, monolithic repositories are also more compatible with the ebb and flow of large organizations and large software projects. Components, features, products, and teams come and go, merge and split. The only constant is change. And if you are maintaining separate repositories that attempt to map to this ever-changing organizational topology, you are going to have a bad time. Either you'll be constantly copying, moving, merging, splitting, etc data and repositories. Or your repositories will be organized in a very non-logical and non-intuitive manner. That translates to overhead and lost productivity. I think that monolithic repositories handle the realities of large organizations much better. Big change or reorganization you want to reflect? You can make a single, atomic, history-preserving commit to move things around. I think that's much more manageable, especially when you consider the difficulty and annoyance of history-preserving changes across repositories.
Naysayers will decry monolithic repositories on principled and practical grounds.
The principled camp will say that separate repositories constitute a loosely coupled (dare I say service oriented) architecture that maps better to how software is consumed, assembled, and deployed and that erecting barriers in the form of separate repositories deliberately enforces this architecture. I agree. However, you can still maintain a loosely coupled architecture with monolithic repositories. The Subversion model of checking out a single tree from a larger repository proves this. Furthermore, I would say architecture decisions should be enforced by people (via code review, etc), not via version control repository topology. I believe this principled argument against monolithic repositories to be rather weak.
The principled camp living in the open source realm may also decry monolithic repositories as an affront to the spirit of open source. They would say that a monolithic repository creates unfairly strong ties to the organization that operates it and creates barriers to forking, etc. This may be true. But monolithic repositories don't intrinsically infringe on the basic software freedoms, organizations do. Therefore, I find this principled argument rather weak.
The practical camp will say that monolithic repositories just don't scale or aren't suitable for general audiences. These concerns are real.
Fully distributed version control systems (every commit on every machine) definitely don't scale past certain limits. Depending on your repository and user base, your scaling limits include disk space (repository data terabytes in size), bandwidth (repository data terabytes in size), filesystem (repository hundreds of thousands or millions of files), CPU and memory (operations on large repositories take too many system resources), and many heads/branches (tools like Git and Mercurial don't scale well to tens of thousands of heads/branches). These limitations with fully distributed version control are why distributed version control tools like Git and Mercurial support a partially-distributed mode that behaves more like your classical server-client model, like those employed by Subversion, Perforce, etc. Git supports shallow clone and sparse checkout. Mercurial supports shallow clone (via remotefilelog) and has planned support for narrow clone and sparse checkout in the next release or two. Of course, you can avoid the scaling limitations of distributed version control by employing a non-distributed tool, such as Subversion. Many companies continue to reach this conclusion today. However, users adapted to the distributed workflow would likely be up in arms (they would probably use tools like hg-subversion or git-svn to maintain their workflows). So, while scaling of version control can be a real concern, there are solutions and workarounds. However, they do involve falling back to a partially-distributed model.
Another concern with monolithic repositories is user access control. You inevitably have code or data that is more sensitive and want to limit who can change or even access it. Separate repositories seem to facilitate a simpler model: per-repository access control. With monolithic repositories, you have to worry about per-directory/subtree permissions, an increased risk of data leaking, etc. This concern is more real with distributed version control, as distributed data and access control aren't naturally compatible. But these issues can be resolved. And if the tooling supports it, there is only a semantic difference between managing access control between repositories versus components of a single repository.
When it comes to repository hosting conversions, I agree with Google and Facebook: I prefer monolithic repositories. When I am interacting with version control, I just want to get stuff done. I don't want to waste time dealing with multiple commands to manage multiple repositories. I don't want to waste time or expend cognitive load dealing with submodule, subrepository, or big files management. I don't want to waste time trying to find and reuse code, data, or documentation. I want everything at my fingertips, where it can be easily discovered, inspected, and used. Monolithic repositories facilitate these workflows more than separate repositories and make me more productive as a result.
Now, if only all the tools and processes we use and love would work with monolithic repositories...
Reproducing Mozilla's Mercurial ServerSeptember 05, 2014 at 02:50 PM | categories: Mercurial, Mozilla | View Comments
Of of my first tasks in my new role as a Developer Productivity Engineer is to help make Mozilla's Mercurial server better. Many of the awesome things we have planned rely on features in newer versions of Mercurial. It's therefore important for us to upgrade our Mercurial server to a modern version (we are currently running 2.5.4) and to keep our Mercurial server upgraded as time passes.
There are a few reasons why we haven't historically upgraded our Mercurial server. First, as anyone who has maintained high-availability systems will tell you, there is the attitude of if it isn't broken, don't fix it. In other words, Mercurial 2.5.4 is working fine, so why mess with a good thing. This was all fine and dandy - until Mercurial started falling over in the last few weeks.
But the blocker towards upgrading that I want to talk about today is systems verification. There has been extreme caution around upgrading Mercurial at Mozilla because it is a critical piece of Mozilla's infrastructure and if the upgrade were to not go well, the outage would be disastrous for developer productivity and could even jeopardize an emergency Firefox release.
As much as I'd like to say that a modern version of Mercurial on the server would be a drop-in replacement (Mercurial has a great committment to backwards compatibility and has loose coupling between clients and servers such that upgrading servers should not impact clients), there is always a risk that something will change. And that risk is compounded by the amount of custom code we have running on our server.
The way you protect against unexpected changes is testing. In the ideal world, you have a robust test suite that you run against a staging instance of a service to validate that any changes have no impact. In the absence of testing, you are left with fear, uncertainty, and doubt. FUD is an especially horrible philosophy when it comes to managing servers.
Unfortunately, we don't really have a great testing infrastructure for Mozilla's Mercurial server. And I want to change that.
Reproducing the Server Environment
When writing tests, it is important for the thing being tested to be as similar as possible to the real thing. This is why so many people have an aversion to mocking: every time you alter the test environment, you run the risk that those differences from reality will mask changes seen in the real environment.
So, it makes sense that a good first goal for creating a test suite against our Mercurial server should be to reproduce the production server and environment as closely as possible.
I'm currently working on a Vagrant environment that attempts to reproduce the official environment as closely as possible. It starts one virtual machine for the SSH/master server. It starts a separate virtual machine for the hgweb/slave servers. The virtual machines are booting CentOS. This is different than production, where we run RHEL. But they are similar enough (and can share the same packages) that the differences shouldn't matter too much, at least for now.
Using Puppet
In production, Mozilla is using Puppet to manage the Mercurial servers. Unfortunately, the actual Puppet configs that Mozilla is running are behind a firewall, mainly for security reasons. This is potentially a huge setback for my reproducibility effort, as I'd like to have my virtual machines use the same exact Puppet configs as whats used in production so the environments match as closely as possible. This would also save me a lot of work from having to reinvent the wheel.
Fortunately, Ben Kero has extracted the Mercurial-relevant Puppet config files into a standalone repository. Apparently that repository gets rolled into the production Puppet configs periodically. So, my virtual machines and production can share the same Mercurial Puppet files. Nice!
It wasn't long after starting to use the standalone Puppet configs that I realized this would be a rabbit hole. This first manifests in the standalone Puppet code referencing things that exist in the hidden Mozilla Puppet files. So the liberation was only partially successful. Sad panda.
So, I'm now in the process of creating a fake Mozilla Puppet environment that mimics the base Mozilla environment (from the closed repo) and am modifying the shared Puppet Mercurial code to work with both versions. This is a royal pain, but it needs to be done if we want to reproduce production and maintain peace of mind that test results reflect reality.
Because reproducing runtime environments is important for reproducing and solving bugs and for testing, I call on the maintainers of Mozilla's closed Puppet repository to liberate it from behind its firewall. I'd like to see a public Puppet configuration tree available for all to use so that anyone anywhere can reproduce the state of a server or service operated by Mozilla to within reasonable approximation. Had this already been done, it would have saved me hours of work. As it stands, I'm reverse engineering systems and trying to cobble together understanding of how the Mozilla Puppet configs work and what parts of them can safely be ignored to reproduce an approximate testing environment.
Along that vein, I finally got access to Mozilla's internal Puppet repository. This took a few meetings and apparently a lot of backroom chatter was generated - "developer's don't normally get access, oh my!" All I wanted was to see how systems are configured so I can help improve them. Instead, getting access felt like pulling teeth. This feels like a major roadblock towards productivity, reproducibility, and testing.
Facebook gives its developers access to most production machines and trusts them to not be stupid. I know we (Mozilla) like to hold ourselves to a high standard of security and privacy. But not giving developers access to the configurations for the systems their code runs on feels like a very silly policy. I hope Mozilla invests in opening up this important code and data, if not to the world, at least to its trusted employees.
Anyway, hopefully I'll soon have a Vagrant environment that allows people to build a standalone instance of Mozilla's Mercurial server. And once that's in place, I can start writing tests that basic services and workflows (including repository syncing) work as expected. Stay tuned.
« Previous Page -- Next Page »


text:
Please login to get more out of this site
You are currently not logged in, do so now to add comments, like articles as well as photos, submit to competitions, translate articles and gain access to unlimited photo upload! If you are not registered yet, go here to find out more about Lomography and join now! If you just want a limited account for now you can use Twitter or Facebook. We would love to have you as a member here!
128 people like this photo
Liking photos helps us to present the best ones to you and others. 128 people like this photo. 128 people like this photo: heyfrida, fadjaradiputra, remyleblanc, aliceinchains, sadiestoker, eusonfeliz, alloftheabove, felipemendes, mightymouse, ucinz, bomboniera, _melina, vzh, jahwil, freakoftheweek, urlaub, darwin1974, headonthegrass, rene4, mojo_lomo, maggie_m, v3ml, jelencitta, litleandi, lucaro, gotoarizona, bloodstained, tall_bastard, patorayado, triky76, cryboy, andreiadec, mcrstar, shazoo666, gatokinetik-o, ohoska, meryl, abbsterocity, trincheiras, cocaneonkamerasutra, jezzyjung, ajaxattack, camielioo, z790406, clickiemcpete, bombuzaka, kostas, maduz, sebastianerras, diana3009, badjuju, psyhe, lola_b, ryszardl70, calfaroz, kathepalacio, simonesavo, andrus_n, maelae, pearlgirl77, zulupt, 134340, 129, icomewhenieatcaponata, the_abominable_duckman, robter, naiseta, nicoloboy, grazie, blueskyandhardrock, winterschlaefer, litumai, growmanfrenchy, mrmostarr, sunshaman, icarus13, aanum, gorics, catarinasalgado, paulm99, deprofundis, dida, lostlittlekid, lil_secret, clownshoes, incaseofhate, t-rav, modern_nmt, pzzzenguin, j_lamego, goonies, jolgio-lion-cafe, juano, pearlmsqueaks, tikismeekis, emkei, ehmahh, elelostdog, tsingtao, chourique, poepel, mikahsupageek, sizer77, _haustor, cpolpa, disdis, guanatos, oskar73, dreamseller, ironsymphony, mafiosa, adi_totp, psit, guinastrapazi, kangiha, guaguito, ripsta, kae, dakadev_pui, weleasewoger72, opon21, jetnz81, sobetion, guztanova, endorphin, allanbendiksen, stecha, and rik041.
4 comments
Congratulations ka.
wow, this photo is really something special.. the colors are just awesome.. and the shapes.. :)
i like it, very much indeed! :)
@guztanova ขอบคุณครับ @guinastrapazi thank you :D
love the vintage color!
Where is this?
Nearby popular photos – see more
Nearby LomoLocations
Wat Phra Kaew (Temple of the Emerald Buddha)
Upon entering the most sacred temple in Thailand, you will be overwhelmed by its ornate gran…
Hello Bangkok City
Bangkok was our first stop in the land of the smiles. It is the main capital of Thailand wit…
Wat Pho (Temple of the Reclining Buddha)
A visit to the 'City of Angels' is incomplete without beholding the divine awesomeness of Ph…
Reflections Hotel (Bangkok)
This is a totally different kind of hotel to stay in. A Boutique hotel, that's what is calle…

subset: commoncrawl


text:
Group Members:
Kenny-Leader(He is so alive!)
Lilly-Will return
Carley/Doug-They are so not dead!!!!!!!!!!!!!!!!!!!
Group Members:
Kenny-Leader(He is so alive!)
Lilly-Will return
Carley/Doug-They are so not dead!!!!!!!!!!!!!!!!!!!
Well, unless I see a body, then that person's still alive. The only people I'm fairly certain who will at least make an appearance are Christa, Omid, and Clem. Vernon's off to, well, who knows with OUR boat, Molly is still likely in Savannah, Lilly is probably on her own somewhere and not in the mood to make any new friends, and the last time we saw Kenny...well...
Of course, just because we didn't see a body doesn't mean that they're alive, so I won't put high odds on anyone who wasn't part of the main group for more than an episode, and also with us in Episode 5, being seen as anything more than a walker chew toy at some point, if they appear at all.
Here's my theory:
I think the Shadows weren't Omid and Christa, but the new protagonist and a companion from the beginning of Season 2, and they stumble upon Clem, who relates her story (and remembers everything my Lee taught her).
I think that Omid and Christa did make it back to the train and holed up in the boxcar for a while to regroup (I sent them there rather than the fruitless endeavor of trying to find a boat), but once no one met them there they decided to make their own way. I think we'll meet up with them sometime during Season 2, but I don't think it'll be right off.
Molly may make another appearance. Now that she knows there's nothing in Crawford, she'll keep sneaking in for supplies for a while, but that'll run out eventually and she'll have to make a move too. But she's flighty, she'll leave again - I don't see her as being a major part of Season 2.
So far as Vernon goes - they deserve to starve out in the Gulf of Mexico for leaving us high and dry like that. Yeah, I know, I'm mean.
As for Kenny... that's hard. I would LOVE, however, to see him turn up, covered from head to toe in Walker blood. It's unlikely, and after everything he's gone through he may not have the will to live anymore, but maybe he made it through.
I agree with some of the others: if I didn't see a corpse, there's a chance that person made it. If I did see a corpse but that corpse didn't have it's head bashed in or brains blown out, there's a chance we'll see them as a walker. I didn't have Clem shoot Lee, so there's a walker Lee chained to a radiator in my world. I think I'd feel bad if I have to bash in Lee's brains in Season 2, but you have to do what you have to do to try to survive.
I hope beyond hope that the new protagonist is as likeable as Lee. The way I played Lee was that he had demons in his past but he was a good person and had regrets. And besides, once the Zombie apocalypse started, the past kind of stayed in the past (although I got my butt chewed a few times for getting caught in lies). I would like to see the new protagonist as just another average person caught in this and learning the skills needed to survive based on the world they now exist in. I don't want it to be a current character, because I don't want an established character's back story (and the experiences they had with me as Lee) to affect the choices I make.
I hope we see Kenny dead like we did Chuck. That would make me super happy.
That is all.
I still feel that Kenny's end was meant to be ambiguous enough for people to fill in the blanks in the way they saw fit.
I'd like to think that season two will tank on a totally different variety of people and this will be fore another couple seasons until we reach a final one where they all meet for the last stand :)
@Bioshock Infinite WD said: I just hope it's good, being better then Season 1 is almost impossible.
"Now there's a statement i can get behind." -Kenny
I think they could pull it off. I didn't expect a game would ever make me care so much about its characters, yet this little gem popped up and proved me wrong.
I'm sure they'll do a good job for season 2. I'm not even a fan of the zombie genre of entertainment, and this game made me think how things would play out if an outbreak happened.
I expect in to be good, it getting game of the year awards is unlikely due to all the major releases, but I would be happy enough for in to be just nominated.
@Domingez said: Tyresse had a hammer, Kenny had only one bullet in the chamber and walkers from both side chances are slim he got out, but maybe if you saved some bullets for Kenny then maybe...
yeah, but ty was a bit bigger and stronger ( and prolly smarter ) than kenny, not to mention hellbent


text:
The NFL world descends upon Indianapolis for the next week as the annual Combine takes place. Here are some things Lions fans will want to pay some mind during the proceedings.
Posts Tagged 'Marquise Goodwin'
10 Things for Lions Fans to Watch at the Combine
Thursday, February 21st, 2013
Senior Bowl Notebook: North Squad Day One
Monday, January 21st, 2013
Jeff Risdon, DLD Editor
The first day is all about the QBs, WRs, TEs, and DBs.
The North QBs are Zac Dysert, Ryan Nassib, and Mike Glennon. All three are widely seen as potential first round talents, but that was not very evident today.
Recent Posts
Lions vs. Bears: Six Hidden Matchups
Tuesday Night Prospect Review: Northern Illinois vs. Ohio
Miami vs Florida St. Scouting Review
Six Hidden Match Ups between the Detroit Lions and the Arizona Cardinals
Auburn vs Georgia Scouting Preview
Prospect Battle: Spain vs. Kouandjio
- NFL Draft (470)
- Scouting Reports (317)
Search DETLD Archives


text:
Speak with a Hat Expert
Se Habla Español
Heritage Collection 1960s Jackie Pillbox Hat
|Made in the USA The Jackie is a neat, stylish pillbox hat with a slightly recessed telescope crown and a brushed finish. The small pillbox style hat allowed women to still enjoy beautiful headwear despite the large hairstyles that were in vogue at the time. THIS ITEM IS A FINAL SALE Approx. 3 1/2" crownApprox. 9" diameter Made of: 100% wool Custom Bollman satin liningCotton blend sweatband Hat box and certificate included. Size: One size fits most. Fits up to size 7 1/2 comfortably.
Heritage Collection 1910s Toque Hat
|Made in the USA Women's fashion demanded large hats with wide brims and broad hats with face-shadowing brims were the height of fashion before the outbreak of World War I . During the war, the styles gradually shrunk to smaller brimless hats like the Toque. This royal blue Toque features a brushed finish and a brooch that matches the style for the 1910 decade. THIS ITEM IS A FINAL SALE Made of: 100% wool Custom satin Bollman liningGrosgrain ribbon sweatbandDecorative pin Hat from top to bottom is -- 4.5 inches Diameter of hat is 22 3/4 inches. Side to side would be 6 inches. Hat box and certificate included. Size: One size fits most. Fits up to size 7 1/8 comfortably.
Heritage Collection 1940s Rosie Pillbox Hat
|Made in the USA The Rosie, like the icon of the same name, has uncomplicated, masculine elements blended with an air of feminine power. Many women still enjoyed fashionable attire during wartime, but while economic prosperity allowed for fancier designs, these were not overly ornamental pieces. The Rosie is a beautiful representation of the complex role of women in the 1940's. THIS ITEM IS A FINAL SALE Approx. 1 1/2" tall in frontApprox. 2 1/4" tall on sidesApprox. 3" tall in backApprox. 6 3/4" diameter Made of: 100% wool Custom satin Bollman liningGrosgrain ribbon sweatbandElastic strap Hat box and certificate included.Size: One size fits most. Fits up to size 7 1/8 comfortably.
INT'L: +1 619-906-4440 Se habla español
Shop for Hats at VillageHatShop.com | Privacy Policy | Site Map
Copyright © 1999-2014 Village Hat Shop: The #1 Source for Hats Online
Do You Have a Coupon?Enter Coupon Code Here:
Choose a Shipping Option


text:
BPL Community Profile
Andrew F (andrew.f) - BPL Premium Member
You cannot send this user a personal message (PM) because they have not specified a PM email address yet.
All Forum Posts by Andrew F
Showing 151 - 160 of 857 | Page: 1 ...7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 ...86
Re: Timing my East Sierra family hike
Bugs are mostly gone now, will be completely gone by the end of August. Usually the weather starts to become less stable and it gets colder around the end of September. October is a great time to g...
Re: Tenkara line management
Bill, I'm not a spin fisherman, but my understanding is things like Z-Rays and Panther Martins imitate small fish kind of like a wooly bugger fly would. The big fish certainly eat the smalle...
Re: SUL Thru-Hiking the Trans Catalina Trail
Great trip Andy! That looks like a really cool island.
Re: Re: Re: Tenkara vs Golden Trout
Justin, the easiest way to learn is to go fishing with someone who knows what they're doing. That's how I learned. I'm pretty busy until the end of September, but if we end up going on ...
Re: Re: Rae Lakes loop
I think the permit station at Road's End opens at 7:00 or 7:30. They usually start giving out permits at 11AM the day before. There are a number of first-come, first-served campgrounds near Roa...
Re: Re: Re: Bobwhite Packraft Loop
That shot of the crystal blue water of the South Fork is like river porn. Dave, you still insist on having a sign-in to comment on Wordpress? I've gone to comment a few times but the Faceboo...
Re: to bring water shoes or not to bring water shoes on the jmt
Definitely not necessary.
Re: Re: Re: Death by...
Re: Re: Re: Re: Re: Tenkara vs Golden Trout
Hey Justin, Marko gave some good answers to your questions. Sounds like all you need is some 5X tippet and a few flies - try flyshack.com or theflystop.com. I use an 11' rod. I bring a 1...
Re: Re: Re: Tenkara vs Golden Trout
Yes, the lemon tree was also very useful for the margaritas that went along with the trout.
All Reader Reviews by Andrew F
Showing 1 - 3 of 3 | Page: 1
zpacks Company
I had the same experience as everyone else here. Joe got me a customized piece of gear on time and was very responsive to my questions and requests. Can't do much better than that.
ULA Ohm
The Ohm is my go-to pack for trips that don't require a bear can. You can fit a Bearikade in it, but it's not very comfortable because it bulges into your back. I put a plastic frame sheet fro...
Katabatic Gear Alsek
See thread with pictures and comments here: http://www.backpackinglight.com/cgi-bin/backpackinglight/forums/thread_display.html?forum_thread_id=48962 I've used this quilt for about 20 nights no...


text:
Online dating brings singles together who may never otherwise meet. It's a big world and the SeniorPeopleMeet.com community wants to help you connect with singles in your area. Whether you are seeking just a date, a pen pal, a casual or a serious relationship, you can meet singles in Carson City today! Nevada is known as the "Silver State" and SeniorPeopleMeet.com is here to bring their Senior Singles together.Search Single Senior Men in Carson City | Search Single Senior Women in Carson City
Spring Creek singles
singles in Zephyr Cove
singles in Washoe Valley
Mesquite singles
singles Ely
Fallon singles
singles Minden
Yerington NV singles
Sparks singles
singles in Winnemucca
singles Laughlin
singles Boulder City
singles in Sun Valley
Pahrump NV singles
singles Las Vegas
Reno NV singles
singles in Henderson
Gardnerville singles
singles Silver Springs
singles in Dayton
North Las Vegas NV singles
singles in Incline Village
Carson City singles
Elko singles
Fernley singles


text:
Knights in the NFL, Wk. III
Sep 26, 2011
By: Gregg Snyder- SOR Staff Writer
Rutgers Legend Devin McCourty (left)
Devin McCourty is our Knight of the Week after accumulating 11 tackles and a pass deflection against the Buffalo Bills. Take a look inside to find out how the remaining former knights performed.
This Story is Free, however please login with your Message Board login.


text:
My Chemical Romance's Mikey Way Releases Statement
My Chemical Romance's Mikey Way has released a statement following news of the band's break up. You can see what Way had to say after the jump.
" I want to thank everybody who helped make the past 12 years an unforgettable journey for me. Family, friends and fans- Thank You.
For the record, my relationship has absolutely nothing to do with what just happened. They are completely separate."
The following two tabs change content below.
Angela Mastrogiacomo
Founder of Infectious Magazine & Muddy Paw Public Relations. Lover of coffee, ice cream, and passion.
Latest posts by Angela Mastrogiacomo (see all)
- PLAYLIST: Growing Up Angela - November 18, 2014
- ALBUM REVIEW: Jonathan Hall 'Rattling Bones' - October 31, 2014
- Live Review: Brave Shores EP Release, Toronto - October 29, 2014


text:
Season One - Episode Five: Cry Wolf
Edit Page Last Edit: 1 year 1 month ago
Episode Five: Cry Wolf has yet to be released. This page will be updated with Walkthroughs and further information as soon as the Episode is released.
You must be logged in to post a comment.blog comments powered by Disqus
Top Wiki Contributors
Edits: 157
Edits: 71
Chief Rocka
Edits: 37
Edits: 22
Wiki Help
Need assistance with editing this wiki? Check out these resources:
Expand Navigation


text:
Power restored to 1,700 people in St. Boniface after semi hits hydro pole
Winnipeg Free Press - ONLINE EDITION
By: Staff Writer
Posted: 7:50 AM | Comments:
Enlarge Image
A semi hit a hydro pole early today. (WAYNE GLOWACKI/WINNIPEG FREE PRESS)
About 1,700 St. Boniface residents were without power for more than an hour this morning after a semi-trailer hit a patch of black ice and slid into a Manitoba Hydro pole at 4 a.m..
The semi took out a major distribution line, and traffic lights were out on St. Mary's Road and Lagamodiere Boulevard, Hydro spokesman Anthony Koop said.
He said crews were able to re-route the power, and restore it to most homes shortly before 6 a.m. The few remaining customers in Mission Industrial Park have also had power restored, he said.
Koop said heavy, wet snow can cause power outages, and crews are hoping there are no further outages when the storm hits later today.
"When the weather turns nasty there's always that chance," he said.
Headlines Newsview all
Aaron MacDonald, 20-year-old Dartmouth man sentenced 5.5 years for abduction attempts
A 20-year-old Dartmouth man who pleaded guilty to several charges in relation to two dramatic abduction attempts was sentenced to 5.5 years minus time served ... Full story
Boyfriend of missing Halifax woman received a strange text message from the cellphone of his girlfriend
The boyfriend of a missing Halifax woman told CBC News he is suspicious about the last text message he received from his girlfriend's cellphone before ... Full story
Canadian Soccer Association Tells Quebec Turbans Are OK
Sikh soccer players in Quebec have received some high-level support in their bid to be able to wear turbans on the field. The Canadian Soccer Association ... Full story
NASA Map Shows What Antarctica Would Look Like Without Ice
The Antarctic continent is a frozen landscape of snow and sleet, but a new map NASA exposes what the region would look like if all ... Full story
Obama Defends Phone Data Collection Program
U.S. President Barack Obama vigorously defended sweeping secret surveillance into America's phone records and foreigners' internet use, declaring "we have to make choices as a ... Full story
MP Brent Rathgeber Explains 'Difficult Decision' to Quit Tory Caucus
Alberta MP Brent Rathgeber said it was a "difficult decision" to quit the Conservative caucus but that so far his constituents are showing support for ... Full story
U.S. Secretly Collecting Huge Number of Phone Records
The government is secretly collecting the telephone records of millions of U.S. customers of Verizon under a top-secret court order, according to the chairwoman of ... Full story
Neil Macdonald: How to Tell 'a Slap on the Bottom From a Rape'
A splendid example of a democracy at its finest happened here this week. Americans just weren't paying much attention. The most senior military men in America ... Full story
House Where Notorious Rob Ford Photo Taken Is Identified
Published reports have identified the house where a notorious photo of Rob Ford was taken, and that is at the centre of a scandal involving ... Full story
Abbotsford Sorry for Using Manure to Drive Out Homeless
The City of Abbotsford has apologized for spreading chicken manure over a popular gathering place for the homeless in an apparent bid to drive them ... Full story
Laura Babcock, Missing 23-Year-Old, Linked to Tim Bosma?
Toronto police have called an afternoon news conference where it's expected they will provide more information about Laura Babcock, the missing 23-year-old woman linked to ... Full story
Rate this article
Featured author
christy anyanwu
Breaking News
Afghan suicide bomber targets volleyball tournament, killing 45
A suicide bomber attacked a volleyball tournament in eastern Afghanistan on Sunday, killing at least 45 people, officials said. Dozens more were wounded when the bomber, ...
Ontario soldier died after incident during 'routine' training
Craftsman Kyle Sinclair died after an incident during routine training at Canadian Forces Base Petawawa, the Department of National Defence said Sunday. Sinclair, 27, died late ...
Putin mulls 4th term, says he won't hold power for life
Putin, 62, has led Russia since 2000 The Associated Press Posted: Nov 23, 2014 8:54 AM ET Last Updated: Nov 23, 2014 8:54 AM ET ...
Barricades go up as Ferguson awaits grand jury decision
Crews erected barricades around the building where a grand jury has been considering whether to indict the Ferguson police officer who shot and killed Michael ...
Tunisia holds landmark presidential election after revolution
Tunisia took another step forward in its peaceful transition to democracy on Sunday by holding its first free presidential election, with voters hoping for more ...
Feds to spend $200M on soldiers' mental health
The federal government will provide $200 million over six years to address mental health issues among members of the Canadian Forces. "More must be done to combat mental illness ...
Buffalo snow: 'Shovel brigade' cleans up as flood warning looms
Buffalo is making significant progress clearing streets still clogged from an epic storm left more than two metres of snow even as a flooding threat ...
Former D.C. mayor Marion Barry dies at 78
Divisive and flamboyant, maddening and beloved, Marion Barry outshone every politician in the 40-year history of District of Columbia self-rule. But for many, his legacy ...
Gun owners say Tories' Bill C-42 off-target
To the Coalition for Gun Control, the Conservative government's bill to overhaul Canada's gun licensing rules is more evidence that the party panders to gun owners. "The gun ...
Fighting over inheritance: Why more families may be headed for court
It's no secret that family fights over wills can be vicious. Also this week on The Sunday Edition: Michael's Essay: Six years after the financial collapse, no ...


text:
A sample presentation from Timur Pinksy, Man Truck & Bus AG, who discussed MAN's strategy for developing Euro 4 and Euro 5 diesel engines for the Russian automotive market.
This presentation was delivered at the Diesel Emissions Conference Russia & CIS 2012, which took place on 7 - 8 February 2012, Corinthia Hotel, Saint Petersburg, Russia.
For more information on the conference, or to purchase the presentations and delegates list from the conference, visit integer-research.com/conferences/dec-russia/
Loading more stuff…
Hmm…it looks like things are taking a while to load. Try again?


text:
Love God, Love People Part 1 - Ministry Videos
Embed mhmwebteam 241 views 2012-04-16T14:14:04 Having Godly people skills is vital to everyday life. Join Sarah as she gets real about the struggles all of us have with loving God and loving people.
More Ministry Videos
- The incredible testimony behind the song Dance Again by LIFE WorshipInspirational Videos
- Tim Hawkins - Losing Our Minds TogetherComedy Videos
- Family Sings Hilarious Thanksgiving Song 'All About That Baste'Comedy Videos
- Awe-Inspiring Version Of 'Mary, Did You Know?' Will Leave You SpeechlessMusic Videos
- 'IT IS WELL' Emotional New Version Will Touch You Deep In Your SoulMusic Videos
- The Story of Thanksgiving BasicallyKids' Videos
- You'll FEEL God's Arms Of Love On This Heartfelt Performance With An AMAZING Endin...Music Videos
- Glorious Unfolding - Steven Curtis Chapman (Official Music Video)Music Videos
- Miss Kay Wanted To End Her Life. Until Her Son Did THIS – WOW, I'm Speechless!Inspirational Videos
- Matthew West - Wonderfully Made (Live)Music Videos
- At First, These Cello Players Were Getting BOO'ED. But Then They Did THIS!Music Videos
- Garth Brooks Just Turned This Amazing Story About Moms Into A Song. And It's Got E...Inspirational Videos
No playlists found for this account.


text:
Travel Photography Photos tagged as salzburg
Lake Attersee cafe barrier
Town centre
from Hallein
Nice bright orange, perhaps Martin might like one?
Lake Attersee
Field above the Salt Mines
Near Hallein
How about this Will, boats, water skiing and mountains
The craze is spreading, hope bridge stands extra weight!
Yummy, but look too pretty to open
Mozart and Bernie
Early birds, for Prada opening in Salzburg
Gotta have horses
river and castle
Pretty designs
another one
Getreidegasse, Salzburg, Salzburg, Austria
Salzburg, Salzburg, Austria
Unfortunately Google Translate gives "If their succession is not yet ready" for this, which I can't mould into proper English with my limited German ability. Still, a mind-boggling advert. Salzburg, Salzburg, Austria
Salzburg Cathedral, Domplatz, Salzburg, Salzburg, Austria
Franciscan Church, Franziskanergasse, Salzburg, Salzburg, Austria
Fish Market Fountain, Max-Reinhardt-Platz, Salzburg, Salzburg, Austria
Didn't hear a single track from the Sound of Music, not even from buskers, which made me conclude that it's not what the residents of Salzburg want their city to be known for. Salzburg, Salzburg, Austria


text:
Select () or exclude () categories to narrow your recipe search.
As you select categories, the number of matching recipes will update.
Find exactly what you're looking for with the web's most powerful recipe filtering tool.
1/1 Photo of Reuben and Swiss Casserole Bake
Prep Time:
Cook Time:
15 mins
25 mins
I think this is even better than a reuben sandwich, I bet you will probably eat the whole casserole by yourself! :)
Units: US | Metric
Serving Size: 1 (207 g)
Servings Per Recipe: 4
Make this season merry, bright and manageable with our easy ideas.


text:
Speakin' with a SouthEast twang.
Blak Twang review
From Mr. E:
MP3: Mobb Deep - "Love Y'all More"
* http://www.box.net/shared/j1a209pxly *
Mobb Deep, 40 Glocc and german DJ Mr. E are thrilled to announce the official mixtape "We Run This Vol. 6″, which will come to iTunes and Amazon March 2011. The official compilation will feature the best collaborations from the Hip Hop Legends Mobb Deep as well as 40 Glocc from the G-Unit camp.
"We Run This Vol. 6″ is 24-tracks deep and will also deliver new & exclusive music from the Queensbridge & Westcoast artists. Mixed by Mr. E of the RPS Fam, who adds his aggressive cuts, blendings and premium twist to the overall sound of "We Run This Vol. 6″.
From M3W:
MP3: ML the Truth - "First Time"
* http://www.mp3waxx.com/jobfolders/mlthetruth/video-blast-page.html *
From Poe Boy Ryan:
MP3: Billy Blue - "Ball Fa Eva"
From Park Street PR:
Video: Fdot1 - "So Grimey"
Born in Barbados and raised in NY, Toronto, Manchester (UK) and Harare (Zimbabwe) Fdot1 (or Flo as he is known to most) brings a melting pot of international experiences to his music. Now based in London, Fdot1's style is influenced both musically and lyrically by his global upbringing. You will hear a mix of American, West Indian and UK accents in his flows and a fusion of Jamaican bashment, Bajan calypso and Zimbabwean rhumba on top of a foundation which is firmly rooted in Hip Hop. Fdot1's style is truly unique. Since returning to the UK Fdot1 has been the catalyst behind a number of the UK and Jamaica's most prominent artists. Fdot1 has produced tracks for Tony Rebel, Queen Ifrica, Sizzla, Fredi Kruga, Asher D (So Solid), Malarchi, Giggs and produced over 40 tracks for Durrty Goodz.Fdot1 now comes out of the studio and into the spotlight with the release of his EP "So Grimey". The EP features 4 tracks all of varying musical 'flavas', displaying his versatility as an rapper, lyricist, singer, songwriter and producer. "So Grimey" is Grime/UK Hip Hop, "Put it On Ya" a more soulful R&B feel, "Gal Ah Bawl" Bashment, and "Fyaah..!!!" is a throwback to the traditional boom bap days of Hip Hop. Fdot1 has appeared on Ras Kwame's 1Xtra show, winning his Home Grown talent competition and been a regular on DJ 279's Friday Night Flava on Choice FM. Fdot1 has performed with Ms Dynamite, Hip Hop icons De La Soul, Immortal Technique, Omarion, Lil Wayne and Malarchi. Fdot1 was previously known as Floriginul and you can find his first studio album "Part of Me" on iTunes. Fdot1's next studio album "Money MusicK", a fusion of Hip Hop, Grime, Bashment and soulful R&B, is out 4th May 2011."this album came about out of frustration with the current state of the industry. Being in the studio and being given so many demos that all sounded the same, no depth, whether it be a singer or a rapper, in my opinion, it was the same song just by a different person. The lyrical content either glorified violence, cash, cars and jewellery or sang about broken hearts like there is nothing else to talk about. I just stopped listening to music. Instead of complaining about it I decided to challenge myself creatively to show there are still artists out there who are creative and not just a machine marching to a major label's drum. Money MusicK is an album full of good music and good vibes proving that you can make money without selling your soul. Fdot1.Official Web Site: http://www.Fdot1.com .
From Matt Diamond:
Coalmine Records Presents - "Can You Dig It?"
In celebration of Coalmine Records five year anniversary, the Brooklyn-based indie is pleased to present you with their latest offering, Can You Dig It? This digital-only full length compilation contains 15 tracks of the label's singles catalog, which spans the greater half of the past decade. Featured artists include El Da Sensei, Bekay, Brown Bag AllStars, Heltah Skeltah, Custom Made, Skyzoo, Big Noyd, Supernatural & more.01. Dutchmaster – "The Raw" feat. Saigon, Inspectah Deck & Bekay (prod. by Street Orchestra)02. Supernatural – "Altitude" (prod. by Marco Polo)03. Big Noyd – "All Out" feat. Phil The Agony, Krondon & Mista Sinista (prod. by Shuko)04. CL Smooth – "Perfect Timing" feat. Skyzoo (prod. by M-Phazes)05. Armyfatique – "The Game Don't Change" feat. Trife Da God (prod. by Armyfatique)06. BURNTmd – "Microphone Doctor" (prod. by Reef Ali)07. XL – "Violate" feat. Juganot & Dutchmaster (prod. by Shuko)08. Heltah Skeltah – "Midnight Madness" feat. DJ Revolution (prod. by Shuko)09. Skyzoo – "Strung Out" feat. Dutchmaster (Small Professor Remix)10. Bekay – "I Am" feat. DJ Revolution (prod. by The Alchemist)11. Brown Bag AllStars – "League of Intoxicated Gentlemen" (S.2 Remix)12. Cimer Amor – "Another Classic" feat. Burke, Torae, Side Effect & DJ Waxwork (prod. by Cimer Amor)13. El Da Sensei & The Returners - Knowledge Be The Key (feat. Rakaa Iriscience)14. Custom Made – "Watch That" feat Mac Lucci (prod. by THX)15. One Dae – "Play By Play" feat. Evidence & Dutchmaaster (prod. by JBL the Titan)
From DJ Smallz:
Video: Dorrough Music's Twitter Stories & More
Dorrough Music's Twitter Stories: Kat Stacks DM & More from DJ Smallz.
MP3: Snoop Dogg - "Choose"
* http://www.mp3waxx.com/jobfolders/snoopchoose/blast-page.html *
From Yo! PR:
Hustla Jones Premiers "So Fresh, So Fly" Single
Hip-Hop newcomer Hustla Jones is excited to premier his single "So Fresh, So Fly" (feat. Trub Skeet) from his forthcoming debut album "Culminate", which is set to be released this summer via independent record label Godfather Records.Born in San Diego, California, Hustla Jones was raised by a single parent. At an early age, he was in and out of trouble with numerous prison stints and was sent to Palm Beach for a new chance in life only to fall in love with the South and the nonstop hustle the Dirty South is known for.After grinding in the underground circuit, Jones soaked up every classic music he could get his hands on to improve his mic skillz to an utmost professional level. When Jones started to release his in-high demand mixtapes, he quickly made a name for himself, getting established as an MC who puts all his deep thoughts and efforts into his music.His debut album "Culminate" embodies all of the qualities a well-respected Hip-Hop LP should consist of. In a short recording career that spans a couple of years only, Hustla Jones already found the formula for success, bringing out critically-acclaimed and eagerly-awaited music.The project's lead single "So Fresh, So Fly" is now available for download via iTunes and Amazon. His debut album "Culminate" will hit stores this summer.ITUNES: Hustla Jones - So Fresh, So Fly http://itunes.apple.com/us/album/so-fresh-so-fly-feat-trub-skeet/id423835307?i=423835337 .To learn more about Hustla Jones, visit his official website www.hustlajonesmusic.com .ARTIST PICTURE* www.yo-pr.com/pictures/hustla_jones.jpg *Label: www.godfatherrecords.com .
From SRNC MGMT:
MP3/Download: Altered Ethics - "The Ugly Face" (EP)
Our 1st project with DreamTek, "The Ugly Face" EP is presented by SRNC ((http://srncmusic.com)) and was released this past Tuesday (3/15). The direct download link is below:http://www.mediafire.com/?3ab35dacyyuz7u3We ask that you check it out.
Welcome to RapReviews.com for the week of November 25th, 2014!!
Please like us on Facebook and shop Amazon through RapReviews so
we can bring you new material every week. This week we have TWELVE new items
for you! Check out
Blak Twang's "Dettwork SouthEast" (our featured review),
a Bill Cosby editorial,
Jack Jetson's "The Adventures of Johnny Strange,"
Jister & The Lion Ranger's "Absurdism,"
Steve 'Flash' Juon's The Hip-Hop Shop #301,
Jesal Padania's UK Hip Hop Month 2014 outro,
Professor Green's "Growing Up In Public,"
Rashenal's "Life Learner,"
Rick Ross' "Hood Billionaire,"
Tinie Tempah's "Demonstration,"
Too Many T's "Running Wild EP" and
Emanuel Wallace's The (W)rap Up for November 18, 2014.
Be sure to check the RapReviews newsfeed for the
latest news and updates. Subscribe
to the newsfeed via your browser for daily updates like
Cool C's incarceration update.
RapReviews.com also recommends AMP w/ Paul O'Brien from the AngryMarks Podcast Network.
We appreciate your support and
welcome any feedback you have.
Thanks for visiting RapReviews.com!!


text:
Find records of Dorothy Van Ausdeln
Find birth, death, marriage, military, and other records of Dorothy Van Ausdeln at Ancestry.com.Search for records
Biography & Family History Add details
Dorothy Van Ausdeln (1904 - 1972) was born on May 24, 1904. She was born into the Van Ausdeln family.
There are no known marriages or children on file for Dorothy. Dorothy died in December 1972 at age 68.
Dorothy Van Ausdeln's last known residence is at Neola, Pottawattamie County, Iowa.
We were able tolocate a death record for Dorothy Van Ausdeln in the United States Social Security Master Death Index (SSDI). What is the SSDI?
This profile of Dorothy Van Ausdeln's history is a collaborative effort by AncientFaces members Share any information you have to reach the people who knew her. Some common things we would like to know about Dorothy's genealogy:
- Where was Dorothy born?
- Where did Dorothy die?
- Who was Dorothys family?
- What did Dorothy look like? Add some photos of their life.
Family Tree & Genealogy Add / Edit People
You can add or remove people from this genealogy by clicking here.
History of Dorothy Van Ausdeln Add details
- Given name
- Dorothy
- Surnames
- Van family history, Ausdeln family history
- Last Known Residence
- Neola, Pottawattamie County, Iowa
- Born
- Death
- Gender
- Female
Do you know more about Dorothy Van Ausdeln?
You can add details to this page and share Dorothy's story.
Obituary Add details
There isn't any information about the obituary records of Dorothy. You can add obituary information about Dorothy Van Ausdeln by clicking "Add Details".
Discuss Dorothy
Share your memories below with the rest of Dorothy's family. We'll notify anyone else who is searching for Dorothy of your message.
Find records of Dorothy Van Ausdeln
Find birth, death, marriage, military, and other records of Dorothy Van Ausdeln at Ancestry.com.Search for records


text:
from notes by James O'Donnell © 2008
extrait des notes rédigées par James O'Donnell © 2008
Français: Hyperion Records Ltd
aus dem Begleittext von James O'Donnell © 2008
Deutsch: Renate Wendel
|The English Anthem, Vol. 2
'Spellbinding performances of some of the great classics of the repertoire. Buy this one; you'll enjoy every moment' (Organists' Review)» More
|The Feast of Ascension at Westminster Abbey
The Choir of Westminster Abbey, under its inspirational director, James O'Donnell, continues its exploration of the repertoire of the liturgy in the Abbey with music for the Feast of the Ascension. The works recorded here represent a wide range of th ...» More


text:
Sorry, this deal has now expired. No need to worry though as we have plenty more deals like it for you to choose from...
Pick up a main meal, a side dish and a dessert for two plus a bottle of wine or hot drink all for just £10 at M&S.
Simply choose from the items in the M&S 'Weekends In' meal deal menu available in store Thursday to Tuesday and enjoy.
Selected items only.
Subject to availability.
Excludes overseas' stores and Jersey, M&S outlet stores and Simply Food stores at BP Connect, railways, motorway services, hospitals and airports. Excludes M&S Café, Restaurant, Kitchen, Deli Bar, Hot Food to Go and Food Ordering.
Enter our competition to win a £3,000 luxury holiday and other amazing prizes worth £2,000.
Just add a review of a financial product you have to be in with a chance.Enter CompetitionT&Cs


text:
Creating change in your life or work can feel like travelling a challenging and unknown road - full of uncertainty, twists and turns. It can sometimes even feel like riding a roller coaster - sometimes shooting forward, sideways, backwards and even upside down! Sometimes it is exhilarating, exciting and a great adventure. Sometimes it is scary and stomach churning. With all the twists and turns that happen during periods of change, it is … [Read more...]
The things you need to stop doing to achieve your goals
When you want to create some kind of change in your life or work, or are working on achieving a specific goal, you put a big focus on the things you need to do to make that change happen or achieve that goal. If you didn't you wouldn't get the results that you really want. But what is often overlooked is that there are things you might need to stop doing in order to create that change or achieve that goal. These may be things that could … [Read more...]
19 ways to boost your motivation and personal effectiveness
How to stay motivated and improve personal effectiveness is an important question to ask yourself as both of these things have a big impact on your results. There are many factors that impact both of these things. So let's explore some of them. Below are some examples of things that have a powerful and positive impact on motivation and personal effectiveness. 19 Ways to boost your motivation and personal effectiveness 1. Get an … [Read more...]
How to stay motivated, impactful and effective when you are Self Employed
Getting the results you really want when you are Self Employed means that you need to be on top of your game, consistently. But this can be easier said than done. The weight of everything you are responsible for and everything you have to do can drag you down, stress you out and make you feel overwhelmed. When that happens, your motivation, impact and personal effectiveness can take a really serious hit. And when your motivation and … [Read more...]


text:
aljazeera.net, maktoob.com, tejari.com, dubaiinternetcity.com, jeeran.com, albawaba.com, naharnet.com and mahjoub.com are among the first websites to register for the quality initiative.
Interstandards was launched in November 2005 with the aim of creating industry standards for Arab commercial websites through a certified quality assessment procedure. Developed in association with the British Standards Institution (BSI), the quality programme is leveraged as a joint initiative with Dubai Internet City and eHosting DataFort.
Duri Al Ajrami, Managing Director of Interstandards said,
"The level of response to the quality certification initiative is extremely encouraging. It illustrates the high level of commitment among leading Arab web publishers to offer premium and standardised online products and services to end users and business partners."
Jamal Abdulsalam, Executive Director, Dubai Internet City said: "As the region's hub for information and communications technology, DIC is keen to support programmes that drive the growth of the ICT industry.
'Through our joint venture with eHosting DataFort and Arab Internet Standards Organization, we look forward to participating in the creation of a vibrant Arab e-business sector in the region."
When asked how such standards can benefit the web industry, Dr. Saeed Al Barwani, CEO of eHosting Data Fort explained, "Putting in place minimum security standards for particular types of data can only benefit businesses and individuals by almost eliminating the risk of unauthorized use of the data they provide to these websites."
"Furthermore, such standards can also ensure the publication of a website's security procedures or its adherence to particular standards. Such postings will then be subject to legal ramifications if the statements are found to be false," he added.
Upon registration, commercial web publishers will receive comprehensive information on quality norms and standards to facilitate an in-house check, ahead of Interstandards' auditing procedure.
Interstandards will award the first batch of quality certifications end of 2006.
Monday, July 24- 2006 @ 15:42 UAE local time (GMT+4) Replication or redistribution in whole or in part is expressly prohibited without the prior written consent of Mediaquest FZ LLC.


text:
A Con Edison service box near the Union Square subway station caught fire Friday afternoon.
The state says that investigators handed over reports of the Flushing blast to a Con Ed consultant.
Con Ed workers rallied Thursday at company headquarters as leaders headed back to the bargaining table.
A Con Ed worker was in serious condition after being burned to the face at 154 W. 70th St. Wednesday.
Con Ed and the Local 1-2 of the Utility Workers of America will resume talks Thursday, the union said.
Managers were filling in for thousands of Con Ed workers who were locked out after contact talks halted.
Several hundred Brooklyn customers awaited the restoration of power Saturday.
Power outages in Brooklyn and Queens leaves residents without electricity on another scorcher of a day.
A manhole fire sparked on 14th Avenue in Brooklyn June 21, 2012.
Scorching temperatures are expected to near triple digits Thursday.
The power cuts have been restored to some Brooklyn neighborhoods, a Con Ed spokeswoman said.
Two manhole explosions caused power outages on one Midwood block Tuesday night.
Con Edison said a "cable burnout" was the cause of a March 23 fire that gutted an Inwood home.
Andrew Modica, 46, reportedly confessed to swiping some of the covers.
The Times Square Alliance said that thieves stole 20 iron guards from trees on Restaurant Row.
Get Our Daily New York Newsletter
Terms of Use |Privacy Policy
Thank you for signing up!
Would you like to sign up for additional newsletters?
Thank you for signing up for additional newsletters.


text:
Promotions Assistant / Coordinator
We are one of the leading event marketing firms in the area. We work with some of the most fashionable, current, high-end companies across the nation. Our focus is building brands and creating awareness for our clients, one customer at a time. We represent 20 clients in our ...
Nov 7 -
Grand Rapids
Entry Level Communications Coordinator
Entry Level Communications Coordinator-Recent College Grads Apply
Paid Training-Travel Opportunities-Management
-Implementation of marketing plans, including product positioning, campaign strategies, and market strategy insights.
-Discovery ...
Oct 27 -
Grand Rapids
Brand Ambassador (No Experience Necessary)
Prospect Solutions provides our clients with exciting retail promotions. Our success in the retail marketing industry has allowed us to add 3 new clients to our portfolio!
In order to prepare to introduce these brands into the Grand Rapids market place, we are looking to ...
Steelcase - Sustainability Marketing Developer
We're looking to hire a Sustainability Marketing Developer in Grand Rapids, MI.
Position Description:
The Sustainability Marketing Developer will assist the Global Environmental Sustainability team in developing, communicating and distributing consistent and compelling ...
Oct 23 -
Grand Rapids
Marketing Design Specialist
At Colliers International | West Michigan, a leading commercial real estate and property management firm, our marketing design specialists are the creative dynamic that play a significant part in the guiding and implementation of the Colliers brand. This role is vital in ...
We'll be sending text message alerts for your subscription to


text:
Superior Spider-Man lists
My Pull List1
My current pull list.
Your Pull List0
My Pull List4
Pull list in order of how much I like them (updated)0
In order of how much I like them. Dropped Young Avengers due to money restraints
My Current Pull List0
Currently Reading.0
All the series that I'm currently reading. Also I'm opened to new suggestions if anybody has any.
50 More Reasons Spider-Man is Still Awesome0
My Comic Book Collection11
This is a list of the comics I own from DC, Vertigo, Marvel, Icon, 2000AD, Blue Water Productions, Boom! Studios, Dark Horse Comics, Dynamite Entertainment, IDW Publishing, Image, Moonstone, Oni Press, and Radical Publishing. Total: 4129
Pull List53
This is my current pull list.
Marvel NOW0
Stuff I have read0
Constantly changing
Top Marvel Series'0
This is a list of the series from Marvel that I like the most. This list used to be in order of average highest rating, though now it will change to what I consider the best at the moment. Also from now on series I've not read in a long time or that...
My current pull list.0
Best Marvel NOW Series1
Marvel issues I'm reading0
My Current Pull List.10
I'm sure you guys on the Vine are sick of seeing other people's pull lists, but I don't give a damn, here's mine. Any recommendations would be great.
Marvel Now Titles I'm interested in0
These are Marvel Now titles I'm interested in or titles that I need to update myself on to actually make those Marvel Now titles meaningful...enjoy. Again like with the New 52 list I'm not saying I even would want to get them all, these are just titl...
Anything Once0
"I'll try anything once. Twice if I like it. Three times to make sure." ~ Mae WestBooks I've given a shot (or, if more than one shot, I'll note that) specifically to determine whether I'd like to try the run. The top of the list will consist of ones...
My Pull List2
Here it is, in all its glory:
My Pull List0
Keeping track of the titles I read, it kind of looks like a lot now, and thats not including the back issues I'm going through.
Favourite of Marvel Now!0
List explains itself this will change due to my opinions and views changing plus more series coming out.
On The Bubble0
These are the comics I like, but have stopped buying because I've fallen behind on them. If I had more time to read comics, these comics would all be on my pull list.
My Pull List0
As of June 2013
This has been a son of a b!t@h to get done FYI, I have almost completed it so many times when the site takes me to its freeking Facebook page! ahhhhhhhhhhh I just adjusted All New XMen from number 2 to number 1. Just adjusted again to add in all the...
Stupid Things and Stupid People22
A list of things and people I really hate
Comic Series Id work on 2.06
Okay for those of you who remember my last list. This is a more detailed as I would also have artists Id like to have working on the series I want.
My Pull List (Outdated)3
I think that a pull list defines a comic book reader. This is my monthly pull list. This is a concise list of my favourite titles it is kept short for practical reasons (budget, time, space...) However I do also pick up other titles, like major event...
My favorite current series from best to worst0
Marvel books i'm reading monthly6
My favorite Spider-Man stories4
10 favorite Marvel comics of 20136
Will update this with some descriptions later.
My Pull List (end of 2013)6
2013 is winding down and we're already getting some new titles to chose from, so very soon this list will have to be updated. But here's my pull list as it stands for the end of 2013. There are some titles I'm reading but don't have on my pull list...
Top 10 MARVEL/DC Ongoings of 2013!15
Best of 20130
2014 Pull List3
This is my new pull list for 2014. I tried to have as least titles possible ,for money and management. Honorable Mentions: George Romero Empire of the Dead Act One.
Series I Completely Finished !0
top 10 comics of 2013, That Ive Read.0
Pull List1
Any Suggestions?
My Current Top Ten Favorite Marvel NOW! & Top Ten All-New Marvel NOW!0
This list has my favorite Marvel Now & the All-New Marvel now books. This list will have twenty entries, the first ten will have Marvel Now & 11-20 will have All-New Marvel Now.
Top 7 NEW 52!/ MARVEL NOW! Titles1
This edit will also create new pages on Comic Vine for:Beware, you are proposing to add brand new pages to the wiki along with your edits. Make sure this is what you intended. This will likely increase the time it takes for your changes to go live.
Comment and Save
Until you earn 1000 points all your submissions need to be vetted by other Comic Vine users. This process takes no more than a few hours and we'll send you an email once approved.


text:
When we arrived in Punta Cana, the warm weather felt so good. We left the cold, icy snow of New Jersey behind us. Nice sunny weather gives me so much positive energy.
When I heard that someone was missing a bag, I got freaked and made a beeline for mine and ran over the baggage belt carrier to get it. (So we may have had a few cocktails on the plane…) Teresa's accessory bag went missing for Godsake! That was horrifying! Luckily for her, it finally showed up, but unfortunately not until our last day there. Woman's nightmare!
Not going to lie, as badass as it looked coming around the bend in our Escalades, I kind of felt like a jerk driving through where we had to go in them in order to get to our hotel. It just didn't feel right. Neither did stopping along the highway so all of our men could get out to pee in the tall grass. "You're from Jersey and you can tell! Way to keep it classy, Jersey!" Thanks, Melissa! Sometimes I wish I had a penis, so I could just whip it out and whiz whenever and wherever I wanted, then just shake it off, stick it back in my pants, and walk away. It's much more complicated and less convenient for women. Not fair! I had to hold it in until I got to a little girls room. The little place we stopped to use the rest room was like using an outhouse. There was no toilet paper, no way to flush, and no water to wash your hands. I could have gone in the tall grass on the side of the road after all and used a leaf or dripped dry in the wind. I always carry feminine wipes with me. You just never know when they will come in handy. Sorry for the over share.
The Hard Rock Hotel & Casino was amazing and our rooms were incredible with such beautiful views. It was impressive. The people at the hotel were so welcoming and accommodating. We can't thank them enough.


text:
"Slow, Obvious and not in the tradition of W.W.J."
This plot is slow, lacking action, and obvious to everyone except the main character Conrad Browning. This definitely missed the mark and not worth the read if you've been a solid WWJ fan. Half way through you know Conrad is being dealt a bum deal but he doesn't; to the readers frustration....not worth the time to listen or read!
Report Inappropriate Content
If you find this review inappropriate and think it should be removed from our site, let us know. This report will be reviewed by Audible and we will take appropriate action.