Tuesday, 31 May 2022

Monday, 30 May 2022

Saturday, 28 May 2022

Friday, 27 May 2022

Thursday, 26 May 2022

New top story on Hacker News: Show HN: Muse 2.0 with local-first sync

New top story on Hacker News: Show HN: Muse 2.0 with local-first sync

Show HN: Muse 2.0 with local-first sync
25 by adamwiggins | 84 comments on Hacker News.
Hey HN, I want to share with you something I and my four colleagues have been working on for the last several years. It’s a whiteboarding and notes tool called Muse[1]. We just released a 2.0 version which includes local-first sync. A little backstory: I’m one of the authors of the 2019 essay Local-first software[2]. (Past HN discussions[3][4].) The thesis is to reclaim some of the ownership over our data that we’ve lost in the transition from filesystems to cloud/SaaS. So I’m excited to bring CRDT technology “out of the lab” and into a commercial product as a chance to prove the value of local-first in real-world usage. As a developer and computing enthusiast, I care about abstract ideas like data ownership. But for most users I think the benefits of local-first will surface in how it feels to use the software day-to-day. One example is ability to work offline or in unstable network conditions: any changes between devices will be automatically merged when you reconnect to the network, no matter how long you’ve been disconnected. Another area is performance. The sync backend was written by my colleague Mark McGranaghan who has written extensively about software performance[5][6] and why we think the cloud will never be fast enough to make truly responsive software. A few technical details: – Client-side CRDT written in Swift, streaming sync server written in Go – Sync server is generic, doesn’t have any knowledge of the Muse app domain (cards, boards, ink, etc). Just shuffles data between devices – Transactional, blob, and ephemeral data are all managed by this one single state system. For example ephemeral data (someone wiggling a card around) for example, isn’t even transmitted if there are no other clients listening in realtime. More in this Metamuse podcast episode.[7] We draw heavily on research from people like Martin Kleppmann, Peter van Hardenberg[8], and many others. A huge thank you to this wonderful research community. Even if you have no interest in the Muse concept of a digital thinking workspace, I’d encourage you to try the free version just to see how local-first sync feels in practice. My opinion is that is fundamentally different from web/cloud software is well as from classic file-based software—and an improvement on both. Would love to hear what you think. [1]: https://museapp.com/ [2]: https://ift.tt/ZcLIsHu [3]: https://ift.tt/M2k1qDe [4]: https://ift.tt/EeUFbKk [5]: https://ift.tt/IvApoku [6]: https://ift.tt/0bQfM7y [7]: https://ift.tt/H6RLivy [8]: https://ift.tt/ypYibCr

Wednesday, 25 May 2022

New top story on Hacker News: Show HN: My free course for learning Imba

New top story on Hacker News: Show HN: My free course for learning Imba

Show HN: My free course for learning Imba
11 by trafnar | 0 comments on Hacker News.
Today I launched an Imba course for Scrimba.com. Imba is an amazing language for building web applications, that deserves more attention. Watch my announcement video: https://www.youtube.com/watch?v=CDSIsvZJhow Take the course (it's free): https://ift.tt/qAPS6aG Some context: I fell in love with the Imba programming language a couple years ago and quit my job to spend all my time building projects with Imba. The first one being TaskTXT ( https://www.tasktxt.com ), a plaintext notepad with built-in timers. It's full of UI details that were a joy to build with Imba. Trying to build things like this with React in the past honestly made me feel dumb. Imba ( https://www.imba.io ) is a language that compiles to Javascript, like TypeScript or JSX. Imba's syntax diverges much more from Javascript, looking more like Python or Ruby. It's compatible with Javascript and Typescript and NPM modules. It also has fantastic VSCode tooling and even supports TypeScript types. I like Imba syntax better than JS, but the real selling point is the built-in features for building web UI. Imba has first-class support for html tags, css styles, and custom web components. Those are all parts of the language. For me, Imba has replaced Javascript, HTML, CSS and React. Imba's "Memoized DOM" model for updating the UI is an order of magnitude faster than virtual DOM approaches. This allows for simple state management, because you can pretty much re-render the whole UI whenever you want and Imba manages to do that very efficiently. There's an older article about this here ( https://ift.tt/FEKd6ux... ) if you want to dig into the technical details. People often ask for examples of things made with Imba, and the most prominent one is the learn-to-code site, Scrimba.com and its interactive editor. Scrimba was was built by Sindre (creator of Imba) and the Scrimba team. The fact that Scrimba's editor was made with Imba grabbed my attention when I first learned about the language. It's one of the most impressive web applications I've ever seen. Sindre originally built Scrimba to share Imba, but until now there's not been a real Imba course on Scrimba! So, I'm pleased to be fixing that today. I know Imba looks strange to a lot of people. Imba programmers are used to people looking at it and declaring it to be stupid and wrong. An open mind is required. Imba doesn't have to be for everyone, but for a certain type of developer who values design, and wants to build expressive UI quickly, it's pure magic.

Tuesday, 24 May 2022

Monday, 23 May 2022

New top story on Hacker News: Ask HN: How can I stop my inbox/wishlist/bookmarks/tabs/todos from growing?

New top story on Hacker News: Ask HN: How can I stop my inbox/wishlist/bookmarks/tabs/todos from growing?

Ask HN: How can I stop my inbox/wishlist/bookmarks/tabs/todos from growing?
67 by miguelrochefort | 42 comments on Hacker News.
I have thousands of online accounts, hundreds of thousands of saved items (likes, bookmarks, papers, books, movies, videos, photos, files, open tabs, tasks), hundreds of inbox and feeds, and they just can't seem to stop growing. Inbox zero is now a rare occurrence, only made possible by abusing Gmail's snooze function. My phone, laptop, and clouds are full. Using personal finance analogies, should I: - Reduce my spending (unsubscribe, stop consuming feeds)? - Pay back my debt (consume the saved items)? Perhaps using the debt-snowball method? - Get more credit (file storage) so that I can spend (save items) more? - Declare bankruptcy (delete everything)?

Sunday, 22 May 2022

Saturday, 21 May 2022

New top story on Hacker News: Ask HN: What to do about ‘Good at programming Bad at Leetcode’

New top story on Hacker News: Ask HN: What to do about ‘Good at programming Bad at Leetcode’

Ask HN: What to do about ‘Good at programming Bad at Leetcode’
96 by mikymoothrowa | 205 comments on Hacker News.
Over the past few years I've met people who are really good programmers when it comes to putting together a full back end system , creating a very nice front end or creating any kind of app for that matter. Many of these people are fresh out of college and the ‘industry’ puts them through leetcode/hackerrank style rounds that are needlessly hard. I’ve seen the kind of questions these rounds have and quite frankly, if I graduated this year, there’s no way I’m going to get a job. Ever since 'Cracking the coding interview' was released, every company's interview process has become like Google's and Google didn't have a particularly great interview process to start with.[0][1] Now, there are several GitHub repositories that prescribe 3-4 month grinds on leetcode questions to "crack" the interview. And people do go through this grind. The people who do manage to crack these rounds are not necessarily good at programming either because the time they spent doing competitive programming stuff should have been spent learning to build actual things. The no-whiteboard companies are very few, hardly ever seem to have openings and not hiring junior engineers. What would be your advice be to fresh college graduates, or anybody for that matter, who are good at programming but not at leetcode? Surely there must be a way to demonstrate their understanding of algorithms without having to spend 3-4 months memorising riddles [0] homebrew creator.. https://mobile.twitter.com/mxcl/status/608682016205344768?lang=en [1] Zed Shaw gets offered a sys admin job https://ift.tt/m51F3Rk

Friday, 20 May 2022