The Changelog: Software Development, Open Source - Puter is the internet OS (News)
Episode Date: March 11, 2024Puter puts an entire operating system in your web browser, the kapa.ai team write down how to structure your docs for LLMs, Daytona is an open source Codespaces alternative, Gleam v1.0 has been releas...ed & Rolldown is a JavaScript bundler written in Rust.
Transcript
Discussion (0)
What up nerds, I'm Jared and this is Changelog News for the week of Monday, March 11th, 2024.
Crazy times, both Bitcoin and Linux are at all-time highs, while Python's global interpreter
lock has reached its lowest point ever.
Yes, the ability to disable it altogether
just landed on Python's main branch. Okay, let's get into the news.
Pewter is the internet OS. Pewter is an advanced open-source desktop environment in the browser
designed to be feature-rich, exceptionally fast, and highly extensible. It can be used to build remote desktop environments
or serve as an interface for cloud storage services,
remote servers, web hosting platforms, and more.
I've been around long enough to see a bunch of these
desktop OS in a browser window demos and toys,
but this is the first time I've been impressed by one enough
to keep the tab open longer than 30 seconds.
From the URL structure to the cloud storage integration, to the developer portal,
Pewter strikes me as an actually viable, internet-based operating system with potentially
real-world use cases. And that's saying a lot. Oh, and it's also entirely built with vanilla
JavaScript and jQuery. So you know the devs haven't cargo-culted together something they
can't grow and maintain.
On that note, they say,
for performance reasons,
Pewter is built with vanilla JavaScript and jQuery.
Additionally, we'd like to avoid complex abstractions
and to remain in control of the entire stack
as much as possible.
Also partly inspired by some of our favorite projects
that are not built with frameworks,
VS Code, Photopea, and OnlyOffice.
Optimizing technical docs for LLMs.
SEO is looking old and dusty, but LLMO is certainly on the rise.
This list of best practices by the Kappa AI team
looks like a great place to start thinking about the subject for your project.
Their bullet points.
1. Embrace page structure and hierarchy. place to start thinking about the subject for your project. Their bullet points. One, embrace
page structure and hierarchy. Two, segment documentation by subproducts. Three, include
troubleshooting FAQs. Four, provide self-contained example code snippets. And five, build a community
forum. Each of these subjects is treated in detail along with a few more practical tips at the end.
If you missed our convo with Jose Valim about Elixir's unfortunate but perhaps short-lived lack of LLM optimization,
here's a clip from that conversation. Have you considered from like a marketing or like a
community perspective like having a fine-tuned or I don't know ragged like elixir all-knowing elixir chatbot that would be like
awesome elixir because we made sure that it is by doing certain things that we can do
yeah that's a that's a great question and uh I have thought about it I have built some prototypes
uh about the best way to go about that.
And there's another funny story here,
which is that I took some holidays early December.
And then before the holidays,
there was like the OpenAI,
they had an event where they announced like the GPTs kind of things.
And I've been also thinking about AI
in the context of Livebook.
And then before I went to holidays, I told people like, hey, I've been also thinking about AI in the context of Livebook. And then before I went to holidays,
I told people like,
hey, I've been thinking about this.
I've been thinking about what OpenAI announced.
And I probably think like the new APIs
they provided for completions,
we should build something on top of that
because even if in the future,
OpenAI is not the winner
or people don't want to use a closed source model,
you have like a
hundred different solutions, which adds OpenAI APIs to other models.
So it's like their API, whatever we think about it, their API is kind of going to be
the winner, you know?
So it makes sense to build against them.
So I was like, let's build something against OpenAPI.
And then I go on holidays and I come back from holidays and apparently the CEO was fired
and then they come back. And then there was like, in the two weeks I was on holidays, I know they
came back and was like, what happened? And then I was like, so I was ready. I was ready to go.
Right. And then it put me back like, okay, I have to take a deep breath.
Yeah. back like, okay, I have to take a deep breath.
Yeah.
Right.
It's like, uh, maybe not quite, but it's something like, so something that I want to do.
I don't remember who did it. I think it was Cole.
It was one of the companies that started with Cole.
It's now time for sponsored news.
Is your code getting dragged down by joins and long query times?
The problem might be your database.
Try simplifying the complex with graphs.
A graph database lets you model data the way it looks in the real world
instead of forcing it into rows and columns.
Stop asking relational databases to do more than they were made for.
Graphs work well for use cases with lots of data connections
like supply chain,
fraud detection, real-time analytics, and Gen AI. With Neo4j, you can code in your favorite programming language and against any driver. Plus, it's easy to integrate into your tech stack.
People are solving some of the world's biggest problems with graphs. Now it's your turn. Visit neo4j.com slash developer to get started. That's N-E-O, the number four, j.com
slash developer. One more time, neo4j.com slash developer. Daytona is an open source code spaces
alternative. We all know the pain of setting up a new development environment. And with the constant
job churn in the tech industry, just imagine how much productivity is lost worldwide
due to the process.
The promise of Daytona is big.
Just execute Daytona Create, and you'll be up and coding.
Quote, Daytona automates the entire process,
provisioning the instance,
interpreting and applying the configuration,
setting up pre-builds,
establishing a secure VPN connection,
securely connecting your local or a web IDE, and assigning a fully qualified domain name to the
environment for easy sharing and collab. As a developer, you can immediately start focusing
on what matters most, your code. End quote. Daytona can be self-hosted and uses the dev
containers spec, so trying it out should be pretty easy if you're
already set up on Codespaces or CodeSandbox. Is this subject worth another changelog interview?
Let us know in the comments. Gleam version 1.0 has been released. The Gleam language,
in their own words, quote, the power of a type system, the expressiveness of functional
programming, and the reliability of the highly concurrent fault-tolerant Erlang runtime with a End quote.
Because it runs on the Beam, Gleam inherits a rich ecosystem of Erlang and Elixir open source libraries.
Because it compiles to JavaScript, Gleam can run in your browser.
Because it isn't a project from Microsoft or Google, Gleam is powered by a community of passionate people.
Here's what V1 means according to the announcement post.
Quote, version one is a statement about Gleam's stability
and readiness to be used in production systems.
We believe Gleam is suitable for use in projects that matter
and Gleam will provide a stable and predictable foundation.
Rolldown is a JavaScript bundler written in Rust.
Rolldown is intended to serve as the future bundler for Vite,
which is front-end tooling from the Vue team.
It's currently in active development and isn't ready for primetime yet,
but they're building it because Vite currently depends on two bundlers.
ESBuild, which is blazing fast and feature-rich,
but its output, especially in terms of chunk-splitting
limitations, is not ideal for bundling applications. And Rollup, which is mature and battle-tested for
bundling applications, but is significantly slower than bundlers written in compile-to-native
languages. If Rolldown fulfills its goals, it will replace these with a singular solution
that provides the best of both worlds. It will also be usable outside of Vite, of course, so many projects can benefit from these efforts. Excited about that
future? Here's a note from the Rolldown team. Quote, Rolldown is still in early stage. We have
a lot of ground to cover, and we won't be able to do this without the help from community
contributors. We are also actively looking for more team members with long-term commitment
in improving JavaScript tooling with Rust.
That is the news for now, but it's time once again for some Changelog++ shoutouts.
Shoutout to our newest members. We appreciate you for supporting our work with your hard-earned cash.
If Changelog++ is news to you, that's our membership program that you can join to ditch the ads, get closer to the metal with bonus content, receive a free sticker pack for your laptop,
directly support our work,
and get shout outs like the ones you just heard.
Learn all about it at changelog.com slash plus plus.
Changelog plus plus.
It's better.
Have a great week.
Leave us some kind words using the form in the show notes
if you dig it.
And I'll talk to you again real soon.