ter Fossil ‘monster’ looks alien but may be related to primitive fish By www.newscientist.com Published On :: Fri, 01 May 2020 12:33:37 +0000 The Tully Monster is a famously odd 300-million-year-old fossil that looks like an alien, but a new analysis suggests it was a backboned animal like a hagfish or lamprey Full Article
ter Weird radio signals spotted in our galaxy could solve a space mystery By www.newscientist.com Published On :: Fri, 01 May 2020 14:18:31 +0000 Weird blasts of radio waves from space called fast radio bursts have been baffling astronomers since they were discovered, but after finding one in our galaxy we may finally know what creates them Full Article
ter Ancient Egyptians saw the sky as crumbling iron tub filled with water By www.newscientist.com Published On :: Mon, 04 May 2020 10:00:35 +0000 A fresh look at the world’s oldest religious texts suggests ancient Egyptians saw the sky as a water-filled iron container from which chunks fell to Earth as meteorites Full Article
ter Telling Lies review: A twisting mystery for the age of video calls By www.newscientist.com Published On :: Wed, 06 May 2020 08:00:19 +0000 Telling Lies is a game where you sift through video calls to solve a mystery. Half the time you don't know what you should be doing, but that's part of the fun, says Jacob Aron Full Article
ter I probably shouldn’t send this to my daughter By freethoughtblogs.com Published On :: Wed, 06 May 2020 12:16:30 +0000 Skatje is working hard on her thesis in computational linguistics, and might not appreciate a joke about how easy it is. It’s hard enough that I don’t even understand what she’s doing when she tries to explain it! Full Article Humor
ter Friday Polynews Roundup — More on sweet polyam on ABC sitcom, a Christian writer self-trolls, and that damn word "throuple" becomes unstoppable By feedproxy.google.com Published On :: Fri, 31 Jan 2020 18:34:00 +0000 Full Article Friday Polynews Roundup tabloids TV
ter Friday Polynews Roundup — Kids of polyfamilies, more TV, by 2030 "a growing market for ‘polymoons’" after multi-weddings, and more By feedproxy.google.com Published On :: Fri, 07 Feb 2020 14:08:00 +0000 Full Article children of polyamory Friday Polynews Roundup kids Poly 101
ter Yes, the dam is breaking. The exploding reaction to the polyam 'House Hunters' episode By feedproxy.google.com Published On :: Thu, 20 Feb 2020 14:27:00 +0000 Full Article house hunters polyamory on TV TV
ter Ghostwriter is So Upset By feedproxy.google.com Published On :: Tue, 05 Nov 2013 13:28:20 -0800 Full Article language Pie Chart keyboard
ter You're Going to Regret That Later By feedproxy.google.com Published On :: Fri, 10 Feb 2012 11:09:37 -0800 Full Article dogs dog food eating edible flow chart
ter Things to do during Winter Break By feedproxy.google.com Published On :: Thu, 07 Jan 2010 12:50:48 -0800 Full Article break day entertainment Line Graph minor nothing plenty week winter
ter The Internet Hates Safe Sex? By feedproxy.google.com Published On :: Mon, 26 Mar 2012 08:55:17 -0700 Full Article Bar Graph doing the deed safe whatdoestheinternetthink
ter Gavin Newsom Signs Executive Order to Mail Every Voter a Ballot for November Elections By news.yahoo.com Published On :: Fri, 08 May 2020 16:23:08 -0400 California Governor Gavin Newsom announced Friday that he had signed an executive order to mail ballots to the state’s 20.6 million registered voters, citing potential health risks due to the ongoing coronavirus pandemic.“There’s a lot of excitement around this November’s election in terms of making sure that you can conduct yourself in a safe way, and make sure your health is protected,” Newsom said Friday. In March, the state allowed ballots to be mailed in for its primary, which saw a record-high of 72 percent of all ballots that were cast by mail.California Secretary of State Alex Padilla, who heads the state’s elections, commended the move “It’s great for public health, it’s great for voting rights, it’s going to be great for participation,” he said. California already allows for generous absentee voting, passing a 2002 decision which gives voters the option to request permanent voting by mail, regardless of the reason.While Newsom’s decision applies only to the November election, it could set a precedent for other Democratic states, with voting by mail quickly becoming a partisan issue. It comes after the state’s lawmakers and local officials requested the measure, saying coronavirus will severely hamper voting efforts, a complaint echoed by prominent Democrats.“Why should we be saying to people, ‘Stand in line for hours,’ when we don’t even want you leaving the house?” House Speaker Nancy Pelosi said in April. But President Trump has repeatedly slammed calls for mail-in voting, saying last month that it lets “people cheat” and involves “a lot of dishonesty.”Newsom said that his order would still allow an “appropriate number” of in-person voting sites, saying that some voters, including those that are disabled, require technological help to cast a ballot. Full Article
ter Russia is fast becoming a coronavirus epicenter, with health workers still reporting PPE shortages. Putin is already thinking about reopening. By news.yahoo.com Published On :: Fri, 08 May 2020 07:19:00 -0400 On Thursday, the country reported its largest one-day increase in new cases of 11,231 — yet President Putin already has his eyes on reopening. Full Article
ter James Clapper Said He ‘Never Saw Direct Empirical Evidence’ of Trump-Russia Collusion in FBI Interview By news.yahoo.com Published On :: Thu, 07 May 2020 19:05:17 -0400 Former director of national intelligence James Clapper in 2018 said that he hadn't seen evidence that the Trump presidential campaign colluded with Russia to win the 2016 general election.Clapper was responding to a query from then-representative Tom Rooney, a Florida Republican, during an interview before the House Intelligence Committee. The transcript of the interview was released on Thursday."I never saw any direct empirical evidence that the Trump campaign or someone in it was plotting [or] conspiring with the Russians to meddle with the election," Clapper said."That's not to say that there weren't concerns about the evidence we were seeing, anecdotal evidence…[redacted]," Clapper added. "But I do not recall any instance when I had direct evidence of the content of these meetings. It's just the frequency and prevalence of them was of concern."Rooney then asked Clapper, "At what time is collusion collusion, and at what time is it just people that may have an affiliation with the campaign meeting or talking with… the Russian ambassador or somebody that's of Russian origin, and when should that be taken as something that rises to the level of an Intelligence Community concern?""I really can't answer it other than the sort of visceral reaction to why all these meetings with the Russians," Clapper responded. Clapper admitted that it would be "legitimate" for incoming Trump administration officials to meet with representatives of Russia, "but I think there is a line…between that and violating the principle that in this country we traditionally have one President and one administration at a time."The interview was part of a set of 53 transcripts of interviews held by the House Intelligence Committee as part of the Russia investigation. Current committee chairman Adam Schiff had called for the release of the transcripts in 2018.However, after 43 transcripts had been reviewed and redacted by intelligence agencies as of June 2019, Schiff refused to relase the completed transcripts to the public. Current acting DNI head Richard Grenell informed Schiff on Wednesday that all the transcripts were ready for publication. Full Article
ter Trade minister Conor Burns resigns over 'veiled threats' in letter By www.bbc.co.uk Published On :: Mon, 04 May 2020 18:32:35 GMT Conor Burns used his position as an MP to intimidate a member of the public, standards watchdog finds. Full Article
ter Anti-abortion campaigner loses Stella Creasy poster ban appeal By www.bbc.co.uk Published On :: Wed, 06 May 2020 16:31:46 GMT A judge dismisses Christian Hacking's bid to overturn a ban on posters put up around Waltham Forest. Full Article
ter Coronavirus: Ministers launch hardship fund for dairy farmers By www.bbc.co.uk Published On :: Wed, 06 May 2020 20:55:26 GMT Demand for milk has dropped with the closure of cafes and restaurants during the coronavirus crisis. Full Article
ter Coronavirus: Boris Johnson 'bitterly regrets' care home crisis By www.bbc.co.uk Published On :: Wed, 06 May 2020 15:49:37 GMT The PM says government is "working hard" to tackle it - and sets 200,000 test aim by end of month. Full Article
ter Coronavirus: MP Nadia Whittome 'sacked' as carer after 'speaking out' about PPE By www.bbc.co.uk Published On :: Thu, 07 May 2020 08:06:17 GMT Nadia Whittome claims she was "sacked" but the care employer says she was no longer needed. Full Article
ter Coronavirus: Private renters need more help to 'ride out crisis' By www.bbc.co.uk Published On :: Thu, 07 May 2020 01:11:17 GMT Almost half a million people are at "high risk" of homelessness, local councils warn government. Full Article
ter Souza out of UFC 249 after testing positive for coronavirus By www.bbc.co.uk Published On :: Sat, 09 May 2020 09:09:35 GMT UFC middleweight Jacaré Souza tests positive for Covid-19 and will no longer compete at the controversial UFC 49 show. Full Article
ter Magician Roy Horn dies after catching coronavirus By www.bbc.co.uk Published On :: Sat, 09 May 2020 04:59:58 GMT He and his stage partner Siegfried Fischbacher were one of the longest-running acts in Las Vegas. Full Article
ter The one where we interviewed Luca Ferrari By postgresweekly.com Published On :: Wed, 22 Apr 2020 00:00:00 +0000 #352 — April 22, 2020 Read on the Web ???? We've got a neat bonus for you this week at the bottom of the issue ???? Postgres Weekly Postgres Explain Visualizer 2: A Vue.js Component to Show Execution Plans — Less a standalone tool and something you’d use when building your own Postgres tooling. There is, however, a demo here. The output is really nifty. Dalibo Insert-Only Tables To Be Autovacuumed in Postgres 13 (But Why?) — Autovacuuming clears up dead tuples that are often left when updating or deleting data from tables, so why is autovacuuming for append-only tables a big deal in Postgres 13? Laurenz explains. Laurenz Albe Faster CI/CD for All Your Software Projects Using Buildkite — See how Shopify scaled from 300 to 1800 engineers while keeping their build times under 5 minutes. Buildkite sponsor Full Text Search in Milliseconds with Rails and Postgres — If you’ve never played with full text search with Postgres and Rails, this is a fine place to start. It covers LIKE/ILIKE, trigrams, and ‘proper’ full text searching. We also get to see how Leigh took a query from taking 130ms down to 7ms. Leigh Halliday An Easy Postgres 12 and pgAdmin 4 Setup with Docker — Docker provides an easy and loosely coupled way to get things set up in a development environment. Jonathan S. Katz Is There a Limit on Number of Partitions Handled by Postgres? — Sort of, but you’d really have to be going at it to stretch Postgres 12’s capabilities in this area. Denish Patel Where Do My Postgres Settings Come From? — A nice visual look at how parameters and settings cascade or override each other. My DBA Notebook Identify Slow-Running PostgreSQL Queries Quickly in Datadog — Improve PostgreSQL performance by visualizing and identifying errors fast using granular, out-of-the-box dashboards in Datadog. Datadog sponsor Replicate Multiple Postgres Servers to a Single MongoDB Server using Logical Decoding Output Plugin David Zhang An Overview of the JOIN Methods in Postgres Kumar Rajeev Rastogi ???? A Q&A with…Luca FerrariPostgres community organizer, author, adjunct professor, and open source advocate. Luca Ferrari has had a huge impact on the Postgres community in Italy, having been president of the Italian PostgreSQL Users Group in the past and having helped to organize the popular PGDay.it events. He also blogs frequently about Postgres and wrote PostgreSQL 11 Server Side Programming Quick Start Guide for Packt. Note: A more complete version of this interview is on the Web. We caught up with him to ask about server side Postgres use cases in particular: For those who use Postgres as a simple database and haven't touched the deeper elements, where do you think they should start? There's no single answer to this question, since Postgres is such a huge project with so many features and a rich community. I never found a project where it cannot fit in. Postgres is somehow like Unix: you cannot touch it as "just a database", you need to commit to its culture to benefit the most out of it. In my classes, I can see that people usually get fascinated by the capabilities of doing server side programming, and that is why I decided to write my book about this topic. Often, people do not expect to be able to embed their Perl, Java, or Python libraries directly into PostgreSQL without having to rewrite their business logic in an SQL-like language. Another great feature nowdays is the support to JSON within the database, thanks to which PostgreSQL can be used as both a relational database and a 'NoSQL' storage engine, providing a lot of flexibility in your infrastructure. One suggestion I always gave is to join the mailing lists: there are several that differ by topic and amount of traffic. Most are very active and have high quality contributors that take care in providing accuate replies to users' questions, that spend time in reproducing errors and edge-cases, and who will help you. That's a mandatory place where you have to start, in my opinion, to better learn about the project, its features and its culture. Where should the line be drawn between doing things in an external programming language versus within Postgres? Often the right choice is to place business logic near the data it refers to, that is within the database itself. However, there are several things to take into account including the developer's experience and the expressiveness of SQL-derived languages like pl/PgSQL. There's a habit of letting ORMs (Object Relational Mappers) do most of the database interaction nowadays, reducing the database to a "simple storage". Of course, databases can do a lot more, and PostgreSQL in particular can help you migrate and embed your own business logic into the database itself. I have helped a few companies embed their own Java libraries into Postgres resulting in a more robust and coherent way to access the data (the real value) without any regard of the application they were using. Because once you start having data, you will soon find that such data is required by multiple applications in different technologies and on different platforms, so that implementing the same business logic rules over and over becomes a huge effort; on the other hand, moving such logic within the database simplifies and keep uniform the way your data is manipulated. What one thing do you think people should learn? Stored procedures. They serve as a common base for triggers and are very similar to routines, therefore allowing you to build more complex pieces into your own cluster. Once you have learnt the common way of defining functions, you can go deeper and write your own native functions using other languages (e.g. C). This is more complex, but thanks to the extensibility of Postgres is not an impossible task and can help you migrating more and more code into the database. Once you have created a new feature, please do contribute it back so that other people can use it! ... Last, allow me to announce that I'm working on another book right now: me and a friend of mine are writing a more general book on Postgres that will try to answer your question by leading the reader through the main features that make Postgres unique and great. Be sure to check out Luca's book PostgreSQL 11 Server Side Programming Quick Start Guide to learn more about the topics covered in this interview. You can also find the code from the book in this GitHub repo. If you enjoyed this interview, Luca actually gave some more detailed answers in the full interview which you can read here. Full Article
ter Workloads, acceleration, and making Postgres better By postgresweekly.com Published On :: Wed, 29 Apr 2020 00:00:00 +0000 #353 — April 29, 2020 Read on the Web Postgres Weekly 7 Things That Could Be Improved in Postgres — As 1990s dance pop group D:Ream sang in 1994, Things Can Only Get Better.. including Postgres ???? Luckily these are all ‘nice to have’s but I dare say we’ll see some of them (such as automatic tuning and auto-vacuuming improvements) appear over time. Kaarel Moppel How The Citus Distributed Query Executor Adapts to a Postgres Workload — Citus is the popular extension for horizontally scaling Postgres and its query executor has seen some huge updates lately. Citus Data (Microsoft) eBook: The Most Important Events to Monitor in Your Postgres Logs — In this pganalyze eBook, we are looking at the Top 6 Postgres log events for monitoring query performance and preventing downtime. pganalyze sponsor Swarm64 DA 4.0: A Database Acceleration Extension for Postgres — Swarm64 started life as a FPGA-driven way to accelerate Postgres performance, but can now work without FPGAs too. This is not a free product but if you want to give it a run, there’s a trial or it can be spun up from the AWS Marketplace. Yana Krasteva Postgres Performance Goalposts — An interesting heuristic from Bruce here on what to do if you expect your connections, queries, or write queries to be above/below certain levels. Bruce Momjian A Tale of Password Authentication Methods in Postgres — “Let’s say you want to implement a password authentication method in a client/server protocol..” Here’s the story of how Postgres came up with its approaches. Peter Eisentraut How to Set application_name When Using psql — As Craig says: “Setting your application name in Postgres is SO USEFUL. It will help a lot for debugging when you’ve got multiple different apps/services connecting to the same database.” Denish Patel How to Upgrade Postgres from v11 to v12 on Ubuntu 20.04 — Now that Ubuntu 20.04 is out, this might be on your mind! Paolo Melchiorre Working with Amazon Aurora PostgreSQL: What Happened to the Stats? — Apparently there’s a bug with numerous versions of Aurora PostgreSQL that causes certain stats to be lost on restart. Michael Vitale Postgres Vision 2020 - Free Online Conference (June 23-24) — Learn how today’s IT leaders are using Postgres. Join from anywhere in the world and listen from 30+ Postgres experts. EnterpriseDB sponsor A Deep Dive into PostGIS Nearest Neighbor Search — Take a deep dive into the Postgres and PostGIS internals to find out how K-nearest neighbor accelerates local search. Martin Davis My Favorite Postgres Extensions: Part One — A basic high level look at pg_partman and postgres_fdw. Nawaz Ahmed Kanel: Generate TypeScript Types from Postgres Kristian Dupont Postgres.app: The Easiest Way to Get Started with Postgres on the Mac — I’ve used this for years, it’s super popular, but if there’s just a handful of developers out there who’d benefit from it and don’t know about it, this reminder will be worth it :-) It continues to get very frequent updates. Jakob Egger, Chris Pastl, and Mattt Thompson ???? Upcoming Events All in-person events we had listed are cancelled or postponed due to the COVID outbreak, so we're now linking to webinars, livestreams, and similar online events. If you have any, just hit reply and if it's Postgres related (and either free or not too expensive) we'll include it in a future issue. Just one this week: ???? Postgres Vision 2020 on June 23-24. A full attempt at an online Postgres conference across multiple days with multiple tracks. ???? – requires e-mail address or registration???? – costs money to participate Full Article
ter An interview with Ruby ETL expert Thibaut Barrère By rubyweekly.com Published On :: Thu, 30 Apr 2020 00:00:00 +0000 #499 — April 30, 2020 Read on the Web ???? Occasionally we run interviews in Ruby Weekly and we're back with another one.. with long time Rubyist and Kiba maintainer, Thibaut Barrère. Be sure to check out the bottom of this issue to read it, especially if you ever run ETL jobs with Ruby! ???? Ruby Weekly ▶ Let's Build a Twitter Clone in 10 Minutes with Rails, CableReady, and StimulusReflex — You know that cloning Twitter in 10 minutes is impossible, but what about the core mechanism of the idea? After a slow first minute, this video does a pretty good job of showing off some techniques you might not have used before. Nate Hopkins discuss.rubyonrails: The Rails Project Discussion Forum — Basically a Web version of the Rails mailing lists and a worthwhile place to head if you want to suggest features, ask questions, etc. Ruby on Rails Discussions Easy Rails Deployments — Deploy your Ruby, Rails, Sinatra, and Rack application to any cloud or server. Cloud 66 offers a scalable Heroku alternative that doesn't lock you in. Try it free and get extra $66 free credits with the code: 'Ruby-Weekly'. Cloud 66 sponsor sequel-activerecord-adapter: Allows Sequel to Reuse an ActiveRecord Connection — If you want to use more Sequel or migrate in that direction, this makes it easy. Janko Marohnić Ruby Adds Experimental Support for 'End-Less' Method Definitions — We’ve touched on this in a previous issue, but if you fancy a proper blog post with examples, this is more accessible than digging through feature tracker discussions. I’m not a fan of this syntax myself yet, but Prateek does a good job of selling it. Prateek Choudhary CableReady: Trigger Client-Side DOM Changes from Server-Side Ruby — If you skipped the video above because it’s a video (and I know many of you do ????) CableReady is still worth checking out. It aims to “complete the ActionCable story” by providing a way to directly interact with clients over ActionCable WebSockets. The docs will help you get the idea. Hopsoft ???? Jobs Find a Job Through Vettery — Vettery specializes in tech roles and is completely free for job seekers. Create a profile to get started. Vettery Security Engineer (Remote) — Are you an engineer with experience in Rails and/or Go? Join our team and help secure our apps and cloud infrastructure. Shogun ℹ️ Interested in running a job listing in Ruby Weekly? There's more info here. ???? Articles & Tutorials A Practical Use for PStore — PStore is one of the older parts of Ruby’s stdlib and lets you persist (and restore) a Ruby hash to disk. I haven’t seen it in Ruby code for years but Arkency have found a neat, modern use case. Paweł Pacana ▶ Drag and Drop Sortable Lists with Rails and Stimulus JS — How to wire up drag and drop lists with a Rails app using Sortable, Stimulus and acts_as_list. Go Rails Setting Up Multi-Factor Authentication for RubyGems.org — If you’re a registered user of the official Ruby Gems repository, you should have had an email this week about securing your account using 2FA. This is just my own reminder that this is a good idea especially if you publicly publish widely used gems! :-) Rubygems.org Let’s Explore Big-O Notation With Ruby ???? — Learn to use Big-O to look at an algorithm and easily discern its efficiency, without having to run a profiling tool. Honeybadger sponsor ▶ Discussing Docker and Kubernetes with Kelsey Hightower — A worthwhile show to listen to if Kubernetes and Docker intimidate you but you want to know a little more. Kelsey is good at breaking these things down into understandable pieces. Rails with Jason Podcast podcast Rails System Tests in Docker — We’re seeing an uptick in articles about system tests in Rails. Here’s how to integrate them into your development Docker setup. Hint.io The Difference Between System Specs and Feature Specs — If you’ve felt the difference between RSpec’s “feature specs” and “system specs” is quite subtle, this explanation will help. Jason Swett Why Rubyists Should Consider Learning Go — If you want compilation and a type system, Crystal is probably a better fit for Rubyists, but Go is undoubtedly a neat language and ecosystem (and if you do end up in the Go world, check out our Go weekly! ????) Ayooluwa Isaiah Building a Ruby CLI with Thor Daniel Gómez ???? Code and Tools git curate: Peruse and Delete git Branches Ergonomically — Got a repo cluttered with branches here and there? git curate aims to cure the pains of getting those branches back under control. Matt Harvey MessageBus: A Reliable and Robust Messaging Bus for Ruby and Rack Sam Saffron Are You Spending Too Much on Heroku? Rails Autoscale sponsor bootstrap_form: A Rails Form Builder for Bootstrap v4-Style Forms Bootstrap Ruby ActiveModelAttributes: The Active Record Attributes API, but for Active Model — Brings some of the goodies of the Rails 5 Active Record attributes API to ActiveModel too. 1.6.0 just dropped. Karol Galanciak ???? A Q&A with…Thibaut BarrèreCreator of Kiba ETL Thibaut Barrère is a long-time Rubyist and data engineer who built and maintains the popular Extract, Transform, and Load (ETL) framework Kiba. We asked him some questions about his work: What inspired you to create Kiba? A lot of my work since ~2005 has been focused on data integration (making systems speak together), data aggregation etc. I sometimes used GUI-based tools like Microsoft SSIS which, while powerful, are quite far from the coding experience. I was already using Ruby at that time, and was happy to discover activewarehouse-etl (maintained by Anthony Eden, who runs DNSimple now) providing a Ruby DSL to declare data pipelines. I used it for a while with very good success to implement data extractions and business intelligence ETL, and ultimately took over the maintenance. In the long run, though (as I explained in a recent Paris.rb talk), the balance between the the cost of OSS maintenance and the usability for my billable and non-billable use-cases proved to be not good enough, which made me decide to stop the maintenance, sadly. I still wanted to use Ruby to write data pipelines, but I needed to cover more use-cases and reduce the OSS maintenance burden at the same time. This ultimately led me to write and share (in 2015) Kiba ETL, a focused DSL for declarative processing, matching those criterias. Do you find yourself adding more features while in quarantine? Before the quarantine, I directed my Kiba bandwith and focus on finalizing Kiba v3 and rewriting the documentation from scratch, to properly encourage best practices I’ve been discovering. I also created experimental branches for Ruby 2.7/2.8 keywords. During the quarantine, I've reduced client work and OSS work too, to focus on shipping Kiba Pro v2 (which I’ll announce shortly officially). I’ve extracted and generalized (from real-life projects) very useful components, such as a “batch SQL lookup” (useful when replacing relationships keys during data migrations and datawarehouses sync code, in batch rather than row by row), a “file lock” to ensure a single job runs at once, and a “parallel transform” to achieve easy concurrency for things like HTTP queries. What's the wildest ETL that you've encountered? Getting the data out of a system which is actively not acting in that direction is always a bit wild.. One can see all types of fancy stuff on the field. For instance, it is not uncommon to have an ETL process start a headless browser, jump through pages, just to get to the CSV/PDF/Excel file that you will then use as your data source! You can also end up having to figure out ways to read or write very old file formats at times. Recently I wrote a Kiba component to generate a COBOL delimited file, for instance. In large companies, a very widely used I/O is good old SFTP, far away from modern APIs and formats. Can you tell us how to say your last name? ???? I had to deploy a page to my blog to answer that question properly ????. You’ll find out how to say my name here. Merci Thibaut! You can read some of Thibaut's posts on his blog and find out more about Kiba ETL here. Full Article
ter An insightful interview with Go's Rob Pike By golangweekly.com Published On :: Fri, 1 May 2020 00:00:00 +0000 #310 — May 1, 2020 Unsubscribe : Read on the Web Golang Weekly An Interview with Go's Rob Pike — Go’s co-creator answers some big picture questions about Go’s status, history, and future. “Go has indeed become the language of cloud infrastructure,” says Rob. Evrone ???? What's Coming in Go 1.15 — This presentation covers all the major sections: tooling, performance, API changes, and the Big Ones, like the aforementioned smaller binaries. Fingers crossed for a final release in August. Daniel Martí slidedeck Troubleshoot Golang App Issues with End-To-End Distributed Tracing — Trace requests across service boundaries to optimize bottlenecks by drilling into individual traces end-to-end with flame graphs. Correlate Golang traces with related logs and metrics for fast troubleshooting. Enhance performance with a free Datadog APM trial. Datadog APM sponsor Debugging Go Programs using Delve — The recent Go community survey showed that most Go developers use text-based logging (e.g. with fmt.Print()) to debug, but if you want to step things up a notch, this is a gentle intro to Delve. Naveen Ramanathan My Journey Optimizing The Go Compiler — Assel explains how a simple task evolved into a legitimate compiler optimization (aimed at 1.15) and proves we should all have a curious mind. Assel Meher The 'Ultimate' Go Study Guide — A large repository of code examples with comments and notes from Hoanh’s attempt at learning the language. If you pick up concepts well from straightforward examples, this is worth a look. Hoanh An ???? Jobs Software Engineer at HiPeople (Remote/Berlin) — Fast-moving startup (backed by top tier VCs) shaping the future of modern recruiting is looking for engineers who love working with Go. HiPeople Find a Job Through Vettery — Vettery specializes in tech roles and is completely free for job seekers. Create a profile to get started. Vettery ???? Articles & Tutorials Making a Multiplayer Game with Go and gRPC — Started as a (somewhat ambitious) project to learn Go, Sam walks us through the algorithms, design decisions, mistakes, and where Go helped and hurt the game. Samuel Mortenson Documenting a Go GitHub Repo — Or, “How to Keep the README in Your GitHub Repo in Sync with Your Go Doc.” Eyal Posener The 5 Crucial PDF & Office Features For Corporate Apps in Pure Go — UniDoc develops pure Go libraries for managing PDF and Office files since 2016. Here are the features developers use the most. UniDoc sponsor ▶ Discussing Building Immediate Mode GUIs in Go — Elias Naur, creator of Gio, joins the popular Go podcast to discuss building GUI apps with Go, the pros and cons of immediate vs retained mode and examples of each. Go Time Podcast podcast The Creation of a Realtime Patient Monitoring System with Go and Vue in 3 Days — This is the Go content I am here for. Connecting with monitoring devices and leveraging Go’s strengths to create a helpful, distributed application. Great work. Kasun Vithanage Add It Up: Azure’s Go Problem — Here’s one takeaway from the Go Developer Survey. Of the major clouds, Azure is the one Go developers seem least enamored by. Lawrence E Hecht Why You Should Generally Be using the Latest Version of Go — No surprising arguments here. Chris Siebenmann ???? Code & Tools XLSX: A Library for Reading and Writing XLSX (Excel) Files — Got spreadsheets? Want to make spreadsheets? There’s a lot you can do with them here. Geoffrey J. Teale SQLBoiler: Generate a Go ORM Tailored to Your Database Schema — A long standing library that has now switched to modules. Volatile Technologies Inc. Decimal: Arbitrary-Precision Fixed-Point Decimal Numbers for Go — The library laments that it can only support decimal numbers with up to 2^38 digits after the decimal point so take care ???? Spring Engineering Beta Launch: Code Performance Profiling - Find & Fix Bottlenecks Blackfire sponsor Redigo: A Go Client for Redis — In related news, Redis 6.0 has just been released. Gary Burd ntp: Facebook's NTP Libraries — NTP stands for “Network Time Protocol”, if you were wondering. Basically, clock synchronization. Facebook Incubator grobotstxt: A Native Go Port of Google's Robots.txt Parser and Matcher Library — Now you can crawl your own site, just like Google does. Jim Smart A Compiler for a Small Custom Language Into x86-64 Assembly — One of those ‘labor of love’ type projects that you might enjoy poking around in. You won’t use this project directly, but you might be intrigued how to create a similar compiler for your own thing. Maurice Tollmien MIDAS: Microcluster-Based Detector of Anomalies in Edge Streams — A Go reimplementation of this C++ version. Steve Tan Liftbridge 1.0: Lightweight, Fault-Tolerant Message Streams — A server that implements a durable, replicated message log for the NATS messaging system. Liftbridge Full Article
ter Life and struggle after YouTube fame By www.bbc.co.uk Published On :: Wed, 11 Mar 2020 00:43:14 GMT Dax was one of YouTube's first stars, but 13 years later, few people remember his name. Can a vlogging legend seize glory again? Full Article
ter Dirty streaming: The internet's big secret By www.bbc.co.uk Published On :: Thu, 05 Mar 2020 01:03:57 GMT Figures suggest that IT now generates as much CO2 as flying, with some arguing it's nearly double. Full Article
ter Coronavirus tests and masks sold by fraudsters online By www.bbc.co.uk Published On :: Fri, 10 Apr 2020 04:54:22 GMT A BBC investigation has found online scams selling fake protective equipment and coronavirus tests. Full Article
ter Coronavirus: Should maternity and paternity leave be extended? By www.bbc.co.uk Published On :: Sun, 26 Apr 2020 23:22:29 GMT A petition calling for maternity leave to be extended due to coronavirus has attracted many signatures. Full Article
ter React Router & Webpack in Production By reactjsnews.com Published On :: Sun, 13 Mar 2016 04:00:09 +0000 I’ve been working on a pretty large react-router codebase at work. Currently it has around 50~ code splits, which as you can imagine, is a lot of routes. This is going to be a post on the things I’ve learned throughout building out my development / production config and how we are using webpack in production. ###Initial Setup Before I really dive into how my webpack config is setup and the problems I’ve found, I’ll quickly go over how this app is setup. Currently, there’s one entry point and it looks like this: import React from 'react' import { render } from 'react-dom' import { match, Router, browserHistory } from 'react-router' import AsyncProps from 'async-props' import routes from '../routes/index' /* globals document, window */ const { pathname, search, hash } = window.location const location = `${pathname}${search}${hash}` match({ routes, location }, () => { render( <Router render={props => <AsyncProps {...props}/>} routes={routes} history={browserHistory} />, document.getElementById('app') ) }) It looks like a standard react-router setup, except a couple things are different. For one, there’s way too many routes to have them all in this file, so we are importing the main route object into this file. Second, we are using match on the client side. Without matching first, the client side would try to render before the splits were downloaded causing an error. You can read a little more about match on the client here. Next, we are using Ryan Florence’s awesome async-props library for loading data into components. It allows me to load data from an api before the server renders components. It will pass the data down to the client for the client-side render, and then data will load as you navigate to new pages automatically. ###Routes Our main routes file looks like this: export default { component: 'div', path: '/', indexRoute: require('./index'), childRoutes: [ require('./login'), require('./account'), ... ] } There’s a lot more require’s in our app of course. And these are nested pretty deep. The files referenced in the root file have more child routes, and those use require.ensure which you can read about in the webpack docs on code splitting. It tells webpack to make a new bundle, and then load that bundle when require.ensure is called on the client. Here’s an example: if(typeof require.ensure !== "function") require.ensure = function(d, c) { c(require) } module.exports = { path: 'account', getComponent(location, cb) { require.ensure([], (require) => { cb(null, require('../../views/master/index.jsx')) }) }, childRoutes: [ require('./settings'), ] } There’s a few things going on here. First, we have a function at the top that will polyfill require.ensure. Why? Well, on this project we are server rendering our whole site as well, which I would rather not do, but due to the type of site we are building: we have to. The next thing is the relative require path. I’m using this awesome babel resolver plugin along with webpack’s resolve paths so that I can import files like this: import Header from '../../master/header' //becomes import Header from 'master/header' Why do I have to use a babel plugin AND webpack’s resolve feature? Once again, doing a server rendered app, the code is ran on the server and also through webpack. In this particular app, I haven’t had time to experiment with webpacking the server. Anyways, if I didn’t use the babel plugin, errors would be thrown on the server, but webpack would work fine. This is one of the common things I have ran into while building this app. Realizing some things need to be done slightly different on the server or client. You may still be wondering why I am referencing the component as a relative path in the above route example, and that’s because the babel plugin I’m using only works with import and not require. My route objects are the one place that I have these “nasty” looking paths. ##Webpack I was prompted to make this article after tweeting this out: webpack splits vs AggressiveMergingPlugin({minSizeReduce: 1.0}) pic.twitter.com/b6kxHEqNcO— ReactJS News (@ReactJSNews) March 10, 2016 A couple people wanted a better explanation as to what’s happening here. When I was first building my production webpack config, even after using all of these plugins: new webpack.optimize.CommonsChunkPlugin('vendor', 'vendor.js'), new webpack.optimize.OccurenceOrderPlugin(), new webpack.optimize.DedupePlugin(), new webpack.optimize.UglifyJsPlugin({ compress: { warnings: false }, comments: false, sourceMap: false, mangle: true, minimize: true }), My bundle looked like this: That’s pretty huge if you think about it. And I’m not talking about the amount of bundles. I’m talking about the file size. After searching everywhere for a solution to get the bundle size down further, I found webpack’s AggressiveMergingPlugin. This thing is a life saver. As you may have seen from the tweet, the output turns into this: Just having the main, vendor, and one other bundle brings the whole site under 1MB. I’m using the plugin to only merge files if the size reduction is more than 50%, which is the default. People talk about code splitting in webpack and think it’s really amazing to load the JS for the page you’re on and nothing more. It sounds great. The problem is that the file size is immensely bigger. If someone more familiar with webpack has a better idea as to why this is, I’d like a better explanation. It isn’t feasable to keep the splits instead of merging them. This site is pretty large, with a lot of routes as you can tell from the screenshots. Codesplitting without merging would cause way more waiting on the client side every time you navigate to a new page. Even if the JS was heavily cached, the first time you hit these pages it will have to load a 300kb bundle for some of them. ##Caching That takes us to caching. We are about a month away from publicly launching this site, so we haven’t setup the workflow for pushing updates through a cdn, but that will be the end result. For now, in my webpack config, my output object looks like this: output: { path: __dirname + '/public/assets/js/[hash]/', filename: '[name].js', chunkFilename: '[id].js', publicPath: '/assets/js/[hash]/' }, This is in the production config of course. This way I can cache the files and when I update the code, the hash will change and the browser won’t be caching the old code. I pass in the hash as an env variable at runtime to that the server has the correct path to the assets folder. ##Problems There were a few big problems I came across while building out a server rendered app with dynamic routes. The first was page titles. How am I supposed to have the right title on the client and on the initial server render? Thankfully, Ryan has yet another solution. react-title-component solves this perfectly. The next was, how do I hit an api, wait for the response on server render, load new data on route changes, and of course, do this at the component level. As I mentioned before, async-props solves this problem too. It will give you route info so that you can make requests based on things in the url. The next problem is one that I haven’t fully solved. Webpack is getting really slow. It takes around 20 seconds on a maxed out macbook 15” to build code in production. On the server, it takes more like a minute! If I’m in development mode, it takes around 10 seconds to make the initial build, and sometimes it lags on building the splits on code change. If anyone has insight into this I would love to hear it. This one goes along with the webpack one, and it is reloading the server. I haven’t tried to webpack the server but I hear doing so works great for this. I don’t think it would fix the problem with webpack being slow though, and in fact it would probably make it even slower. ##Folder structure I almost forgot to throw this one in here! I’m really happy with the structure of this project. I have a views folder that has all of the same folders and file names as the routes folder. It makes it really easy to find things. These also correspond with the URL to the page. /account/settings will be in views/account/settings.jsx and routes/account/settings.js. The same is true for my tests folder. ##Conclusion I hope this gave you a good glimpse at how webpack and react router work at a larger scale than you see most blog posts cover. If you have any questions or things that you would like me to talk about that I haven’t already, please leave a comment below and I will update this post! I’m sure that I forgot a few problems and tips writing this. I was thinking this would be a short post but it blew up on me! Full Article
ter How to Make Your React Apps 15x Faster By reactjsnews.com Published On :: Thu, 07 Apr 2016 17:00:00 +0000 Without any modifications, React is really fast as-is. There are, however, a few things that you can do to improve performance. While working at HelloSign, I discovered some quick fixes that made our apps incredibly snappy. With these simple changes, I was able to reduce render time from over 3000 milliseconds to less than 200 milliseconds. Without any modifications, React is really fast as-is. There are, however, a few things that you can do to improve performance. While working at HelloSign, I discovered some quick fixes that made our apps incredibly snappy. With these simple changes, I was able to reduce render time from over 3000 milliseconds to less than 200 milliseconds. Editor’s Note: Check out our upcoming React University Workshops. Our next workshop, React 2016, will be held on April 23 at Microsoft Reactor in San Francisco and will offer a deep dive into creating modern Single-Page Applications (SPA) using React, Redux, React Router, Immutable.js, and Webpack. Also, if you’re interested in learning the basics about what it takes to be a Data Visualization Engineer, check out React and D3. Introduction HelloSign is a cloud-based electronic signature tool founded in 2010. As you can imagine, HelloSign is a very JavaScript-heavy codebase. A lot of client-side behavior is necessary to create a rich signing experience. Lately, we’ve moved much of our codebase toward React. In fact, in many places we’ve broken up our codebase into several single-page applications written in React. Although the HelloSign team was happy with React’s performance before I initially joined the project, I quickly found some low-hanging fruit that could improve runtime speed. Here are the steps you should take to see similar improvements in your own applications. Create a Baseline Performance Measurement Before you begin, you should take a baseline measurement. Optimizations are meaningless if you can’t verify the results of your modifications. Thankfully, Chrome has excellent developer tools to help. One, little-used feature of Chrome’s DevTools is the “Timeline” tool. It allows you to record and analyze all activity in your application. You can record interactions on the page, locate potential memory leaks, measure the total time it takes to perform a task, and identify areas of potential jank. Best of all, the results can be recorded for comparison with your final benchmark. There’s actually a really awesome video on Chrome’s DevTools that goes into detail about the “Timeline” feature. You can view it here. We chose to measure the time elapsed between the initial paint of our signer page to the final rendering of the entire page. The initial download of our bundles still needs some optimization, but we’re neither going to mess with nor measure this parameter. It’s fairly easy and consistent to test render time rather than trying to click areas around the page and trying to measure its performance in a repeatable way. Then, all we needed to do was to go to the signer page, open Chrome’s DevTools “Timeline” tab, and refresh the page. As a side note, make sure that when performing this test, the “Paint” and “Screenshots” boxes are checked so that you can see what the user sees as the page is being rendered. After all that, we determined that our rendering time from initial paint was a little over 3 seconds. Much too long. Luckily, there was little we had to do to make this quite a bit faster. Set NODE_ENV to Production This step is easy to get wrong, even if you are well-informed. React’s documentation provides an overview, but doesn’t provide many specifics. React has great developer warnings and error checking, but these are only intended for development; if you take a look at React’s source code, you’ll see a lot of if (process.env.NODE_ENV != 'production') checks. This is running extra code that is not needed by the end user, not to mention that calling process.env.NODE_ENV is extremely slow. For production environments, we can remove all this unnecessary code. Just keep in mind that you don’t want to do this in development because it will remove all those helpful developer warnings. If you’re using Webpack, you can use DefinePlugin to replace all instances of process.env.NODE_ENV with 'production', and then use the UglifyJsPlugin to remove all the dead code that no longer runs. Here’s a sample setup that you might use: // webpack.config.js ... plugins: [ new webpack.DefinePlugin({ // A common mistake is not stringifying the "production" string. 'process.env.NODE_ENV': JSON.stringify('production') }), new webpack.optimize.UglifyJsPlugin({ compress: { warnings: false } }) ] ... React Constant and Inline Elements Transforms React 0.14 introduced support for certain transpile time optimizations with Constant and Inline Element Babel Transforms. React Constant Elements treats JSX elements as values and hoists them to a higher scope. In other words, it hoists static elements and thereby reduces calls to React.createClass. React Inline Elements converts JSX elements into the object literals that they eventually return. Again, this minimizes the runtime calls to React.createClass. The implementation is rather simple. We added our Babel configuration in our package.json file: // package.json ... "babel": { "env": { "production": { "plugins": [ "transform-react-constant-elements", "transform-react-inline-elements" ] } } }, ... Final Measurement / Conclusion Lastly, you’ll want to run the benchmark again and compare it with that saved benchmark from before these optimizations. As you can see, the total runtime profile ends 200ms after initial paint! That’s 15 times faster! Full Article
ter 2006 Club World Cup Final: Internacional 1-0 Barcelona By www.fifa.com Published On :: Fri, 07 Dec 2012 02:37:00 GMT Internacional-Barcelona, FIFA Club World Cup Japan 2006 Final: The powerful side of Ronaldinho, Deco and Andres Iniesta lost out to the Brazilians despite creating a number of chances. Full Article Area=Tournament Section=Competition Kind=Video Tournament=FIFA Club World Cup Japan 2006
ter 2008 Club World Cup Final: LDU Quito 0-1 Manchester United By www.fifa.com Published On :: Mon, 10 Dec 2012 02:58:00 GMT Liga de Quito-Manchester United, FIFA Club World Cup Japan 2008 Final: Both teams showed impressive attacking flair, but it was Wayne Rooney's angled shot that made the difference. Full Article Area=Tournament Section=Competition Kind=Video Tournament=FIFA Club World Cup Japan 2008
ter 2010 Club World Cup Final: TP Mazembe 0-3 Inter By www.fifa.com Published On :: Thu, 13 Dec 2012 04:50:00 GMT TP Mazembe-Inter Milan, FIFA Club World Cup UAE 2010: Internazionale was in rampant form as they crushed the dreams of the first African finalists. Full Article Area=Tournament Section=Competition Kind=Video Tournament=FIFA Club World Cup UAE 2010
ter Players of Mali enter to the field By www.fifa.com Published On :: Sat, 28 Oct 2017 11:52:00 GMT KOLKATA, INDIA - OCTOBER 28: Players of Mali enter to the field prior the FIFA U-17 World Cup India 2017 3rd Place match between Brazil and Mali at Vivekananda Yuba Bharati Krirangan on October 28, 2017 in Kolkata, India. (Photo by Buda Mendes - FIFA/FIFA via Getty Images) Full Article Area=Tournament Section=Competition Kind=Photo Tournament=FIFA U-17 World Cup India 2017
ter Players from Mali enter the field By www.fifa.com Published On :: Sat, 28 Oct 2017 11:53:00 GMT KOLKATA, INDIA - OCTOBER 28: Players from Mali enter the field prior the FIFA U-17 World Cup India 2017 3rd Place match between Brazil and Mali at Vivekananda Yuba Bharati Krirangan on October 28, 2017 in Kolkata, India. (Photo by Buda Mendes - FIFA/FIFA via Getty Images) Full Article Area=Tournament Section=Competition Kind=Photo Tournament=FIFA U-17 World Cup India 2017
ter : A player from Mali prays before entering the field By www.fifa.com Published On :: Sat, 28 Oct 2017 11:56:00 GMT KOLKATA, INDIA - OCTOBER 28: A player from Mali prays before entering the field prior the FIFA U-17 World Cup India 2017 3rd Place match between Brazil and Mali at Vivekananda Yuba Bharati Krirangan on October 28, 2017 in Kolkata, India. (Photo by Buda Mendes - FIFA/FIFA via Getty Images) Full Article Area=Tournament Section=Competition Kind=Photo Tournament=FIFA U-17 World Cup India 2017
ter Players of Brazil and Mali enter to the field By www.fifa.com Published On :: Sat, 28 Oct 2017 12:58:00 GMT KOLKATA, INDIA - OCTOBER 28: Players of Brazil and Mali enter to the field prior the FIFA U-17 World Cup India 2017 3rd Place match between Brazil and Mali at Vivekananda Yuba Bharati Krirangan on October 28, 2017 in Kolkata, India. (Photo by Buda Mendes - FIFA/FIFA via Getty Images) Full Article Area=Tournament Section=Competition Kind=Photo Tournament=FIFA U-17 World Cup India 2017
ter Players of Brazil and Mali enter to the field By www.fifa.com Published On :: Sat, 28 Oct 2017 12:58:00 GMT KOLKATA, INDIA - OCTOBER 28: Players of Brazil and Mali enter to the field prior the FIFA U-17 World Cup India 2017 3rd Place match between Brazil and Mali at Vivekananda Yuba Bharati Krirangan on October 28, 2017 in Kolkata, India. (Photo by Buda Mendes - FIFA/FIFA via Getty Images) Full Article Area=Tournament Section=Competition Kind=Photo Tournament=FIFA U-17 World Cup India 2017
ter Players of Brazil and Mali enter to the field By www.fifa.com Published On :: Sat, 28 Oct 2017 13:00:00 GMT KOLKATA, INDIA - OCTOBER 28: Players of Brazil and Mali enter to the field prior the FIFA U-17 World Cup India 2017 3rd Place match between Brazil and Mali at Vivekananda Yuba Bharati Krirangan on October 28, 2017 in Kolkata, India. (Photo by Buda Mendes - FIFA/FIFA via Getty Images) Full Article Area=Tournament Section=Competition Kind=Photo Tournament=FIFA U-17 World Cup India 2017
ter Players of Brazil celebrate after the FIFA U-17 World Cup India 2017 3rd Place By www.fifa.com Published On :: Sat, 28 Oct 2017 15:03:00 GMT KOLKATA, INDIA - OCTOBER 28: Players of Brazil celebrate after the FIFA U-17 World Cup India 2017 3rd Place match between Brazil and Mali at Vivekananda Yuba Bharati Krirangan on October 28, 2017 in Kolkata, India. (Photo by Tom Dulat - FIFA/FIFA via Getty Images) Full Article Area=Tournament Section=Competition Kind=Photo Tournament=FIFA U-17 World Cup India 2017
ter Players of England and Spain enter to the field By www.fifa.com Published On :: Sat, 28 Oct 2017 15:59:00 GMT KOLKATA, INDIA - OCTOBER 28: Players of England and Spain enter to the field prior the FIFA U-17 World Cup India 2017 Final match between England and Spain at Vivekananda Yuba Bharati Krirangan on October 28, 2017 in Kolkata, India. (Photo by Buda Mendes - FIFA/FIFA via Getty Images) Full Article Area=Tournament Section=Competition Kind=Photo Tournament=FIFA U-17 World Cup India 2017
ter Players of England and Spain enter to the field By www.fifa.com Published On :: Sat, 28 Oct 2017 16:00:00 GMT KOLKATA, INDIA - OCTOBER 28: Players of England and Spain enter to the field prior the FIFA U-17 World Cup India 2017 Final match between England and Spain at Vivekananda Yuba Bharati Krirangan on October 28, 2017 in Kolkata, India. (Photo by Buda Mendes - FIFA/FIFA via Getty Images) Full Article Area=Tournament Section=Competition Kind=Photo Tournament=FIFA U-17 World Cup India 2017
ter Serio Gomez of Spain celebrates after scoring a goal against England By www.fifa.com Published On :: Sat, 28 Oct 2017 16:28:00 GMT Serio Gomez of Spain celebrates after scoring a goal against England during their final FIFA U-17 World Cup football match at the Vivekananda Yuba Bharati Krirangan stadium in Kolkata on October 28, 2017. / AFP / Dibyangshu SARKAR Full Article Area=Tournament Section=Competition Kind=Photo Tournament=FIFA U-17 World Cup India 2017
ter Rhian Brewster of England celebrates scoring his side's first goal By www.fifa.com Published On :: Sat, 28 Oct 2017 16:32:00 GMT KOLKATA, INDIA - OCTOBER 28: Rhian Brewster of England celebrates scoring his side's first goal during the FIFA U-17 World Cup India 2017 Final match between England and Spain at Vivekananda Yuba Bharati Krirangan on October 28, 2017 in Kolkata, India. (Photo by Tom Dulat - FIFA/FIFA via Getty Images) Full Article Area=Tournament Section=Competition Kind=Photo Tournament=FIFA U-17 World Cup India 2017
ter Rhian Brewster of England scores his side's first goal By www.fifa.com Published On :: Sat, 28 Oct 2017 16:33:00 GMT KOLKATA, INDIA - OCTOBER 28: Rhian Brewster of England scores his side's first goal during the FIFA U-17 World Cup India 2017 Final match between England and Spain at Vivekananda Yuba Bharati Krirangan on October 28, 2017 in Kolkata, India. (Photo by Tom Dulat - FIFA/FIFA via Getty Images) Full Article Area=Tournament Section=Competition Kind=Photo Tournament=FIFA U-17 World Cup India 2017