Opensource Findings
1.72K members
1 photo
134 links
Links and concise reviews on open-source tools, news, and talks about language-design, trends and fundamentals. Write-only. Sponsored by https://wemake.services

Twitter: https://twitter.com/OpensourceF

Questions and ads: opensource[at]sobolevn.me
Download Telegram
to view and join the conversation
​​Github Action to prevent cursing in issues and pull requests: https://github.com/sobolevn/restrict-cursing-action

#js #typescript #docker
​​To use optional chaining & nullish coalescing in #vue files today:
- Run yarn add typescript@beta
- Set "vetur.useWorkspaceDependencies": true

Useful for many DOM operations. For example,
querySelector => Element | null
textContent => string | null | undefined

https://github.com/vuejs/vetur
And as an #apple software developer, I live through the Summer beta periods. On my secondary machine. And, in recent years, within virtual machines that allow me to do more intricate testing. I’ve seen easy-going mostly spit and polish releases as well more substantial user-facing and under-the-hood ones.

But Catalina has been different in two particularly gruesome ways that get even worse when combined.

The first, is purely from a stability and functional standpoint. The early betas of Catalina were really, really broken. But that’s OK! That’s what betas are for. And while I can only speak for myself, I think most developers are more than happy to offer input to Apple and report bugs. So I’m totally fine using a wonky OS for a few months on a spare machine while I test my own software in addition to Apple’s.

But here’s the bad part ...

#macos
​​Awesome list of #js and #vue related projects.

https://awesomejs.dev/
Great post about documenting architecture.

> We learn how to code and we build some cool applications, and then we learn about architecture and how to make the application maintainable for several years.
> However when we need to explain to someone else (new developer, product owner, investor) how the application works, we need something more… we need documentation.
> But what documentation options do we have that can express the whole application building blocks and how it works?!

#documentation
Do you know when your #python code is too complex? Do you know all the sources where complexity comes from? Do you know how complexity flows from the simplest entities to the higher level abstractions? Have you ever heard of "Architecture on Demand"?

This article will guide you thought writing simple code and teach you how to rely on automated tools when making architecture decisions.

It also features wemake-python-styleguide: https://github.com/wemake-services/wemake-python-styleguide
#python 3.8 is released. The worst python release so far. :=

I hope, that python4 will concentrate on removing useless stuff from the core, performance, and extending typing support.

Ideally, asyncio should be moved to a separate package, := should be undone. We all make mistakes.

https://docs.python.org/3/whatsnew/3.8.html
TL/DR: you don't need #graphql anymore!

Introduce Vulcain: a protocol to create fast client-driven REST APIs relying on HTTP/2 Server Push. An open source Gateway Server to use with any existing API is also available.

https://github.com/dunglas/vulcain

#go
Great talk with a great name: "Ruby is Dead"

But. This talk is not about just some specific problems in #ruby on its own, it spreads an inportant idea: "Programmers want tools, not toys". Sadly, that's what #python started to do: shipping toys.

One more fun fact: this talk uses #php as an example of good language evolution. And I tend to agree.
Beautiful tool to describe and visualize state machines.

Uses #js to build examples.

https://xstate.js.org/viz/
​​A set of common UI elements with a hand-drawn, sketchy look. These can be used for wireframes, mockups, or just the fun hand-drawn look.

https://wiredjs.com/

#css #js
​​Records what you do so that you can know how you've spent your time.
All in a secure way where you control the data.

https://github.com/ActivityWatch/activitywatch

#python
​​Next is a keyboard-oriented, extensible web-browser designed for power users. The application has familiar key-bindings (#emacs, VI), is fully configurable and extensible in #lisp, and has powerful features for productive professionals.

https://github.com/atlas-engineer/next

That's what happens when you cannot metaphysically exit #vim!
Vue.js stands out from other frameworks for its intuitive reactivity. #vue 3 composition api is going to removing some limitations in Vue 2 and provide a more explicit api.

Vue 3 introduces: reactive(), ref(), and computed(). Author explains why reactive() is bad and other two are good.