YarnSub Newsletter

October 2020


Newly-published books

[Book: 'First Time Knits' by Louise Walker] [Book: 'Japanese Wonder Knitting' by Nihon Vogue] [Book: 'Custom Shawls' by Kate Atherley and Kim McBrien Evans]

Louise Walker's book, First Time Knits, teaches knitting in pretty much the way I would if I were teaching in person—essentially by getting yarn and needles into the learner's hands as soon as possible and just showing them what to do next. I like the way Louise gets straight to the point, instead of boring and overwhelming the reader with pages of background information. There is also an accompanying website with video tutorials, which make the experience even more like having a real-life teacher. If you know someone who is stuck at home and might be interested in learning to knit, I think this book could go down very nicely—and maybe even create a new knitter!

Japanese stitch dictionaries are filled with charts for highly-patterned, delicate swatches, but few include complete patterns for how to use them. Japanese Wonder Knitting aims to bridge that gap, with a design included for every stitch pattern in the book.

If you like the idea of designing your own shawl but want the comfort of knowing that the design will work out well, then Custom Shawls may be the book for you. You can choose a shape and combine it with a stitch pattern to come up with your own shawl 'recipe'. And if even that seems too risky, just follow one of the finished designs, knowing that Kate Atherley and Kim McBrien Evans will have done a great job of explaining how to do it!

See all newly published books >

New and discontinued yarns

New yarn: Fyberspates Tarma Aran

New yarn: Fyberspates Tarma Aran – Image © Fyberspates

New

