0 PostSecret on NBC Today (4/18/20) By postsecret.com Published On :: Sat, 18 Apr 2020 22:39:32 +0000 Full Article Uncategorized
0 PostSecret Saves the Nation’s Suicide Hotline, 1-800-SUICIDE By postsecret.com Published On :: Sat, 02 May 2020 23:19:37 +0000 Almost 14 years ago to the day, Reese Butler, the founder of HopeLine, asked me if I thought the PostSecret community could raise enough money to prevent the nation’s suicide prevention hotline from closing. The crisis-line needed over $25,000 to continue its mission. I posted a plea on this website and one week later over […] Full Article Uncategorized
0 Happy 20th Anniversary to Storm Front! By www.jim-butcher.com Published On :: Tue, 31 Mar 2020 17:38:16 +0000 Last week’s Dresden Drop looked to the future, revealing the long-awaited trailer for Peace Talks and the bombshell announcement that there will be TWO Dresden novels this year. This week, we’ll look to the past, celebrating the 20th anniversary of the publication of Storm Front on April 1st, 2000. Paranoid? Probably. But just because you’re [...] Full Article News
0 2eme livre lect 3 sur Flickr : partage de photos ! By ffffound.com Published On :: Mon, 06 Feb 2017 22:35:05 +0900 via http://www.flickr.com/photos/taffeta/2463140032/ Full Article
0 DEUTSCHE & JAPANER – Creative Studio – Kalendervorschau 2016 By ffffound.com Published On :: Thu, 16 Mar 2017 06:46:20 +0900 via http://deutscheundjapaner.com/projects/kalendervorschau Full Article
0 DEUTSCHE & JAPANER – Creative Studio – Kalendervorschau 2016 By ffffound.com Published On :: Sat, 18 Mar 2017 02:21:12 +0900 via http://deutscheundjapaner.com/projects/kalendervorschau Full Article
0 blog040.jpg 500×834 pixels By ffffound.com Published On :: Sat, 22 Apr 2017 05:23:41 +0900 via http://amassblog.com/wp-content/uploads/2010/02/blog040.jpg Full Article
0 tumblr_l4qiipn4Ur1qz6f9yo1_500.jpg (Image JPEG, 480x389 pixels) By ffffound.com Published On :: Sat, 13 May 2017 15:58:18 +0900 via http://24.media.tumblr.com/tumblr_l4qiipn4Ur1qz6f9yo1_500.jpg Full Article
0 News: Pawnz and Bookmarks through May2020 By feedproxy.google.com Published On :: Thu, 02 Apr 2020 15:34:29 -0400 A news post has been posted at Sluggy.com! Full Article
0 Comic: 05/08/2020 By feedproxy.google.com Published On :: Fri, 08 May 2020 00:00:00 -0400 A new comic has been posted at Sluggy.com! Full Article
0 Earth Day at 50: How an idea changed the world and still inspires now By www.newscientist.com Published On :: Wed, 15 Apr 2020 18:00:00 +0000 Coronavirus will overshadow Earth Day's golden anniversary, but the movement's successes are worth celebrating, says Gary Paul Nabhan Full Article
0 Earth Day: How a pillar of the green movement was born 50 years ago By www.newscientist.com Published On :: Tue, 21 Apr 2020 10:00:40 +0000 Wednesday marks the 50th anniversary of Earth Day, often spoken of as the birth of the green movement. Denis Hayes helped coordinate the first event, and speaks to New Scientist about its impact Full Article
0 Huge volcanic eruption in 2018 was triggered by torrential rains By www.newscientist.com Published On :: Wed, 22 Apr 2020 16:00:00 +0000 The eruption of Hawaii’s Kilauea volcano in 2018 was caused by heavy rains – suggesting that extreme weather from climate change could lead to more eruptions Full Article
0 We're still untangling Ramanujan's mathematics 100 years after he died By www.newscientist.com Published On :: Wed, 22 Apr 2020 18:00:00 +0000 Srinivisa Ramanujan’s ideas seemed to come from a parallel universe and mathematicians are still getting to grips with them today, say Ken Ono and Robert Schneider Full Article
0 UK sets new target to recruit 18,000 contact tracers by mid-May By www.newscientist.com Published On :: Tue, 28 Apr 2020 19:01:36 +0000 The UK government has set a new target of recruiting an army of 18,000 coronavirus contact tracers by the middle of May, to be in place for the launch of the NHS contact tracing app Full Article
0 An ancient river on Mars may have flowed for 100,000 years By www.newscientist.com Published On :: Tue, 05 May 2020 16:00:23 +0000 We’ve found a 200-metre cliff in Mars's Hellas basin, the first evidence of a river that flowed on the planet for more than 100,000 years Full Article
0 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
0 Comic for 2020.05.04 By explosm.net Published On :: Mon, 04 May 2020 00:00:00 -0500 New Cyanide and Happiness Comic Full Article Comics
0 Comic for 2020.05.05 By explosm.net Published On :: Tue, 05 May 2020 00:00:00 -0500 New Cyanide and Happiness Comic Full Article Comics
0 Comic for 2020.05.06 By explosm.net Published On :: Wed, 06 May 2020 00:00:00 -0500 New Cyanide and Happiness Comic Full Article Comics
0 Comic for 2020.05.08 By explosm.net Published On :: Fri, 08 May 2020 00:00:00 -0500 New Cyanide and Happiness Comic Full Article Comics
0 Comic for 2020.05.09 By explosm.net Published On :: Sat, 09 May 2020 00:00:00 -0500 New Cyanide and Happiness Comic Full Article Comics
0 Web Design Weekly #370 By feedproxy.google.com Published On :: Mon, 11 Nov 2019 20:07:40 +0000 A look behind the scenes at how Netflix keeps you engaged and addicted. An insight into how Design Ops at Spotify work. A look into moving from Sketch to Figma and lots more. Enjoy. The post Web Design Weekly #370 appeared first on Web Design Weekly. Full Article Newsletter
0 Ubuntu 20.04 is here By weekly.statuscode.com Published On :: Wed, 29 Apr 2020 00:00:00 +0000 #264 — April 29, 2020 Read on the Web StatusCode Weekly Covering the week's news in software development, ops, platforms, and tooling. Ubuntu 20.04 LTS (Focal Fossa) Released — Lots of goodies in the latest Ubuntu release which will surely form the basis for many a server over the next several years (its standard support will end in April 2025). Some related info: It uses Linux kernel 5.4 which introduces WireGuard VPN support and kernel lockdown. Phoronix have run tons of Ubuntu 18.04 vs 20.04 benchmarks on a 48 core Xeon server and found significant performance improvements for server use cases. There's also Lubuntu 20.04, Ubuntu MATE 20.04 and Xubuntu 20.04 if you prefer alternative desktop environments. People are still frustrated by snaps, but you can disable them. Canonical Things I Wished More Developers Knew About Databases — A Google engineer shares 17 insights about databases she’s picked up over the years. I strongly recommend this piece and I identify with lots of the points myself.. Jaana B. Dogan Audit Every SQL Query — JackDB is a modern database client with comprehensive audit logging and role-based access controls. Learn more about auditing database operations with JackDB. JackDB, Inc. sponsor How The Final Python 2 Release Marks the End of an Era — Last week we casually slipped in a note about 2.7.18 being Python 2’s final release but.. maybe it deserved a bigger story than that. Luckily Stack Overflow’s Ryan Donovan is here with one. Ryan Donovan AMP Introduces 'User-Friendly' Content Encryption Support — AMP aims to be all about providing speed to mobile consumers of content but paywalls just, well, get in the way. So Google and the AMP folks have come up with a way where protected content can be served and unlocked client-side for more performance. Cynically, of course, you could consider this yet another form of DRM for Web content.. The AMP Blog Quick bytes: DigitalOcean has taken another step forward with a Virtual Private Cloud (VPC) offering so you can create numerous private networks. Another week, another new AWS region.. this time in Milan, Italy. Not bad considering it's been under lockdown for the past couple of months. Allegedly, around 90% of content gets no traffic from Google. Got a overheating MacBook Pro? Consider charging it up on the right, rather than the left.. (yes, there is some logic to this.) Esteemed e-ziner Julia Evans has released her latest zine on How Containers Work. ???? 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 DevOps Engineer at X-Team (Remote) — Join the most energizing community for developers. Work from anywhere with the world's leading brands. X-Team ℹ️ Interested in running a job listing in StatusCode Weekly? There's more info here. ???? Stories and Opinions Two Months with PowerShell on a UNIX — You can’t use it as a login shell yet, but otherwise Microsoft’s PowerShell (which is more commonly associated with Windows) isn’t too bad. Joe Wright 'Teleforking' a Process Onto a Different Computer — Imagine if instead of calling fork you could call telefork and have a process forked onto other machines within a cluster.. this developer rigged up a fun prototype. Tristan Hume ▶ Discussing Serverless Use Cases with Gareth McCumskey — A chat with Gareth McCumskey (of Serverless Inc) about different production-level serverless use cases including RESTful APIs, GraphQL, WebSockets, and capturing clickstream data. The Serverless Chats Podcast podcast How Twitter Engineers Hunted Down a Linux Kernel Bug — When two Twitter engineers reset a Linux server’s firewall config, they expected things to work.. but it didn’t, and they unearthed (and fixed!) a kernel bug along the way. Cong Wang and Dan Luu (Twitter) To Microservices and Back Again: Why Segment Went Back to a Monolith — When Segment moved to a microservices architecture, they gained environmental isolation, but at a cost of higher operational overhead. Three years later, the costs were too high, and the team migrated back to a monolith.. Thomas Betts and Alexandra Noonan How Mozilla Engineers Code Quality in the Firefox Browser — An insider’s look at Firefox’s code quality toolchain that’s been designed to manage the ongoing development and releases of the popular desktop browser. Mozilla Hacks ???? Tutorials The Tool That Really Runs Your Containers: Deep Dive Into runc and OCI Specifications — runc is a container runtime that was extracted from Docker over the years and is now maintained separately but which still does the work of spawning and running containers. Kirill Shirinkin Decoupling Larger Applications with Amazon EventBridge — How to use an event-based architecture to decouple services and functional areas of applications. (EventBridge is AWS’s serverless app-to-app event bus.) James Beswick (AWS) The Complete Guide to Distributed Tracing Lightstep 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 A Variety of C Obfuscation Tricks — C is, like many languages, well suited to trickery and here’s a look at some of it. Colin Ian King ???? Code and Tools Will It CORS? — A handy online tool/wizard for establishing how your (potential) use case will (or won’t!) operate alongside CORS (Cross-Origin Resource Sharing). HTTP Toolkit sls-dev-tools v1.0: Think DevTools But for Serverless — “Think Chrome Dev Tools but for Serverless” say the team behind sls-dev-tools. They work with AWS Lambda and alongside tools like Serverless Framework or SAM. Theodo IPFS 0.5.0 Released: A Major Leap Forward for Peer to Peer Kind — IPFS (InterPlanetary File System) is perhaps the best known peer-to-peer hypermedia protocol and it has been seeing some high profile adoption as shown here. Molly Mackinlay The Super Simple AWS Storage Calculator — A quick way to compare how much it costs to store certain amounts of data on various AWS services at differing levels of robustness. The Duckbill Group 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 Windows Terminal Preview v0.11 Release — A lot of updates here for Microsoft’s official terminal app prior to an even bigger 1.0 release. Microsoft MsQuic: Microsoft Open Sources Its QUIC Library — A cross-platform, general-purpose library that implements the QUIC transport protocol. GitHub repo. Daniel Havey (Microsoft) Editly: Slick, Declarative Command Line Video Editing — I’ve long wondered why there isn’t a good way to “code” video editing at the command line other than wrangling with arcane ffmpeg options. Well.. this uses ffmpeg, but it handles a lot of the wrangling for you. Mikael Finstad Pomerium: An Identity-Aware Secure Access Proxy — An identity aware access-proxy modeled after Google’s BeyondCorp. Think VPN access benefits but without the VPN. Built in Go, naturally. Pomerium 98.css: CSS for Building Faithful Recreations of Windows 98 — If for any reason you need your Web site’s interface to look like Windows 98… Jordan Scales pxy: A Go Livestream Proxy from WebSocket to External RTMP Endpoints Chua Bing Quan Full Article
0 20,000 migrants have been expelled along border under coronavirus order By news.yahoo.com Published On :: Thu, 07 May 2020 20:35:34 -0400 More than 90% of the families, children and single adults that Border Patrol encountered in April were swiftly expelled under a public health order. Full Article
0 Brazil government warns of economic collapse in 30 days By news.yahoo.com Published On :: Fri, 08 May 2020 11:54:59 -0400 Brazil could face "economic collapse" in a month's time due to stay-at-home measures to stem the coronavirus outbreak, with food shortages and "social disorder," Economy Minister Paulo Guedes warned Thursday. Brazil, Latin America's biggest economy, is also the epicenter of the coronavirus pandemic in the region. But far-right President Jair Bolsonaro - who appeared alongside Guedes, his free-market economics guru - opposes stay-at-home measures to slow the virus, saying they are unnecessarily damaging the economy. "Within about 30 days, there may start to be shortages on (store) shelves and production may become disorganized, leading to a system of economic collapse, of social disorder," Guedes said. "This is a serious alert." Bolsonaro, who has compared the new coronavirus to a "little flu," said he understood "the virus problem" and believed that "we must save lives." "But there is a problem that's worrying us more and more... and that's the issue of jobs, of the stalled economy," Bolsonaro added. "Fighting the virus shouldn't do more damage than the virus itself." Full Article
0 Coronavirus in the UK: The first 100 days By www.bbc.co.uk Published On :: Fri, 08 May 2020 23:01:51 GMT How the government's policy has shifted from the first recorded case to the PM being treated in ICU. Full Article
0 Coronavirus: UK banks get 100,000 loan applications on first day By www.bbc.co.uk Published On :: Mon, 04 May 2020 15:37:48 GMT Banks see stampede for bounce-back loans within hours of the new government scheme going live. Full Article
0 Coronavirus: Don't ban over-70s from lockdown easing, says ex-MP By www.bbc.co.uk Published On :: Tue, 05 May 2020 23:50:15 GMT Ann Clwyd argues against "blanket ban" on over-70s involvement in easing of virus restrictions. Full Article
0 Coronavirus: UK becomes first country in Europe to pass 30,000 deaths By www.bbc.co.uk Published On :: Wed, 06 May 2020 21:31:16 GMT The UK records a further 649 deaths, taking the total number of coronavirus deaths to 30,076. Full Article
0 Coronavirus: 'Up to 2,000' UK seafarers stranded By www.bbc.co.uk Published On :: Sat, 09 May 2020 00:01:09 GMT Mental health problems are growing and ship workers see "no end" to their ordeal, a union warns. Full Article
0 Africa's week in pictures: 1 - 7 May 2020 By www.bbc.co.uk Published On :: Thu, 07 May 2020 23:12:28 GMT A selection of the week's best photos from across the continent and beyond. Full Article
0 Week in pictures: 2-8 May 2020 By www.bbc.co.uk Published On :: Fri, 08 May 2020 23:32:00 GMT A selection of news photographs taken around the world this week. Full Article
0 Redis 6.0 released By dbweekly.com Published On :: Fri, 1 May 2020 00:00:00 +0000 #302 — May 1, 2020 Read on the Web Database Weekly Redis 6.0 Released — The next major release of the popular data structure server is here. Redis is at the heart of so many data systems nowadays that any major release is big news but 6.0 packs in a lot of new bits and pieces that make it more robust and capable of modern workloads, including: Access Control Lists (ACL) for limiting what certain clients can do. Diskless replication on replicas. Threaded I/O (but Redis itself remains primarily single threaded). SSL/TLS support. A new client-server protocol, RESP3. Salvatore Sanfilippo You Can Now Do Serverless Streaming ETL with AWS Glue — If you want to analyze data on the fly as it arrives, you can now use AWS Glue (AWS’s ETL service) with streaming platforms like Kinesis Data Streams or Kafka which opens up a lot of opportunities as demonstrated here. Danilo Poccia (AWS) Monitor Database Performance End-To-End with OOTB Dashboards — Datadog’s customizable, built-in dashboards allow you to collect and visualize custom metrics, like saturation and resource utilization, in real-time. Unify your metrics, traces and logs in one platform. Try it free with a 14-day trial. Datadog sponsor Can Apache Kafka Replace a Database? - The 2020 Update — Kafka is a stream-processing system but the idea of using it to store data isn’t uncommon. This post analyzes Kafka’s core concepts from the database perspective. Kai Waehner PostgreSQL Gets a Parallel Processing Boost — Swarm64 started life as a FPGA-driven way to accelerate Postgres’s performance for analytics and data warehouse tasks, but can now work without FPGAs too. Datanami Using SQL in RStudio Irene Steves A Jepsen Security Report on Dgraph 1.1.1 — Jepsen is well known for their work in putting databases and related systems through their security paces. Here, the Go-powered distributed graph database Dgraph gets analyzed. Jepsen MongoDB Makes Its Compass GUI Free — Compass provides a powerful interface to work with MongoDB databases. It’s source was made publicly available last year as well. MongoDB, Inc. eBook: The Most Important Events to Monitor in Your Postgres Logs — In this eBook, you will learn about the Top 6 Postgres log events for monitoring query performance and preventing downtime. pganalyze sponsor Pantry: Free Cloud-Based Storage for JSON Data — Provides “perishable”, though secure, data storage for small projects via a RESTful API. Data is erased after a period of inactivity. There are quite a few projects like this and while they don’t suit long term production use, they can come in handy for hackathons, quick personal projects, teaching, etc. Rohan Likhite 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
0 TileDB 2.0, Scylla 4.0, and CockroachDB raises extra funds By dbweekly.com Published On :: Fri, 8 May 2020 00:00:00 +0000 #303 — May 8, 2020 Read on the Web Database Weekly Introducing Scylla Open Source 4.0 — Scylla (a Cassandra-compatible NoSQL data store aiming to be the “world’s fastest column-store database”) now provides production-ready lightweight Transactions (LWT), a DynamoDB-compatible API (Alternator), and operator for Kubernetes, and more. Dor Laor The Best Medium-Hard Data Analyst SQL Interview Questions — This article begins with a quote: “The first 70% of SQL is pretty straightforward but the remaining 30% can be pretty tricky.” True! This article focuses on the tricky ‘medium-hard’ area that few tutorials venture into. Zachary Thomas ????Live Coding: Guide to Grafana 101 - Getting Started with Alerts — Join us on May 20th to see how to use Grafana’s alerting functionality to get notified about anomalies in your data, dig into root causes, and respond to critical issues. Step-by-step demos + tips = cheaper, more flexible monitoring ✅. Timescale sponsor TileDB 2.0 and the Future of Data Science — TileDB is an embeddable storage engine focused on working with dense and sparse multi-dimensional arrays. It’s a C++ library with official Python, R, Java and Go integrations, but it can integrate with other database systems too. 2.0 introduces dataframe support, a new API for R, and support for Google Cloud Storage and Azure Blob Storage. Stavros Papadopoulos Time-Series Compression Algorithms, Explained — Delta-delta encoding, Simple-8b, XOR-based compression, and more - these algorithms aren’t magic, but combined they can save over 90% of storage costs and speed up queries. Here’s how they work. Joshua Lockerman and Ajay Kulkarni CockroachDB Creators Raise $87 Million of New Investment — Quite a raise and quite a valuation in these times for the creators of CockroachDB, a popular distributed SQL database. Cockroach Labs The Big Cloud Data Boom Gets Even Bigger, Thanks to COVID-19? — It’s not like the cloud was doing badly beforehand, but the pandemic is apparently encouraging companies to virtualize as much of their operations as possible. Datanami MongoDB Is Easy. Now Make It Powerful. Free Download for 30 Days. — Using MongoDB Atlas? Studio 3T is the professional GUI and IDE that unlocks the power you need. Studio 3T sponsor Speeding Up count(*): Why Not Use max(id) - min(id)? — A warning tale in case you decide to take this shortcut. While you might be able to estimate or fudge a number that’s close, you can’t guarantee sequences will give you an exact, correct answer here. Hans-Jürgen Schönig Using AWS API Gateway to Run Database Queries — API Gateway is commonly used to hook up HTTP endpoints to AWS Lambda functions but did you know it can directly connect to DynamoDB? (Or any AWS service that lets you query over the AWS API, so not RDS.) Renato Byrro How to Remain Agile with DynamoDB — Amazon DynamoDB delivers performance at scale but at a cost to flexibility (particularly early on in the development cycle when your eventual access patterns aren’t always known) – there are some mitigations, however. Rob Cronin Jobs DevOps Engineer at X-Team (Remote) — Join X-Team and work on projects for companies like Riot Games, FOX, Coinbase, and more. Work from anywhere. X-Team Tooling pgModeler: A Postgres Database Modeler — An easy way to create and edit database models in a visual way. It’s packaged up as a paid product but is also open source so you can build your own. Raphael Araújo e Silva AvionDB: A Decentralised Database with MongoDB-like Developer Interface — An admittedloy ‘alpha stage’ database system built on top of OrbitDB, a serverless, peer-to-peer database that uses IFPS for storage and implements the core decentralized database logic/protocol. Dappkit mssql-cli, a CLI Tool to Manage SQL Server, Now on macOS and Linux — mssql-cli is a tool for working with SQL Server from the command line, complete with Intellisense, syntax highlighting, and paging. Alan Yu (Microsoft) Full Article
0 React v16.9.0 and the Roadmap Update By reactjs.org Published On :: Thu, 08 Aug 2019 00:00:00 GMT Today we are releasing React 16.9. It contains several new features, bugfixes, and new deprecation warnings to help prepare for a future major release. New Deprecations Renaming Unsafe Lifecycle Methods Over a year ago, we announced that unsafe lifecycle methods are getting renamed: componentWillMount → UNSAFE_componentWillMount componentWillReceiveProps → UNSAFE_componentWillReceiveProps componentWillUpdate → UNSAFE_componentWillUpdate React 16.9 does not contain breaking changes, and the old names continue to work in this release. But you will now see a warning when using any of the old names: As the warning suggests, there are usually better approaches for each of the unsafe methods. However, maybe you don’t have the time to migrate or test these components. In that case, we recommend running a “codemod” script that renames them automatically: cd your_project npx react-codemod rename-unsafe-lifecycles (Note that it says npx, not npm. npx is a utility that comes with Node 6+ by default.) Running this codemod will replace the old names like componentWillMount with the new names like UNSAFE_componentWillMount: The new names like UNSAFE_componentWillMount will keep working in both React 16.9 and in React 17.x. However, the new UNSAFE_ prefix will help components with problematic patterns stand out during the code review and debugging sessions. (If you’d like, you can further discourage their use inside your app with the opt-in Strict Mode.) Note Learn more about our versioning policy and commitment to stability. Deprecating javascript: URLs URLs starting with javascript: are a dangerous attack surface because it’s easy to accidentally include unsanitized output in a tag like <a href> and create a security hole: const userProfile = { website: "javascript: alert('you got hacked')", }; // This will now warn: <a href={userProfile.website}>Profile</a> In React 16.9, this pattern continues to work, but it will log a warning. If you use javascript: URLs for logic, try to use React event handlers instead. (As a last resort, you can circumvent the protection with dangerouslySetInnerHTML, but it is highly discouraged and often leads to security holes.) In a future major release, React will throw an error if it encounters a javascript: URL. Deprecating “Factory” Components Before compiling JavaScript classes with Babel became popular, React had support for a “factory” component that returns an object with a render method: function FactoryComponent() { return { render() { return <div />; } } } This pattern is confusing because it looks too much like a function component — but it isn’t one. (A function component would just return the <div /> in the above example.) This pattern was almost never used in the wild, and supporting it causes React to be slightly larger and slower than necessary. So we are deprecating this pattern in 16.9 and logging a warning if it’s encountered. If you rely on it, adding FactoryComponent.prototype = React.Component.prototype can serve as a workaround. Alternatively, you can convert it to either a class or a function component. We don’t expect most codebases to be affected by this. New Features Async act() for Testing React 16.8 introduced a new testing utility called act() to help you write tests that better match the browser behavior. For example, multiple state updates inside a single act() get batched. This matches how React already works when handling real browser events, and helps prepare your components for the future in which React will batch updates more often. However, in 16.8 act() only supported synchronous functions. Sometimes, you might have seen a warning like this in a test but could not easily fix it: An update to SomeComponent inside a test was not wrapped in act(...). In React 16.9, act() also accepts asynchronous functions, and you can await its call: await act(async () => { // ... }); This solves the remaining cases where you couldn’t use act() before, such as when the state update was inside an asynchronous function. As a result, you should be able to fix all the remaining act() warnings in your tests now. We’ve heard there wasn’t enough information about how to write tests with act(). The new Testing Recipes guide describes common scenarios, and how act() can help you write good tests. These examples use vanilla DOM APIs, but you can also use React Testing Library to reduce the boilerplate code. Many of its methods already use act() internally. Please let us know on the issue tracker if you bump into any other scenarios where act() doesn’t work well for you, and we’ll try to help. Performance Measurements with <React.Profiler> In React 16.5, we introduced a new React Profiler for DevTools that helps find performance bottlenecks in your application. In React 16.9, we are also adding a programmatic way to gather measurements called <React.Profiler>. We expect that most smaller apps won’t use it, but it can be handy to track performance regressions over time in larger apps. The <Profiler> measures how often a React application renders and what the “cost” of rendering is. Its purpose is to help identify parts of an application that are slow and may benefit from optimizations such as memoization. A <Profiler> can be added anywhere in a React tree to measure the cost of rendering that part of the tree. It requires two props: an id (string) and an onRender callback (function) which React calls any time a component within the tree “commits” an update. render( <Profiler id="application" onRender={onRenderCallback}> <App> <Navigation {...props} /> <Main {...props} /> </App> </Profiler>); To learn more about the Profiler and the parameters passed to the onRender callback, check out the Profiler docs. Note: Profiling adds some additional overhead, so it is disabled in the production build. To opt into production profiling, React provides a special production build with profiling enabled. Read more about how to use this build at fb.me/react-profiling. Notable Bugfixes This release contains a few other notable improvements: A crash when calling findDOMNode() inside a <Suspense> tree has been fixed. A memory leak caused by retaining deleted subtrees has been fixed too. An infinite loop caused by setState in useEffect now logs an error. (This is similar to the error you see when you call setState in componentDidUpdate in a class.) We’re thankful to all the contributors who helped surface and fix these and other issues. You can find the full changelog below. An Update to the Roadmap In November 2018, we have posted this roadmap for the 16.x releases: A minor 16.x release with React Hooks (past estimate: Q1 2019) A minor 16.x release with Concurrent Mode (past estimate: Q2 2019) A minor 16.x release with Suspense for Data Fetching (past estimate: mid 2019) These estimates were too optimistic, and we’ve needed to adjust them. tldr: We shipped Hooks on time, but we’re regrouping Concurrent Mode and Suspense for Data Fetching into a single release that we intend to release later this year. In February, we shipped a stable 16.8 release including React Hooks, with React Native support coming a month later. However, we underestimated the follow-up work for this release, including the lint rules, developer tools, examples, and more documentation. This shifted the timeline by a few months. Now that React Hooks are rolled out, the work on Concurrent Mode and Suspense for Data Fetching is in full swing. The new Facebook website that’s currently in active development is built on top of these features. Testing them with real code helped discover and address many issues before they can affect the open source users. Some of these fixes involved an internal redesign of these features, which has also caused the timeline to slip. With this new understanding, here’s what we plan to do next. One Release Instead of Two Concurrent Mode and Suspense power the new Facebook website that’s in active development, so we are confident that they’re close to a stable state technically. We also now better understand the concrete steps before they are ready for open source adoption. Originally we thought we would split Concurrent Mode and Suspense for Data Fetching into two releases. We’ve found that this sequencing is confusing to explain because these features are more related than we thought at first. So we plan to release support for both Concurrent Mode and Suspense for Data Fetching in a single combined release instead. We don’t want to overpromise the release date again. Given that we rely on both of them in production code, we expect to provide a 16.x release with opt-in support for them this year. An Update on Data Fetching While React is not opinionated about how you fetch data, the first release of Suspense for Data Fetching will likely focus on integrating with opinionated data fetching libraries. For example, at Facebook we are using upcoming Relay APIs that integrate with Suspense. We will document how other opinionated libraries like Apollo can support a similar integration. In the first release, we don’t intend to focus on the ad-hoc “fire an HTTP request” solution we used in earlier demos (also known as “React Cache”). However, we expect that both we and the React community will be exploring that space in the months after the initial release. An Update on Server Rendering We have started the work on the new Suspense-capable server renderer, but we don’t expect it to be ready for the initial release of Concurrent Mode. This release will, however, provide a temporary solution that lets the existing server renderer emit HTML for Suspense fallbacks immediately, and then render their real content on the client. This is the solution we are currently using at Facebook ourselves until the streaming renderer is ready. Why Is It Taking So Long? We’ve shipped the individual pieces leading up to Concurrent Mode as they became stable, including new context API, lazy loading with Suspense, and Hooks. We are also eager to release the other missing parts, but trying them at scale is an important part of the process. The honest answer is that it just took more work than we expected when we started. As always, we appreciate your questions and feedback on Twitter and in our issue tracker. Installation React React v16.9.0 is available on the npm registry. To install React 16 with Yarn, run: yarn add react@^16.9.0 react-dom@^16.9.0 To install React 16 with npm, run: npm install --save react@^16.9.0 react-dom@^16.9.0 We also provide UMD builds of React via a CDN: <script crossorigin src="https://unpkg.com/react@16/umd/react.production.min.js"></script> <script crossorigin src="https://unpkg.com/react-dom@16/umd/react-dom.production.min.js"></script> Refer to the documentation for detailed installation instructions. Changelog React Add <React.Profiler> API for gathering performance measurements programmatically. (@bvaughn in #15172) Remove unstable_ConcurrentMode in favor of unstable_createRoot. (@acdlite in #15532) React DOM Deprecate old names for the UNSAFE_* lifecycle methods. (@bvaughn in #15186 and @threepointone in #16103) Deprecate javascript: URLs as a common attack surface. (@sebmarkbage in #15047) Deprecate uncommon “module pattern” (factory) components. (@sebmarkbage in #15145) Add support for the disablePictureInPicture attribute on <video>. (@eek in #15334) Add support for onLoad event for <embed>. (@cherniavskii in #15614) Add support for editing useState state from DevTools. (@bvaughn in #14906) Add support for toggling Suspense from DevTools. (@gaearon in #15232) Warn when setState is called from useEffect, creating a loop. (@gaearon in #15180) Fix a memory leak. (@paulshen in #16115) Fix a crash inside findDOMNode for components wrapped in <Suspense>. (@acdlite in #15312) Fix pending effects from being flushed too late. (@acdlite in #15650) Fix incorrect argument order in a warning message. (@brickspert in #15345) Fix hiding Suspense fallback nodes when there is an !important style. (@acdlite in #15861 and #15882) Slightly improve hydration performance. (@bmeurer in #15998) React DOM Server Fix incorrect output for camelCase custom CSS property names. (@bedakb in #16167) React Test Utilities and Test Renderer Add act(async () => ...) for testing asynchronous state updates. (@threepointone in #14853) Add support for nesting act from different renderers. (@threepointone in #16039 and #16042) Warn in Strict Mode if effects are scheduled outside an act() call. (@threepointone in #15763 and #16041) Warn when using act from the wrong renderer. (@threepointone in #15756) Full Article
0 React v16.13.0 By reactjs.org Published On :: Wed, 26 Feb 2020 00:00:00 GMT Today we are releasing React 16.13.0. It contains bugfixes and new deprecation warnings to help prepare for a future major release. New Warnings Warnings for some updates during render A React component should not cause side effects in other components during rendering. It is supported to call setState during render, but only for the same component. If you call setState during a render on a different component, you will now see a warning: Warning: Cannot update a component from inside the function body of a different component. This warning will help you find application bugs caused by unintentional state changes. In the rare case that you intentionally want to change the state of another component as a result of rendering, you can wrap the setState call into useEffect. Warnings for conflicting style rules When dynamically applying a style that contains longhand and shorthand versions of CSS properties, particular combinations of updates can cause inconsistent styling. For example: <div style={toggle ? { background: 'blue', backgroundColor: 'red' } : { backgroundColor: 'red' } }> ... </div> You might expect this <div> to always have a red background, no matter the value of toggle. However, on alternating the value of toggle between true and false, the background color start as red, then alternates between transparent and blue, as you can see in this demo. React now detects conflicting style rules and logs a warning. To fix the issue, don’t mix shorthand and longhand versions of the same CSS property in the style prop. Warnings for some deprecated string refs String Refs is an old legacy API which is discouraged and is going to be deprecated in the future: <Button ref="myRef" /> (Don’t confuse String Refs with refs in general, which remain fully supported.) In the future, we will provide an automated script (a “codemod”) to migrate away from String Refs. However, some rare cases can’t be migrated automatically. This release adds a new warning only for those cases in advance of the deprecation. For example, it will fire if you use String Refs together with the Render Prop pattern: class ClassWithRenderProp extends React.Component { componentDidMount() { doSomething(this.refs.myRef); } render() { return this.props.children(); } } class ClassParent extends React.Component { render() { return ( <ClassWithRenderProp> {() => <Button ref="myRef" />} </ClassWithRenderProp> ); } } Code like this often indicates bugs. (You might expect the ref to be available on ClassParent, but instead it gets placed on ClassWithRenderProp). You most likely don’t have code like this. If you do and it is intentional, convert it to React.createRef() instead: class ClassWithRenderProp extends React.Component { myRef = React.createRef(); componentDidMount() { doSomething(this.myRef.current); } render() { return this.props.children(this.myRef); } } class ClassParent extends React.Component { render() { return ( <ClassWithRenderProp> {myRef => <Button ref={myRef} />} </ClassWithRenderProp> ); } } Note To see this warning, you need to have the babel-plugin-transform-react-jsx-self installed in your Babel plugins. It must only be enabled in development mode. If you use Create React App or have the “react” preset with Babel 7+, you already have this plugin installed by default. Deprecating React.createFactory React.createFactory is a legacy helper for creating React elements. This release adds a deprecation warning to the method. It will be removed in a future major version. Replace usages of React.createFactory with regular JSX. Alternately, you can copy and paste this one-line helper or publish it as a library: let createFactory = type => React.createElement.bind(null, type); It does exactly the same thing. Deprecating ReactDOM.unstable_createPortal in favor of ReactDOM.createPortal When React 16 was released, createPortal became an officially supported API. However, we kept unstable_createPortal as a supported alias to keep the few libraries that adopted it working. We are now deprecating the unstable alias. Use createPortal directly instead of unstable_createPortal. It has exactly the same signature. Other Improvements Component stacks in hydration warnings React adds component stacks to its development warnings, enabling developers to isolate bugs and debug their programs. This release adds component stacks to a number of development warnings that didn’t previously have them. As an example, consider this hydration warning from the previous versions: While it’s pointing out an error with the code, it’s not clear where the error exists, and what to do next. This release adds a component stack to this warning, which makes it look like this: This makes it clear where the problem is, and lets you locate and fix the bug faster. Notable bugfixes This release contains a few other notable improvements: In Strict Development Mode, React calls lifecycle methods twice to flush out any possible unwanted side effects. This release adds that behaviour to shouldComponentUpdate. This shouldn’t affect most code, unless you have side effects in shouldComponentUpdate. To fix this, move the code with side effects into componentDidUpdate. In Strict Development Mode, the warnings for usage of the legacy context API didn’t include the stack for the component that triggered the warning. This release adds the missing stack to the warning. onMouseEnter now doesn’t trigger on disabled <button> elements. ReactDOM was missing a version export since we published v16. This release adds it back. We don’t recommend using it in your application logic, but it’s useful when debugging issues with mismatching / multiple versions of ReactDOM on the same page. We’re thankful to all the contributors who helped surface and fix these and other issues. You can find the full changelog below. Installation React React v16.13.0 is available on the npm registry. To install React 16 with Yarn, run: yarn add react@^16.13.0 react-dom@^16.13.0 To install React 16 with npm, run: npm install --save react@^16.13.0 react-dom@^16.13.0 We also provide UMD builds of React via a CDN: <script crossorigin src="https://unpkg.com/react@16/umd/react.production.min.js"></script> <script crossorigin src="https://unpkg.com/react-dom@16/umd/react-dom.production.min.js"></script> Refer to the documentation for detailed installation instructions. Changelog React Warn when a string ref is used in a manner that’s not amenable to a future codemod (@lunaruan in #17864) Deprecate React.createFactory() (@trueadm in #17878) React DOM Warn when changes in style may cause an unexpected collision (@sophiebits in #14181, #18002) Warn when a function component is updated during another component’s render phase (@acdlite in #17099) Deprecate unstable_createPortal (@trueadm in #17880) Fix onMouseEnter being fired on disabled buttons (@AlfredoGJ in #17675) Call shouldComponentUpdate twice when developing in StrictMode (@bvaughn in #17942) Add version property to ReactDOM (@ealush in #15780) Don’t call toString() of dangerouslySetInnerHTML (@sebmarkbage in #17773) Show component stacks in more warnings (@gaearon in #17922, #17586) Concurrent Mode (Experimental) Warn for problematic usages of ReactDOM.createRoot() (@trueadm in #17937) Remove ReactDOM.createRoot() callback params and added warnings on usage (@bvaughn in #17916) Don’t group Idle/Offscreen work with other work (@sebmarkbage in #17456) Adjust SuspenseList CPU bound heuristic (@sebmarkbage in #17455) Add missing event plugin priorities (@trueadm in #17914) Fix isPending only being true when transitioning from inside an input event (@acdlite in #17382) Fix React.memo components dropping updates when interrupted by a higher priority update (@acdlite in #18091) Don’t warn when suspending at the wrong priority (@gaearon in #17971) Fix a bug with rebasing updates (@acdlite and @sebmarkbage in #17560, #17510, #17483, #17480) Full Article
0 A transpiler for futuristic Ruby, and the RailsConf 2020 videos By rubyweekly.com Published On :: Thu, 7 May 2020 00:00:00 +0000 #500 — May 7, 2020 Read on the Web ???? Welcome to issue 500! A bit of an arbitrary milestone but thanks to you all :-) Ruby Weekly Ruby Next: Make All Rubies Quack Alike — Ruby Next is a Ruby-to-Ruby transpiler that allows you to use the latest features of Ruby in previous versions without monkey patching or refinements. Could this be how experimental features are released going forward? Vladimir Dementyev Ruby 3 'Guilds' Proposal Now Called Ractor — This documentation is in Japanese (though the source code examples are easy to follow) but the news is that the new, proposed concurrency mechanism for Ruby 3 called Guilds (explained here) has been renamed to Ractor (as in ‘Ruby actors’, Ruby’s take on the actor model). Koichi Sasada Don’t Do Auth From Scratch. Focus On Your App — Spend less time on authentication and authorization and more time developing your awesome app. Auth built for <devs>. Download our community edition for free. FusionAuth sponsor Take the 2020 Ruby on Rails Survey — This is the sixth outing for Planet Argon’s survey which began in 2009. We try and support it each time as the results always make for interesting reading (see 2018’s results). Participate and become data ???? Planet Argon Team ???? RailsConf 2020 Videos If you recall, RailsConf 2020 was cancelled in its in-person form to be replaced by a 'couch edition'. This has been taking place and the videos have been released! Here are some of the highlights: DHH's keynote which takes the form of a chat between him and Evan Phoenix. Eileen Uchitelle digs deep on Rails' multi database support. (We interviewed her a few months ago too.) Building a Rails Controller From Scratch by Alex Kitchens digs into the interesting world of reimplementing ActionController with something of your own creation. Krystan HuffMenne takes us on a journey into the lifecycle of a response in Rails. It's worth understanding this stuff. Learn about using Sorbet to do static type checking in Rails with Hung Harry Doan. Aaron 'tenderlove' Patterson (who has just moved to Shopify) has a talk on, well, lots of bits and pieces in his usual style. If you want the full collection, here's the YouTube playlist. Alt::BrightonRuby: A Slightly Odd, Quasi-Conference for Strange Times — Alt::BrightonRuby is not happening in-person this year. Instead, you can buy the recorded talks, get a _why book, and get some podcasts with the speakers. Alt::BrightonRuby ???? 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 ▶ How To Begin Contributing to a Gem — If you’ve been using a library for a while and you want to contribute back, how do you get started? A 12 minute introduction here. Drifting Ruby How to Set Up Factory Bot on a Fresh Rails Project — Factory Bot is a library for setting up Ruby objects as test data – an alternative to fixtures, essentially. Jason Swett Using Postgres's DISTINCT ON to Avoid an N+1 Query — “Recently I fixed a tricky N+1 query and thought I should write it up..” John Nunemaker Need to Upgrade Rails? Don’t Know How Long It Will Take? — Get an action plan for your Rails upgrade and an in-depth report about your technical debt and outdated dependencies ????. FastRuby.io | Rails Upgrade Services sponsor 5 Uses for 'Splats' — 5 different ways to leverage Ruby’s splat (*) operator. Jason Dinsmore Running Multiple Instances of Webpacker — If you’re working on multiple Rails apps at once, changing where Rails gets served up is easy by configuring the port, but what about Webpacker? That requires another tweak. Scott Watermasysk Performing Asynchronous HTTP requests in Rails — How to update parts an app’s pages with asynchronous HTTP requests. A step-by-step how-to with JavaScript’s fetch() function, and Rails native server-side partial rendering. Remi Mercier How to Use AWS SimpleDB from Ruby — If you haven’t heard of AWS SimpleDB, you wouldn’t be alone as it’s not very popular, but it’s a pretty simple and cheap way to store simple documents in the cloud. Peter Cooper What's The Difference Between Monitoring Webhooks and Background Jobs AppSignal sponsor Ways to Reduce Your Heroku App's Slug Size — You might be surprised Heroku didn’t already do some of this for you. Rohit Kumar A Chat with Thibaut Barrère — If you missed our interview with Thibaut Barrere (Rubyist, and creator of the Kiba ETL framework) in last week’s issue, you can catch up here. Glenn Goodrich ???? Code and Tools Rodauth 2.0: Ruby's 'Most Advanced' Authentication Framework — A authentication framework that can work in any Rack-based webapp. Built using Roda and Sequel, Rodauth can be used with other frameworks and database libraries if you wish. Why’s it so advanced? More info on that here. Jeremy Evans RubyGems 3.1.3 Released — Lots of little bug fixes and tweaks. RubyGems Blog Business: Business Day Calculations for Ruby — Define your working days and holidays and then you can do ‘business day arithmetic’ (for example, what’s in 5 working days after now taking holidays and weekends into account?) GoCardless Lockbox: Modern Encryption for Rails Andrew Kane split: The Rack Based A/B 'Split' Testing Framework — A mature framework with robust configuration and multiple options for determining the winning option. Split P.S. In last week's issue, one of the links to our sponsors was incorrect and some readers emailed us to say they really wanted to read the promised article, Let’s Explore Big-O Notation with Ruby, so here it is. Apologies for any inconvenience. Full Article
0 Node 14.2.0, plus Deno 1.0 is coming By nodeweekly.com Published On :: Thu, 7 May 2020 00:00:00 +0000 #337 — May 7, 2020 Read on the Web ✍️ With a few of the links today, this is a good time to note we sometimes link to things we disagree with or that are controversial if they are newsworthy or of relevance to our community. Inclusion is not always endorsement but you can read any summaries we write alongside items to get our take on things ???? Node Weekly Node v14.2.0 (Current) Released — The latest version of Node gains a new experimental way — assert.CallTracker — to track and verify function calls and the amount of times they occur. Also, require('console').Console now supports different group indentations Node.js Deno 1.0: What You Need to Know — Two years ago Ryan Dahl, the original creator of Node, gave a popular talk called 10 Things I Regret About Node.js where he revealed Deno, his prototype of how he'd build a better V8-based JavaScript runtime. With 1.0 due next week, Deno is poised to be a particularly exciting release and this article does a good job of cruising through the reasons why. David Else Enhance Node.js Performance with Datadog APM — Debug errors and bottlenecks in your code by tracing requests across web servers and services in your environment. Then correlate between distributed request traces, metrics, and logs to troubleshoot issues without switching tools or contexts. Try Datadog APM free. Datadog APM sponsor Deno Weekly: Our Newest Newsletter — We really like what we see from Deno (above) so far, so we're launching a new newsletter all about it! ???? Rather than keep mentioning Deno in Node Weekly, we'll be giving it its own space. Even if you're not planning to use Deno, feel free to subscribe for a while, see what happens, then unsubscribe if it doesn't suit you — the next issue will drop on 1.0's release (due next Wednesday). Cooperpress Controlling GUIs Automatically with Nut.js — Write Node code that clicks on things, opens apps, types, clicks buttons, etc. Works on Windows, macOS and Linux. Hit the GitHub repo to learn more or check out some examples. Simon Hofmann A Practical Guide to Node Buffers — You’ll often encounter Buffer objects for holding binary data in the form of a sequence of bytes during interactions with the operating system, working with files, network transfers, etc. DigitalOcean ???? Jobs Node.js Developer at X-Team (Remote) — Join X-Team and work on projects for companies like Riot Games, FOX, Coinbase, and more. Work from anywhere. X-Team Find a Job Through Vettery — Vettery specializes in tech roles and is completely free for job seekers. Create a profile to get started. Vettery ℹ️ If you're interested in running a job listing in this newsletter, there's more info here. ???? Articles & Opinions How to Build a REST Service with Fastify — How to build a basic RESTful service using Fastify, a popular Node Web framework focused on performance/low overheads. Wisdom Ekpot ▶ How to Use Node.js for Load Testing — A straightforward tour of an approach for hitting a Web site over and over from multiple child processes. Tom Baranowicz How to Fix ESLint Errors Upon Save in VS Code — A quick fire tip. David Walsh 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 Avoiding Memory Leaks in Node: Best Practices for Performance — Covers very similar ground to another memory leak article we linked recently. Deepu K Sasidharan 'Some thoughts on the npm acquisition..' — The creator of Hapi and an investor in npm Inc. shared his thoughts on GitHub’s acquisition of npm. I disagree with his conclusion (and his views have also caused concern on Twitter) but it’s nonetheless interesting to get views from behind the curtain. Eran Hammer ???? Tools, Resources and Libraries npm 6.14.5 Released — Just a couple of minor bug fixes. The npm Blog actions-cli: Monitor Your GitHub Actions in Real Time from the Command Line Tommaso De Rossi SQL Template Tag: Tagged Template Strings for Preparing SQL Statements — For use with pg and mysql, for example. Blake Embrey webpack-blocks: Configure webpack using Functional Feature Blocks Andy Wermke JavaScript Error Tracking with AppSignal v1.3.0 is Here AppSignal sponsor FarmHash 3.1: A Node Implementation of Google's High Performance Hash Functions — FarmHash is a family of non-cryptographic hash functions built by Google mostly for quickly hashing strings. Lovell Fuller do-wrapper 4.0: A Node Wrapper for the DigitalOcean v2 API Matthew Major Full Article
0 The 2019 Go developer survey results are available By golangweekly.com Published On :: Fri, 24 Apr 2020 00:00:00 +0000 #309 — April 24, 2020 Unsubscribe : Read on the Web Golang Weekly Go Developer Survey 2019 Results — The annual survey results are here but calculated differently than in previous years. See how the community feels, what tools we use, and what we’re really using Go for. The Go Blog Fiber: An Express.js Inspired Web Framework for Go — If you know Express (from the Node world) than Fiber will look very familiar. It supports middleware, WebSockets, and various template engines, all while boasting a low memory footprint. Built on top of FastHTTP. Fiber We Now Offer Remote Go, Docker or Kubernetes Training — We offer live-streaming remote training as well as video training for engineers and companies that want to learn Go, Docker and/or Kubernetes. Having trained over 5,000 engineers, we have carefully crafted these classes for students to get as much value as possible. Ardan Labs sponsor A Comparison of Three Programming Languages for Bioinformatics — This is quite an academic piece but basically Go, Java and C++ were put head to head in an intensive bioinformatics task. The good news? Go won on memory usage and beat the C++17 approach (which was admittedly less than ideal) in performance. The team in question chose Go going forward. BMC Bioinformatics Go for Cloud — A Few Reflections for FaaS with AWS Lambda — A response to a this article about Go’s pros and cons in the cloud. You should read both. Filip Lubniewski ???? Jobs Enjoy Building Scalable Infrastructure in Go? Stream Is Hiring — Like coding in Go? We do too. Stream is hiring in Amsterdam. Apply now. Stream Golang Developer at X-Team (Remote) — Join the most energizing community for developers. Work from anywhere with the world's leading brands. X-Team 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 An Introduction to Debugging with Delve — If you’re in the “I don’t really use a debugger..” camp, Paschalis’s story and brief tutorial might help you dip a toe into the water. Paschalis Tsilias Object Ordering in Go — This is all about object comparison and the types of comparisons that are allowed in Go. Reading this post > Not reading this post. Eyal Posener How to Manage Database Timeouts and Cancellations in Go — How to cancel database queries from your app and what quirks and edge cases you need to be aware of. Alex Edwards The Go Security Checklist — From code to infrastructure, learn how to improve the security of your Go applications with the Go security checklist. Sqreen sponsor Data Logging with Go: How to Store Customer Details Securely — Specifically, this looks at using custom protobuf FieldOptions to mark fields as OK to log and reflection to check those options. Vadzim Zapolski-Dounar How to Install Go in FreeBSD in 5 Minutes — You can use a package manager, but this way has advantages and it’s easy. Jeremy Morgan ???? Code & Tools Fynedesk: A Fyne-Powered Full Desktop Environment for Linux/Unix — Previously we’ve linked to Fyne, a Go-based cross-platform GUI framework, but now it’s been used to create an entire Linux desktop environment! Fyne.io Lockgate: A Cross-Platform Locking Library — Has support for distributed locks using Kubernetes and OS file locks support. Flant Pomerium: An Identity-Aware Secure Access Proxy — An identity aware access-proxy modeled after Google’s BeyondCorp. Think VPN access benefits but without the VPN. Built in Go, naturally. Pomerium Beta Launch: Code Performance Profiling - Find & Fix Bottlenecks Blackfire sponsor Apex Log: A Structured Logging Package for Go — Inspired by Logrus. Apex mediary: Add Interceptors to the Go HTTP Client — This opens up a few options: tracing, request dumping, statistics collection, etc. Here Mobility SDK iso9660: A Go Library for Reading and Creating ISO9660 Images — The use cases for this will be a bit niche. The author created it to dynamically generate ISOs to be mounted in vSphere VMs. Kamil Domański pxy: A Go Livestream Proxy from WebSockets to External RTMP Endpoints Chua Bing Quan Full Article
0 Caddy 2.0 released, plus a little black hat Go By golangweekly.com Published On :: Fri, 8 May 2020 00:00:00 +0000 #311 — May 8, 2020 Unsubscribe : Read on the Web Golang Weekly Caddy 2: The Go-Powered Web Server with Automatic TLS — After over a year of redesign, Caddy 2 has a new architecture to v1. If you want a new HTTPS server that ‘just works’, Caddy is well worth a look IMO. Its lead creator, Matt Holt, answered lots of questions on this Hacker News thread about the release. Caddy Web Server Rek: An Easy HTTP Client for Go — The inspiration here is from Python’s very well known and highly esteemed Requests library.. so the Pythonistas among you might like this! Luc Perkins Modern Redis Features with RedisGreen — Online upgrades to the latest Redis 6.0 features, memory mapping, key size tracking, and more. RedisGreen sponsor Life Without Line Numbers — There’s a lot of buzz around reducing the size of Go binaries (1.15 does so by ~6%) and here’s another tactic: reduce the precision of the position information. The gain is 2-6%, depending on how far you take it. Josh Bleecher Snyder ▶ Discussing Black Hat Go — “Are you excited to learn about hacking and that?” Got an hour? Roberto Clapis, a security engineer at Google, and Tom Steele, a co-author of Black Hat Go, join the Go Time team to discuss security, penetration testing, and more. Go Time Podcast ???? Jobs Enjoy Building Scalable Infrastructure in Go? Stream Is Hiring — Like coding in Go? We do too. Stream is hiring in Amsterdam. Apply now. Stream 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 Mid-Stack Inlining in Go — Inlining a function can lead to serious performance gains, so why not do it for everything? Well, there are always trade-offs. Dave Cheney Asynchronous Preemption in Go 1.14 — How the new preemption implementation works, including the use of a lesser-known signal (SIGURG). Vincent Blanchon Why Are My Go Executable Files Larger Than My Source Code? — We built a data visualization tool to find out. Here’s how we built it, and what we learned. Cockroach Labs sponsor Accelerating Aggregate MD5 Hashing Up to 800% with AVX512 — The culmination of this work is md5-simd, a Go library that performs such rapid MD5 hashing (when running concurrently). The use cases here are quite restricted but you may appreciate seeing how such things are implemented for any high end SIMD wrangling you need to do one day. MinIO Blog ▶ A Beginner's Guide to gRPC in Go — There’s a written version of the tutorial if you dislike videos. TutorialEdge Four Steps to Daemonize Your Go Programs — Daemons are programs that run as non-interactive background processes (e.g. background job processors, Web servers, database systems). Ilija Eftimov Go as a Scripting Language? — There’s plenty of folks that use Go as a scripting language, but there are challenges around REPLs and shebang support. Some of these challenges are being addressed today. Segio De Simone ???? Code & Tools UUID 3.3: A Pure Go Implementation of UUIDs — A pure Go implementation of Universally Unique Identifiers (UUID) as defined in RFC-4122 covering versions 1 through 5. The Go Commune Reed-Solomon: A Reed-Solomon Erasure Coding Library — A Go port of a Java library built by Backblaze that does Reed Solomon erasure coding (a way to send or store data in a larger form that’s resilient to data loss). Boasts operation of over 1GB/sec per core. Klaus Post ko 0.5: Build and Deploy Go Apps on Kubernetes — ko’s objective is to “to make containers invisible infrastructure.” It’s been rapidly maturing in the past few months too. Google Monitor the Health and Performance of Your Golang Apps with Datadog APM. Free Trial Datadog APM sponsor Tengo 2.2: A Fast Embeddable Script Language for Go — Quite a mature project now and worth a look if you need to add some dynamic scripting to your code. Daniel Kang UniPDF 3.7: A Library for Creating and Processing PDF Files — Pure Go, which is neat, but note it’s dual licensed: AGPL for open source, commercial for closed source projects. UniDoc Mockery: A Mock Code Generator for Go Interfaces Vektra Dynamo: An Expressive DynamoDB Library Greg Greg ???? Two Fun Side Projects gasm: An Experimental WASM Virtual Machine for Gophers — “I did this just for fun and for learning WASM specification.” Nonetheless, it works with basic examples. Takeshi Yoneda thdwb: A Homebrew Web Browser and Rendering Engine — Another experimental, fun learning project. You won’t be using it for your day to day browsing any time soon but projects like this keep the imagination fueled up. Danilo Fragoso It'd be quite cool to link to more fun Go experiments and side projects actually, so let us know if you work on any. Bonus points for games, musical, or Web experiences ???? Full Article
0 2000 FIFA Club World Championship: Corinthians 0-0 Vasco da Gama (4-3 PSO) By www.fifa.com Published On :: Sun, 02 Dec 2012 23:18:00 GMT Corinthians-Vasco da Gama, FIFA Club World Cup Brazil 2000 Final: The all-Brazilian final had a plethora of familiar names - including legend Romario, Edmundo, Gilberto Melo, Ricardinho and Dida - and ended in a dramatic penalty shootout. Full Article Area=Tournament Section=Competition Kind=Video Tournament=FIFA Club World Championship Brazil 2000
0 2005 Club World Cup Final: Sao Paulo 1-0 Liverpool By www.fifa.com Published On :: Thu, 06 Dec 2012 04:45:00 GMT Sao Paulo-Liverpool, FIFA Club World Cup Japan 2005 Final: The English side saw Steven Gerrard go close twice, but they could not deny a spirited performance by the Brazilians. Full Article Area=Tournament Section=Competition Kind=Video Tournament=FIFA Club World Championship Toyota Cup Japan 2005
0 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
0 2007 Club World Cup Final: Boca Juniors 2-4 AC Milan By www.fifa.com Published On :: Sat, 08 Dec 2012 02:03:00 GMT In the final of the FIFA Club World Cup Japan 2007, Italian giants AC Milan got two goals from 'Pippo' Inzaghi and one each from Kaka and Alessandro Nesta to become the world's top team. Full Article Area=Tournament Section=Competition Kind=Video Tournament=FIFA Club World Cup Japan 2007
0 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
0 2009 Club World Cup: Estudiantes 1-2 Barcelona (AET) By www.fifa.com Published On :: Tue, 11 Dec 2012 03:06:00 GMT A:Estudiantes-Barcelona, FIFA Club World Cup UAE 2009 final: Barcelona won their sixth trophy of the year following a last-gasp equaliser and a headed winner in extra time against a dogged Argentine opponent. Full Article Area=Tournament Section=Competition Kind=Video Tournament=FIFA Club World Cup UAE 2009
0 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
0 2011 Club World Cup Final: Santos 0-4 Barcelona By www.fifa.com Published On :: Fri, 14 Dec 2012 02:18:00 GMT Hopes were high in the final of the FIFA Club World Cup Japan 2011 that Brazilian team Santos could match Barcelona's firepower, but Lionel Messi, Cesc Fabregas, Xavi and crew had other ideas. Full Article Area=Tournament Section=Competition Kind=Video Tournament=FIFA Club World Cup Japan 2011