CSS sscaffold-css.com

Sscaffold – lightweight css for people who build things

sscaffold combines css rules from normalize.css, skeleton.css, and milligram into a single, reorganized, easy-to-use css file, with bugfixes and a few other updates and additions. It emphasizes sensible defaults and semantic HTML.

This library (not framework) looks like a good starter for many projects.

The single file is human-readable, commented, includes credits to original authors, and is designed to be easily customized.

Vue.js n8n.io

An "open source" alternative to Zapier

n8n (a numeronym for “nodemation”) is a node-based workflow automation tool. The reason for the square quotes around “open source” is because it has a Commons Clause attached to its Apache 2.0 license, which means you can do anything you want with the source code except make money with it. Since n8n itself is built on open source tech such as TypeScript and Vue.js, this is a nice touch by the author in the FAQ:

As n8n itself depends on and uses a lot of other Open Source projects it is only fair and in our interest to also help them. So it is planed to contribute a certain percentage of revenue/profit every month to these projects. How much exactly is not decided yet.

An "open source" alternative to Zapier

Heroku Icon Heroku – Sponsored

🎧 GraphQL's benefits and costs

This week’s episode from Heroku’s Code[ish] podcast covers the costs and benefits of GraphQL. GraphQL is a querying language with the aim of increasing the productivity of frontend and backend developers. It can make working with React easier, be used as an API for third-party clients, and allow for feature-rich applications to request precisely the data they need. Like any part of your stack, GraphQL isn’t a panacea. The language is still being developed, and has some limitations. Tanmai Gopal, the CEO of Hasura, guides us through the pros and cons of using GraphQL in your application.

read more

logged by @logbot permalink

The New Stack Icon The New Stack

The 3 myths of observability

Arijit Mukherji on The New Stack:

We all have our favorite urban legends. From cow tipping to chupacabras, these myths persist despite a lack of definitive proof (and often evidence to the contrary). Technology isn’t immune to this phenomenon. It has its own set of urban legends and myths that emerge alongside new technologies and continue well into mass adoption. As organizations consider the shift from monitoring to Observability, I hear three common misperceptions. It’s time to debunk the myths.

Callback: Observability is for your unknown unknowns

Stream Icon Stream – Sponsored

Building a Svelte chat app with Stream

Building a chat app from scratch is a pretty daunting task. But you don’t need to start from scratch when you can get a working concept up and running in just a few minutes using Stream’s Chat API and Svelte 3. This post on the Stream blog will help to get you started. In this article, you’ll learn how to build a chat app with Stream Chat API and Svelte 3. I’ll demonstrate how to add users to the app, how to retrieve the message history and how to send and receive messages between users.

read more

logged by @logbot permalink

Gaming github.com

The NES you left outside in the rain but let dry and still kind of works

This is an NES emulator and a work in progress. The CPU, PPU, and APU mostly work, though there are still at least a couple bugs. I’ve mostly tested on Donkey Kong and Super Mario Bros. so far. There are plenty of full-featured emulators out there; this is primarily an educational project but I do want it to run well.

If you’re interested in learning about Rust and/or emulators, this is for you.

The NES you left outside in the rain but let dry and still kind of works

Filippo Valsorda github.com

age is a simple, modern, and secure file encryption tool

It features small explicit keys, no config options, and UNIX-style composability.

$ age-keygen -o key.txt
Public key: age1ql3z7hjy54pw3hyww5ayyfg7zqgvc7w3j2elw8zmrj2kg5sfn9aqmcac8p
$ tar cvz ~/data | age -r age1ql3z7hjy54pw3hyww5ayyfg7zqgvc7w3j2elw8zmrj2kg5sfn9aqmcac8p > data.tar.gz.age
$ age -d -i key.txt data.tar.gz.age > data.tar.gz

If Rust is more your thing, check out the perfectly named port: rage.

Google github.com

Cutting Google out of your life

If you’re concerned with the amount of data Google has on you, this list of alternative browsers, web apps, operating systems, and hardware may help you ween yourself from the company. Looking at this list, it’s amazing just how much value Google offers in trade for our data. A note from the author:

It’s a shame that Google, with their immense resources, power, and influence, don’t see the benefits of helping people secure themselves online. Instead, they force people like us to scour the web for alternatives and convince our friends and family to do the same, while they sell off our data to the highest bidder.

The Register Icon The Register

Bruce Perens quits Open Source Initiative (OSI)

Extending from topics around open source licensing in this recent conversation with Adam Jacob and this recent conversation with David Cramer, we’re now at a point where Bruce Perens (OSI co-founder) has quit the OSI saying “we’ve gone the wrong way with licensing” regarding the recently drafted Cryptographic Autonomy License (CAL).

The debate over whether or not to approve the license, now in its fourth draft, has proven contentious enough to prompt OSI co-founder Bruce Perens to resign from the organization, for a second time, based on concern that OSI members have already made up their minds.

“Well, it seems to me that the organization is rather enthusiastically headed toward accepting a license that isn’t freedom respecting,” Perens wrote in a missive to the OSI’s license review mailing list on Thursday. “Fine, do it without me, please.”

Amazon Web Services github.com

A serverless email server on AWS using S3 and SES

This stack was created out of frustration due to the fact that to this day there’s no easy way to have a full email server without the overhead of installing and configuring all servers needed to handle incoming and outgoing messages. We wanted something simple, with no interface and no server management, so we came up with S3-Email. This included AWS SES as our email server (receive and send) and S3 as our database and interface. Then we tied everything together with a bit of code via AWS Lambda.

All of this functionality and the repo is just some JSON, Yaml, and text files. Maybe 2020 really is the year of #nocode… 😉

Go blog.jse.li

Building a BitTorrent client from the ground up in Go

What is the complete path between visiting thepiratebay and sublimating an mp3 file from thin air? In this post, we’ll implement enough of the BitTorrent protocol to download Debian.

It isn’t a full-fledged client (no magnet links, no multi-file torrents, no seeding), but that makes it an excellent candidate for reading and learning. Here’s the resulting source code.

0:00 / 0:00