FreeMarker template error (DEBUG mode; use RETHROW in production!): Java method "com.yarnsub.model.Yarn.newWhen()" threw an exception when invoked on com.yarnsub.model.Yarn object "com.yarnsub.model.Yarn@9f0f8472"; see cause exception in the Java stack trace. ---- FTL stack trace ("~" means nesting-related): - Failed at: #if yarn.newWhen()?? [in template "yarn-changes.template" at line 163, column 1] ~ Reached through: #nested [in template "shared.macro" in macro "standardPage" at line 166, column 1] ~ Reached through: @m.standardPage title=title extraHead... [in template "yarn-changes.template" at line 14, column 1] ---- Java stack trace (for programmers): ---- freemarker.core._TemplateModelException: [... Exception message was already printed; see it above ...] at freemarker.ext.beans._MethodUtil.newInvocationTemplateModelException(_MethodUtil.java:289) at freemarker.ext.beans._MethodUtil.newInvocationTemplateModelException(_MethodUtil.java:252) at freemarker.ext.beans.SimpleMethodModel.exec(SimpleMethodModel.java:77) at freemarker.core.MethodCall._eval(MethodCall.java:65) at freemarker.core.Expression.eval(Expression.java:83) at freemarker.core.ExistsExpression._eval(ExistsExpression.java:49) at freemarker.core.Expression.eval(Expression.java:83) at freemarker.core.Expression.evalToBoolean(Expression.java:161) at freemarker.core.Expression.evalToBoolean(Expression.java:147) at freemarker.core.ConditionalBlock.accept(ConditionalBlock.java:48) at freemarker.core.Environment.visit(Environment.java:366) at freemarker.core.IteratorBlock$IterationContext.executedNestedContentForCollOrSeqListing(IteratorBlock.java:317) at freemarker.core.IteratorBlock$IterationContext.executeNestedContent(IteratorBlock.java:271) at freemarker.core.IteratorBlock$IterationContext.accept(IteratorBlock.java:242) at freemarker.core.Environment.visitIteratorBlock(Environment.java:642) at freemarker.core.IteratorBlock.acceptWithResult(IteratorBlock.java:107) at freemarker.core.IteratorBlock.accept(IteratorBlock.java:93) at freemarker.core.Environment.visit(Environment.java:366) at freemarker.core.IteratorBlock$IterationContext.executedNestedContentForCollOrSeqListing(IteratorBlock.java:317) at freemarker.core.IteratorBlock$IterationContext.executeNestedContent(IteratorBlock.java:271) at freemarker.core.IteratorBlock$IterationContext.accept(IteratorBlock.java:242) at freemarker.core.Environment.visitIteratorBlock(Environment.java:642) at freemarker.core.IteratorBlock.acceptWithResult(IteratorBlock.java:107) at freemarker.core.IteratorBlock.accept(IteratorBlock.java:93) at freemarker.core.Environment.visit(Environment.java:366) at freemarker.core.Environment.invokeNestedContent(Environment.java:618) at freemarker.core.BodyInstruction.accept(BodyInstruction.java:60) at freemarker.core.Environment.visit(Environment.java:366) at freemarker.core.Environment.invoke(Environment.java:775) at freemarker.core.UnifiedCall.accept(UnifiedCall.java:83) at freemarker.core.Environment.visit(Environment.java:330) at freemarker.core.Environment.visit(Environment.java:336) at freemarker.core.Environment.process(Environment.java:309) at freemarker.template.Template.process(Template.java:384) at com.yarnsub.util.template.FreemarkerTemplateProvider$1.render(FreemarkerTemplateProvider.java:77) at com.yarnsub.server.pages.AbstractPage.handle(AbstractPage.java:31) at com.yarnsub.http.Dispatcher$PathMatchingHandler.handle(Dispatcher.java:60) at com.yarnsub.http.Dispatcher$InternalDispatcher.handle(Dispatcher.java:81) at com.yarnsub.server.pages.YarnsubWebsite$PageNotFoundFilter.handle(YarnsubWebsite.java:227) at com.yarnsub.http.Filters$ComposedFilter$1.handle(Filters.java:102) at com.yarnsub.http.ExceptionFilter.handle(ExceptionFilter.java:11) at com.yarnsub.http.Filters$ComposedFilter.handle(Filters.java:98) at com.yarnsub.http.Filters$FilterableHandler.handle(Filters.java:71) at com.yarnsub.http.Dispatcher.handle(Dispatcher.java:20) at com.yarnsub.http.jetty.JettyServer$1.handle(JettyServer.java:29) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132) at org.eclipse.jetty.server.Server.handle(Server.java:503) at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:364) at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:260) at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:305) at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103) at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:118) at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:333) at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:310) at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:168) at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:126) at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:366) at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:765) at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:683) at java.base/java.lang.Thread.run(Thread.java:832) Caused by: java.lang.NumberFormatException: For input string: "Sometimes branded as 'Virtual Yarns'." at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:68) at java.base/java.lang.Integer.parseInt(Integer.java:652) at java.base/java.lang.Integer.parseInt(Integer.java:770) at com.yarnsub.model.AbstractModel.getDate(AbstractModel.java:30) at com.yarnsub.model.Yarn.newWhen(Yarn.java:40) at jdk.internal.reflect.GeneratedMethodAccessor54.invoke(Unknown Source) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:564) at freemarker.ext.beans.BeansWrapper.invokeMethod(BeansWrapper.java:1505) at freemarker.ext.beans.SimpleMethodModel.exec(SimpleMethodModel.java:72) ... 57 more

If you'd like to get in touch, please send a mail to hello@yarnsub.com (you can simply reply to this mail) or find me on Ravelry and Instagram.

Take care, and see you in November.

Wendy


Disclaimer: YarnSub provides information for guidance only and doesn't guarantee its accuracy. We try hard to get it right though—please let us know if you see any issues, via email to hello@yarnsub.com.

Affiliate links: YarnSub is a participant in the Amazon Services LLC Associates Program, an affiliate advertising program designed to provide a means for sites to earn advertising fees by advertising and linking to amazon.com.

Click if you would like to unsubscribe.

If this article was your cup of tea...

Subscribe to our Yarn Geeks newsletter!

Subscribe
We will never share your e-mail address and you can unsubscribe at any time.

About YarnSub

Search for a yarn on YarnSub

YarnSub lets you find substitutes for yarns you can't get hold of.

Explore >