I’d feel way too guilty whinging about living without a kitchen and blogging about the reno when so many people have lost their lives, homes and livelihood in the disastrous fires so I’m going to give it a miss today. On Friday afternoon there was a fire somewhere in our area – it would have been miles away, but the smoke and smell was quite intense and I found it hard to breathe at times. I thought to myself “here we go…” and sent out a silent sympathetic thought to the firies who we’re in for a big weekend and made bets with my husband how long it’d be before the freeway was closed and the trains stopped running. Pretty much every year the central coast gets blocked off for a while due to fires. This is an incredible pain in the rear for anyone who needs to travel to Sydney or is stuck in Sydney trying to get home. It can be hours – at times days – before you’re given the all clear. After this horiffic weekend in Victoria, we of course, have no right to complain. In fact, I’m sure every one of us up here would have happily been inconvenienced for a while if it meant Victoria had no fires, no deaths, no devastating tragedy. I cannot imagine the emotions being felt down there…
My husband suggested if the latest federal Stimulus Package is passed, they should immediately halve the amounts they’d planned to hand out and give the other half to the fire victims and to rebuilding the demolished communities. He also said part of it should go to upgrading our firefighting equipment, procedures and training. Because as temperatures rise year to year, our country is only going to burn faster, further and with more fury.
And for those insert-angry-adjective-here animals lighting these fires, I only hope they’re found and punished accordingly. I might not be the world’s biggest advocate of capital punishment, but in this case, I think being burnt at the stake highly appropriate…
Then, in February, we received word that the the NIH Data Commons Pilot Phase Consortium (DCPPC) would not continue in its current form. Here’s what we received:
The NIH Office of Data Science Strategy has been asked to lead the next phase of trans-NIH data ecosystem development as described in the NIH Strategic Plan for Data Science. The deliverables from the DCPPC will inform next steps, but we will not pursue a second phase of the DCPPC. New initiatives may emerge from the ODSS and/or from the ICs in response to the Strategic Plan, but they will communicate their plans as they are established.
My award finished at the end of March, and I thought it would be a good time to update y’all (especially since I’ve been receiving questions!)
What did the NIH Data Commons Pilot Phase Consortium achieve?
I think we achieved quite a lot in our fairly short stint! (And there’s a fair amount of public material that was made available as part of it, although it’s not well advertised.)
I’m going to focus on things my team helped with, because that’s what I know best. There were lots of technical prototypes as well, but those were produced by other teams and are not mine to discuss. (See the list of deliverables and their reviews for more info. Happy to connect you to the authors if you’re interested – drop me a line at email@example.com.)
First off, here is the top link to the public site that we created for the end of the first Pilot Phase. There are links and documents in there that I continue to find useful, and expect to find useful for many years to come.
I’m particularly happy with how the Use Case Library effort was proceeding. I think we set a good path for collaboratively developing use cases for Phase 2, and even without a Phase 2 I will be making use of this approach and this material for other projects.
The “On Commonsing” document we wrote up after a workshop on “Data Commonses” is something that I will be coming back to regularly!
People interested in pragmatic standards development might be interested in Why Multiple Stacks are Necessary.
Personally, I learned a lot about interoperability and creating and growing community from this experience, and I think the same is true of most of the other participants. Completely apart from the technical and infrastructure efforts, the coordination and community aspects of this Pilot Phase seem likely to have long-term positive impacts on how many of us deal with these kinds of projects in the future.
So what’s next?
I’m not sure!
I think it’s fair to say that the problems the NIH Data Commons effort was tackling are not going away (you can see more about these problems in my talk slides from my 2018 talk at the Dutch Techcentre for Life Sciences). And the NIH and broader biomedical research community will certainly be working on many things in this area. And I may not be involved but I’m sure to have opinions. So, stay tuned!
What happens when you fall in love with the perfect outdoor coffee table, only to discover it’s sold out? You make your own! Here are the details on my DIY concrete outdoor cofee table.
This post contains affiliate links. Click here to read my full disclosure policy.
I don’t mean to sound like a broken record, but I cannot believe how far our backyard has come in the last few months, y’all. I was honestly pretty nervous when you decided that I should tackle our back porch this summer because it felt like such a daunting task, but I am so (so!) glad we did. This space has become one of my very favorite places to be, and I can’t wait to wrap the last few projects up and call this space finished!
If you haven’t been following along with this summer makeover, here’s everything you may have missed:
- The first outdoor projects we tackled this summer were painting our backyard shed…
- …and sprucing up the rose beds.
- Then, we started the big makeover by building a DIY paver and pea gravel patio.
- Once it was done, we styled it and started using the heck out of it.
- Then we turned our attention to the back porch – first, we painted the metal covering.
- And then we built a DIY outdoor sofa for lounging!
- Finally, earlier this week I shared the DIY plant wall I created to add some life to the porch.
Today I’m sharing the (gorgeous) DIY outdoor coffee table we built, and then there’s just one more big project to share before the official reveal (NEXT WEEK, Y’ALL!).
This coffee table has been on my mind since the very beginning of this entire renovation. It started when I was shopping for furniture for the porch and I found the Palmera Faux Concrete Coffee Table from World Market (no longer available, but see the other stuff in the line here). It was everything I wanted for this space, and y’all agreed when I put it to a vote over on Instagram.
Of course, it wasn’t until after this coffee table won the vote by a landslide that I discovered that it was out of stock. And, once I contacted World Market I was told they weren’t sure when (or if) it would be brought back.
Thankfully, the design is pretty simple and I felt confident that Corey and I could re-create the same basic look – and probably for a lot less money! This project was incredibly cheap, since we were able to use some scraps from our outdoor sofa for the legs. Even if you need to purchase the wood, the materials for this entire build should set you back no more than $100 or so – and you know I love saving money!
Ready to learn how to make your own?! Let’s do it!
DIY Concrete outdoor cofee table
tools + Materials Needed:
- (1) 8-foot 4X4 board
- (1) 8-foot 2X2 board
- Beadlock Pro Joinery System
- Wood glue
- 1/2 sheet of 1/2″ plywood
- Wood filler
- Drill/driver set
- Power nailer
- Henry Feather Finish
- Trowels (I used a couple of different sizes, see below)
- Orbital sander + various grit sandpapers
- Black Diamond Wet Look Sealer
- Spar Urethane
STep One: Build the Legs
For the legs, we used pretty much the exact same process that we used on our outdoor sofa. We loved the invisible joints created by Rockler’s Beadlock Pro and it was the perfect tool to use again for this project. However, you could also use pocket holes or even just extra long screws (like these) if you don’t mind the visible hardware.
Each leg is made up of two 14″ pieces with one 13″ piece in the middle. We put them together using the loose tenon joints but, again, if you aren’t comfortable with those joints or don’t have the jig, I’d recommend just using extra long lag screws and wood glue.
Just like with the couch, I recommend sanding the wood for the legs (starting with 80-grit and working up to 320-grit) before assembling them!
Step TWo: Assemble the top Frame
Once the legs are built and dried, you’re ready to assemble the top of the table. We wanted a concrete look without the weight of an actual concrete slab, so we built a wood top and covered it with Henry Feather Finish. I’ve seen people use this stuff on countertops dozens of times over the years, and I’ve always wanted to try it so this was the perfect opportunity!
To build the top, we started by making a 29″X44″ rectangle frame using 2X4s. We ended up deciding it was too thick, and we cut down the excess, so I’d actually recommend just starting with 2X2s to make your life easier! We used wood glue and screws to assemble this part of the table.
Once the outside is built, you’ll add your supports for the legs. We just cut two 2×4’s to fit inside the rectangle, then placed them 5″ in from either side – they’re attached with wood glue and screws, just like the rest of the top!
Then, we set everything up really quickly to see how we liked it – and, of course, this is when we noticed that the top was much too thick! Corey just ran it through the table saw to cut it down, but I’d recommend starting with 2X2’s for the outside pieces – that’s about what we cut it down to.
To attach the legs to the top, simply apply wood glue to the tops of the legs and then drill the top into the legs from the top of the supports.
Step three: attach plywood to top
Next, we wrapped the entire frame with some 1/4″ plywood. You should have five pieces, cut to the specific measurements listed above (though, I recommend that you double-check the measurements on your specific table before cutting, just in case you made any small mistake along the way that would cause it to be a slightly different size!).
Attach the large piece of plywood to the top using wood glue and nails (we use this power nailer), and then attach the side pieces on the sides of the frame with the same method. After you’ve attached all of the plywood, you should use some wood filler to fill in any gaps, cracks, or nail holes!
It should look something like this when you’re all done!
Step Three: finish the legs
Now the bones of the table are finished and it’s time to make it look pretty! I chose to stain the legs using Varathane’s Dark Walnut stain, but you could also paint them if you prefer. My original plan was to actually paint them black, but I didn’t have any exterior paint on hand so I decided to use something I did have instead.
Once you’ve stained the legs, be sure to apply spar urethane to protect them from the elements outside. It typically requires several coats with sanding in-between, so don’t rush this step!
Step Four: Apply Feather Finish to top
Now you’re ready for the fun (and slightly terrifying) part: applying the feather finish to the top!
The most common brand of feather finish I’ve seen used for this kind of project is Ardex Feather Finish, but I didn’t wait to wait for it to be shipped so I just grabbed the Henry brand Feather Finish in store. I think they’re pretty comparable, so either should be fine.
To apply your feather finish to the table top, start by mixing it up (mine had a ratio of 2 parts water to 1 part powder) in small batches. I just mixed mine in one of these little pails (with a liner) and I found that it was just the right size. If I tried to get too much going at once, it started to harden towards the end of the batch – and this stuff is much easier to work with when it’s on the looser side! Think of the texture you’re shooting for as a loose cake frosting – it should be super easy to spread but thick enough that it won’t just slide off the edges of the table when you apply it vertically.
I applied three layers of feather finish (though, I probably could have gotten away with just two). The first two layers really just need to provide coverage – don’t stress too much about making them smooth! I used both an angled trowel and a wide putty knife to apply the concrete and I found that the best strategy was to get the concrete on the table and mostly spread out with the trowel, then switch to the putty knife to really spread it out and smooth it as much as possible.
After each layer dries, grab some 80-grit sandpaper and your orbital sander and go to town – you’re looking to just smooth out the rough edges and the ridges in the table. You aren’t shooting for perfection with these first two layers!
On the final layer, I worked much slower when applying the concrete and I really tried to focus on minimizing any lines in the finish. This is the layer everyone will see, and it’s the one you’ll be sanding to perfection, so really take your time with it!
Once it has dried fully, you’re ready for the final sanding process. I started with 80-grit sandpaper, then slowly stair-stepped my way all the way up to 320 (meaning, I sanded the entire thing with 80-grit, then 100-grit, then 120-grit, etc.). It takes a long time to get it fully sanded, but the buttery smooth texture is worth it.
Step Five: Seal the table top
After I finished the table top, it was time to seal it. Thankfully, since this is just a coffee table and not concrete counters (which is where I see this product used most often), I didn’t need to worry about a food-safe sealer! I used this wet look sealer and it was a breeze to apply!
I applied three thin coats using a regular old paintbrush. It’s very thin, so be careful not to allow it to pool at all as it’s drying. Each coat needs to dry for about an hour before applying the next one, and I found that it stayed really smooth and I didn’t need to sand in-between coats at all.
Once it’s fully dry, you’re good to go!
I am so, so happy with how this little faux concrete table turned out and I honestly can’t wait to tackle another project using feather finish concrete! It was so much fun, and the finished look is truly, absolutely beautiful.
With this project complete, we’ve only got one big project left back here before we’re ready to accessorize and call this back porch complete!
Be on the lookout for the final project later this week, and the full reveal is coming next week!
What do you think I should use the feather finish on next? An indoor dining table? Nightstands? I kind of want to cover everything with it!
Sourced from: http://ivory.idyll.org/blog/2019-comparing-binnings.html
tl;dr? Compare and cluster two collections of 1000+ metagenome-assembled genomes in a few minutes with sourmash!
A week ago, someone e-mailed me with an interesting question: how can we compare two collections of genome bins with sourmash?
Why would you want to do this? Well, there’s lots of reasons! The main
one that caught my attention is comparing genomes extracted from
metagenomes via two different binning procedures – that’s where I
started almost two years ago,
with two sets of bins extracted from the Tara ocean data. You
might also want to merge bins that were similar to produce a
(hopefully) more complete bin, or you could intersect bins that were
similar to produce a consensus bin that might be higher quality, or
you could identify bins that were in one collection and not in the
other, to round out your collection.
I’m assuming this is done by lots of workflows – I note, for example,
that the metaWRAP workflow
includes a ‘bin refinement’ step that must do something like this.
I (ahem) haven’t really read up on what others do, because I was mostly
interested in hacking something together myself. So here goes :).
How do you compare two collections of bins??
There are a few different strategies. My previous attempts were —
comparing two directories in bulk, focusing on summary statistics;
In both cases, my conclusions ended with “wow, there are some real differences
here” but I never dug deeply into what was going on in detail.
This time, though, I had a bit more experience under my belt and I
realized that a fairly simple thing to do would be to cluster all of
the bins together while tracking the origin of each bin, and then
deconvolving the clusters so that you could dig into each cluster at
The basic strategy
Load in two lists of sourmash signatures.
Compare them all.
Perform some kind of clustering on the all-by-all comparison.
Conveniently, I had already implemented the key bits in a Jupyter
notebook about a year ago
so it was ready to go! I turned it into a command-line script called
and tested it out; on data where I knew the answer, it performed fine, grouping
identical bins together and grouping or splitting strain variants depending
on the cut point for the dendrogram.
You do have to run it on collections of already-computed signatures;
an example command line for cocluster.py is:
cocluster.py --first podar-ref/?.fa.sig --second podar-ref/*.fa.sig -k 31
This version outputs a dendrogram showing the clustering, as well as a
spreadsheet containing the cluster assignments.
Speeding it up
The problem is, it’s kind of slow for big data sets where you have to do millions of comparisons!
Since comparing N signatures against N signatures is inherently an N**2
problem, any work we can put into filtering out signatures at the front
end of the analysis will be paid back in serious coin.
So, I added two optimizations.
First, you can now pass in a
--threshold argument that specifies, in
basepairs, roughly how many bp need to be shared by a signature from
the first list with any of the signatures in the second list. If this
threshold isn’t met, the signature from the first list is dropped. Then
do the same for each signature in the second list with respect to the first
Second, you can now downsample the signatures by specifying a
--scaled parameter. (Read more about this here.) The logic here is that if you’re comparing
genomes, you probably don’t really need to look at a high resolution to
get a rough estimate of what’s going on. This optimization speeds up every
Together, this made it straightforward to apply this stuff to scads of
Last but not least, I updated the script to output clusters, and provide summary output too!
Here is an annotated example of the complete workflow – this is done on the reference genome data set from Shakya et al., 2013, which we updated in Awad et al., 2017. This genome collection contains 64 genomes, some of which are strain variants of each other.
Briefly, after computing signatures, cocluster.py
calculates an all-by-all comparison for the two input collections, that results in a matrix like this (not currently output by cocluster.py) —
The dendrogram is then cut at some given phenetic distance – in this case I chose 1.8, based on
visual inspection of this next dendrogram:
The cocluster.py script then outputs a cluster details CSV file that lists all of the clusters and their members. (The clustered signatures themselves are also provided, along with singletons.)
... total clusters: 60 num 1:1 pairs: 56 num singletons in first: 0 num singletons in second: 0 num multi-sig clusters w/only first: 0 num multi-sig clusters w/only second: 0 num multi-sig clusters mixed: 4
The full set of commands is listed in this Snakefile, and commands to repeat it are in the appendix below.
Playing with real data
Since both the Tully et al. and the Delmont et al. papers have been
published now, I first re-downloaded the published data and calculated
all the signatures for the 3500 or so genomes — see the instructions
and Snakefile in github.com/ctb/2019-tara-binning2/.
Once downloaded, computing the signatures takes about 15 minutes, using
snakemake -j 16.
Then, I ran the cocluster script from https://github.com/ctb/2017-sourmash-cluster like so:
./2017-sourmash-cluster/cocluster.py --threshold=50000 -k 31 --first ../data/tara/tara-tully/*.sig --second ../data/tara/tara-delmont/NON_REDUNDANT_MAGs/*.sig --prefix=tara.coclust --cut-point=1.0
This took about 2 minutes to run on my HPC cluster, and produced the
following output with a cut point of 1.0 (which is pretty liberal).
... total clusters: 2838 num 1:1 pairs: 331 num singletons in first: 1886 num singletons in second: 443 num multi-sig clusters w/only first: 42 num multi-sig clusters w/only second: 4 num multi-sig clusters mixed: 132
When I re-run it with a more stringent cut-point of 0.1, I get:
% ./2017-sourmash-cluster/cocluster.py --threshold=50000 -k 31 --first ../data/tara/tara-tully/*.sig --second ../data/tara/tara-delmont/NON_REDUNDANT_MAGs/*.sig --prefix=tara.coclust --cut-point=0.1 ... total clusters: 3520 num 1:1 pairs: 43 num singletons in first: 2557 num singletons in second: 906 num multi-sig clusters w/only first: 6 num multi-sig clusters w/only second: 0 num multi-sig clusters mixed: 8
Basically this means that:
- when doing stringent clustering, there are 3520 different clusters;
- 43 of the clusters provide a 1-1 match between bins from the Delmont and Tully studies;
- 2557 of the Tully signatures don’t cluster with anything else;
- 906 of the Delmont signatures don’t cluster with anything else;
- there are 6 clusters that contain more than one Tully signature, and no Delmont signatures
- there are 0 clusters that contain more than one Delmont signatures, and no Tully signatures;
- 8 of the clusters have more than two signatures and contain at least
one Tully and at least one Delmont signature.
I’ll dig into some of these results in a separate blog post!
Appendix: repeating the podar analysis
This workflow will take about 1 minute to run, once the software is installed.
To repeat the analysis of 64 genomes above (see output), do the following.
# create a new conda environment w/python 3.7 conda create -y -c bioconda -p /tmp/podar-coclust python=3.7.3 sourmash snakemake # activate conda environment conda activate /tmp/podar-coclust # grab the cocluster script and podar workflow git clone https://github.com/ctb/2017-sourmash-cluster/ cd 2017-sourmash-cluster/podar-coclust # clean out the existing files & run! snakemake clean snakemake -j 4 -p all
This last step will download the necessary files, compute the signatures, and run cocluster.py.
Am completely knackered, so not going to bore with all the details just yet, but let me update you in numbers and pictures…
Number of days without a kitchen: 8
Number of sandwiches eaten: 42
Number of arms incredibly sore from sanding and painting three times in one day: 2 (they would be mine)
Number of hiccups so far: 6
Most number of trips to the hardware store in one day: 6
Number of cabinets in place: 5
Number of cabinets to still be put into place: 10
Number of taps working: 0
Number of appliances working: 0
Number of holes in the wrong place the electician cut into the wall that was already sanded and painted? 2
Number of flies killed because the doors were open all day every day: 723. Wait. 724
Number of times we’ve fallen onto our butts because the floor is so damn slippery from all the swept up sawdust? Me: 2; Steve: 1; Z: 4
Number of days before my dad can come back and finish putting the kitchen in: 12 🙁
Number of hours before we can get water and power on in the kitchen: oh god please let it be no more than 15!
Day 7: Pantry done. The other cabinets on that wall are not flush with the wall yet. Dad needs to come back and put the benchtop on. Am hoping the electrician can connect the oven and cooktop tomorrow. I’m tired of sandwiches and takeaway!
And just because I don’t have enough things in my life to keep me busy (!) I signed up to Twitter last week and actually spent longer than two minutes on it tonight working it out. I think I’ve got it. Here is where I’ll be sending all those little quirks, annoyances or snippets of news too minor or time-consuming to blog about. And much excitement is the fact I can SMS the updates and they’ll appear magically on my Twitter profile. How genius. Not sure how long I’ll follow this fad (am really good at losing interest in things – Facebook? I only get on to look at friends photos now!), but for now, you can follow me at twitter.com/belindagraham
Including a kitchen expansion or knocking through? If you are looking to create an open-plan, sociable space but can not decide what to do, read our guide
The article Kitchen Extension: Making the Best Kitchen Diner appeared first on Homebuilding & Renovating.
One thing I am looking forward to is entertaining outdoors. We’re hosting a 50th anniversary party for my parents later this summer and it’s time to get our backyard into tip top shape. Summer parties can present unique challenges so it’s worthwhile to put some thought into how to keep your guests comfortable, especially as the festivities extend from day into night. Here are 5 outdoor entertaining tips to ensure a great time is had by all at your next summer party.
1. Create An Outdoor Dining Room
Moving the party outdoors can be as easy as taking your food out to the patio. But to really set the scene for a memorable summer party, consider creating an outdoor dining room. Treat your patio or deck as you would your finest interior space and outfit it with furnishings and accessories that are inviting and comfortable.
Start with a quality outdoor table and chairs. Chairs with armrests and cushioned seats allow your guests to dine outside and linger in comfort. To add softness underfoot, and to make it easier for chairs to slide in and out on uneven or rough surfaces, place an outdoor rug beneath the table.
If your space is large, create zones throughout your outdoor area, designating spots for dining and for lounging. Consider adding partitions or outdoor screens to bring a sense of privacy and to further define each room. In our backyard, I’ve used Philips Hue Calla Outdoor Bollards around the perimeter of our stone patio. The lights visually separate the dining area from the grass and make the patio seem more grand and special.
2. Decorate With Nature
Summer is a wonderful time to decorate with plants, indoors and outdoors. Though your outdoor dining space might already be surrounded by grass and trees, bringing additional natural elements into your decor can enhance the summertime feel. Here, I’ve used vibrant florals and leafy ferns to decorate the dining area. Their beautiful textures, gorgeous colours, and fresh scents make this outdoor scene come alive.
You don’t have to limit yourself to flowers or plants. Branches cut from the garden and simply placed in a vase can be a dramatic centrepiece, or use rocks, shells and driftwood to create a coastal inspired tableau. I’ve used the natural hues of the wooden lanterns and woven chargers to bring warmth to my table setting.
3. Add Vibrant Colour
Nothing complements the greens of summer better than bright, bold hues. Opt for outdoor tableware or table linens in happy patterns and vibrant colours. A brightly decorated table puts everyone in a party mood. I love a good party theme and outdoor entertaining is a perfect excuse to be creative and have fun with your decor. Think a spicy Mexican fiesta, an ocean blue Mediterranean banquet or Miami pastel brights. Use colourful accessories like hanging lanterns, outdoor pillows, or garden decor to add personality.
4. Use Lighting To Enhance The Mood
Outdoor lighting can play an important role in enhancing the mood of your party. As the sun begins to set, lighting can keep the energy high and the food and drinks visible. Smart outdoor lighting provides enhanced versatility, ensuring you can provide the right backdrop for any occasion.
Previously, I installed Philips Hue Lily Outdoor Spotlights in the backyard. They provide great accent lighting, up light the trees beautifully, and provide added security. With the addition of Calla Bollards, I now have a lighting system fit for entertaining.
Using the Philips Hue app, I’m able to control the lights separately or in tandem. Smart lighting is wonderful because you can adjust the ambiance to any occasion: a big party, an intimate dinner or a moment of relaxation on a late summer night. By adapting the colour and level of the light, you create the right setting to fully enjoy any moment outside.
5. Keep Guests Comfortable
Unlike an indoor party, the environment will have a huge impact on the success of your summer party. There’s two basic things every outdoor party guest wants: to be neither too hot nor too cold, and to keep the bugs away! The first goal is easily achieved by keeping the drinks cooler well stocked and having amenities available. Stock a small tray with sunblock, hand wipes, and stow a basket of throws and blankets nearby for guests to use at their convenience.
Keeping bugs away is a bit trickier. Citronella candles, insect-deterring lanterns, and natural repellants like lavender or peppermint oil can help to keep mosquitos at bay. You can also pre-treat the party zone with repellant sprays. But if all else fails, move the party inside for after dinner drinks.
Whether you’re hosting an intimate dinner on the patio or barbecues every weekend, summer entertaining can be a breeze. Follow these easy outdoor entertaining tips and your next summer party is sure to keep going all night long.
Disclosure: This conversation is sponsored by Philips Hue. All words, photos, and opinions are my own.