ni What Jenni Said About The Art of The Gathering: Fantastic By www.thatswhatjennisaid.com Published On :: Mon, 01 May 2023 23:31:00 +0000 Priya Parker's book The Art of The Gathering (TAoG) was recommended to me by a friend from church who knows how much I enjoy putting together events for others. As I began reading TAoF, I was quite inspired by the rich meaning Parker ascribes to gathering, and the significant possibilities of making a concrete difference in the world through our gatherings. Yes, I nodded to myself, the events I put together do matter. Nice ego stroke. But as she laid out a step by step methodology for ensuring those gatherings have purpose and are effective, my kneejerk reaction was that her approach felt overly controlling and I worried my guests would resent the kind of manipulative engineering she describes. What happened to organic gatherings that are completely open and free from any sort of direction? Isn't that where happiness and change can take root? Turns out, not so much. She makes a very good case for why proper planning and execution of gatherings under thoughtful leadership make for the best gatherings. I recalled the best events I've ever been to, and had to admit Parker was right - those that were carefully planned with purpose and direction, where the guests and activities were curated, turned out to be the most impactful. So I've made it a goal to put the principles she's laid out in TAoG into practice, and it's going well so far. I set an intentional purpose for each gathering. I curate the invite list based on that purpose. I choose a setting that aids the purpose (the right density; the right locale). I actively manage the event - not heavy handed mind you, but not laissez faire - to protect/equalize/connect my guests. I aim to always create a temporary escape from the world during my events. I work hard before each event and prime my guests for the event. During the events, I include activities that encourage people to open up with each other. And I close the events with a recollection of our purpose, summarize the event, and try to leave my guests with something memorable. If you are responsible (or enjoy and would like to be responsible) for organizing and hosting events (for work, for pleasure, as a volunteer, etc) I highly recommend this book. Life is too short to just go through the motions of meetings and events; they should be infused with purpose and Parker can teach you how to make it so. I especially encourage this as a read for those in the Christian community who have been given the gift of hospitality and want to refine and improve their event hosting, understanding that showing God's love to others through event planning and hosting is important work in the kingdom. Full Article book reviews Penguin Books
ni What Jenni Said About “The Body”: Glorious Detail By www.thatswhatjennisaid.com Published On :: Tue, 02 May 2023 01:00:00 +0000 With "The Body", Bryson has done for our flesh houses within which we reside what he previously did for our brick and mortar ones in his book "At Home". We have been treated to a full walk-through of the entire human body and all its functionality, in glorious detail. Bryson's language is beautiful and at times also mystical in its descriptiveness: "You have a meter of it [DNA] packed into every cell, and so many cells that if you formed all the DNA in your body into a single strand, it would stretch ten billion miles, to beyond Pluto. Think of it: there is enough of you to leave the solar system. You are in the most literal sense cosmic." Perhaps what I love most about "The Body" is the detailed narrative Bryson provides on so many key people in the history of medicine, infectious diseases, anatomy, etc. Many of these people I'd never heard of before and it was enlightening to read their fascinating (and often sad) stories. It seems there is a lot of drama and intrigue in the world of medicine. As with all books on science and medicine, some portions of the text are outdated. For example, Bryson writes that we have no idea what the full mechanism causing labor to begin for a pregnant woman involves. Only, the thing is, now we do. Per some of the medical research of late, it seems to be induced by chemicals the fetus releases after their lungs are fully developed. So, as you read, should you come across one of his statements that science still hasn't figured out X yet, go ahead and google it because it's entirely possible that science has actually figured it out by the time you've sat down to read the book. This is probably my favorite book by Bryson, outside of Notes from a Small Island. I recommend it highly as an addition to your library. A good read for young adults as well. Buy This Book Full Article Anchor Books book reviews
ni 24 Things, Many of Which Are Still Likely To Be Elephants or Bears, Especially Elephants; But Also It’s Vanishingly Unlikely There’ll Actually Be 24 of Them, or Even Close - Thing One. And Possibly Only. By johnfinnemore.blogspot.com Published On :: Fri, 01 Dec 2023 21:12:00 +0000 Alt text: a stylish woman in a coat, who is emphatically neither an elephant nor a bear. Not everyone is. Full Article
ni As Someone Quite Rightly Points Out, Actually an Entirely Uncertain Number of Things - Things Eight and Nine By johnfinnemore.blogspot.com Published On :: Sun, 10 Dec 2023 23:57:00 +0000 Alt Text: Two dog walkers, walking two dogs. (It looks as if I've whimsically made it look like one of the dogs is interested in a butcher's signboard advertising sausages, but actually it wasn't me who did that. It was the dog.) Full Article
ni New ebook editions of Hominids and its sequels By sfwriter.com Published On :: Sat, 24 Feb 2024 22:50:24 +0000 I’m thrilled to announce new ebook editions of my Hugo Award-winning novel Hominids, its Hugo Award-nominated sequel Humans, and the bestselling final volume Hybrids. Together, they are the Neanderthal Parallax trilogy, which won the Canadian Science Fiction and Fantasy Award (“the Aurora”) for best work of the entire decade. The trilogy tells of a parallel […] Full Article Uncategorized Ebooks Hominids Humans Hybrids
ni Remembering Michael Lennick By sfwriter.com Published On :: Thu, 07 Nov 2024 14:49:35 +0000 Every Canadian of my generation knows the line, “I told him, Julie, don’t go!” It was said by Sylvia Lennick, the mother of my dear friend, the great Canadian filmmaker and special-effects expert Michael Lennick. Michael passed away ten years ago today, on November 7, 2014, at just 61 years of age. He’d been admitted […] Full Article Uncategorized RIP
ni Ken and Robin Talk About Stuff: Uninterested in Not Attacking By robin-d-laws.blogspot.com Published On :: Fri, 15 May 2020 13:22:00 +0000 In the latest episode of their easily spotted podcast, Ken and Robin talk Invisible Men, coarse vs granular ability lists, and Ken's last book raid for the duration. Full Article
ni TIFF Day 6: Gay Teen Melodrama, A Brilliant Anthony Hopkins Performance, and Epic Municipal Poetry By robin-d-laws.blogspot.com Published On :: Wed, 16 Sep 2020 13:06:00 +0000 City Hall [US, Frederick Wiseman, 4] The latest of Wiseman’s distinctive epic-length observational documentaries studies the quotidian, procedural and human moments of human life as seen through the processes of municipal government in Boston, as held together by the thoughtful charisma of Mayor Martin Walsh. Improbably absorbing as always, this institutional cross-section offers a beguiling vision of an oasis of good government in the USA. In a normal year I’d wait for the four and a half hour Wiseman documentary to arrive on television rather than taking up two time slots to watch it from the confines of a cinema seat at TIFF. But this is not such a year and with a digital screening you get a pause button when you need it. This is bound for PBS and due to the breadth of its subject matter will serve as an excellent introduction to those unfamiliar with this pillar of the documentary form. Or track down 2017’s Ex Libris, about the New York Public Library. In North America Wiseman’s filmography can be found on the Kanopy platform, which you may be able to access through your public library system. The Father [UK, Florian Zeller, 4] Retired engineer (Anthony Hopkins) struggles to piece together the confusing reality of his living circumstances as his daughter (Olivia Colman) copes with his progressing dementia. Impeccably performed stage play adaptation puts the viewer inside the contradictory shifts of the protagonist’s subjective viewpoint. Forget Draculas and Cthulhus. This is the real terror. Summer of 85 [France, Francois Ozon, 4] Love between two young men in a French beach town leads to a bizarre crime. Teen emotions run high in a sunlit melodrama of Eros and Thanatos. Capsule review boilerplate: Ratings are out of 5. I’ll be collecting these reviews in order of preference in a master post the Monday after the fest. Films shown on the festival circuit will appear in theaters, disc and/or streaming over the next year plus. Full Article toronto international film festival
ni Pre-Adventure Planning 101 :: with guest blogger Justin Lichter By natgeomaps.blogspot.com Published On :: Wed, 05 May 2010 15:34:00 +0000 Hi everybody! I was honored when I was asked to write a blog entry for National Geographic Maps so hopefully this is informative and entertaining. For the first blog entry we thought it would be a good intro for me to talk about the planning stages, training, and of course map work that takes place prior to an expedition or adventure. If you want to find out more on my personal adventures you can check out my website at http://www.justinlichter.com/. A quick recap of a few of the main adventures would entail hiking unsupported 1800 miles through Africa, hiking across Iceland, hiking south to north across the South Island of New Zealand, swimming unsupported around Lake Tahoe, and hiking over 10,000 miles in one year.All of these trips start with a dream and a desire to see these landscapes. I feel that you see and get to know the terrain, scenery, and culture on a personal level when you undertake a trip under your own power with no support and no aid from motorized equipment. Many of these trips followed my own route that I devised and made up trying to connect existing hiking trails, little used dirt roads and jeep roads, and cross country travel in order to stay off of paved roads and highly traveled roads as much as possible. Initially I research what areas I would like to see and what hiking trails are in the area. Then I try to get an overview atlas map or road map and a slightly more in depth overview map (like something in the range of 1:250,000 to 1:500,000). The overview maps help me locate potential places to connect and areas with few roads that I would want to go through. After I have a good idea of the route on those maps, I then put a number of potential routes down onto smaller scale maps (1:24000 to 1:100,000). I then tweak it from there, but in a few places I usually keep a number of route choices on the map in case I think certain areas need alternates in case of high water fords, technical spots, potential cliff areas, or anything else tricky the landscape may throw my way.I’ll then go through the maps and figure out what roads I cross and towns that I come near. I’ll figure out distances between these points and use these towns to resupply from and get more food.During these planning stages I am also training for the hike so that when I set out I am ready to do 25-30 miles per day from the start. Usually for training I end up doing a lot of cross training since it is usually the winter when I am training to set out on a hike starting in the spring. As a result I normally do a lot of skate skiing, classic skiing, backcountry touring, telemark skiing, snowshoeing, and some short walks on the road. After so many hikes I think that my body is pretty used to that type of work so if I can maintain my fitness level then that helps in the break in period on the hike. However, I usually try to carry a loaded backpack a little bit so that my shoulders and hips get used to the weight on them prior to the hike.I think that is a little recap of the initial stages of the pre-adventure planning. Hope that helps and was interesting. I’ll be blogging more on the site about some adventures, tricks and tips, and many other things, so come back and check it out! Blogger Bio— Meet our guest blogger, Justin LichterI grew up about an hour north of NewYork City and have since lived in Santa Barbara, CA, southern VT, Dillon, CO, and I am currently living in Truckee, CA. When not hiking, I am a ski patroller and enjoy backcountry skiing, nordic skiing, snowshoeing, mountain biking, and pretty much anything else relaxing. Since 2002, I have hiked over 20,000 miles. In 2002 doing a cross-country map and compass trip through the canyon country of southern utah, in 2003 hiking from Georgia to Cap Gaspe, Quebec following the Appalachian Trail and International AT, 2004 hiking the Pacific Crest Trail from Mexico to Canada and then the Pacific Northwest Trail to the Washington coast, 2005 the Continental Divide Trail from Mexico to Canada then continuing on the Great Divide Trail from the Canadian border up into northern Alberta, 11/1/05 to 10/23/06 completing the Eastern Continental Trail (cap gaspe, qc to key west, florida, incorporating the AT), Pacific Crest Trail, and Continental Divide Trail in under a year, a total of over 10,000 miles, and in 2007 a traverse of the Southern Alps and the south island of New Zealand. As well as amazing trips each year after. You can check out my website at http://www.justinlichter.com/ for more info. Full Article
ni Adventure Planning :: with globe trekker, Justin Lichter By natgeomaps.blogspot.com Published On :: Wed, 08 Sep 2010 21:03:00 +0000 With summer starting to wind down, the mosquitoes and black flies are fading. Winter will come soon. It is a great time of year to get outside and also start dreaming of trips that you want to do for next summer. I mentioned in a previous blog post how I go about looking into the routes that I am going to embark on, so naturally I want to transition to how you all can set out on a long hike.Here would be a few pointers that I would recommend.1. Plan, Plan, Plan.You haven’t planned enough if you haven’t thought about a lot of things for your trip. The route is one thing and the most obvious. However you should also be looking into how frequent and reliable the water sources are, how often you might be able to get more food or purchase food at a store, the weather for the area during that time of year, and fine tuning your gear. No doubt you will have some nerves at the start of a trip, but if you plan well and are comfortable with your gear going into the trip then that should ease the nerves a little.2. TrainAs your trip begins top take shape you will ideally start to train for the experience beforehand. This will help make your trip as enjoyable as possible as well as getting you used to your equipment. This will help your feet get ready, and if need be callused, for you shoes and to break in your shoes and help your hips and shoulders get used to wearing a backpack. If you prepare beforehand then you’ll be ready to hit the trail when the time comes and the mileage that you planned for the trip won’t be daunting. The training will also help in your planning because it will let you know what distances and terrain are obtainable for the trip in the time that you have.3. Gear Up, But Not Too MuchResearch the gear that you would like to use on the trip. Do as much research as possible looking online and asking questions of shop employees, but definitely do NOT just ask shop employees. Some store employees are great, but each has their own personal opinion and they might not even have done the activity or been to the terrain you are looking at doing. My typical gear list has many recurring pieces of gear, but there are also many things that change depending on location and time of year. This helps to keep your pack light by taking only what you will need. For example, there is no reason to carry a 3lb. -20 degree sleeping bag if you are heading out to the High Sierras in the summer. Chances are you can probably get away with a sub 2lb. 30 degree sleeping bag, especially if you plan on sleeping in a tent because that will add about 10 degrees to your sleep system. Get your system streamlined and dialed beforehand and then only take what you think you’ll need. If you don’t use it every day then generally you don’t need it. Also, try to make things have multiple uses. For example I use a half length sleeping pad and then use my backpack for the lower half of my sleeping pad. This saves about 8oz on my sleeping pad and makes it more packable since my backpack won’t be needed for anything else while I am sleeping.4. GO!!!! And Have Fun!Set off on the trip and have a blast. Remember that if you are setting out on a longer trip and you think you might need a piece of gear, want to swap out a piece of gear, or find out shortly into the hike that you aren’t using something that you are carrying then you can always mail something that you are carrying back home when you get to a town to resupply. On the other hand you could also mail something to yourself by General Delivery to the post office in a town. If you mail it priority and decide you don’t need the gear, then don’t open it and you can usually forward it elsewhere for no charge! This is also a great trick so that you only need to carry the maps that you need for each section and not add weight by carrying maps for the entire trip. Use these tools to keep your pack light.For more info about Justin Lichter, follow him @ http://www.justinlichter.com/. Full Article
ni Great write up by The Oregonian on our new Washington Cascades trail maps... By natgeomaps.blogspot.com Published On :: Wed, 22 Sep 2010 14:20:00 +0000 Five new National Geographic maps complete coverage of Washington CascadesPublished: Tuesday, September 07, 2010, 3:15 AM Terry Richard, The Oregonian Washington's Cacades are covered.With the release of five new maps this summer by National Geographic, the rugged mountains of Washington are covered from the British Columbia border to Oregon.The maps are sold under the Trails Illustrated brand.New titles this year area Mount St. Helens/Mount Adams, Goat Rocks/Norse Peak/William O. Douglas Wilderness Areas, Alpine Lakes Wilderness, Glacier Peak Wilderness and Mount Baker/Boulder River Wilderness Areas.They go along with several other titles already in print to complete the coverage: North Cascades National Park, Mount Rainier National Park and Columbia River Gorge National Scenic Area.The full-color maps are printed on hefty water-proof, tear resistant paper. National Geographic is one of the best mapmakers in the business, so the maps meet the highest standards.The maps are topographical, but they cover such a large area that the contour interval is 50 feet. This is a little too big for serious off-trail mountain navigation, but National Geographic also sells state map series on CD Roms under the Topo brand with 20-foot contour intervals.The new printed maps maps are excellent for hiking and driving. They show most of the trails and most of the roadside amenities, in easy-to-read formats.Your map files may already contain U.S. Forest Service maps of the areas, but these maps often go 15 years or more between updates. The new Nat Geo maps are the best new maps at this time for the areas they cover.Look for them at stores that sell maps, though getting this many new titles in any particular store may be difficult.One place that does have them all is the Nature of the Northwest in Portland, at 800 N.E. Oregon St., Suite 965. Phone number is 971-673-2331.You can also order them from National Geographic. Cover price is $11.95. For more information visit Trails Illustrated Washington maps.-- Terry Richard Full Article
ni San Juan College :: 'Leave No Trace' Training By natgeomaps.blogspot.com Published On :: Tue, 12 Oct 2010 17:34:00 +0000 Last weekend my class and I headed to the Black Canyon of the Gunnison National Park for a Leave No Trace Trainer Course. The training was a part of a Wilderness Ethics class being offered by San Juan College. We were all super pumped to be headed to a beautiful place like the Black Canyon for a “class”.If you have ever been on a Leave No Trace Trainer Course, then you will know that the first topic talked about is Plan Ahead and Prepare. Our instructor mentioned that it might be the most important principle as it will set you up for success for your next outdoor adventure. Included in the discussion were the hiking/backpacking 10 Essentials, in which a map is one of those ten. As a self-proclaimed “map geek”, I was pretty excited to see our instructor pull out the Trails Illustrated Black Canyon of the Gunnison National Park and Curecanti NRA Map.The map was a vital resource for planning our hikes for the weekend. By studying the contour lines and trail distances on the map we were able to determine which trails were the most suited to our group’s physical abilities and the class’ educational purposes. The map provided basic details like restroom locations, but was also detailed enough to show us what areas of the park required a backcountry permit. The map made several appearances during our hikes and quite a few more back at camp while students planned a return trip later this fall.David Whitford – Student, San Juan College Full Article
ni New program will see pregnant mothers and babies protected from life-threatening virus - SBS By news.google.com Published On :: Tue, 12 Nov 2024 04:16:06 GMT New program will see pregnant mothers and babies protected from life-threatening virus SBSWorld-leading approach to protect babies from RSV Department of HealthGovernment-funded RSV vaccines to protect infants from severe disease Australian Pharmacist'Very scary': Wagga mum's plea for parents to protect babies through RSV jab The Daily AdvertiserGuild backs free RSV vaccinations Australian Journal of Pharmacy Full Article
ni New Model Predicts Intelligent Life Odds in Universe - Mirage News By news.google.com Published On :: Wed, 13 Nov 2024 00:04:00 GMT New Model Predicts Intelligent Life Odds in Universe Mirage NewsFormula for alien life: Drake Equation gets a dark energy update Cosmos Full Article
ni Streaks of fire are about to take over Australian skies during the Leonid meteor shower. Here’s how to see them - nbnnews.com.au By news.google.com Published On :: Wed, 13 Nov 2024 05:27:05 GMT Streaks of fire are about to take over Australian skies during the Leonid meteor shower. Here’s how to see them nbnnews.com.auThe Northern Taurid meteor shower could produce fireballs. Here’s how to watch CNNNorthern Taurid meteor shower hits peak activity this week: When and where to watch USA TODAYLeonid Meteor Shower May Put on a Surprise Show This Week ScienceAlertStarwatch: Leonid meteor shower returns to skies in November The Guardian Full Article
ni New prime time kings as AFL’s 2025 Thurs night blockbusters revealed - Fox Sports By news.google.com Published On :: Wed, 13 Nov 2024 03:23:30 GMT New prime time kings as AFL’s 2025 Thurs night blockbusters revealed Fox SportsThree Thursday night fixtures revealed CollingwoodWhat we know about the 2025 fixture: Thursday nights back with a bang, Smith to face Dogs in blockbuster The Age Full Article
ni All-time reaction to coaching ‘disaster’; Steph’s stunning clutch moment: NBA Wrap - Fox Sports By news.google.com Published On :: Wed, 13 Nov 2024 07:12:35 GMT All-time reaction to coaching ‘disaster’; Steph’s stunning clutch moment: NBA Wrap Fox SportsBike rides and Balkan music: Klay Thompson is embracing a fresh start with the Mavericks ESPN Australia10 unforgettable Klay Thompson moments with Warriors ahead of return NBA.comDub Hub: Warriors players share ‘welcome back’ messages for Klay Thompson’s return Golden State of Mind Full Article
ni Second Nine news executive leaves in wake of cultural review - Sydney Morning Herald By news.google.com Published On :: Wed, 13 Nov 2024 04:51:00 GMT Second Nine news executive leaves in wake of cultural review Sydney Morning HeraldNine executive quits embattled network news.com.auAnother executive departs beleaguered Nine Network Daily Telegraph Full Article
ni Corporate regulator sues Cbus over unresolved insurance claims - Sydney Morning Herald By news.google.com Published On :: Tue, 12 Nov 2024 05:34:06 GMT Corporate regulator sues Cbus over unresolved insurance claims Sydney Morning HeraldVIDEO Cbus taken to court accused of failing to pay thousands of claims ABC NewsSuper fund in strife over $20m in delayed payments The Canberra Times Full Article
ni Volcanic eruption grounds Bali flights, leaving travellers stranded - Sydney Morning Herald By news.google.com Published On :: Wed, 13 Nov 2024 06:35:41 GMT Volcanic eruption grounds Bali flights, leaving travellers stranded Sydney Morning HeraldBali flight cancellations continue due to dangerous volcanic ash clouds SBS NewsBali flight cancellations continue as volcano spews ash 9NewsAussies stranded in Bali volcano nightmare Daily Telegraph Full Article
ni As it happened: Donald Trump ally taunts Kevin Rudd; WiseTech shareholders launch class action - Sydney Morning Herald By news.google.com Published On :: Wed, 13 Nov 2024 07:01:11 GMT As it happened: Donald Trump ally taunts Kevin Rudd; WiseTech shareholders launch class action Sydney Morning HeraldDitching Rudd over Trump insults would be ‘worst possible signal’: Turnbull Sydney Morning HeraldSenior Liberal calls for Rudd to be sacked after Trump advisor suggests US ambassador is on thin ice 9News Full Article
ni Murder charge after beloved Elvis impersonator found dead after karaoke night - 9News By news.google.com Published On :: Wed, 13 Nov 2024 06:02:44 GMT Murder charge after beloved Elvis impersonator found dead after karaoke night 9NewsBeloved Elvis impersonator allegedly murdered after karaoke night Sydney Morning HeraldLove Island winner's best mate is accused of killing beloved grandad - after the Good Samaritan had tried to h Daily MailVideo: Elvis impersonator named as alleged murder victim WAtoday Full Article
ni Kristian White trial: CCTV reveals final moments before Clare Nowland Tasering in Cooma nursing home - Sydney Morning Herald By news.google.com Published On :: Wed, 13 Nov 2024 00:59:27 GMT Kristian White trial: CCTV reveals final moments before Clare Nowland Tasering in Cooma nursing home Sydney Morning HeraldJury shown footage of 95yo getting stuck in tree in weeks before being tasered by police officer ABC NewsElderly woman 'unable to comply' before cop Tasered her, court hears 9News Full Article
ni Emotional Manipulation In Fundraising By onfundraising.blogspot.com Published On :: Tue, 13 May 2008 02:15:00 +0000 BethDunn just wrote a great post about mail fundraisng appeals and two schools of thought that are applied to them throughout the industry.On the one hand there is the practical appeal to a donor's sense of logic and decency. On the other hand, there are the emotional appeals dripping with manipulation sent out to shock or shame a donor into action.While On Fundraising's primary focus is telephone fundraising, this subject matter is relevant to On Fundraising for two reasons.Mail appeals and phone appeals are generally part of the same campaign. Sometimes a donor is called first, other times they'll get a mailer and then a follow up call.Increasingly donors are savvy enough and self-aware enough to take strong offense at the manipulative tone of fundraising letters. We live in an age where almost any information is available to those who want to find it. Todays activist donors do just that.Donor's often know more about a subject than the front line people raising money for it. As well they should. So sending out these mail broadsides is certainly no good way to show respect for a donor's intellect or for their prior support.The second reason this issue applies to On Fundraising, is that many telefundraisers mirror or amplify the sentiments expressed by these letters in a misguided attempt to manipulate donors into reactionary giving based solely on emotion. This works for now, however donors are self-aware and savvy enough to know when they're being manipulated. Surprisingly enough, they don't like it.Todays donors aren't simply tithing blindly in the hopes that some good will come of it. More and more, donors support organizations as active participants in an effort to improve our world. How does a person like this feel when they receive a dunning letter dripping with sensationalized woe? Like a patsy.All in all, these medieval scare tactics don't belong in modern fundraising. Yes psychology has its place in fundraising, but too often psychology is a euphemism for manipulation. Fundraisers who are good at their jobs are masters of speech, language, and persuasion. Its better to convince someone to give than to trick them into it .http://smalldots.wordpress.com/2008/05/12/the-model-of-a-modern-major-fundraising-letter/ Full Article advanced fund rasing techinques draising ethical fundraising fundraising letters
ni Quick Rapport Technique. By onfundraising.blogspot.com Published On :: Wed, 05 Jun 2013 13:30:00 +0000 As most fundraisers know, building rapport with donors keeps them on the phone and listening to your request. Rapport isn't a clever trick; it is a means of showing donors that you are interested in them and that you have at least some small things in common. We build rapport in almost every conversation we have whether on or off of the phone. Building rapport with someone you've just called for the first time can be a little harder, but it is certainly possible. One simple technique for rapport building is knowing the state nicknames or motto's of the states that you're dialing into. Asking a donor how things are going in the Equality State rather than simply how things are going, makes your question more intimate. Donors really do open up when you take a personal interest in them. Listed below are the state nicknames. StateNickname(s) Alabama(No official nickname)[1] Cotton Plantation State[2] Cotton State[3] Heart of Dixie[3][4][5] Lizard State[2] Yellowhammer State[3] Camellia State Alaska Great Land (previously used on license plates) Land of the Midnight Sun[6] Land of the Noonday Moon[6] The Last Frontier (presently used on license plates)[6][7] Seward's Folly (named after U.S. Secretary of State William H. Seward)[6] Seward's Ice Box, Icebergia, Polaria, Walrussia, and Johnson's Polar Bear Garden were satirical names coined by members of theU.S. Congress during debate over the Alaska Purchase[6] Arizona Apache State[8] Aztec State[8] Baby State (during the 47 years that Arizona was the newest state in the Union)[8] Copper State[8] Grand Canyon State (currently used on license plates)[8][9] Italy of America[8] Sand Hill State[8] Sunset State[8] Sweetheart State[8] Valentine State (Arizona gained statehood on February 14, 1912)[8] Arkansas Bear State[10] Bowie State[10] Hot Springs State[10] Land of Opportunity (former official nickname; previously used on license plates)[10] The Natural State (currently used on license plates)[11][10] Razorback State[10] Toothpick State[10] Wonder State[10] Diamond State California El Dorado State The Golden State[12][13] (previously used on license plates) The Land of Sunshine and Opportunity Golden West Grape State Land of Milk and Honey Land of Fruits and Nuts Where Stars Are Buried The Cereal Bowl of the Nation The Eureka State [14] The Bear State (or Republic) The Sunshine State (in disuse) (c.f. FL) Colorado Buffalo Plains State[15] (in disuse) Centennial State[16] (previously used on license plates) Colorful Colorado[16] (previously used on license plates) Columbine State[17] Highest State[15] Lead State[15] (in disuse) Mother of Rivers[18] Rocky Mountain Empire[19] Rocky Mountain State[20] (in disuse) Silver State[15] (in disuse; see Nevada) Switzerland of America[21] Connecticut Constitution State Nutmeg State Charter Oak State Delaware Chemical Capital[22] Corporate Capital (due to the state's business-friendly laws)[22] Diamond State (allusion to the state flag)[22] Blue Hen State or Blue Hen Chicken State[23] The First State[24][22] (Delaware was the first state to ratify the Constitution; currently used on license plates) Home of Tax Free Shopping[22] New Sweden[22] Peach State[22] Small Wonder[22] Uncle Sam's Pocket Handkerchief[22] District of Columbia A Capital City (previously used on license plates) The Federal City The District[citation needed] Florida Alligator State[25] Citrus State[citation needed] Everglade State[25] Flower State[25] God's Waiting Room Gulf State[25] Hurricane State[citation needed] La Florida Manatee State[citation needed] Orange State[25] Peninsula State or Peninsular State[23] Sunshine State (currently used on license plates) Tropical State[Full Article advanced fund rasing techinques empathy ethical fundraising fundraising tips fundrasing rapport tele-marketing tips ni Cognition, culture, … and communication? By languagelog.ldc.upenn.edu Published On :: Mon, 11 Nov 2024 13:13:17 +0000 An interesting recent review article (Wooster et al., "Animal cognition and culture mediate predator–prey interactions", Trends in Ecology & Evolution 2024) argues for bridging the academic silos of "predator-prey ecology" and "animal cognition and culture": Abstract: Predator–prey ecology and the study of animal cognition and culture have emerged as independent disciplines. Research combining these disciplines […] Full Article Animal communication ni So its Goodnight From Him By magistratesblog.blogspot.com Published On :: Tue, 01 Nov 2016 16:46:00 +0000 A colleague, who has sometimes posted here as Bystander N, has sent me the following, asking me to put it on the blog. It is gratifying, and I hope that it is true. Tomorrow is a particularly sad day for my bench. I know Bystander and he had no idea I was going to write this short piece. Tomorrow he will be officially “past it”, though of course in reality nothing like past it and he is as sharp as they come. Both here on this blog and in our retiring rooms we will miss his kindness, warmth, immense knowledge, sense of fair play, sense of humour and seemingly endless stream of amusing court anecdotes. I have not always agreed with him on bail and sentence decisions but that’s the way the system works. I have learned a great deal from him and I am really sorry he will not be amongst us any longer. I have heard him say that he thinks he saw the best of the bench many years ago. He may be right but I’m still sure, even if he will not miss all of it, he will miss most of it. Full Article ni Senior Wig Writes By magistratesblog.blogspot.com Published On :: Mon, 07 Nov 2016 21:54:00 +0000 I have just had a letter on lovely thick straw-coloured letterhead from the Royal Courts of Justice in which a Rt.Hon.Lord Justice thanks me for my 31 years' service on the bench. That's nice, and I shall pass it on to my granddaughters in due course. Both of their parents are solicitors. My impending third grandchild will have two journalists as parents, so that's nice too. Full Article ni In The Nick By magistratesblog.blogspot.com Published On :: Mon, 26 Dec 2016 10:40:00 +0000 Prisons are in the news again, following recent outbreaks of disorder. This is an excellent piece from the Telegraph I have been to Hollesley Bay a couple of times; it had a completely different culture from closed prisons such as the Scrubs, with a target of getting inmates ready for work on release. Full Article ni Gillings finishes sixth in Italy By www.bbc.co.uk Published On :: Wed, 14 Mar 2012 16:52:00 GMT British number one Zoe Gillings finishes sixth at the penultimate round of the boarder-cross World Cup in Valmalenco. Full Article Winter Sports ni Busy Writing and Running Summer By greglsblog.blogspot.com Published On :: Sat, 20 Aug 2016 22:32:00 +0000 Well, it's been a busy summer writing-wise. I'm letting a draft of a middle grade sci-fi adventure cure for a bit and also completed a work-for-hire project, and two-and-a-half nonfiction projects. (The half is still in-progress :-)). Circa 1995. No hills :-). After the Cap Tex Tri weather debacle, I reconsidered my original plan to try the Austin Half-Ironman (or Ironman 70.3 as they're calling the things these days). I'd wanted to do a couple Olympic distance races this summer (the other would've been the Tri Rock Austin Triathlon over Labor Day weekend) to get the kinks out before going for the longer distance. Unfortunately, the schedule didn't quite work out (and I'm going to be doing some school and bookstore visits in October, prime training time :-)). Also, this allows me to delay buying a new bike -- my current one is a 1989 Trek that is fine, but riding 50+ miles around the Hill Country, I can see where handlebar shifters would be useful :-). So I decided to dive back in to the Austin Distance Challenge and take up the Austin Runners Club on the marathon training (which would also help with next year's triathlons). My goal is a personal best or possibly Boston Marathon qualifying. (With the age-group corrections, BM qualifying has finally caught up with my PB :-)). The ARC program is based on the Runner's World "Run Less, Run Faster" program, which has you run three days a week and do other cardio work two days a week. One of the days is a track workout, one is a tempo run and the third is a long run, with pace times based on a one mile time trial we did a couple weeks ago. I have no idea if it will work, but I like it because I want to keep up the biking and running as well. After the long run I just completed the first week of the program and didn't actually hit any of my goal times, but I've never actually tried running for time, so at least the effort is interesting. I ran a trial mile of 7:10, slightly slower than my 6:50 from last spring and a lot slower than my PB of 5:55 (granted, twenty years ago :-)). From this, the track workout was supposed to be 4x1000 m at 4:09; my times were 4:20; 4:14; 4:15; and 4:22, so not terrible. The tempo workout was supposed to be 4 miles at a 7:38 pace and my actual pace was 7:46. I figured it would be a challenge to hit those marks but was glad to have been close. The long run was supposed to be 11 miles at 8:57, which I though I could do, no problem, since I'd done my half marathons last year at around 8:24. But with the humidity and heat (in August, hydration tends to be my biggest problem) and having only three hours of sleep (due to small feline mammals), I only did seven miles at a 9:07 pace. Based on limited data, I like the program because it's not just about racking up mileage, which was getting a bit old. Also, the track workouts are not far from where I live :-). Anyway, I'm looking forward to the challenge of a new marathon best time, at the 2017 Austin Marathon! Setting my PB on a wintry spring day Full Article races ni 2017 Books by Austinites By greglsblog.blogspot.com Published On :: Mon, 15 May 2017 12:12:00 +0000 I'm a bit late this year, but here is a preliminary listing of books written and illustrated by Austinites with releases in 2017! Note that publication dates may change and/or slip... For books from earlier years, go here. Picture Books BOOK OR BELL, by Chris Barton, ill. by Ashley Spires (Bloomsbury 2017). MIGHTY TRUCK: MUDDY MANIA, by Chris Barton, ill. by Troy Cummings (HarperCollins 2017). DAZZLE SHIPS: WORLD WAR I AND THE ART OF CONFUSION, by Chris Barton, ill. by Victo Ngai (Millbrook 2017). WHY AM I ME?, by Paige Britt, ill. by Sean Qualls & Selina Alko (Scholastic Press, Sept. 2017). WHOBERT WHOVER, OWL DETECTIVE, by Jason Gallaher (@DraftingJason), ill. by Jess Pauwels (Margaret McElderry Books/Simon & Schuster, July 2017). CINNAMON, by Neil Gaiman, ill. by Divya Srinivasan (HarperCollins, May 2017). THE YOUNGEST MARCHER; THE STORY OF AUDREY MAY HENDRICKS, A YOUNG CIVIL RIGHTS ACTIVIST, by Cynthia Levinson (Atheneum/Simon & Schuster 2017) BOB, NOT BOB, by Liz Garton Scanlon, ill. by Audrey Vernick (Disney Hyperion, Winter 2017) ANOTHER WAY TO CLIMB A TREE, by Liz Garton Scanlon, ill. by Hadley Hooper (Neal Porter Books/Roaring Brook Press, Aug. 2017). STRONG AS SANDOW: HOW EUGEN SANDOW BECAME THE STRONGEST MAN ON EARTH, by Don Tate (Charlesbridge, Aug. 2017). WHAT THIS STORY NEEDS IS A BANG AND A CLANG, by Emma Virjan (HarperCollins 2017). Middle Grade/Tween THE GREAT HIBERNATION, by Tara Dairman (Wendy Lamb Books/Random House, September 2017). GNOMEAGEDDON, by K.A. Holt (McElderry Book/S&S, Fall 2017) TUT: MY EPIC BATTLE TO SAVE THE WORLD, by P.J. Hoover (Tor 2017). FAULT LINES IN THE CONSTITUTION: THE FRAMERS, THEIR FIGHTS, AND THE FLAWS THAT AFFECT US TODAY, by Cynthia Levinson and Sanford Levinson (Peachtree 2017). IF THE SHOE FITS, by Mari Mancusi (Aladdin/Simon & Schuster, Fall 2017). IN A DARK LAND, by Christina Soontornvat (Sourcebooks 2017). REVENGE OF THE HAPPY CAMPERS, by Jennifer Ziegler (Scholastic 2017). Young Adult THIS IS NOT THE END, by Chandler Baker (Disney-Hyperion, Aug. 2017). WITCHTOWN, by Cory Putnam Oakes (Houghton Mifflin Harcourt, Oct. 2017). THE SANDCASTLE EMPIRE, by Kayla Olson (HarperTeen 2017). AVENGED, by Amy Tintera (HarperTeen May 2017). Full Article Austin author Texas author ni Austin Ironman 70.3! (The training post) By greglsblog.blogspot.com Published On :: Wed, 08 Nov 2017 13:25:00 +0000 Never actually saw anyone on a horse So after having completed my first triathlon in 20 years, I decided to sign up for the Austin Ironman 70.3 on October 29! It's a "half Ironman" distance race, meaning it's a 1.2 mile swim, a 56 mile bike, and a 13.1 mile run. I figured the swim's only a little longer than an Olympic distance tri and the bike and the run are only about twice the distance, so why not? Even better, the race was just outside Austin, so I wouldn't have to travel. The swim was in Decker Lake (Walter E. Long Lake), the bike was a 56 mile loop almost out to Elgin, and the run would be in the park by the lake and up to the Travis County Convention Center. I was a little concerned about the hills (having run the Decker Challenge Half Marathon more than once) but decided that that was what training was for. That started in June, not long after the Capital of Texas Triathlon. Yes, training would be through the height of a Texas summer. And every time I went out, I would remember Noel Coward's line that "[m]ad dogs and Englishmen go out in the mid-day sun..." My training program was based Triathlete Magazine's Week by Week Training Guide and involved nine workouts a week. I didn't completely adhere to all of the mileage suggestions (some weeks doing more, some less), but mostly kept to the program of two a days. By early August, the mileage was starting to pile up but it didn't seem particularly efficient (and also was getting a little tedious), so I decided to join the triathlon training/masters swim group at Pure Austin Gym and, really, it was the best decision I made in the entire process. The awesome Coach Peri Kowal leads two swim workouts a week, mostly in a pool but also including two a month in the Quarry Lake, so participants can get used to open water swimming. (Also, during the summer, the gym does a Splash N Dash (Swim 750k, then run 2k) once a month; it's good practice for the whole "group of people in the water, don't get kicked in the face" thing). Quarry Lake Somewhat to my surprise, the group was a mix from beginning triathletes to multiple Ironman (and Kona) finishers. Everyone was enthusiastic and supportive, even when insufficiently caffeinated during the Thursday morning (6 AM) workouts. Insufficiently caffeinated Best of all, there were a number of folks for whom the Austin Ironman 70.3 was to be their first half Ironman, as well, so we fell into an ad hoc training group of the equally blissfully ignorant, typically doing our long bike rides and BRicks together on weekend mornings. It was great having a mutual support group and not just when we got flat tires...(Incidentally, if you get a flat in Texas, watch out for fire ants). Anyway, here are some pics of the process: Training happens even when you're away on business Igloo coolers are our friends! Monkey Road really needs to be resurfaced Don't drive off with your cell phone on the roof of your car The gang poses after a long BRick Starting the run after a 40 mile bike ride... Kevin and Alec hamming it up... My first shoes to come with an instruction manual Celebrating Coach Peri's birthday! Sights you see along Town Lake More sights... About to test out a wetsuit Went through a lot of these... Feeling punchy three days before the race... On the whole, training took a lot of time and work and there were moments in early October when I was really ready for race day to arrive. OTOH, I'm also happy I had that extra three weeks of training.... In the end, I was really glad to have been able to do race-distance open-water swims in the Quarry Lake and to bike the race route. I think we ended up riding the route about 5-7 times altogether and it was helpful not just for putting in mileage but in learning where the potholes and seams were. Also, the BRick workouts were really helpful -- when I had done triathlons in the 90s, the bike to run transition was always terrible. This time, not so much...but that's for another post :-). I finished training feeling cautiously optimistic -- I'd put in the time and the mileage and the BRicks and the intensity and worked out my nutrition and hydration requirements and figured out how to change a flat tire without getting bit by fire ants in under ten minutes. We had generally accounted for every possible variable and had kept in mind the mantra, "Don't try anything new on race day." Except that having trained through blistering heat and humidity of Texas in the summer and fall, the weather was forecast to be 39 degrees at race start... So, how did that go? Well, I'll do Race Day Weekend in another post... Full Article Ironman races running triathlon triathlons ni Why Taylor-Serrano deserves top billing over Tyson-Paul carnival By www.bbc.com Published On :: Wed, 13 Nov 2024 08:10:57 GMT How the inclusion of Katie Taylor v Amanda Serrano on the bill legitimises the carnival of Mike Tyson v Jake Paul in Texas Full Article ni Barbour Nimbus Wellington Boots By uncrate.com Published On :: Tue, 12 Nov 2024 12:00:00 -0500 Full Article Shoes ni Barbour Ladies Pendle Beanie & Scarf Gift Set By uncrate.com Published On :: Tue, 12 Nov 2024 17:30:01 -0500 Full Article For Her ni Bonnie Blue Flag Rules By iron-mitten.blogspot.com Published On :: Wed, 16 Oct 2024 21:08:00 +0000 I couldn't believe my luck at the Other Partizan show last Sunday, I actually got to meet Kevin Calder, the creator of the Bonnie Blue Flag rules.I first saw the Iron Brigade banner and followed it down to reveal an actual BBF game being played. I recognised Kevin instantly and shook his hand. I gushed about his rules and told him how much I like them. I also explained about play testing it a month ago and he said he had seen the post, which was nice. It was only a quick hello as I had to race back to my own game.I would have liked to have talked for longer and ask him lots of nerdy questions, like how to adapt them for AWI etc. still, I'm sure I'll bump into him again. Full Article Bonnie Blue Flag ni FIW using Bonnie Blue Flag Rules By iron-mitten.blogspot.com Published On :: Wed, 30 Oct 2024 12:56:00 +0000 Here are the craziest scribblings of a madman. Having selected BBF for my black powder games, I'm now just trying to down scale it for a skirmish type game. Smaller units but still using multi bases for figures. Units of four seem to work as a base number. Here are the unit sizes in Muskets and Tomahawks that are good to see as a guide. All just early days still just throwing ideas around to see if something sticks.Drilled Vs irregular base.Update: Right! I've bit the bullet and revised my Indians for the game.I decided to go with 60x60mm bases to give a more spread out look. Also these Galloping Major figures are quite large for 28mm so it suits them better.I imagine four bases of Indians to a unit with a base of skirmishers. I just want one rule set for my black powder games and I think BBF is the one, with a few tweaks of course.My latest thinking is make Indians 'green', so they won't stick around long once the casualties start to mount up. A +10 melee modifier makes them dangerous close up so it's worth trying to get them into hand to hand. They are just too wise to stick around when things go bad. An experienced unit of warriors would be quite imposing with their combat bonus, something to be feared.I had thought of giving Rangers the same combat bonus but as they will be veterans, a plus 10 would be too much. I think let's class them as Elites with a +5. Full Article Bonnie Blue Flag ni Finished Rock pools By iron-mitten.blogspot.com Published On :: Fri, 08 Nov 2024 19:23:00 +0000 The last stage was to gloss varnish the water in the pools. This really brought them to life and gave them a sparkle.The kelp and some of the green rocks were also given a lick with the gloss brush too. Not too much, just enough to give them a damp look.The bottom of the pools were painted with loads of people's of different colours. This was then given a green wash, then a brown one to add depth to the pool. Full Article Celtic Mythology. ni Eugene Zaikonnikov: Breaking the Kernighan's Law By blog.funcall.org Published On :: Sun, 15 Sep 2024 15:00:00 GMT "Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it.." — Brian W. Kernighan. I'm a sucker for sage advice much as anyone else, and Kernighan is certainly right on money in the epigraph. Alas there comes a time in programmer's career when you just end up there despite the warning. It could be that you were indeed too clever for your own good, or maybe the code isn't quite yours anymore after each of your colleague's take on it over the years. Or just sometimes, the problem is indeed so hard that it strains your capacity as a coder. It would usually start with a reasonable idea made into first iteration code. The solution looks fundamentally sound but then as you explore the problem space further it begins to seep nuance, either as manifestation of some real world complexity or your lack of foresight. When I run into this my first instinct is to instrument the code. If the problem is formidable you got to respect it: flailing around blindly modifying things or ugh, doing a rewrite at this stage is almost guaranteed to be a waste of time. It helps to find a promising spot, chisel it, gain a foothold in the problem, and repeat until you crack it. Comfortable debugging tools here can really help to erode the original Kernighan coefficient from 2 to maybe 1.6 or 1.4 where you can still have a chance. Lisp users are fortunate with the options of interactive debugging, and one facility I reach often for is the plain BREAK. It's easy enough to wrap it into a conditional for particular matches you want to debug. However sometimes you want it to trigger after a particular sequence of events across different positions in code has taken place. While still doable it quickly becomes cumbersome and this state machine starts to occupy too much mental space which is already scarce. So one day, partly as a displacement activity from being intimidated by a Really Hard Problem I wrote down my debugging patterns as a handful of macros. Enter BRAKE. Its features reflect my personal preferences so are not necessarily your cup of tea but it could be a starting point to explore in this direction. Things it can do: act as a simple BREAK with no arguments (duh) wrap an s-expression, passing through its values upon continuing trigger sequentially based on the specified position for a common tag allow for marks that don't trigger the break but mark the position as reached provide conditional versions for the expressions above print traces of tagged breakpoints/marks If you compile functions with debug on you hopefully should be able to see the wrapped sexpr's result values. (use-package '(brake)) (defun fizzbuzz () (loop for n from 100 downto 0 for fizz = (zerop (mod n 3)) for buzz = (zerop (mod n 5)) do (format t "~a " (if (not (or fizz buzz)) (format nil "~d" n) (brake-when (= n 0) (concatenate 'string (if fizz "Fizz" "") (if buzz "Buzz" ""))))))) These macros try to detect common cases for tagged sequences being either aborted via break or completed to the last step, resetting them after to the initial state. However it is possible for a sequence to end up "abandoned", which can be cleaned up by a manual command. Say in the example below we want to break when the two first branches were triggered in a specific order. The sequence of 1, 3, 4 will reinitialize once the state 4 is reached, allowing to trigger continuously. At the same time if we blow our stack it should reset to initial when aborting. (defun ack (m n) (cond ((zerop m) (mark :ack 3 (1+ n))) ((zerop n) (mark :ack 1 (ack (1- m) 1))) (t (brake :ack 4 (ack (1- m) (ack m (1- n))))))) In addition there are a few utility functions to report on the state of brakepoints, enable or disable brakes based on tags and turn tracing on or off. Tracing isn't meant to replace the semantics of TRACE but to provide a souped up version of debug by print statements everyone loves. CL-USER> (report-brakes) Tag :M is DISABLED, traced, with 3 defined steps, current state is initial Tag :F is DISABLED with 2 defined steps, current state is 0 Tag :ACK is ENABLED with 3 defined steps, current state is initial Disabling breakpoints without recompilation is really handy and something I find using all the time. The ability to wrap a sexpr was often sorely missed when using BREAK in constructs without implicit body. Sequencing across threads is sketchy as the code isn't guarded but in many cases it can work, and the appeal of it in debugging races is clear. One of those days I hope to make it more robust while avoiding potential deadlocks but it isn't there yet. Where it already shines tho is in debugging complex iterations, mutually recursive functions and state machines. Full Article ni Patrick Stein: Ray Tracing In One Weekend (in Lisp, and n-dimenions) By nklein.com Published On :: Fri, 27 Sep 2024 02:37:31 GMT Earlier this year, I started working through the online book Ray Tracing In One Weekend (Book 1). I have been following along with it in Common Lisp, and I have been extending it all from 3-dimensional to n-dimensional. I reproduced 4-dimensional versions of all of the book images which you can see on my weekend-raytracer github page. Here is the final image. This is a 250-samples-per-pixel, 640x360x10 image plane of three large hyperspheres (one mirrored, one diffuse, one glass) atop a very large, diffuse hypersphere. Also atop this very large hypersphere are a bunch of smaller hyperspheres of varying colors and materials. The image is rendered with some defocus-blur. Final image of 4-dimensional scene Caveat: This depends on a patched version of the policy-cond library that is not in the current Quicklisp distribution but should be in the next. Full Article ni vindarel: Running my 4th Common Lisp script in production© - you can do it too By lisp-journey.gitlab.io Published On :: Tue, 22 Oct 2024 17:19:26 GMT Last week I finished a new service written in Common Lisp. It now runs in production© every mornings, and it expands the set of services I offer to clients. It’s the 4th service of this kind that I developed: - they are not big - but have to be done nonetheless, and the quicker the better (they each amount to 1k to 2k lines of Lisp code), - they are not part of a super advanced domain that requires Common Lisp superpowers - I am the one who benefits from CL during development, - I could have written them in Python - and conversely nothing prevented me from writing them in Common Lisp. So here lies the goal of this post: illustrate that you don’t need to need a super difficult problem to use Common Lisp. This has been asked many times, directly to me or on social media :) At the same time, I want to encourage you to write a little something about how you use Common Lisp in the real world. Sharing creates emulation. Do it! If you don’t have a blog you can simply write in a new GitHub repository or in a Gist and come share on /r/lisp. We don’t care. Thanks <3 We’ll briefly see what my scripts do, what libraries I use, how I deploy them, what I did along the way. Needless to say that I dogfooded my CIEL (beta) meta-library and scripting tool for all those projects. Table of Contents Scripts n°4 and 2 - shaping and sending data - when you can write Lisp on the side SFTP Deploying Script n°2 and simple FTP Scripts n°3 and 1 - complementary web apps Lasting words Links Scripts n°4 and 2 - shaping and sending data - when you can write Lisp on the side My latest script needs to read data from a DB, format what’s necessary according to specifications, and send the result by SFTP. In this case I read a DB that I own, created by a software that I develop and host. So I could have developed this script in the software itself, right? I could have, but I would have been tied to the main project’s versioning scheme, quirks, and deployment. I rather had to write this script on the side. And since it can be done on the side, it can be done in Common Lisp. I have to extract products and their data (price, VAT...), aggregate the numbers for each day, write this to a file, according to a specification. To read the DB, I used cl-dbi. I didn’t format the SQL with SxQL this time like in my web apps (where I use the Mito light ORM), but I wrote SQL directly. I’m spoiled by the Django ORM (which has its idiosyncrasies and shortcomings), so I double checked the different kinds of JOINs and all went well. I had to group rows by some properties, so it was a great time to use serapeum:assort. I left you an example here: https://dev.to/vindarel/common-lisps-group-by-is-serapeumassort-32ma Dates have to be handled in different formats. I used local-time of course, and I still greatly appreciate its lispy formatter syntax: (defun date-yymmddhhnnss (&optional date stream) (local-time:format-timestring stream (or date (local-time:now)) :format '((:year 4) (:month 2) (:day 2) (:hour 2) (:min 2) (:sec 2) ))) the 2 in (:month 2) is to ensure the month is written with 2 digits. Once the file is written, I have to send it to a SFTP server, with the client’s codes. I wrote a profile class to encapsulate the client’s data as well as some functions to read the credentials from either environment variables, the file system, or a lisp variable. I had a top-level profile object for ease of testing, but I made sure that my functions formatting or sending data required a profile parameter. (defun send-stock (profile &key date) ...) (defun write-stock (profile filename) ...) Still nothing surprising, but it’s tempting to only use global parameters for a one-off script. Except the program grows and you pay the mess later. SFTP To send the result through SFTP, I had to make a choice. The SFTP command line doesn’t make it possible to give a password as argument (or via an environment variable, etc). So I use lftp (in Debian repositories) that allows to do that. In the end, we format a command like this: lftp sftp://user:****@host -e "CD I/; put local-file.name; bye" You can format the command string and run it with uiop:run-program: no problem, but I took the opportunity to release another utility: https://github.com/vindarel/lftp-wrapper First, you create a profile object. This one-liner reads the credentials from a lispy file: (defvar profile (make-profile-from-plist (uiop:read-file-form "CREDS.lisp-expr")) then you define the commands you’ll want to run: (defvar command (put :cd "I/" :local-filename "data.csv")) ;; #<PUT cd: "I/", filename: "data.csv" {1007153883}> and finally you call the run method on a profile and a command. Tada. Deploying Build a binary the classic way (it’s all on the Cookbook), send it to your server, run it. (during a testing phase I have deployed “as a script”, from sources, which is a bit quicker to pull changes and try again on the server) Set up a CRON job. No Python virtual env to activate in the CRON environment... Add command line arguments the easy way or with the library of your choice (I like Clingon). Script n°2 and simple FTP My script #2 at the time was similar and simpler. I extract the same products but only take their quantities, and I assemble lines like EXTRACTION STOCK DU 11/04/2008 ....978202019116600010000001387 ....978270730656200040000000991 For this service, we have to send the file to a simple FTP server. We have a pure Lisp library for FTP (and not SFTP) which works very well, cl-ftp. It’s a typical example of an old library that didn’t receive any update in years and so that looks abandoned, that has seldom documentation but whose usage is easy to infer, and that does its job as requested. For example we do this to send a file: (ftp:with-ftp-connection (conn :hostname hostname :username username :password password :passive-ftp-p t) (ftp:store-file conn local-filename filename)) I left you notes about cl-ftp and my SFTP wrapper here: https://dev.to/vindarel/ftp-and-sftp-clients-for-common-lisp-1c3b Scripts n°3 and n°1 - specialized web apps A recent web app that I’m testing with a couple clients extends an existing stock management system. This one also was done in order to avoid a Python monolith. I still needed additions in the Python main software, but this little app can be independent and grow on its own. The app maintains its state and communicates it with a REST API. It gives a web interface to their clients (so my clients’ clients, but not all of them, only the institutional) so that they can: search for products add them in shopping carts validate the cart, which sends the data to the main software and notifies the owner, who will work on them. The peculiarities of this app are that: there is no user login, we use unique URLs with UUIDs in the form: http://command.client.com/admin-E9DFOO82-R2D2-007/list?id=1 I need a bit of file persistence but I didn’t want the rigidity of a database so I am using the clache library. Here also, not a great activity, but it works©. I persist lists and hash-tables. Now that the needs grow and the original scope doesn’t cut it any more, I wonder how long I’ll survive without a DB. Only for its short SQL queries VS lisp code to filter data. I deploy a self-contained binary: code + html templates in the same binary (+ the implementation, the web server, the debugger...), with Systemd. I wrote more on how to ship a standalone binary with templates and static assets with Djula templates here: https://lisp-journey.gitlab.io/blog/lisp-for-the-web-build-standalone-binaries-foreign-libraries-templates-static-assets/ I can connect to the running app with a Swank server to check and set parameters, which is super helpful and harmless. It is possible to reload the whole app from within itself and I did it with no hiccups for a couple years, but it isn’t necessary the most reliable, easiest to set up and fastest method. You can do it, but nobody forces you to do this because you are running CL in production. You can use the industry’s boring and best practices too. Common Lisp doesn’t inforce a “big ball of mud” approach. Develop locally, use Git, use a CI, deploy a binary... Every thing that I learned I documented it along the way in the Cookbook ;) Another app that I’ll mention but about which I also wrote earlier is my first web app. This one is open-source. It still runs :) In this project I had my friend and colleague contribute five lines of Lisp code to add a theme switcher in the backend that would help him do the frontend. He had never written a line of Lisp before. Of course, he did so by looking at my existing code to learn the existing functions at hand, and he could do it because the project was easy to install and run. (defun get-template(template &optional (theme *theme*)) "Loads template from the base templates directory or from the given theme templates directory if it exists." (if (and (str:non-blank-string-p theme) (probe-file (asdf:system-relative-pathname "abstock" (str:concat "src/templates/themes/" theme "/" template)))) ;; then (str:concat "themes/" theme "/" template) ;; else :D template)) He had to annotate the if branches :] This passed the code review. Lasting words The 5th script/app is already on the way, and the next ones are awaiting that I open their .docx specification files. This one was a bit harder but the Lisp side was done sucessfully with the efficient collaboration of another freelance lisper (Kevin to not name him). All those tasks (read a DB, transform data...) are very mundane. They are everywhere. They don’t always need supercharged web framework or integrations. You have plenty of opportunities to make yourself a favor, and use Common Lisp in the wild. Not counting the super-advanced domains where Lisp excels at ;) Links https://lispcookbook.github.io/cl-cookbook/ awesome-cl companies using Common Lisp in production (at least the ones we know) Common Lisp course in videos – it helps me, and you ;) I added 9 videos about CLOS last month, and more are coming. It’s 86 minutes of an efficient code-first approach, out of 7+ hours of total content in the course. After this chapter you know enough to read the sources of the Hunchentoot web server or of the Kandria game. I have done some preliminary Common Lisp exploration prior to this course but had a lot of questions regarding practical use and development workflows. This course was amazing for this! I learned a lot of useful techniques for actually writing the code in Emacs, as well as conversational explanations of concepts that had previously confused me in text-heavy resources. Please keep up the good work and continue with this line of topics, it is well worth the price! [Preston, October of 2024] Full Article ni All Souls Night (Part 15 of 31) By floggingbabel.blogspot.com Published On :: Tue, 15 Oct 2024 07:30:00 +0000 . CONTINUED TOMORROW. Above: Every Autumn, I write a Halloween story, write it out on leaves (one word per leaf), photograph the leaves, and then leave them where.I found them. The story is then serialized, starting on October 1 and concluding on the 31st--All Souls Day. * Full Article ni All Souls Night (Part 16 of 31) By floggingbabel.blogspot.com Published On :: Wed, 16 Oct 2024 07:30:00 +0000 . CONTINUED TOMORROW. Above: Every Autumn, I write a Halloween story, write it out on leaves (one word per leaf), photograph the leaves, and then leave them where.I found them. The story is then serialized, starting on October 1 and concluding on the 31st--All Souls Day. * Full Article ni All Souls Night (Part 17 of 31) By floggingbabel.blogspot.com Published On :: Thu, 17 Oct 2024 07:30:00 +0000 . CONTINUED TOMORROW. Above: Every Autumn, I write a Halloween story, write it out on leaves (one word per leaf), photograph the leaves, and then leave them where.I found them. The story is then serialized, starting on October 1 and concluding on the 31st--All Souls Day. * Full Article ni All Souls Night (Part 18 of 31) By floggingbabel.blogspot.com Published On :: Fri, 18 Oct 2024 07:30:00 +0000 . CONTINUED TOMORROW. Above: Every Autumn, I write a Halloween story, write it out on leaves (one word per leaf), photograph the leaves, and then leave them where. I found them. The story is then serialized, starting on October 1 and concluding on the 31st--All Souls Day. * Full Article ni All Souls Night (Part 19 of 31) By floggingbabel.blogspot.com Published On :: Sat, 19 Oct 2024 07:30:00 +0000 . CONTINUED TOMORROW. Above: Every Autumn, I write a Halloween story, write it out on leaves (one word per leaf), photograph the leaves, and then leave them where.I found them. The story is then serialized, starting on October 1 and concluding on the 31st--All Souls Day. * Full Article ni All Souls Night (Part 20 of 31) By floggingbabel.blogspot.com Published On :: Sun, 20 Oct 2024 07:30:00 +0000 . CONTINUED TOMORROW. Above: Every Autumn, I write a Halloween story, write it out on leaves (one word per leaf), photograph the leaves, and then leave them where.I found them. The story is then serialized, starting on October 1 and concluding on the 31st--All Souls Day. * Full Article ni All Souls Night (Part 21 of 31) By floggingbabel.blogspot.com Published On :: Mon, 21 Oct 2024 07:30:00 +0000 . CONTINUED TOMORROW. Above: Every Autumn, I write a Halloween story, write it out on leaves (one word per leaf), photograph the leaves, and then leave them where.I found them. The story is then serialized, starting on October 1 and concluding on the 31st--All Souls Day. * Full Article ni All Souls Night (Part 22 of 31) By floggingbabel.blogspot.com Published On :: Tue, 22 Oct 2024 07:30:00 +0000 . CONTINUED TOMORROW. Above: Every Autumn, I write a Halloween story, write it out on leaves (one word per leaf), photograph the leaves, and then leave them where.I found them. The story is then serialized, starting on October 1 and concluding on the 31st--All Souls Day. * Full Article «1..2374 375 376..440..659..878..1097..1316..1535..1754..19732181» Recent Trending The finish line: Attachment of Signs The Finish Line: Katrina One Year After The Finish Line: Cast Stone and EIFS The Finish Line: Changing Stucco to EIFS The Finish Line: A Case Study: What is Causing This? The Finish Line: All About Rust The Finish Line: Backwrapping vs. Edgewrapping The Finish Line: Cleaning EIFS The Finish Line: Floor Line Joints The Finish Line: FAQ's About EIFS Part 1 The Finish Line: Drainage Efficiency The Finish Line: Earthquakes and EIFS The Finish Line: Types of EIFS The Finish Line: Eco-Friendliness of EIFS The Finish Line: Foam Shapes Revisited Subscribe To Our Newsletter
ni Cognition, culture, … and communication? By languagelog.ldc.upenn.edu Published On :: Mon, 11 Nov 2024 13:13:17 +0000 An interesting recent review article (Wooster et al., "Animal cognition and culture mediate predator–prey interactions", Trends in Ecology & Evolution 2024) argues for bridging the academic silos of "predator-prey ecology" and "animal cognition and culture": Abstract: Predator–prey ecology and the study of animal cognition and culture have emerged as independent disciplines. Research combining these disciplines […] Full Article Animal communication
ni So its Goodnight From Him By magistratesblog.blogspot.com Published On :: Tue, 01 Nov 2016 16:46:00 +0000 A colleague, who has sometimes posted here as Bystander N, has sent me the following, asking me to put it on the blog. It is gratifying, and I hope that it is true. Tomorrow is a particularly sad day for my bench. I know Bystander and he had no idea I was going to write this short piece. Tomorrow he will be officially “past it”, though of course in reality nothing like past it and he is as sharp as they come. Both here on this blog and in our retiring rooms we will miss his kindness, warmth, immense knowledge, sense of fair play, sense of humour and seemingly endless stream of amusing court anecdotes. I have not always agreed with him on bail and sentence decisions but that’s the way the system works. I have learned a great deal from him and I am really sorry he will not be amongst us any longer. I have heard him say that he thinks he saw the best of the bench many years ago. He may be right but I’m still sure, even if he will not miss all of it, he will miss most of it. Full Article
ni Senior Wig Writes By magistratesblog.blogspot.com Published On :: Mon, 07 Nov 2016 21:54:00 +0000 I have just had a letter on lovely thick straw-coloured letterhead from the Royal Courts of Justice in which a Rt.Hon.Lord Justice thanks me for my 31 years' service on the bench. That's nice, and I shall pass it on to my granddaughters in due course. Both of their parents are solicitors. My impending third grandchild will have two journalists as parents, so that's nice too. Full Article
ni In The Nick By magistratesblog.blogspot.com Published On :: Mon, 26 Dec 2016 10:40:00 +0000 Prisons are in the news again, following recent outbreaks of disorder. This is an excellent piece from the Telegraph I have been to Hollesley Bay a couple of times; it had a completely different culture from closed prisons such as the Scrubs, with a target of getting inmates ready for work on release. Full Article
ni Gillings finishes sixth in Italy By www.bbc.co.uk Published On :: Wed, 14 Mar 2012 16:52:00 GMT British number one Zoe Gillings finishes sixth at the penultimate round of the boarder-cross World Cup in Valmalenco. Full Article Winter Sports
ni Busy Writing and Running Summer By greglsblog.blogspot.com Published On :: Sat, 20 Aug 2016 22:32:00 +0000 Well, it's been a busy summer writing-wise. I'm letting a draft of a middle grade sci-fi adventure cure for a bit and also completed a work-for-hire project, and two-and-a-half nonfiction projects. (The half is still in-progress :-)). Circa 1995. No hills :-). After the Cap Tex Tri weather debacle, I reconsidered my original plan to try the Austin Half-Ironman (or Ironman 70.3 as they're calling the things these days). I'd wanted to do a couple Olympic distance races this summer (the other would've been the Tri Rock Austin Triathlon over Labor Day weekend) to get the kinks out before going for the longer distance. Unfortunately, the schedule didn't quite work out (and I'm going to be doing some school and bookstore visits in October, prime training time :-)). Also, this allows me to delay buying a new bike -- my current one is a 1989 Trek that is fine, but riding 50+ miles around the Hill Country, I can see where handlebar shifters would be useful :-). So I decided to dive back in to the Austin Distance Challenge and take up the Austin Runners Club on the marathon training (which would also help with next year's triathlons). My goal is a personal best or possibly Boston Marathon qualifying. (With the age-group corrections, BM qualifying has finally caught up with my PB :-)). The ARC program is based on the Runner's World "Run Less, Run Faster" program, which has you run three days a week and do other cardio work two days a week. One of the days is a track workout, one is a tempo run and the third is a long run, with pace times based on a one mile time trial we did a couple weeks ago. I have no idea if it will work, but I like it because I want to keep up the biking and running as well. After the long run I just completed the first week of the program and didn't actually hit any of my goal times, but I've never actually tried running for time, so at least the effort is interesting. I ran a trial mile of 7:10, slightly slower than my 6:50 from last spring and a lot slower than my PB of 5:55 (granted, twenty years ago :-)). From this, the track workout was supposed to be 4x1000 m at 4:09; my times were 4:20; 4:14; 4:15; and 4:22, so not terrible. The tempo workout was supposed to be 4 miles at a 7:38 pace and my actual pace was 7:46. I figured it would be a challenge to hit those marks but was glad to have been close. The long run was supposed to be 11 miles at 8:57, which I though I could do, no problem, since I'd done my half marathons last year at around 8:24. But with the humidity and heat (in August, hydration tends to be my biggest problem) and having only three hours of sleep (due to small feline mammals), I only did seven miles at a 9:07 pace. Based on limited data, I like the program because it's not just about racking up mileage, which was getting a bit old. Also, the track workouts are not far from where I live :-). Anyway, I'm looking forward to the challenge of a new marathon best time, at the 2017 Austin Marathon! Setting my PB on a wintry spring day Full Article races
ni 2017 Books by Austinites By greglsblog.blogspot.com Published On :: Mon, 15 May 2017 12:12:00 +0000 I'm a bit late this year, but here is a preliminary listing of books written and illustrated by Austinites with releases in 2017! Note that publication dates may change and/or slip... For books from earlier years, go here. Picture Books BOOK OR BELL, by Chris Barton, ill. by Ashley Spires (Bloomsbury 2017). MIGHTY TRUCK: MUDDY MANIA, by Chris Barton, ill. by Troy Cummings (HarperCollins 2017). DAZZLE SHIPS: WORLD WAR I AND THE ART OF CONFUSION, by Chris Barton, ill. by Victo Ngai (Millbrook 2017). WHY AM I ME?, by Paige Britt, ill. by Sean Qualls & Selina Alko (Scholastic Press, Sept. 2017). WHOBERT WHOVER, OWL DETECTIVE, by Jason Gallaher (@DraftingJason), ill. by Jess Pauwels (Margaret McElderry Books/Simon & Schuster, July 2017). CINNAMON, by Neil Gaiman, ill. by Divya Srinivasan (HarperCollins, May 2017). THE YOUNGEST MARCHER; THE STORY OF AUDREY MAY HENDRICKS, A YOUNG CIVIL RIGHTS ACTIVIST, by Cynthia Levinson (Atheneum/Simon & Schuster 2017) BOB, NOT BOB, by Liz Garton Scanlon, ill. by Audrey Vernick (Disney Hyperion, Winter 2017) ANOTHER WAY TO CLIMB A TREE, by Liz Garton Scanlon, ill. by Hadley Hooper (Neal Porter Books/Roaring Brook Press, Aug. 2017). STRONG AS SANDOW: HOW EUGEN SANDOW BECAME THE STRONGEST MAN ON EARTH, by Don Tate (Charlesbridge, Aug. 2017). WHAT THIS STORY NEEDS IS A BANG AND A CLANG, by Emma Virjan (HarperCollins 2017). Middle Grade/Tween THE GREAT HIBERNATION, by Tara Dairman (Wendy Lamb Books/Random House, September 2017). GNOMEAGEDDON, by K.A. Holt (McElderry Book/S&S, Fall 2017) TUT: MY EPIC BATTLE TO SAVE THE WORLD, by P.J. Hoover (Tor 2017). FAULT LINES IN THE CONSTITUTION: THE FRAMERS, THEIR FIGHTS, AND THE FLAWS THAT AFFECT US TODAY, by Cynthia Levinson and Sanford Levinson (Peachtree 2017). IF THE SHOE FITS, by Mari Mancusi (Aladdin/Simon & Schuster, Fall 2017). IN A DARK LAND, by Christina Soontornvat (Sourcebooks 2017). REVENGE OF THE HAPPY CAMPERS, by Jennifer Ziegler (Scholastic 2017). Young Adult THIS IS NOT THE END, by Chandler Baker (Disney-Hyperion, Aug. 2017). WITCHTOWN, by Cory Putnam Oakes (Houghton Mifflin Harcourt, Oct. 2017). THE SANDCASTLE EMPIRE, by Kayla Olson (HarperTeen 2017). AVENGED, by Amy Tintera (HarperTeen May 2017). Full Article Austin author Texas author
ni Austin Ironman 70.3! (The training post) By greglsblog.blogspot.com Published On :: Wed, 08 Nov 2017 13:25:00 +0000 Never actually saw anyone on a horse So after having completed my first triathlon in 20 years, I decided to sign up for the Austin Ironman 70.3 on October 29! It's a "half Ironman" distance race, meaning it's a 1.2 mile swim, a 56 mile bike, and a 13.1 mile run. I figured the swim's only a little longer than an Olympic distance tri and the bike and the run are only about twice the distance, so why not? Even better, the race was just outside Austin, so I wouldn't have to travel. The swim was in Decker Lake (Walter E. Long Lake), the bike was a 56 mile loop almost out to Elgin, and the run would be in the park by the lake and up to the Travis County Convention Center. I was a little concerned about the hills (having run the Decker Challenge Half Marathon more than once) but decided that that was what training was for. That started in June, not long after the Capital of Texas Triathlon. Yes, training would be through the height of a Texas summer. And every time I went out, I would remember Noel Coward's line that "[m]ad dogs and Englishmen go out in the mid-day sun..." My training program was based Triathlete Magazine's Week by Week Training Guide and involved nine workouts a week. I didn't completely adhere to all of the mileage suggestions (some weeks doing more, some less), but mostly kept to the program of two a days. By early August, the mileage was starting to pile up but it didn't seem particularly efficient (and also was getting a little tedious), so I decided to join the triathlon training/masters swim group at Pure Austin Gym and, really, it was the best decision I made in the entire process. The awesome Coach Peri Kowal leads two swim workouts a week, mostly in a pool but also including two a month in the Quarry Lake, so participants can get used to open water swimming. (Also, during the summer, the gym does a Splash N Dash (Swim 750k, then run 2k) once a month; it's good practice for the whole "group of people in the water, don't get kicked in the face" thing). Quarry Lake Somewhat to my surprise, the group was a mix from beginning triathletes to multiple Ironman (and Kona) finishers. Everyone was enthusiastic and supportive, even when insufficiently caffeinated during the Thursday morning (6 AM) workouts. Insufficiently caffeinated Best of all, there were a number of folks for whom the Austin Ironman 70.3 was to be their first half Ironman, as well, so we fell into an ad hoc training group of the equally blissfully ignorant, typically doing our long bike rides and BRicks together on weekend mornings. It was great having a mutual support group and not just when we got flat tires...(Incidentally, if you get a flat in Texas, watch out for fire ants). Anyway, here are some pics of the process: Training happens even when you're away on business Igloo coolers are our friends! Monkey Road really needs to be resurfaced Don't drive off with your cell phone on the roof of your car The gang poses after a long BRick Starting the run after a 40 mile bike ride... Kevin and Alec hamming it up... My first shoes to come with an instruction manual Celebrating Coach Peri's birthday! Sights you see along Town Lake More sights... About to test out a wetsuit Went through a lot of these... Feeling punchy three days before the race... On the whole, training took a lot of time and work and there were moments in early October when I was really ready for race day to arrive. OTOH, I'm also happy I had that extra three weeks of training.... In the end, I was really glad to have been able to do race-distance open-water swims in the Quarry Lake and to bike the race route. I think we ended up riding the route about 5-7 times altogether and it was helpful not just for putting in mileage but in learning where the potholes and seams were. Also, the BRick workouts were really helpful -- when I had done triathlons in the 90s, the bike to run transition was always terrible. This time, not so much...but that's for another post :-). I finished training feeling cautiously optimistic -- I'd put in the time and the mileage and the BRicks and the intensity and worked out my nutrition and hydration requirements and figured out how to change a flat tire without getting bit by fire ants in under ten minutes. We had generally accounted for every possible variable and had kept in mind the mantra, "Don't try anything new on race day." Except that having trained through blistering heat and humidity of Texas in the summer and fall, the weather was forecast to be 39 degrees at race start... So, how did that go? Well, I'll do Race Day Weekend in another post... Full Article Ironman races running triathlon triathlons
ni Why Taylor-Serrano deserves top billing over Tyson-Paul carnival By www.bbc.com Published On :: Wed, 13 Nov 2024 08:10:57 GMT How the inclusion of Katie Taylor v Amanda Serrano on the bill legitimises the carnival of Mike Tyson v Jake Paul in Texas Full Article
ni Barbour Nimbus Wellington Boots By uncrate.com Published On :: Tue, 12 Nov 2024 12:00:00 -0500 Full Article Shoes
ni Barbour Ladies Pendle Beanie & Scarf Gift Set By uncrate.com Published On :: Tue, 12 Nov 2024 17:30:01 -0500 Full Article For Her
ni Bonnie Blue Flag Rules By iron-mitten.blogspot.com Published On :: Wed, 16 Oct 2024 21:08:00 +0000 I couldn't believe my luck at the Other Partizan show last Sunday, I actually got to meet Kevin Calder, the creator of the Bonnie Blue Flag rules.I first saw the Iron Brigade banner and followed it down to reveal an actual BBF game being played. I recognised Kevin instantly and shook his hand. I gushed about his rules and told him how much I like them. I also explained about play testing it a month ago and he said he had seen the post, which was nice. It was only a quick hello as I had to race back to my own game.I would have liked to have talked for longer and ask him lots of nerdy questions, like how to adapt them for AWI etc. still, I'm sure I'll bump into him again. Full Article Bonnie Blue Flag
ni FIW using Bonnie Blue Flag Rules By iron-mitten.blogspot.com Published On :: Wed, 30 Oct 2024 12:56:00 +0000 Here are the craziest scribblings of a madman. Having selected BBF for my black powder games, I'm now just trying to down scale it for a skirmish type game. Smaller units but still using multi bases for figures. Units of four seem to work as a base number. Here are the unit sizes in Muskets and Tomahawks that are good to see as a guide. All just early days still just throwing ideas around to see if something sticks.Drilled Vs irregular base.Update: Right! I've bit the bullet and revised my Indians for the game.I decided to go with 60x60mm bases to give a more spread out look. Also these Galloping Major figures are quite large for 28mm so it suits them better.I imagine four bases of Indians to a unit with a base of skirmishers. I just want one rule set for my black powder games and I think BBF is the one, with a few tweaks of course.My latest thinking is make Indians 'green', so they won't stick around long once the casualties start to mount up. A +10 melee modifier makes them dangerous close up so it's worth trying to get them into hand to hand. They are just too wise to stick around when things go bad. An experienced unit of warriors would be quite imposing with their combat bonus, something to be feared.I had thought of giving Rangers the same combat bonus but as they will be veterans, a plus 10 would be too much. I think let's class them as Elites with a +5. Full Article Bonnie Blue Flag
ni Finished Rock pools By iron-mitten.blogspot.com Published On :: Fri, 08 Nov 2024 19:23:00 +0000 The last stage was to gloss varnish the water in the pools. This really brought them to life and gave them a sparkle.The kelp and some of the green rocks were also given a lick with the gloss brush too. Not too much, just enough to give them a damp look.The bottom of the pools were painted with loads of people's of different colours. This was then given a green wash, then a brown one to add depth to the pool. Full Article Celtic Mythology.
ni Eugene Zaikonnikov: Breaking the Kernighan's Law By blog.funcall.org Published On :: Sun, 15 Sep 2024 15:00:00 GMT "Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it.." — Brian W. Kernighan. I'm a sucker for sage advice much as anyone else, and Kernighan is certainly right on money in the epigraph. Alas there comes a time in programmer's career when you just end up there despite the warning. It could be that you were indeed too clever for your own good, or maybe the code isn't quite yours anymore after each of your colleague's take on it over the years. Or just sometimes, the problem is indeed so hard that it strains your capacity as a coder. It would usually start with a reasonable idea made into first iteration code. The solution looks fundamentally sound but then as you explore the problem space further it begins to seep nuance, either as manifestation of some real world complexity or your lack of foresight. When I run into this my first instinct is to instrument the code. If the problem is formidable you got to respect it: flailing around blindly modifying things or ugh, doing a rewrite at this stage is almost guaranteed to be a waste of time. It helps to find a promising spot, chisel it, gain a foothold in the problem, and repeat until you crack it. Comfortable debugging tools here can really help to erode the original Kernighan coefficient from 2 to maybe 1.6 or 1.4 where you can still have a chance. Lisp users are fortunate with the options of interactive debugging, and one facility I reach often for is the plain BREAK. It's easy enough to wrap it into a conditional for particular matches you want to debug. However sometimes you want it to trigger after a particular sequence of events across different positions in code has taken place. While still doable it quickly becomes cumbersome and this state machine starts to occupy too much mental space which is already scarce. So one day, partly as a displacement activity from being intimidated by a Really Hard Problem I wrote down my debugging patterns as a handful of macros. Enter BRAKE. Its features reflect my personal preferences so are not necessarily your cup of tea but it could be a starting point to explore in this direction. Things it can do: act as a simple BREAK with no arguments (duh) wrap an s-expression, passing through its values upon continuing trigger sequentially based on the specified position for a common tag allow for marks that don't trigger the break but mark the position as reached provide conditional versions for the expressions above print traces of tagged breakpoints/marks If you compile functions with debug on you hopefully should be able to see the wrapped sexpr's result values. (use-package '(brake)) (defun fizzbuzz () (loop for n from 100 downto 0 for fizz = (zerop (mod n 3)) for buzz = (zerop (mod n 5)) do (format t "~a " (if (not (or fizz buzz)) (format nil "~d" n) (brake-when (= n 0) (concatenate 'string (if fizz "Fizz" "") (if buzz "Buzz" ""))))))) These macros try to detect common cases for tagged sequences being either aborted via break or completed to the last step, resetting them after to the initial state. However it is possible for a sequence to end up "abandoned", which can be cleaned up by a manual command. Say in the example below we want to break when the two first branches were triggered in a specific order. The sequence of 1, 3, 4 will reinitialize once the state 4 is reached, allowing to trigger continuously. At the same time if we blow our stack it should reset to initial when aborting. (defun ack (m n) (cond ((zerop m) (mark :ack 3 (1+ n))) ((zerop n) (mark :ack 1 (ack (1- m) 1))) (t (brake :ack 4 (ack (1- m) (ack m (1- n))))))) In addition there are a few utility functions to report on the state of brakepoints, enable or disable brakes based on tags and turn tracing on or off. Tracing isn't meant to replace the semantics of TRACE but to provide a souped up version of debug by print statements everyone loves. CL-USER> (report-brakes) Tag :M is DISABLED, traced, with 3 defined steps, current state is initial Tag :F is DISABLED with 2 defined steps, current state is 0 Tag :ACK is ENABLED with 3 defined steps, current state is initial Disabling breakpoints without recompilation is really handy and something I find using all the time. The ability to wrap a sexpr was often sorely missed when using BREAK in constructs without implicit body. Sequencing across threads is sketchy as the code isn't guarded but in many cases it can work, and the appeal of it in debugging races is clear. One of those days I hope to make it more robust while avoiding potential deadlocks but it isn't there yet. Where it already shines tho is in debugging complex iterations, mutually recursive functions and state machines. Full Article
ni Patrick Stein: Ray Tracing In One Weekend (in Lisp, and n-dimenions) By nklein.com Published On :: Fri, 27 Sep 2024 02:37:31 GMT Earlier this year, I started working through the online book Ray Tracing In One Weekend (Book 1). I have been following along with it in Common Lisp, and I have been extending it all from 3-dimensional to n-dimensional. I reproduced 4-dimensional versions of all of the book images which you can see on my weekend-raytracer github page. Here is the final image. This is a 250-samples-per-pixel, 640x360x10 image plane of three large hyperspheres (one mirrored, one diffuse, one glass) atop a very large, diffuse hypersphere. Also atop this very large hypersphere are a bunch of smaller hyperspheres of varying colors and materials. The image is rendered with some defocus-blur. Final image of 4-dimensional scene Caveat: This depends on a patched version of the policy-cond library that is not in the current Quicklisp distribution but should be in the next. Full Article
ni vindarel: Running my 4th Common Lisp script in production© - you can do it too By lisp-journey.gitlab.io Published On :: Tue, 22 Oct 2024 17:19:26 GMT Last week I finished a new service written in Common Lisp. It now runs in production© every mornings, and it expands the set of services I offer to clients. It’s the 4th service of this kind that I developed: - they are not big - but have to be done nonetheless, and the quicker the better (they each amount to 1k to 2k lines of Lisp code), - they are not part of a super advanced domain that requires Common Lisp superpowers - I am the one who benefits from CL during development, - I could have written them in Python - and conversely nothing prevented me from writing them in Common Lisp. So here lies the goal of this post: illustrate that you don’t need to need a super difficult problem to use Common Lisp. This has been asked many times, directly to me or on social media :) At the same time, I want to encourage you to write a little something about how you use Common Lisp in the real world. Sharing creates emulation. Do it! If you don’t have a blog you can simply write in a new GitHub repository or in a Gist and come share on /r/lisp. We don’t care. Thanks <3 We’ll briefly see what my scripts do, what libraries I use, how I deploy them, what I did along the way. Needless to say that I dogfooded my CIEL (beta) meta-library and scripting tool for all those projects. Table of Contents Scripts n°4 and 2 - shaping and sending data - when you can write Lisp on the side SFTP Deploying Script n°2 and simple FTP Scripts n°3 and 1 - complementary web apps Lasting words Links Scripts n°4 and 2 - shaping and sending data - when you can write Lisp on the side My latest script needs to read data from a DB, format what’s necessary according to specifications, and send the result by SFTP. In this case I read a DB that I own, created by a software that I develop and host. So I could have developed this script in the software itself, right? I could have, but I would have been tied to the main project’s versioning scheme, quirks, and deployment. I rather had to write this script on the side. And since it can be done on the side, it can be done in Common Lisp. I have to extract products and their data (price, VAT...), aggregate the numbers for each day, write this to a file, according to a specification. To read the DB, I used cl-dbi. I didn’t format the SQL with SxQL this time like in my web apps (where I use the Mito light ORM), but I wrote SQL directly. I’m spoiled by the Django ORM (which has its idiosyncrasies and shortcomings), so I double checked the different kinds of JOINs and all went well. I had to group rows by some properties, so it was a great time to use serapeum:assort. I left you an example here: https://dev.to/vindarel/common-lisps-group-by-is-serapeumassort-32ma Dates have to be handled in different formats. I used local-time of course, and I still greatly appreciate its lispy formatter syntax: (defun date-yymmddhhnnss (&optional date stream) (local-time:format-timestring stream (or date (local-time:now)) :format '((:year 4) (:month 2) (:day 2) (:hour 2) (:min 2) (:sec 2) ))) the 2 in (:month 2) is to ensure the month is written with 2 digits. Once the file is written, I have to send it to a SFTP server, with the client’s codes. I wrote a profile class to encapsulate the client’s data as well as some functions to read the credentials from either environment variables, the file system, or a lisp variable. I had a top-level profile object for ease of testing, but I made sure that my functions formatting or sending data required a profile parameter. (defun send-stock (profile &key date) ...) (defun write-stock (profile filename) ...) Still nothing surprising, but it’s tempting to only use global parameters for a one-off script. Except the program grows and you pay the mess later. SFTP To send the result through SFTP, I had to make a choice. The SFTP command line doesn’t make it possible to give a password as argument (or via an environment variable, etc). So I use lftp (in Debian repositories) that allows to do that. In the end, we format a command like this: lftp sftp://user:****@host -e "CD I/; put local-file.name; bye" You can format the command string and run it with uiop:run-program: no problem, but I took the opportunity to release another utility: https://github.com/vindarel/lftp-wrapper First, you create a profile object. This one-liner reads the credentials from a lispy file: (defvar profile (make-profile-from-plist (uiop:read-file-form "CREDS.lisp-expr")) then you define the commands you’ll want to run: (defvar command (put :cd "I/" :local-filename "data.csv")) ;; #<PUT cd: "I/", filename: "data.csv" {1007153883}> and finally you call the run method on a profile and a command. Tada. Deploying Build a binary the classic way (it’s all on the Cookbook), send it to your server, run it. (during a testing phase I have deployed “as a script”, from sources, which is a bit quicker to pull changes and try again on the server) Set up a CRON job. No Python virtual env to activate in the CRON environment... Add command line arguments the easy way or with the library of your choice (I like Clingon). Script n°2 and simple FTP My script #2 at the time was similar and simpler. I extract the same products but only take their quantities, and I assemble lines like EXTRACTION STOCK DU 11/04/2008 ....978202019116600010000001387 ....978270730656200040000000991 For this service, we have to send the file to a simple FTP server. We have a pure Lisp library for FTP (and not SFTP) which works very well, cl-ftp. It’s a typical example of an old library that didn’t receive any update in years and so that looks abandoned, that has seldom documentation but whose usage is easy to infer, and that does its job as requested. For example we do this to send a file: (ftp:with-ftp-connection (conn :hostname hostname :username username :password password :passive-ftp-p t) (ftp:store-file conn local-filename filename)) I left you notes about cl-ftp and my SFTP wrapper here: https://dev.to/vindarel/ftp-and-sftp-clients-for-common-lisp-1c3b Scripts n°3 and n°1 - specialized web apps A recent web app that I’m testing with a couple clients extends an existing stock management system. This one also was done in order to avoid a Python monolith. I still needed additions in the Python main software, but this little app can be independent and grow on its own. The app maintains its state and communicates it with a REST API. It gives a web interface to their clients (so my clients’ clients, but not all of them, only the institutional) so that they can: search for products add them in shopping carts validate the cart, which sends the data to the main software and notifies the owner, who will work on them. The peculiarities of this app are that: there is no user login, we use unique URLs with UUIDs in the form: http://command.client.com/admin-E9DFOO82-R2D2-007/list?id=1 I need a bit of file persistence but I didn’t want the rigidity of a database so I am using the clache library. Here also, not a great activity, but it works©. I persist lists and hash-tables. Now that the needs grow and the original scope doesn’t cut it any more, I wonder how long I’ll survive without a DB. Only for its short SQL queries VS lisp code to filter data. I deploy a self-contained binary: code + html templates in the same binary (+ the implementation, the web server, the debugger...), with Systemd. I wrote more on how to ship a standalone binary with templates and static assets with Djula templates here: https://lisp-journey.gitlab.io/blog/lisp-for-the-web-build-standalone-binaries-foreign-libraries-templates-static-assets/ I can connect to the running app with a Swank server to check and set parameters, which is super helpful and harmless. It is possible to reload the whole app from within itself and I did it with no hiccups for a couple years, but it isn’t necessary the most reliable, easiest to set up and fastest method. You can do it, but nobody forces you to do this because you are running CL in production. You can use the industry’s boring and best practices too. Common Lisp doesn’t inforce a “big ball of mud” approach. Develop locally, use Git, use a CI, deploy a binary... Every thing that I learned I documented it along the way in the Cookbook ;) Another app that I’ll mention but about which I also wrote earlier is my first web app. This one is open-source. It still runs :) In this project I had my friend and colleague contribute five lines of Lisp code to add a theme switcher in the backend that would help him do the frontend. He had never written a line of Lisp before. Of course, he did so by looking at my existing code to learn the existing functions at hand, and he could do it because the project was easy to install and run. (defun get-template(template &optional (theme *theme*)) "Loads template from the base templates directory or from the given theme templates directory if it exists." (if (and (str:non-blank-string-p theme) (probe-file (asdf:system-relative-pathname "abstock" (str:concat "src/templates/themes/" theme "/" template)))) ;; then (str:concat "themes/" theme "/" template) ;; else :D template)) He had to annotate the if branches :] This passed the code review. Lasting words The 5th script/app is already on the way, and the next ones are awaiting that I open their .docx specification files. This one was a bit harder but the Lisp side was done sucessfully with the efficient collaboration of another freelance lisper (Kevin to not name him). All those tasks (read a DB, transform data...) are very mundane. They are everywhere. They don’t always need supercharged web framework or integrations. You have plenty of opportunities to make yourself a favor, and use Common Lisp in the wild. Not counting the super-advanced domains where Lisp excels at ;) Links https://lispcookbook.github.io/cl-cookbook/ awesome-cl companies using Common Lisp in production (at least the ones we know) Common Lisp course in videos – it helps me, and you ;) I added 9 videos about CLOS last month, and more are coming. It’s 86 minutes of an efficient code-first approach, out of 7+ hours of total content in the course. After this chapter you know enough to read the sources of the Hunchentoot web server or of the Kandria game. I have done some preliminary Common Lisp exploration prior to this course but had a lot of questions regarding practical use and development workflows. This course was amazing for this! I learned a lot of useful techniques for actually writing the code in Emacs, as well as conversational explanations of concepts that had previously confused me in text-heavy resources. Please keep up the good work and continue with this line of topics, it is well worth the price! [Preston, October of 2024] Full Article
ni All Souls Night (Part 15 of 31) By floggingbabel.blogspot.com Published On :: Tue, 15 Oct 2024 07:30:00 +0000 . CONTINUED TOMORROW. Above: Every Autumn, I write a Halloween story, write it out on leaves (one word per leaf), photograph the leaves, and then leave them where.I found them. The story is then serialized, starting on October 1 and concluding on the 31st--All Souls Day. * Full Article
ni All Souls Night (Part 16 of 31) By floggingbabel.blogspot.com Published On :: Wed, 16 Oct 2024 07:30:00 +0000 . CONTINUED TOMORROW. Above: Every Autumn, I write a Halloween story, write it out on leaves (one word per leaf), photograph the leaves, and then leave them where.I found them. The story is then serialized, starting on October 1 and concluding on the 31st--All Souls Day. * Full Article
ni All Souls Night (Part 17 of 31) By floggingbabel.blogspot.com Published On :: Thu, 17 Oct 2024 07:30:00 +0000 . CONTINUED TOMORROW. Above: Every Autumn, I write a Halloween story, write it out on leaves (one word per leaf), photograph the leaves, and then leave them where.I found them. The story is then serialized, starting on October 1 and concluding on the 31st--All Souls Day. * Full Article
ni All Souls Night (Part 18 of 31) By floggingbabel.blogspot.com Published On :: Fri, 18 Oct 2024 07:30:00 +0000 . CONTINUED TOMORROW. Above: Every Autumn, I write a Halloween story, write it out on leaves (one word per leaf), photograph the leaves, and then leave them where. I found them. The story is then serialized, starting on October 1 and concluding on the 31st--All Souls Day. * Full Article
ni All Souls Night (Part 19 of 31) By floggingbabel.blogspot.com Published On :: Sat, 19 Oct 2024 07:30:00 +0000 . CONTINUED TOMORROW. Above: Every Autumn, I write a Halloween story, write it out on leaves (one word per leaf), photograph the leaves, and then leave them where.I found them. The story is then serialized, starting on October 1 and concluding on the 31st--All Souls Day. * Full Article
ni All Souls Night (Part 20 of 31) By floggingbabel.blogspot.com Published On :: Sun, 20 Oct 2024 07:30:00 +0000 . CONTINUED TOMORROW. Above: Every Autumn, I write a Halloween story, write it out on leaves (one word per leaf), photograph the leaves, and then leave them where.I found them. The story is then serialized, starting on October 1 and concluding on the 31st--All Souls Day. * Full Article
ni All Souls Night (Part 21 of 31) By floggingbabel.blogspot.com Published On :: Mon, 21 Oct 2024 07:30:00 +0000 . CONTINUED TOMORROW. Above: Every Autumn, I write a Halloween story, write it out on leaves (one word per leaf), photograph the leaves, and then leave them where.I found them. The story is then serialized, starting on October 1 and concluding on the 31st--All Souls Day. * Full Article
ni All Souls Night (Part 22 of 31) By floggingbabel.blogspot.com Published On :: Tue, 22 Oct 2024 07:30:00 +0000 . CONTINUED TOMORROW. Above: Every Autumn, I write a Halloween story, write it out on leaves (one word per leaf), photograph the leaves, and then leave them where.I found them. The story is then serialized, starting on October 1 and concluding on the 31st--All Souls Day. * Full Article